CRM-15486 - Fix pager js for non-form pages
authorColeman Watts <coleman@civicrm.org>
Sat, 18 Oct 2014 23:28:49 +0000 (19:28 -0400)
committerColeman Watts <coleman@civicrm.org>
Sat, 18 Oct 2014 23:28:49 +0000 (19:28 -0400)
templates/CRM/common/pager.tpl

index 4f56256b2d85689e6f1a7b92c9d240e46d1a2f8c..d0f8659b0c188ce25c2128fc20fb021da0d0e40b 100644 (file)
@@ -60,7 +60,7 @@
         CRM.$(function($) {
           {/literal}
           var
-            $form = $('form.{$form.formClass}'),
+            $form = $({if empty($form.formClass)}'#crm-main-content-wrapper'{else}'form.{$form.formClass}'{/if}),
             numPages = {$pager->_response.numPages},
             currentPage = {$pager->_response.currentPage},
             perPageCount = {$pager->_perPage},
@@ -72,7 +72,7 @@
             if (!refreshing) {
               refreshing = true;
               var options = url ? {url: url} : {};
-              $form.off().closest('.crm-ajax-container, #crm-main-content-wrapper').crmSnippet(options).crmSnippet('refresh');
+              $form.off('.crm-pager').closest('.crm-ajax-container, #crm-main-content-wrapper').crmSnippet(options).crmSnippet('refresh');
             }
           }
           function page(num) {
             })
             .on('keyup keydown keypress', preventSubmit);
           $form
-            .on('click', 'a.ui-spinner-button', function(e) {
+            .on('click.crm-pager', 'a.ui-spinner-button', function(e) {
               var $el = $(this);
               // Update after a short delay to allow multiple clicks
               spinning !== null && window.clearTimeout(spinning);
               }, 200);
             })
             // Handle sorting, paging and alpha filtering links
-            .on('click', 'a.crm-pager-link, #alpha-filter a, th a.sorting, th a.sorting_desc, th a.sorting_asc', function(e) {
+            .on('click.crm-pager', 'a.crm-pager-link, #alpha-filter a, th a.sorting, th a.sorting_desc, th a.sorting_asc', function(e) {
               refresh($(this).attr('href'));
               e.preventDefault();
             });