From 14dbd611e06f43eb629c30e6f35e4bfdf690e30e Mon Sep 17 00:00:00 2001 From: Coleman Watts Date: Tue, 3 Jun 2014 13:29:30 +0100 Subject: [PATCH] CRM-12872 - Update component search to display count --- js/Common.js | 10 ---------- js/crm.searchForm.js | 19 ++++++++----------- .../CRM/Contact/Form/Search/ResultTasks.tpl | 2 +- templates/CRM/common/searchResultTasks.tpl | 2 +- 4 files changed, 10 insertions(+), 23 deletions(-) diff --git a/js/Common.js b/js/Common.js index ee438daa50..2681102e5e 100644 --- a/js/Common.js +++ b/js/Common.js @@ -452,13 +452,6 @@ CRM.validate = CRM.validate || { // Initialize widgets $(document) .on('crmLoad', function(e) { - $('table.form-layout-compressed') - .on('change', 'input.select-rows', function () { - if ($(this).prop('checked')) { - $('input#toggleSelect:checked').prop('checked', false); - $('input.select-row:checked').prop('checked', false); - } - }) $('table.row-highlight', e.target) .off('.rowHighlight') .on('change.rowHighlight', 'input.select-row, input.select-rows', function (e, data) { @@ -472,9 +465,6 @@ CRM.validate = CRM.validate || { if (data !== 'master-selected') { $('input.select-rows', $table).prop('checked', $(".select-row:not(':checked')", $table).length < 1); } - if ($(this).prop('checked')) { - $('input[value=ts_sel]:radio').prop('checked', true); - } } }) .find('input.select-row:checked').parents('tr').addClass('crm-row-selected'); diff --git a/js/crm.searchForm.js b/js/crm.searchForm.js index 04c002fc54..29e5bbea52 100644 --- a/js/crm.searchForm.js +++ b/js/crm.searchForm.js @@ -1,16 +1,5 @@ // http://civicrm.org/licensing -function countSelectedCheckboxes(fldPrefix, form) { - fieldCount = 0; - for (i = 0; i < form.elements.length; i++) { - fpLen = fldPrefix.length; - if (form.elements[i].type == 'checkbox' && form.elements[i].name.slice(0, fpLen) == fldPrefix && form.elements[i].checked == true) { - fieldCount++; - } - } - return fieldCount; -} - (function($, _) { "use strict"; var form = 'form.crm-search-form'; @@ -25,9 +14,17 @@ function countSelectedCheckboxes(fldPrefix, form) { } } + function countCheckboxes() { + $('label[for*=ts_sel] span', form).text($('input.select-row:checked', form).length); + } + $('#crm-container') .on('change', '[name=radio_ts], .select-row', toggleTaskMenu) + .on('change', 'input.select-row', countCheckboxes) .on('crmLoad', toggleTaskMenu) + .on('click', 'input.select-row, input.select-rows', function() { + $(this).closest('form').find('input[name=radio_ts][value=ts_sel]').prop('checked', true); + }) .on('change', 'select#task', function() { $(this).siblings('input[type=submit]').click(); }); diff --git a/templates/CRM/Contact/Form/Search/ResultTasks.tpl b/templates/CRM/Contact/Form/Search/ResultTasks.tpl index 3db10ead97..011d94e6a5 100644 --- a/templates/CRM/Contact/Form/Search/ResultTasks.tpl +++ b/templates/CRM/Contact/Form/Search/ResultTasks.tpl @@ -69,7 +69,7 @@ {ts}Select Records{/ts}: - {$form.radio_ts.ts_all.html}   {if $pager->_totalItems > 1} {$form.radio_ts.ts_sel.html} {/if} + {$form.radio_ts.ts_all.html}   {if $pager->_totalItems > 1} {$form.radio_ts.ts_sel.html} {/if} diff --git a/templates/CRM/common/searchResultTasks.tpl b/templates/CRM/common/searchResultTasks.tpl index 3fd7569153..b51b2fda50 100644 --- a/templates/CRM/common/searchResultTasks.tpl +++ b/templates/CRM/common/searchResultTasks.tpl @@ -52,7 +52,7 @@ {ts}Select Records{/ts}: - {$form.radio_ts.ts_all.html} {ts count=$pager->_totalItems plural='All %count records'}The found record{/ts}   {if $pager->_totalItems > 1} {$form.radio_ts.ts_sel.html} {ts}Selected records only{/ts} {/if} + {$form.radio_ts.ts_all.html}   {if $pager->_totalItems > 1} {$form.radio_ts.ts_sel.html} {/if} -- 2.25.1