diff --git a/themes/finc/js/advanced_search.js b/themes/finc/js/advanced_search.js index 6ea46964445197518ba9c68d8e9fc2e2fa8661ed..daafce424e01d62fcb1bacf3c953103d48186d1c 100644 --- a/themes/finc/js/advanced_search.js +++ b/themes/finc/js/advanced_search.js @@ -3,7 +3,7 @@ var nextGroup = 0; var groupLength = []; -function addSearch(group, _fieldValues) { +function addSearch(group, _fieldValues, isUser) { var fieldValues = _fieldValues || {}; // Build the new search var inputID = group + '_' + groupLength[group]; @@ -53,7 +53,11 @@ function addSearch(group, _fieldValues) { groupLength[group]++; // #17985 finc barf - $newSearch.find('input.form-control').focus(); + if (isUser) { + $newSearch.find('input.form-control').focus(); + } else { + $("#group" + group).find('input.form-control').first().focus(); + } return false; } @@ -99,7 +103,7 @@ function addGroup(_firstTerm, _firstField, _join) { .removeClass('hidden'); $newGroup.find('.add_search_link') .attr('id', 'add_search_link_' + nextGroup) - .attr('onClick', 'return addSearch(' + nextGroup + ')') + .attr('onClick', 'return addSearch(' + nextGroup + ', {}, true)') .removeClass('hidden'); $newGroup.find('.adv-group-close') .attr('onClick', 'return deleteGroup(' + nextGroup + ')'); @@ -115,7 +119,7 @@ function addGroup(_firstTerm, _firstField, _join) { $('#groupPlaceHolder').before($newGroup); // Populate groupLength[nextGroup] = 0; - addSearch(nextGroup, {term: firstTerm, field: firstField}); + addSearch(nextGroup, {term: firstTerm, field: firstField}, false); // Show join menu if (nextGroup > 0) { $('#groupJoin').removeClass('hidden'); @@ -145,7 +149,10 @@ function deleteGroup(group) { $(document).ready(function advSearchReady() { $('.clear-btn').click(function clearBtnClick() { $('input[type="text"]').val(''); - $("option:selected").removeAttr("selected"); + $('select').not('#limit').find('option:selected').removeAttr('selected'); + if (typeof defaultLimit !== 'undefined') { + $("#limit").val(defaultLimit); + } $("#illustrated_-1").click(); }); }); diff --git a/themes/finc/templates/search/advanced/limit.phtml b/themes/finc/templates/search/advanced/limit.phtml index 1143d26934ef25977b5349a1ea7bda7ea273530d..c8f5ad0eaeb8ae41e3a70277c204546bbe579747 100644 --- a/themes/finc/templates/search/advanced/limit.phtml +++ b/themes/finc/templates/search/advanced/limit.phtml @@ -6,6 +6,7 @@ // If a previous limit was used, make that the default; otherwise, use the "default default" $lastLimit = $this->searchMemory()->getLastLimit($this->options->getSearchClassId()); $defaultLimit = empty($lastLimit) ? $this->options->getDefaultLimit() : $lastLimit; + $this->headScript()->appendScript("var defaultLimit = $defaultLimit"); ?> <?php if (count($limitList) > 1): ?> <fieldset class="limits">