1 2$(function () { 3 $('.col-sidebar .alpha-list__item').on('click', function () { 4 if (!$(this).hasClass("-active")) { 5 $('.alpha-list__item.-active').removeClass('-active'); 6 } 7 if ($(this).text() !== "View All") { 8 $(this).toggleClass('-active'); 9 } 10 search(); 11 }); 12 13 $('.search-filters__title').on('click', function () { 14 if ($(this).hasClass('open')) { 15 $(this).removeClass('open'); 16 var iconClosed = $(this).find('i'); 17 iconClosed.removeClass().addClass('fa fa-plus'); 18 iconClosed.attr('title', 'Open advanced filters'); 19 $(".search-filters__container").slideUp(); 20 } else { 21 $(this).addClass('open'); 22 var iconOpened = $(this).find('i'); 23 iconOpened.removeClass().addClass('fa fa-minus'); 24 iconOpened.attr('title', 'Close advanced filters'); 25 $(".search-filters__container").slideDown(); 26 } 27 }); 28 29 $('.search-filter__dropdown').on('focus', function() { 30 if (!$('.search-filters__title').hasClass('open')) { 31 $('.search-filters__title').addClass('open'); 32 } 33 $('.search-filters__title').find('i').removeClass().addClass('fa fa-minus'); 34 $(".search-filters__container").slideDown(); 35 }); 36 37 $('#submitSearch').on('click', function() { 38 search(); 39 }); 40 41 $('body').on('click', '.alpha-list__button', function () { 42 document.location.href = '?'; 43 }); 44 45 $('.search-filters').on('click', ".search__apply", function () { 46 search(); 47 }); 48 49 $('.search-filters').on('click', ".search__reset", function () { 50 resetSearchFilters(); 51 search(); 52 }); 53 54 $('.search__clear').on('click', function() { 55 $('#keywords').val(''); 56 resetAlphaFilters(); 57 resetSearchFilters(); 58 }); 59 60 $('#keywords').on("keypress", function (e) { 61 if (e.which === 13) { 62 search(); 63 } 64 }); 65 66 if (window.location.hash.slice(1)) { 67 setFormInputsFromUrlParameters(); 68 if (hasAdvancedFiltersSet()) { 69 $('.search-filters__title').addClass('open'); 70 $('.search-filters__container').slideDown(); 71 } 72 } 73 74 search(); 75 76 $(window).on('hashchange', function() { 77 if (window.location.hash.slice(1)) { 78 setFormInputsFromUrlParameters(); 79 search(); 80 } 81 }); 82}); 83 84function resetSearchFilters() { 85 $('.search-filter__dropdown', '.search-filters__container').each(function () { 86 $(this).val(0); 87 }); 88} 89 90function resetAlphaFilters() { 91 $('.alpha-list__item').removeClass('-active'); 92} 93 94function search() { 95 var hashvalues = []; 96 97 if ($("#keywords").val().length > 0) { 98 hashvalues.push({ name: "keywords", value: decodeURIComponent($("#keywords").val()) }); 99 } 100 101 if ($(".col-sidebar .alpha-list__item.-active") && $(".col-sidebar .alpha-list__item.-active").length === 1) { 102 hashvalues.push({ name: "alpha", value: $(".col-sidebar .alpha-list__item.-active").text() }); 103 } 104 105 if ($("#bioTitle").val() > 0) { 106 hashvalues.push({ name: "bioTitleId", value: $("#bioTitle").val() }); 107 } 108 109 if ($("#services").val() > 0) { 110 hashvalues.push({ name: "serviceId", value: $("#services").val() }); 111 } 112 113 if ($("#offices").val() > 0) { 114 hashvalues.push({ name: "officeId", value: $("#offices").val() }); 115 } 116 117 if ($("#schools").val() > 0) { 118 hashvalues.push({ name: "schoolId", value: $("#schools").val() }); 119 } 120 121 if ($("#barAdmissions").val() > 0) { 122 hashvalues.push({ name: "barAdmissionId", value: $("#barAdmissions").val() }); 123 } 124 125 if ($('#courtAdmissions').val() > 0) { 126 hashvalues.push({ name: 'courtAdmissionId', value: $('#courtAdmissions').val() }); 127 } 128 129 if ($('#languages').val() > 0) { 130 hashvalues.push({ name: 'languageId', value: $('#languages').val() }); 131 } 132 133 location.hash = '#' + decodeURIComponent($.param(hashvalues)); 134 $('.bio-results-placeholder').empty(); 135 136 $.ajax({
137 type: 'POST', 138 datatype: 'text/html', 139 url: '/Bio/Search/?' + $.param(hashvalues), 140 error: function () { }, 141 success: function (data) { 142 $('.bio-results-placeholder').html(data); 143 $('.bio-results-placeholder').prepend('<h3 class="bio-results__count"></h3>'); 144 $('.bio-results__count').text($('.bio-result__item').length + ' Results'); 145 } 146 }); 147} 148 149function setFormInputsFromUrlParameters() { 150 var searchParams = { 151 alpha: saturno.getHashParam('alpha'), 152 keywords: saturno.getHashParam('keywords'), 153 bioTitleId: saturno.getHashParam('bioTitleId'), 154 serviceId: saturno.getHashParam('serviceId'), 155 officeId: saturno.getHashParam('officeId'), 156 schoolId: saturno.getHashParam('schoolId'), 157 barAdmissionId: saturno.getHashParam('barAdmissionId'), 158 courtAdmissionId: saturno.getHashParam('courtAdmissionId'), 159 languageId: saturno.getHashParam('languageId') 160 } 161 162 if (searchParams.alpha && searchParams.alpha.length === 1) { 163 $('.alpha-list__item').removeClass('-active'); 164 $('.alpha-list__item:not(.alpha-list__button):contains(' + searchParams.alpha.toUpperCase() + ')').addClass('-active'); 165 } 166 167 if (searchParams.bioTitleId && parseInt(searchParams.bioTitleId) > 0) { 168 $('#bioTitle').val(parseInt(searchParams.bioTitleId)); 169 } 170 171 if (searchParams.serviceId && parseInt(searchParams.serviceId) > 0) { 172 $('#services').val(parseInt(searchParams.serviceId)); 173 } 174 175 if (searchParams.officeId && parseInt(searchParams.officeId) > 0) { 176 $('#offices').val(parseInt(searchParams.officeId)); 177 } 178 179 if (searchParams.schoolId && parseInt(searchParams.schoolId) > 0) { 180 $('#schools').val(parseInt(searchParams.schoolId)); 181 } 182 183 if (searchParams.barAdmissionId && parseInt(searchParams.barAdmissionId) > 0) { 184 $('#barAdmissions').val(parseInt(searchParams.barAdmissionId)); 185 } 186 187 if (searchParams.courtAdmissionId && parseInt(searchParams.courtAdmissionId) > 0) { 188 $('#courtAdmissions').val(parseInt(searchParams.courtAdmissionId)); 189 } 190 191 if (searchParams.languageId && parseInt(searchParams.languageId) > 0) { 192 $('#languages').val(parseInt(searchParams.languageId)); 193 } 194 195 if (searchParams.keywords && searchParams.keywords.length > 0) { 196 $("#keywords").val(searchParams.keywords); 197 } 198} 199 200function hasAdvancedFiltersSet() { 201 var foundFilterValue = false; 202 $('.search-filter__dropdown', '.search-filters__container').each(function () { 203 if (this.value > 0) { 204 foundFilterValue = true; 205 return false; 206 } 207 }); 208 209 return foundFilterValue; 210}
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.