Never been to DZone Snippets before?

Snippets is a public source code repository. Easily build up your personal collection of code snippets, categorize them with tags / keywords, and share them with the world

About this user

« Newer Snippets
Older Snippets »
Showing 1-1 of 1 total  RSS 

Fix NumberHelper to account for negative numbers

module ActionView
  module Helpers
    module NumberHelper
      def number_to_currency(number, options = {})
        options  = options.stringify_keys
        precision = options["precision"] || 2
        unit    = options["unit"] || "$"
        separator = precision > 0 ? options["separator"] || "." : ""
        delimiter = options["delimiter"] || ","

        begin
          parts = number_with_precision(number, precision).split('.')
          delimitered_number = number_with_delimiter(parts[0], delimiter) + separator + parts[1].to_s
          if Float(number) >= 0.00
            unit + delimitered_number
          else
            #'(' + unit + delimitered_number.gsub(/^-/, '') + ')'
            '-' + unit + delimitered_number.gsub(/^-/, '')
          end
        rescue
          number
        end
      end
    end
  end
end
« Newer Snippets
Older Snippets »
Showing 1-1 of 1 total  RSS