﻿var RESERVED = "abc"; var returnedFromNoResultsFound = false; var firstRestore = true; var initSearchType = 0; var initSearchClassType = 0; var xddlParentPracticeAreas = null; var listParentPracticeAreas = []; var xddlPracticeAreas = null; var listPracticeAreas = []; var xddlLanguages = null; var listLanguages = []; var xddlCountries = null; var listCountries = []; var xddlCountriesOfLicense = null; var listCountriesOfLicense = []; var xddlAcademicInstitutes = null; var listAcademicInstitutes = []; var xddlMemberships = null; var listMemberships = []; var xddlAreaCodes = null; var listAreaCodes = []; var xddlCities = null; var listCities = []; var xddlNumOfLawyers = null; var xtxtName = null; var xtxtFirstName = null; var xtxtKeywords = null; var xchkAnd = null; var xchkNotary = null; var hidSearchType = null; var hidSearchClassType = null; var finishedPreLoad = false; var max_ol = 13; var max_kw = 2; var busy = false; var wait_for = 500; var no_results = null; function search() { if (hidSearchType.value == RESERVED) return; var a = new URL(document.location.href); var b, encodedHref; if (hidSearchType.value == search_keywords) a.setParam(paramNameKeywords, xtxtKeywords.value); else a.setParam(paramNameKeywords, xtxtName.value); a.setParam(paramNameCountryID, getItemValue(xddlCountries)); a.setParam(paramNameCountryOfLicenseID, getItemValue(xddlCountriesOfLicense)); a.setParam(paramNameAcademicInstituteID, getItemValue(xddlAcademicInstitutes)); a.setParam(paramNameMembershipID, getItemValue(xddlMemberships)); a.setParam(paramNameAreaCodeID, getItemValue(xddlAreaCodes)); a.setParam(paramNameCityID, getItemValue(xddlCities)); if (hidSearchType.value == search_lawyer) a.setParam(paramNameFirstName, xtxtFirstName.value); else a.removeParam(paramNameFirstName); a.setParam(paramNameParentPracticeAreaID, getItemValue(xddlParentPracticeAreas)); a.setParam(paramNamePracticeAreaID, getItemValue(xddlPracticeAreas)); a.setParam(paramNameNumOfLawyersID, getItemValue(xddlNumOfLawyers)); a.setParam(paramNameLanguageID, getItemValue(xddlLanguages)); a.setParam(paramNameSearchTypeID, hidSearchType.value); a.setParam(paramNameSearchClassTypeID, hidSearchClassType.value); a.setParam(paramNameAllKeywords, xchkAnd.checked ? "true" : "false"); a.setParam(paramNameNotary, xchkNotary.checked ? "true" : "false"); a.setParam(QS_PARAM_NAME_LANG, inHebrew ? QS_PARAM_VALUE_LANG_HE : QS_PARAM_VALUE_LANG_EN); b = a.getHref(); encodedHref = encodeURI(b); if (_get("txtURL") != null) _get("txtURL").value = encodedHref; if ((no_results != null) && (_get("txtNoResultsStatus") != null)) _get("txtNoResultsStatus").value = no_results.style.visibility == "hidden" ? "hidden" : "shown"; document.location.href = encodedHref } function hideNoResultsCaption() { if (null == no_results) return; hideElem(no_results) } var lastSelection = new UserSelection(null, null, null, null, null, null, null); function UserSelection(a, b, c, d, e, f, g) { this.ParentPracticeAreaID = a; this.PracticeAreaID = b; this.LanguageID = c; this.CountryID = d; this.AreaCodeID = e; this.CityID = f; this.NumOfLawyersID = g; this.ToString = function() { var s; s = ""; s += "CountryID = " + nullToString(this.CountryID) + "; "; s += "AreaCodeID = " + nullToString(this.AreaCodeID) + "; "; s += "CityID = " + nullToString(this.CityID) + "; "; s += "ParentPracticeAreaID = " + nullToString(this.ParentPracticeAreaID) + "; "; s += "PracticeAreaID = " + nullToString(this.PracticeAreaID) + "; "; s += "LanguageID = " + nullToString(this.LanguageID) + "."; return s } } function nullToString(v) { if (null == v) return "[null]"; else return v } function loadSettings(a) { if (null == a) return; if (a.ParentPracticeAreaID != null) { setValue(xddlParentPracticeAreas, a.ParentPracticeAreaID); parentPracticeAreaChanged() } if (a.PracticeAreaID != null) setValue(xddlPracticeAreas, a.PracticeAreaID); if (a.LanguageID != null) setValue(xddlLanguages, a.LanguageID); if (a.CountryID != null) { setValue(xddlCountries, a.CountryID) } if (a.AreaCodeID != null) { setValue(xddlAreaCodes, a.AreaCodeID); areaCodeChanged() } if (a.CityID != null) setValue(xddlCities, a.CityID); if (a.NumOfLawyersID != null) setValue(xddlNumOfLawyers, a.NumOfLawyersID) } function countryChanged() { var a; prm("countryChanged"); if (finishedPreLoad) hideNoResultsCaption(); a = xddlCountries.selectedIndex; if (null == a) return; if (a < 0) return; if (xddlCountries.options.item(a).value == "1") showIsraelRelated(); else hideIsraelRelated() } function showIsraelRelated() { prm("showIsraelRelated"); showElem(getElemByName("ol3")); showElem(getElemByName("ol4")) } function hideIsraelRelated() { prm("hideIsraelRelated"); hideElem(getElemByName("ol3")); hideElem(getElemByName("ol4")) } function areaCodeChanged() { var v; if (finishedPreLoad) hideNoResultsCaption(); v = getItemValue(xddlCities); processComplexCities(listCities, xddlCities, (hidSearchType.value == search_office)); if (v != null) setValue(xddlCities, v) } function parentPracticeAreaChanged() { var v; if (finishedPreLoad) hideNoResultsCaption(); v = getItemValue(xddlParentPracticeAreas); processComplexPracticeAreas(listPracticeAreas, xddlPracticeAreas, (hidSearchType.value == search_office)); if (v != null) setValue(xddlPracticeAreas, v) } function setAllData(a) { processComplexObjects(listParentPracticeAreas, xddlParentPracticeAreas, a); processComplexPracticeAreas(listPracticeAreas, xddlPracticeAreas, a); processComplexObjects(listLanguages, xddlLanguages, a); processComplexObjects(listCountries, xddlCountries, a); processComplexObjects(listAreaCodes, xddlAreaCodes, a); processComplexCities(listCities, xddlCities, a) } function getWaitFor() { var a = 100; var b; b = Math.floor(Math.random() * wait_for); b = Math.min(b, a); return b } function setLoader(a, b) { var x, y; try { a = eval(a) } catch (e) { } try { b = eval(b) } catch (e) { } x = eval(search_lawyer); if (a == x) { y = eval(search_class_dr); if (b == y) setLawyerDR(); else setLawyerClassic(); return } x = eval(search_office); if (a == x) { y = eval(search_class_dr); if (b == y) setOfficeDR(); else setOfficeClassic(); return } x = eval(search_keywords); if (a == x) { setSearchKeywords(); return } } function setLawyerClassic() { hidSearchClassType.value = search_class_law; setLawyer() } function setOfficeClassic() { hidSearchClassType.value = search_class_law; setOffice() } function setLawyerDR() { hidSearchClassType.value = search_class_dr; xddlParentPracticeAreas.disabled = true; xddlParentPracticeAreas.value = ADR_PRACTICE_AREA_ID; setLawyer() } function setOfficeDR() { hidSearchClassType.value = search_class_dr; xddlParentPracticeAreas.disabled = true; xddlParentPracticeAreas.value = ADR_PRACTICE_AREA_ID; setOffice() } function setLawyer() { if (hidSearchType.value == search_lawyer) return; _get('Explanations').innerHTML = _get('lawyerExplanation').innerHTML; hidSearchType.value = search_lawyer; if (busy) { setTimeout("setLawyer()", getWaitFor()); return } busy = true; lblSearchOffice.style.color = 'black'; lblSearchLawyer.style.color = '#ad0732'; lblSearchKeywords.style.color = 'black'; setOfficeLawyerFields(); showElem(getElemByName("lawyerName")); hideElem(getElemByName("officeName")); saveSettings(); setAllData(false); prm("from setLawyer"); loadSettings(lastSelection); clearCaptionsClassName(); _get("captionOfLawyer").className = "SearchSelected"; setRowDisplay(getElemByName("ol2"), false); setValue(xddlCountries, "1"); showIsraelRelated(); setRowDisplay(getElemByName("ol8"), false); setRowDisplay(getElemByName("ol9"), true); setRowDisplay(getElemByName("ol10"), true); setRowDisplay(getElemByName("ol11"), true); setRowDisplay(getElemByName("ol12"), true); setRowDisplay(getElemByName("ol13"), true); busy = false } function saveSettings() { lastSelection = new UserSelection(getItemValue(xddlParentPracticeAreas), getItemValue(xddlPracticeAreas), getItemValue(xddlLanguages), getItemValue(xddlCountries), getItemValue(xddlAreaCodes), getItemValue(xddlCities), getItemValue(xddlNumOfLawyers)); prm("saveSettings --> lastSelection = " + lastSelection.ToString()) } function setOfficeLawyerFields() { var k; for (k = 1; k <= max_ol; k++) setRowDisplay(getElemByName("ol" + k), true); for (k = 1; k <= max_kw; k++) setRowDisplay(getElemByName("kw" + k), false) } function setKeywordFields() { var k; for (k = 1; k <= max_ol; k++) setRowDisplay(getElemByName("ol" + k), false); for (k = 1; k <= max_kw; k++) setRowDisplay(getElemByName("kw" + k), true); lblSearchOffice.style.color = 'black'; lblSearchLawyer.style.color = 'black'; lblSearchKeywords.style.color = '#ad0732' } function setOffice() { prm("begin setOffice"); if (hidSearchType.value == search_office) return; _get('Explanations').innerHTML = _get('officeExplanation').innerHTML; hidSearchType.value = search_office; prm("busy = " + busy); if (busy) { setTimeout("setOffice()", getWaitFor()); return } busy = true; lblSearchOffice.style.color = '#ad0732'; lblSearchLawyer.style.color = 'black'; lblSearchKeywords.style.color = 'black'; setOfficeLawyerFields(); hideElem(getElemByName("lawyerName")); showElem(getElemByName("officeName")); saveSettings(); setAllData(true); prm("from setOffice"); loadSettings(lastSelection); clearCaptionsClassName(); _get("captionOfOffice").className = "SearchSelected"; setRowDisplay(getElemByName("ol2"), true); if (getItemValue(xddlCountries) == "1") showIsraelRelated(); else hideIsraelRelated(); setRowDisplay(getElemByName("ol8"), true); setRowDisplay(getElemByName("ol9"), false); setRowDisplay(getElemByName("ol10"), false); setRowDisplay(getElemByName("ol11"), false); setRowDisplay(getElemByName("ol12"), false); setRowDisplay(getElemByName("ol13"), false); busy = false } function clearCaptionsClassName() { _get("captionOfLawyer").className = "SearchRegular"; _get("captionOfOffice").className = "SearchRegular"; _get("captionOfKeywords").className = "SearchRegular" } function getSeperatorWidth() { return "13px" } function setSearchKeywords() { var a; var k; prm("setSearchKeywords begin"); if ((hidSearchType.value == search_keywords)) return; _get('Explanations').innerHTML = _get('freetextExplanation').innerHTML; hidSearchType.value = search_keywords; prm("busy = " + busy); if (busy) { prm("setSearchKeywords setting timeout and return"); setTimeout("setSearchKeywords()", getWaitFor()); return } busy = true; setKeywordFields(); clearCaptionsClassName(); a = _get("captionOfKeywords"); if (null == a) { busy = false; return } a.className = "SearchSelected"; busy = false; prm("hidSearchType.value = " + hidSearchType.value); prm("setSearchKeywords end") } function showElem(a) { a.style.visibility = "visible"; a.style.display = "block" } function hideElem(a) { if (null == a) return; a.style.visibility = "hidden"; a.style.display = "none" } function setRowDisplay(a, v) { a.style.display = (v ? "block" : "none") } function prm(a) { } function cursorToHand(a) { var s; s = new String(a.className); if (s.indexOf("elected", 0) < 0) a.style.cursor = 'pointer'; else a.style.cursor = '' } function starter() { if (inHebrew) _get('captionOfKeywords').style.borderLeft = "1px solid #c4bcbd"; else _get('captionOfOffice').style.borderLeft = "1px solid #c4bcbd" } function _get(a) { return document.getElementById(a) } function restoreSelectionsByURL1() { var a; var b, currentValue1, currentValue2; var s; var t; if (typeof (setArrayVariables) != 'undefined') setArrayVariables(); s = null; t = $("#txtURL")[0]; if (t != null) { s = t.value; if ((s != null) && (s.length == 0)) s = null } if (null == s) s = document.location.href; else hideNoResultsCaption(); a = new URL(s); b = a.getParam(paramNameAllKeywords); if (b != null) { b = b.toLowerCase(); if ("true" == b) xchkAnd.checked = true; else xchkAnd.checked = false } b = a.getParam(paramNameNotary); if (b != null) { b = b.toLowerCase(); if ("true" == b) xchkNotary.checked = true; else xchkNotary.checked = false } b = a.getParam(paramNameCityID); if (b != null) { setValue(xddlCities, b) } b = a.getParam(paramNameAreaCodeID); if (b != null) { setValue(xddlAreaCodes, b); areaCodeChanged() } b = a.getParam(paramNameCountryID); if (b != null) { setValue(xddlCountries, b); countryChanged() } b = a.getParam(paramNameParentPracticeAreaID); if (b != null) { setValue(xddlParentPracticeAreas, b); parentPracticeAreaChanged() } b = a.getParam(paramNamePracticeAreaID); if (b != null) { setValue(xddlPracticeAreas, b) } b = a.getParam(paramNameCountryOfLicenseID); if (b != null) { setValue(xddlCountriesOfLicense, b) } b = a.getParam(paramNameAcademicInstituteID); if (b != null) { setValue(xddlAcademicInstitutes, b) } b = a.getParam(paramNameMembershipID); if (b != null) { setValue(xddlMemberships, b) } b = a.getParam(paramNameLanguageID); if (b != null) { setValue(xddlLanguages, b) } b = a.getParam(paramNameNumOfLawyersID); if (b != null) { setValue(xddlNumOfLawyers, b) } b = a.getParam(paramNameFirstName); if (b != null) { xtxtFirstName.value = decodeURI(b) } b = a.getParam(paramNameKeywords); currentValue1 = a.getParam(paramNameSearchTypeID); currentValue2 = a.getParam(paramNameSearchClassTypeID); if (b != null) { if (currentValue1 == search_keywords) xtxtKeywords.value = decodeURI(b); else xtxtName.value = decodeURI(b) } hidSearchType.value = RESERVED; if (null == currentValue1) setLoader(search_office, search_class_law); else setLoader(currentValue1, currentValue2); firstRestore = false; returnedFromNoResultsFound = false; finishedPreLoad = true }
$(function() { no_results = $("#tdNoResults")[0]; xddlParentPracticeAreas = $("[name$=ddlParentPracticeAreas]")[0]; xddlPracticeAreas = $("[name$=ddlPracticeAreas]")[0]; xddlLanguages = $("[name$=ddlLanguages]")[0]; xddlCountries = $("[name$=ddlCountries]")[0]; xddlCountriesOfLicense = $("[name$=ddlLawyerCountryOfLicense]")[0]; xddlAcademicInstitutes = $("[name$=ddlLawyerAcademicInstitutes]")[0]; xddlMemberships = $("[name$=ddlLawyerMemberships]")[0]; xddlAreaCodes = $("[name$=ddlAreaCodes]")[0]; xddlCities = $("[name$=ddlCities]")[0]; xddlNumOfLawyers = $("[name$=ddlNumOfLawyers]")[0]; hidSearchType = $("[name$=hiddenSearchType]")[0]; hidSearchClassType = $("[name$=hiddenSearchClassType]")[0]; xtxtName = $("[name$=txtName]")[0]; xtxtFirstName = $("[name$=txtFirstName]")[0]; xtxtKeywords = $("[name$=txtKeywords]")[0]; xchkAnd = $("[name$=chkAnd]")[0]; xchkNotary = $("[name$=chkNotary]")[0]; lblSearchOffice = $("[id$=lblSearchOffice]")[0]; lblSearchLawyer = $("[id$=lblSearchLawyer]")[0]; lblSearchKeywords = $("[id$=lblSearchKeywords]")[0] });
