var VALUE_FOR_NULL = "***"; var TEXT_FOR_NULL = "---"; var ADR_PRACTICE_AREA_ID = 383; function clearDDL(a) { var k; var b; if (null == a) return; b = a.length; for (k = 0; k < b; k++) a.remove(0) } function getItemByValue(a, b) { var k; var c; c = a.length; for (k = 0; k < c; k++) if (a.options.item(k).value == b) return a.options.item(k); return null } function findAnotherPracticeArea(a, i) { var k; var b; b = a[i].Text; for (k = 0; k < i; k++) { if (k != i && a[k].Text == b) return k; if (a[k].Text > b) return null } return null } function getItemValue(a) { if (null == a) return null; return a.options.item(a.selectedIndex).value } function setValue(a, v) { var k; var b; var c; if (null == a) return null; c = a.options; b = c.length; if (0 == b) return false; for (k = 0; k < b; k++) { if (c.item(k).value == v) { a.selectedIndex = k; return true } } return false } function addNullValue(a) { addItem(VALUE_FOR_NULL, TEXT_FOR_NULL, a) } function addItem(a, b, c) { var d; d = document.createElement("OPTION"); d.value = a; d.text = b; c.options.add(d); return d } function addInUseObject(o, a) { addItem(new String(o.ID), o.Text, a); applyStyle(a.options.item(a.options.length - 1), o.InUse) } function addComplexObject(o, a, b) { addItem(new String(o.ID), o.Text, a) } function applyStyle(o, a) { if (a) { o.style.color = "black" } else { o.style.color = "#999999" } } function ApplyComplexObjectStyle(a, b, c) { var k; var d; d = a.length; if (0 == d) return; for (k = 0; k < d; k++) { applyStyle(b.options.item(k + 1), (c && a[k].ExistsInOffice) || (!c && a[k].ExistsInLawyer)) } } function processComplexObjects(a, b, c) { if (b.length == 0) { clearDDL(b); addNullValue(b); addComplexObjects(a, b, c) } ApplyComplexObjectStyle(a, b, c) } function processInUseObjects(a, b) { clearDDL(b); addNullValue(b); addInUseObjects(a, b) } function addInUseObjects(a, b) { var k; var c; c = a.length; if (0 == c) return; for (k = 0; k < c; k++) { addInUseObject(a[k], b) } } function addComplexObjects(a, b, c) { var k; var d; d = a.length; if (0 == d) return; for (k = 0; k < d; k++) { addComplexObject(a[k], b, c) } } var lastAreaCode; function processComplexCities(a, b, c) { if (b.length == 0 || xddlAreaCodes.selectedIndex != lastAreaCode) { lastAreaCode = xddlAreaCodes.selectedIndex; clearDDL(b); addNullValue(b); addComplexCities(a, b, c) } } function addComplexCities(a, b, c) { var k; var d; var e; var f; d = a.length; if (0 == d) return; if (xddlAreaCodes.options.length == 0) return; e = xddlAreaCodes.selectedIndex; if (0 == e) { for (k = 0; k < d; k++) { addComplexObject(a[k], b, c) } return } else { f = xddlAreaCodes.options.item(e); if (null == f) return; f = f.value; for (k = 0; k < d; k++) { if (a[k].AreaCodeID == f) addComplexObject(a[k], b, c) } } } var lastParentPracticeArea; function processComplexPracticeAreas(a, b, c) { if (b.length == 0 || xddlParentPracticeAreas.selectedIndex != lastParentPracticeArea) { lastParentPracticeArea = xddlParentPracticeAreas.selectedIndex; clearDDL(b); addNullValue(b); addComplexPracticeAreas(a, b, c) } } function addComplexPracticeAreas(a, b, c) { var k; var d; var e; var f; d = a.length; if (0 == d) return; if (xddlParentPracticeAreas.options.length == 0) return; e = xddlParentPracticeAreas.selectedIndex; if (0 == e) { for (k = 0; k < d; k++) { if (k == 0 || (a[k - 1].Text != a[k].Text)) addComplexObject(a[k], b, c) } return } else { parentPracticeArea = xddlParentPracticeAreas.options.item(e); if (null == parentPracticeArea) return; parentPracticeArea = parentPracticeArea.value; for (k = 0; k < d; k++) { if (a[k].ParentPracticeAreaID == parentPracticeArea) addComplexObject(a[k], b, c) } } } function ComplexItem(a, b, c, d) { this.ID = a; this.Text = b; this.ExistsInOffice = c; this.ExistsInLawyer = d } function InUseItem(a, b, c) { this.ID = a; this.Text = b; this.InUse = c } function ComplexCity(a, b, c, d, e) { this.ID = a; this.Text = b; this.ExistsInOffice = c; this.ExistsInLawyer = d; this.AreaCodeID = e } function SimpleCity(a, b, c, d) { this.ID = a; this.Text = b; this.InUse = c; this.AreaCodeID = d } function ComplexPracticeArea(a, b, c, d, e) { this.ID = a; this.Text = b; this.ExistsInOffice = c; this.ExistsInLawyer = d; this.ParentPracticeAreaID = e } function SimplePracticeArea(a, b, c, d) { this.ID = a; this.Text = b; this.InUse = c; this.ParentPracticeAreaID = d } function getElemByName(b) { var a; var o; o = document.getElementById(b); if (o != null) return o; a = document.getElementsByName(b); if (a.length == 0) return null; o = a.item(0); return o } Array.prototype.has = function(a) { for (var i = 0, loopCnt = this.length; i < loopCnt; i++) { if (this === a) { return true } } return false };