CRM-13863 - Ajax improvements for changelog tab.
[civicrm-core.git] / templates / CRM / Contact / Page / View / Log.tpl
index 91278b7ad97b82ae0869357bb758fe75236e71c5..7949821751521cb27af6d8ea45ba42a939272249 100644 (file)
@@ -1,6 +1,6 @@
 {*
  +--------------------------------------------------------------------+
- | CiviCRM version 4.3                                                |
+ | CiviCRM version 4.4                                                |
  +--------------------------------------------------------------------+
  | Copyright CiviCRM LLC (c) 2004-2013                                |
  +--------------------------------------------------------------------+
@@ -28,7 +28,7 @@
    <div class="bold">{ts}Change Log:{/ts} {$displayName}</div>
    {if $useLogging}
      <br />
-     <div class='hiddenElement' id='instance_data'> </div>
+     <div class='instance_data'><div class="crm-loading-element"></div></div>
    {else}
     <div class="form-item">
      {if $logCount > 0 }
 {if $useLogging}
 {literal}
   <script type="text/javascript">
-  cj( document ).ready( function ( ) {
-    var dataURL = {/literal}"{$instanceUrl}"{literal};
-    cj.ajax({
-      url: dataURL,
-      success: function( content ) {
-        cj('#instance_data').show( ).html( content );
-      }
+  cj(function ($) {
+    $('#changeLog .instance_data').on('crmLoad', function(e, data) {
+      CRM.tabHeader.updateCount('#tab_log', data.totalRows);
     });
-  });
-
-  cj('div#changeLog div#instance_data .report-pager .crm-pager-nav a').live("click", function(e) {
-    cj.ajax({
-      url: this.href + '&snippet=4&section=2',
-      success: function( content ) {
-        cj('div#changeLog div#instance_data').html(content);
+    CRM.reloadChangeLogTab = function(url) {
+      if (url) {
+        $('#changeLog .instance_data').crmSnippet({url: url});
       }
+      $('#changeLog .instance_data').crmSnippet('refresh');
+    };
+    CRM.reloadChangeLogTab({/literal}"{$instanceUrl}"{literal});
+
+    $('#changeLog').on('click', '.report-pager .crm-pager-nav a', function(e) {
+      CRM.reloadChangeLogTab(this.href + '&section=2');
+      return false;
     });
-    return false;
-  });
 
-  cj('input[name="PagerBottomButton"], input[name="PagerTopButton"]').live("click", function(e) {
-    var crmpid  = (this.name == 'PagerBottomButton') ? cj('input[name="crmPID_B"]').val() : cj('input[name="crmPID"]').val();
-    cj.ajax({
-      url: cj('div#changeLog div#instance_data .report-pager .crm-pager-nav a:first').attr('href') + '&snippet=4&section=2&crmPID=' + crmpid,
-      success: function( content ) {
-        cj('div#changeLog div#instance_data').html(content);
-      }
+    $('#changeLog').on('click', 'input[name="PagerBottomButton"], input[name="PagerTopButton"]', function(e) {
+      var url  = $('#changeLog .instance_data .report-pager .crm-pager-nav a:first').attr('href') + '&section=2';
+      CRM.reloadChangeLogTab(url + '&crmPID=' + $(this).siblings('input[type=text]').val());
+      return false;
     });
-    return false;
   });
 
   </script>