CRM-13863 - Only load real links not js buttons
authorColeman Watts <coleman@civicrm.org>
Sun, 22 Dec 2013 06:46:29 +0000 (22:46 -0800)
committerColeman Watts <coleman@civicrm.org>
Mon, 6 Jan 2014 19:10:40 +0000 (11:10 -0800)
CRM/Admin/Page/Tag.php
js/Common.js
js/crm.livePage.js
templates/CRM/Admin/Page/Tag.tpl

index fa1cccadfa0642c230bdb9f690211b93943d4aeb..46ae2f30959adfb53a88ec19ecfe31beb1bde59b 100644 (file)
@@ -78,7 +78,6 @@ class CRM_Admin_Page_Tag extends CRM_Core_Page_Basic {
         CRM_Core_Action::FOLLOWUP => array(
           'name' => ts('Merge'),
           'class' => 'merge_tag',
-          'url' => 'javascript:',
           'title' => ts('Merge Tag'),
         ),
       );
@@ -135,6 +134,7 @@ class CRM_Admin_Page_Tag extends CRM_Core_Page_Basic {
    * override function browse()
    */
   function browse($action = NULL, $sort = NULL) {
+    CRM_Core_Resources::singleton()->addScriptFile('civicrm', 'js/crm.livePage.js');
     $adminTagSet = FALSE;
     if (CRM_Core_Permission::check('administer Tagsets')) {
       $adminTagSet = TRUE;
index 1735f1b63db1d8954b30a7f905c14d689adf3bb7..0976395d8057416aed77d83f73a9afa59e1bb415 100644 (file)
@@ -937,7 +937,7 @@ CRM.validate = CRM.validate || {
         validate: true,
         refreshAction: ['next_new', 'submit_savenext'],
         cancelButton: '.cancel.form-submit',
-        openInline: 'a.button',
+        openInline: 'a.button:not([href="#"])',
         onCancel: function(event) {},
         onError: function(data) {
           var $el = $(this);
index 722ebabc158f0c4e460473ae2da4ac81a8ae9981..4c0e8c979106fcfddbfca76995443508d51df202 100644 (file)
@@ -5,9 +5,13 @@ cj(function($) {
     // Widgetize the content area
     .crmSnippet()
     // Open action links in a popup
-    .on('click', 'a.button, a.action-item:not(".crm-enable-disable")', function() {
+    .on('click', 'a.button, a.action-item', function() {
+      // only follow real links not javascript buttons
+      if ($(this).attr('href') === '#' || $(this).attr('onclick')) {console.log('bogus', this);
+        return;
+      }
       CRM.loadForm($(this).attr('href'), {
-        openInline: 'a:not(".crm-enable-disable")'
+        openInline: 'a:not([href="#"])'
       }).on('crmFormSuccess', function(e, data) {
         // Refresh page when form completes
         $('#crm-main-content-wrapper').crmSnippet('refresh');
index d721f127cbe9c518af350bef3b708678e8ed971b..d74f9162292571f5d8562805abf30b56a0896714 100644 (file)
@@ -96,7 +96,7 @@
         </div>
     {/if}
 
-<div id="mergeTagDialog">
+<div id="mergeTagDialog" style="display:none;">
     {ts}Begin typing name of tag to merge into.{/ts}<br/>
     <input type="text" id="tag_name"/>
     <input type="hidden" id="tag_name_id" value="">
 {literal}
 <script type="text/javascript">
 cj("#mergeTagDialog").hide( );
-cj( function() {
-    cj('.merge_tag').click(function(){
-        var row_id = cj(this).closest('tr').attr('id');
-        var tagId = row_id.split('-');
+cj( function($) {
+    cj('.merge_tag').click(function(e){
+        var tagId = cj(this).closest('tr').attr('id').split('-');
         mergeTag(tagId[1]);
+        return false;
     });
 });
 
@@ -120,7 +120,6 @@ function mergeTag( fromId ) {
     var fromTag = cj('#tag-' + fromId).children('td.crm-tag-name').text();
     cj('#used_for_warning').html('');
 
-    cj("#mergeTagDialog").show( );
   cj("#mergeTagDialog").dialog({
     title: "Merge tag '" + fromTag + "' into:",
     modal: true,
@@ -182,13 +181,11 @@ function mergeTag( fromId ) {
                       }
                 });
 
-                cj(this).dialog("close");
-        cj(this).dialog("destroy");
+        cj(this).dialog("close");
        },
 
       "Cancel": function() {
         cj(this).dialog("close");
-        cj(this).dialog("destroy");
       }
           }
   });