X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=templates%2FCRM%2Fcommon%2FTabHeader.js;h=ba514b81268fb2719b1485a598b685f1240a61c7;hb=15ef6755486645b38e8a89e2fed7210dbc4f4713;hp=429ec7660fa399349a44d94bddeec4a59464b323;hpb=55039e98512c204e7919bd586b9e99ab176e51ea;p=civicrm-core.git diff --git a/templates/CRM/common/TabHeader.js b/templates/CRM/common/TabHeader.js index 429ec7660f..ba514b8126 100644 --- a/templates/CRM/common/TabHeader.js +++ b/templates/CRM/common/TabHeader.js @@ -23,9 +23,9 @@ CRM.$(function($) { params.autoClose = params.openInline = params.cancelButton = params.refreshAction = false; ui.panel.on('crmFormLoad', function() { // Hack: "Save and done" and "Cancel" buttons submit without ajax - $('.cancel.crm-form-submit, input[name$=upload_done]', this).on('click', function(e) { + $('.cancel.crm-form-submit, button[name$=upload_done]', this).on('click', function(e) { $(this).closest('form').ajaxFormUnbind(); - }) + }); }); } if (ui.tab.hasClass('livePage') && CRM.config.ajaxPopupsEnabled) { @@ -124,14 +124,24 @@ CRM.$(function($) { }; /** - * Refresh tab immediately if it is active, otherwise ensure it will be refreshed next time the user clicks on it + * Refresh tab immediately if it is active (or force=true) + * otherwise ensure it will be refreshed next time the user clicks on it + * * @param tab + * @param force */ - CRM.tabHeader.resetTab = function(tab) { + CRM.tabHeader.resetTab = function(tab, force) { var $panel = CRM.tabHeader.getTabPanel(tab); if ($(tab).hasClass('ui-tabs-active')) { $panel.crmSnippet('refresh'); } + else if (force) { + if ($panel.data("civiCrmSnippet")) { + $panel.crmSnippet('refresh'); + } else { + $("#mainTabContainer").trigger('tabsbeforeload', [{panel: $panel, tab: $(tab)}]); + } + } else if ($panel.data("civiCrmSnippet")) { $panel.crmSnippet('destroy'); }