+
+ $(function() {
+ initForm();
+ // Handle user interactions with search results
+ $('#crm-container')
+ // When toggling between "all records" and "selected records only"
+ .on('change', '[name=radio_ts]', function() {
+ clearTaskMenu();
+ enableTaskMenu();
+ })
+ .on('click', 'input[name=radio_ts][value=ts_all]', clearSelections)
+ // When making a selection
+ .on('click', 'input.select-row, input.select-rows, a.crm-selection-reset', function(event) {
+ var $el = $(this),
+ $form = $el.closest('form'),
+ single = $el.is('input.select-row');
+ clearTaskMenu();
+ $('input[name=radio_ts][value=ts_sel]', $form).prop('checked', true);
+ if (!usesAjax()) {
+ if (single) {
+ selected = countCheckboxes();
+ } else {
+ selected = $el.is(':checked') ? $('input.select-row', $form).length : 0;
+ }
+ displayCount();
+ enableTaskMenu();
+ } else {
+ phoneHome(single, $el, event);
+ }
+ })
+ // When selecting a task
+ .on('change', 'select#task', function() {
+ var $form = $(this).closest('form'),
+ $go = $('input.crm-search-go-button', $form);
+ if (1) {
+ $go.click();
+ }
+ // The following code can load the task in a popup, however not all tasks function correctly with this
+ // So it's disabled pending a per-task opt-in mechanism
+ else {
+ var data = $form.serialize() + '&' + $go.attr('name') + '=' + $go.attr('value');
+ var url = $form.attr('action');
+ url += (url.indexOf('?') < 0 ? '?' : '&') + 'snippet=json';
+ clearTaskMenu();
+ $.post(url, data, function(data) {
+ CRM.loadForm(data.userContext).on('crmFormSuccess', refresh);
+ enableTaskMenu();
+ }, 'json');
+ }
+ });
+
+ // Add a specialized version of livepage functionality
+ $('#crm-main-content-wrapper')
+ .on('crmLoad', function(e) {
+ if ($(e.target).is(this)) {
+ initForm();
+ }
+ })
+ // Open action links in a popup
+ .off('.crmLivePage')
+ .on('click.crmLivePage', active, CRM.popup)
+ .on('crmPopupFormSuccess.crmLivePage', active, refresh);
+ });
+
+})(CRM.$, CRM._);