Ruby on Rails | Screencasts | Download | Documentation | Weblog | Community | Source

Ticket #11499: regexp_support_for_format_option_of_sortable_element.diff

File regexp_support_for_format_option_of_sortable_element.diff, 2.5 kB (added by infrared, 5 months ago)
  • actionpack/test/template/scriptaculous_helper_test.rb

    old new  
    7070      sortable_element("mylist", :containment => ['list1','list2'], :constraint => "horizontal", :url => { :action => "order" }) 
    7171    assert_dom_equal %(<script type=\"text/javascript\">\n//<![CDATA[\nSortable.create(\"mylist\", {constraint:'horizontal', containment:'list1', onUpdate:function(){new Ajax.Request('http://www.example.com/order', {asynchronous:true, evalScripts:true, parameters:Sortable.serialize(\"mylist\")})}})\n//]]>\n</script>),  
    7272      sortable_element("mylist", :containment => 'list1', :constraint => "horizontal", :url => { :action => "order" }) 
     73    # Backwards-compatibility test: passing :format as a string. 
     74    assert_dom_equal %(<script type=\"text/javascript\">\n//<![CDATA[\nSortable.create(\"mylist\", {format:/[^-]+-(\\d+)/, onUpdate:function(){new Ajax.Request('http://www.example.com/order', {asynchronous:true, evalScripts:true, parameters:Sortable.serialize(\"mylist\")})}})\n//]]>\n</script>), 
     75      sortable_element("mylist", :url => { :action => "order" }, :format => '/[^-]+-(\d+)/') 
     76    # Passing :format as regexp should yield the same result. 
     77    assert_dom_equal %(<script type=\"text/javascript\">\n//<![CDATA[\nSortable.create(\"mylist\", {format:/[^-]+-(\\d+)/, onUpdate:function(){new Ajax.Request('http://www.example.com/order', {asynchronous:true, evalScripts:true, parameters:Sortable.serialize(\"mylist\")})}})\n//]]>\n</script>), 
     78      sortable_element("mylist", :url => { :action => "order" }, :format => /[^-]+-(\d+)/) 
    7379  end 
    7480   
    7581  def test_draggable_element 
  • actionpack/lib/action_view/helpers/scriptaculous_helper.rb

    old new  
    148148          options[option] = "'#{options[option]}'" if options[option] 
    149149        end 
    150150   
     151        options[:format] = options[:format].inspect if options[:format].kind_of?(Regexp) 
     152 
    151153        options[:containment] = array_or_string_for_javascript(options[:containment]) if options[:containment] 
    152154        options[:only] = array_or_string_for_javascript(options[:only]) if options[:only] 
    153155