anchor.diff:        $(document).on("ajax:before","a", function() {
           var section_id = $(this).data('ajax_section_id');
           if (section_id === undefined) return true; // this is not an AJAX Pagination AJAX request
  -        var url = this.href;
  +        var url = decodeURI(this.href);
           if ($.rails.fire(getSection(section_id),"ajaxp:before",[url,$(this).data('method')])) {
             var ajaxurl = $.param.querystring(url,{ajax_section:section_id});
             $(this).attr('href',ajaxurl);
  
positive.code:           if (from != to) {
              // schedule for loading only if not a refresh (changing browser history does not cause a refresh unless it is explicitly requested)
  //alert('testing ' + section);
              if (!isReload(section.substr(1),location.href,pagination_url)) changedsections.push(section.substr(1)); // this section changed
            }
          }
          history_state = state; // we can update our view of the state now
  
negative.code:       $(document).on("ajax:before","form", function() {
          var section_id = $(this).data('ajax_section_id');
          if (section_id === undefined) return true; // this is not an AJAX Pagination AJAX request
          var url = decodeURI($(this).attr('action')); 
          if ($.rails.fire(getSection(section_id),"ajaxp:before",[url,$(this).data('method')])) {
            var ajaxurl = $.param.querystring(decodeURI(url),{ajax_section:section_id});
            $(this).attr('action',ajaxurl);
            $(this).delay(0,"ajaxp").queue("ajaxp",function(next) { // delay causes function to execute after jquery_ujs event finishes
              if (ajaxurl == $(this).attr('action')) $(this).attr('action',url); // restore original url (mainly so that the status bar shows a nicer url)
  