Changeset 1438
- Timestamp:
- 06/16/05 06:33:10 (3 years ago)
- Files:
-
- trunk/actionpack/CHANGELOG (modified) (1 diff)
- trunk/actionpack/lib/action_view/helpers/number_helper.rb (modified) (1 diff)
- trunk/actionpack/test/template/number_helper_test.rb (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/actionpack/CHANGELOG
r1437 r1438 1 1 *SVN* 2 3 * Added :extension option to NumberHelper#number_to_phone #1361 [delynnb] 2 4 3 5 * Added button_to as a form-based solution to deal with harmful actions that should be hidden behind POSTs. This makes it just as easy as link_to to create a safe trigger for actions like destroy, although it's limited by being a block element, the fixed look, and a no-no inside other forms. #1371 [tom@moertel.com] trunk/actionpack/lib/action_view/helpers/number_helper.rb
r1254 r1438 9 9 # The delimiter can be set using +:delimiter+; default is "-" 10 10 # Examples: 11 # number_to_phone(1235551234) => 123-555-1234 12 # number_to_phone(1235551234, {:area_code => true}) => (123) 555-1234 13 # number_to_phone(1235551234, {:delimiter => " "}) => 123 555 1234 11 # number_to_phone(1235551234) => 123-555-1234 12 # number_to_phone(1235551234, {:area_code => true}) => (123) 555-1234 13 # number_to_phone(1235551234, {:delimiter => " "}) => 123 555 1234 14 # number_to_phone(1235551234, {:area_code => true, :extension => 555}) => (123) 555-1234 x 555 14 15 def number_to_phone(number, options = {}) 15 options = options.stringify_keys16 options = options.stringify_keys 16 17 area_code = options.delete("area_code") { false } 17 18 delimiter = options.delete("delimiter") { "-" } 19 extension = options.delete("extension") { "" } 18 20 begin 19 str = number.to_s 20 if area_code == true 21 str.gsub!(/([0-9]{3})([0-9]{3})([0-9]{4})/,"(\\1) \\2#{delimiter}\\3") 22 else 23 str.gsub!(/([0-9]{3})([0-9]{3})([0-9]{4})/,"\\1#{delimiter}\\2#{delimiter}\\3") 24 end 21 str = area_code == true ? number.to_s.gsub(/([0-9]{3})([0-9]{3})([0-9]{4})/,"(\\1) \\2#{delimiter}\\3") : number.to_s.gsub(/([0-9]{3})([0-9]{3})([0-9]{4})/,"\\1#{delimiter}\\2#{delimiter}\\3") 22 extension.to_s.strip.empty? ? str : "#{str} x #{extension.to_s.strip}" 25 23 rescue 26 24 number trunk/actionpack/test/template/number_helper_test.rb
r1151 r1438 12 12 assert_equal("(123) 555-1234", number_to_phone(1235551234, {:area_code => true})) 13 13 assert_equal("123 555 1234", number_to_phone(1235551234, {:delimiter => " "})) 14 assert_equal("(123) 555-1234 x 555", number_to_phone(1235551234, {:area_code => true, :extension => 555})) 15 assert_equal("123-555-1234", number_to_phone(1235551234, :extension => " ")) 14 16 end 15 17