var ajaxFormParams = {
dataType:'json',
beforeSubmit: function(arr, $form, options) {
- addCiviOverlay($form);
+ $form.block();
},
success: requestHandler,
error: errorHandler
data.reset = 1;
o.addClass('form');
$('.crm-edit-ready').removeClass('crm-edit-ready');
- addCiviOverlay(o);
+ o.block();
$.getJSON(CRM.url('civicrm/ajax/inline', data))
.fail(errorHandler)
.done(function(response) {
- removeCiviOverlay(o);
+ o.unblock();
o.css('overflow', 'hidden').wrapInner('<div class="inline-edit-hidden-content" style="display:none" />').append(response.content);
// Smooth resizing
var newHeight = $('.crm-container-snippet', o).height();
$('form', o).validate(CRM.validate.params);
ajaxFormParams.data = data;
$('form', o).ajaxForm(ajaxFormParams);
- o.trigger('crmFormLoad');
+ o.trigger('crmLoad').trigger('crmFormLoad');
});
}
};
}
// Update changelog tab and contact footer
if (response.changeLog.count) {
- CRM.updateTabCount('#tab_log', response.changeLog.count);
+ CRM.tabHeader.updateCount('#tab_log', response.changeLog.count);
}
$("#crm-record-log").replaceWith(response.changeLog.markup);
- // Refresh tab contents - Advanced logging
- if (CRM.reloadChangeLogTab) {
- CRM.reloadChangeLogTab();
- }
// Refresh tab contents - Simple logging
- else if ($('#Change_Log div').length) {
- $('#Change_Log').load($("#tab_log a").attr('href'));
+ if (!CRM.reloadChangeLogTab && $('#changeLog').closest('.ui-tabs-panel').data('civiCrmSnippet')) {
+ $('#changeLog').closest('.ui-tabs-panel').crmSnippet('destroy');
}
}
else {
function errorHandler(response) {
CRM.alert(ts('Unable to reach the server. Please refresh this page in your browser and try again.'), ts('Network Error'), 'error');
- removeCiviOverlay($('.crm-inline-edit.form form'));
+ $('.crm-inline-edit.form form').unblock();
}
$('document').ready(function() {
function refreshTitle() {
var contactName = $('.crm-summary-display_name').text();
contactName = $.trim(contactName);
- var title = $('title').html().replace(oldName, contactName);
- document.title = title;
+ document.title = $('title').html().replace(oldName, contactName);
oldName = contactName;
}
$('#contactname-block').load(refreshTitle);
$('.crm-inline-edit.form :submit[name$=cancel]').click();
}
});
- // Switch tabs when clicking log link
- $('#crm-container').on('click', '#crm-record-log a.crm-log-view', function() {
- $('#tab_log a').click();
- return false;
- });
+ $('#crm-container')
+ // Switch tabs when clicking log link
+ .on('click', '#crm-record-log a.crm-log-view', function() {
+ $('#tab_log a').click();
+ return false;
+ })
+ // Handle action links in popup
+ .on('click', '.crm-contact_actions-list a, .crm-contact_activities-list a', function() {
+ var tabName = $(this).data('tab') || 'summary';
+ var $tab = $('#tab_' + tabName);
+ var $panel = $('#' + $tab.attr('aria-controls'));
+ var url = $(this).attr('href');
+ if (url !== '#') {
+ CRM.loadForm(url)
+ .on('crmFormSuccess', function() {
+ if ($panel.data('civiCrmSnippet')) {
+ $panel.crmSnippet('refresh');
+ }
+ $('#mainTabContainer').tabs('option', 'active', $tab.prevAll().length);
+ });
+ } else {
+ $('#mainTabContainer').tabs('option', 'active', $tab.prevAll().length);
+ }
+ $('#crm-contact-actions-list').hide();
+ return false;
+ });
+ $(document)
+ // Actions menu
+ .on('click', function(e) {
+ if ($(e.target).is('#crm-contact-actions-link, #crm-contact-actions-link *')) {
+ $('#crm-contact-actions-list').show();
+ return false;
+ }
+ $('#crm-contact-actions-list').hide();
+ })
+ // Reload changelog whenever an inline or popup form submits
+ .on('crmFormSuccess', function(e) {
+ CRM.reloadChangeLogTab && CRM.reloadChangeLogTab();
+ });
$().crmAccordions();
});
})(cj);