// Copyright 2009, BMT Defence Services Ltd, All rights reserved.
var ControlType={ID:0,Input:1,TextArea:2,Select:3,User:4,Organisation:5,Checkbox:6,Date:7,DateTime:8,File:9,Password:10,FindControl:11,MessageScreen:12,Image:13,RichTextEditor:14,FileLink:15,InputLabel:-1,TextAreaLabel:-2,SelectLabel:-3,UserLabel:-4,OrganisationLabel:-5,CheckboxLabel:-6,DateLabel:-7,DateTimeLabel:-8,FileLabel:-9,PasswordLabel:-10,FindControlLabel:-11,RichTextEditorLabel:-14,FileLinkLabel:-15};var omControlForm=document.forms[0];var omControlChanged=new Object();var omControl=new Object();var zmControlFocus=null;
function controlGetForm(){return omControlForm;}
function controlGetElement(zControlID){controlGetObject(zControlID);var opDOMObject;if(omControl[zControlID].DOMObject){opDOMObject=omControl[zControlID].DOMObject;if(!opDOMObject.parentNode||opDOMObject.parentNode.nodeName=="#document-fragment"){opDOMObject=document.getElementById(zControlID);if(opDOMObject)omControl[zControlID].DOMObject=opDOMObject;else delete omControl[zControlID];}}else{opDOMObject=document.getElementById(zControlID);if(opDOMObject)omControl[zControlID].DOMObject=opDOMObject;}return opDOMObject;}
function controlSetForm(oForm){omControlForm=oForm;}
function controlAddChangeEntity(zEntityDisplayName){if(!omControlChanged.Index)omControlChanged.Index=new Array();if(!omControlChanged[zEntityDisplayName]&&omControlChanged[zEntityDisplayName]!=false){omControlChanged[zEntityDisplayName]=false;omControlChanged.Index[omControlChanged.Index.length]=zEntityDisplayName;}}
function controlSetFocus(zControlID,lControlType){try{var lpControlType=controlGetType(zControlID,lControlType);switch(lpControlType){case ControlType.ID:var opControl=omControlForm[zControlID];if(opControl&&opControl.style.display!="none"){if(opControl.tagName=="input"){if(opControl.type=="hidden")return;}opControl.focus();}break;case ControlType.Select:selectSetFocus(zControlID);break;case ControlType.Date:omControlForm[zControlID+"$txtDate"].focus();break;case ControlType.TextArea:case ControlType.Input:if(omControlForm[zControlID+"$txtTextbox"].style.display!="none")omControlForm[zControlID+"$txtTextbox"].focus();break;case ControlType.Checkbox:omControlForm[zControlID+"$chkCheckbox"].focus();break;case ControlType.FindControl:omControlForm[zControlID+"$txtFindText"].focus();break;}}catch(opCatch){}}
function controlSetValue(zControlID,zValue,lControlType){if(zValue==null)zValue="";var lpControlType=controlGetType(zControlID,lControlType);switch(lpControlType){case ControlType.ID:omControlForm[zControlID].value=zValue;break;case ControlType.Select:selectSetValue(zControlID,zValue);break;case ControlType.Date:if(zValue!="01/01/0001")omControlForm[zControlID+"$txtDate"].value=zValue;else omControlForm[zControlID+"$txtDate"].value="";break;case ControlType.DateLabel:controlGetElement(zControlID+"_lblDate").innerText=zValue;break;case ControlType.TextArea:case ControlType.Input:omControlForm[zControlID+"$txtTextbox"].value=zValue;break;case ControlType.FileLink:omControlForm[zControlID+"$txtFileEdit"].value=zValue;controlGetElement(zControlID+"_lnkFile").href=zValue;controlGetElement(zControlID+"_lnkFile").innerText=zValue;break;case ControlType.TextAreaLabel:case ControlType.InputLabel:case ControlType.DateTimeLabel:controlGetElement(zControlID+"_lblTextbox").innerText=zValue;break;case ControlType.Checkbox:omControlForm[zControlID+"$chkCheckbox"].checked=((zValue=="1")?true:false);break;case ControlType.CheckboxLabel:controlGetElement(zControlID+"_lblCheckbox").value=zValue;break;case ControlType.FindControl:findSetValue(zControlID,zValue,true);break;case ControlType.Image:controlGetElement(zControlID+"_imgImage").src=zValue;break;case ControlType.RichTextEditor:richTextEditorSetContent(zControlID,zValue);break;}if(omControl[zControlID].ReadOnly&&lpControlType!=ControlType.FindControl){var opReadOnlyControl=omControl[zControlID].ReadOnly;var zpText;switch(lpControlType){case ControlType.FindControl:case ControlType.Select:if(parseInt(controlGetValue(zControlID,lControlType))==-1)zpText='';else zpText=controlGetText(zControlID,lControlType);break;default:zpText=controlGetText(zControlID,lControlType);break;}opReadOnlyControl.firstChild.nodeValue=zpText;}}
function controlGetValue(zControlID,lControlType){var zpValue=null;var lpType=controlGetType(zControlID,lControlType);switch(lpType){case ControlType.ID:zpValue=omControlForm[zControlID].value;break;case ControlType.Select:zpValue=omControlForm[zControlID+"$hidSelect"].value;break;case ControlType.SelectLabel:zpValue=controlGetElement(zControlID+"_lblSelect").value;break;case ControlType.Date:zpValue=datePickerGetValue(zControlID);if(zpValue!="")zpValue=bmtWebGetBritishDate(zpValue);break;case ControlType.DateLabel:zpValue=controlGetElement(zControlID+"_lblDate").innerText;if(zpValue!="")zpValue=bmtWebGetBritishDate(zpValue);break;case ControlType.TextArea:case ControlType.Input:zpValue=omControlForm[zControlID+"$txtTextbox"].value;break;case ControlType.TextAreaLabel:case ControlType.InputLabel:zpValue=controlGetElement(zControlID+"_lblTextbox").innerText;break;case ControlType.Checkbox:zpValue=(omControlForm[zControlID+"$chkCheckbox"].checked)?"1":"0";break;case ControlType.CheckboxLabel:zpValue=((controlGetElement(zControlID+"_lblCheckbox").value=="1")?"1":"0");break;case ControlType.FindControl:zpValue=omControlForm[zControlID+"$hidFindValue"].value;break;case ControlType.FindControlLabel:zpValue=controlGetElement(zControlID+"_lblFind").value;break;case ControlType.DateTimeLabel:zpValue=controlGetElement(zControlID+"_lblTextbox").innerText;if(zpValue!="")zpValue=bmtWebDateFormat(zpValue,"dd/mm/yyyy","dd-mmm-yyyy");break;case ControlType.Image:zpValue=controlGetElement(zControlID+"_imgImage").src;break;case ControlType.File:zpValue=omControlForm[zControlID+"$txtFile"].filePath;break;case ControlType.FileLink:zpValue=omControlForm[zControlID+"$txtFileEdit"].value;break;case ControlType.RichTextEditor:zpValue=richTextEditorGetContent(zControlID);break;}return zpValue;}
function controlGetText(zControlID,lControlType){var zpText=null;var lpControlType=controlGetType(zControlID,lControlType);switch(lpControlType){case ControlType.ID:zpText=omControlForm[zControlID].value;break;case ControlType.Select:zpText=omControlForm[zControlID+"$txtSelect"].value;break;case ControlType.SelectLabel:zpText=controlGetElement(zControlID+"_lblSelect").innerText;break;case ControlType.Checkbox:if(omControlForm[zControlID+"$chkCheckbox"].checked)zpText="Yes";else zpText="No";break;case ControlType.CheckboxLabel:zpText=controlGetElement(zControlID+"_lblCheckbox").innerText;break;case ControlType.FindControl:zpText=omControlForm[zControlID+"$txtFindText"].value;break;case ControlType.FindControlLabel:zpText=controlGetElement(zControlID+"_lblFind").innerText;break;case ControlType.Date:zpText=omControlForm[zControlID+"$txtDate"].value;break;case ControlType.RichTextEditor:case ControlType.TextArea:case ControlType.Input:case ControlType.TextAreaLabel:case ControlType.InputLabel:zpText=controlGetValue(zControlID,lpControlType);break;case ControlType.Image:zpValue=controlGetElement(zControlID+"_imgImage").alt;break;case ControlType.File:zpValue=omControlForm[zControlID+"$txtFile"].value;break;case ControlType.FileLink:zpValue=omControlForm[zControlID+"$txtFileEdit"].value;break;}return zpText;}
function controlSetText(zControlID,zText,lControlType){if(zText==null)zText="";var lpControlType=controlGetType(zControlID,lControlType);switch(lpControlType){case ControlType.Checkbox:omControlForm[zControlID+"$chkCheckbox"].Text=zText;break;case ControlType.CheckboxLabel:controlGetElement(zControlID+"_lblCheckbox").innerText=zText;break;case ControlType.SelectLabel:controlGetElement(zControlID+"_lblSelect").innerText=zText;break;case ControlType.FindControl:findSetText(zControlID,zText);break;case ControlType.FindControlLabel:controlGetElement(zControlID+"_lblFind").innerText=zText;break;case ControlType.FileLink:omControlForm[zControlID+"$txtFileEdit"].value=zText;controlGetElement(zControlID+"_lnkFile").href=zText;controlGetElement(zControlID+"_lnkFile").innerText=zText;break;case ControlType.RichTextEditor:richTextEditorSetContent(zControlID,zText);break;case ControlType.TextArea:case ControlType.Input:case ControlType.TextAreaLabel:case ControlType.InputLabel:controlSetValue(zControlID,zText,lpControlType);break;}if(omControl[zControlID].ReadOnly){var opReadOnlyControl=omControl[zControlID].ReadOnly;switch(lpControlType){case ControlType.FindControl:case ControlType.Select:if(parseInt(controlGetValue(zControlID,lpControlType))==-1)zText='';break;default:break;}opReadOnlyControl.firstChild.nodeValue=zText;}}
function controlGetType(zControlID,lControlType){controlGetObject(zControlID);if(omControl[zControlID].ControlType||omControl[zControlID].ControlType==0)return omControl[zControlID].ControlType
var opControl;var lpType=null;if(lControlType||lControlType==0)lpType=lControlType;if(lpType<0)return lpType;if(lpType==null||lpType==ControlType.ID){opControl=omControlForm[zControlID];if(opControl)lpType=ControlType.ID;}if(lpType==null||lpType==ControlType.Input||lpType==ControlType.TextArea){opControl=omControlForm[zControlID+"$txtTextbox"];if(opControl){switch(opControl.tagName){case"INPUT":lpType=ControlType.Input;break;case"TEXTAREA":lpType=ControlType.TextArea;break;}}}if(lpType==null||lpType==ControlType.Select){opControl=omControlForm[zControlID+"$hidSelect"];if(opControl)lpType=ControlType.Select;}if(lpType==null||lpType==ControlType.FindControl){opControl=omControlForm[zControlID+"$txtFindText"];if(opControl)lpType=ControlType.FindControl;}if(lpType==null||lpType==ControlType.Date){opControl=omControlForm[zControlID+"$txtDate"];if(opControl)lpType=ControlType.Date;}if(lpType==null||lpType==ControlType.Checkbox){opControl=omControlForm[zControlID+"$chkCheckbox"];if(opControl)lpType=ControlType.Checkbox;}if(lpType==null||lpType==ControlType.FileLink){opControl=omControlForm[zControlID+"$txtFileEdit"];if(opControl)lpType=ControlType.FileLink;}if(lpType==null||lpType==ControlType.File){opControl=omControlForm[zControlID+"$txtFile"];if(opControl)lpType=ControlType.File;}if(lpType==null||lpType==ControlType.RichTextEditor){opControl=omControlForm[zControlID+"$txtRichTextEditor"];if(opControl)lpType=ControlType.RichTextEditor;}if(lpType==null){opControl=controlGetElement(zControlID+"_lblTextBox");if(opControl){if(lpType==ControlType.Input){if(opControl.getAttribute("ControlType"))lpType=ControlType.DateTimeLabel;else lpType=ControlType.InputLabel;}else{if(opControl.getAttribute("ControlType"))lpType=ControlType.DateTimeLabel;else lpType=ControlType.TextAreaLabel;}}}if(lpType==null){opControl=controlGetElement(zControlID+"_lblSelect");if(opControl)lpType=ControlType.SelectLabel;if(lpType==null){opControl=controlGetElement(zControlID+"_lblFind");if(opControl)lpType=ControlType.FindControlLabel;if(lpType==null){opControl=controlGetElement(zControlID+"_lblDate");if(opControl)lpType=ControlType.DateLabel;if(lpType==null){opControl=document.getElementById(zControlID+"_lblCheckbox");if(opControl)lpType=ControlType.CheckboxLabel;if(lpType==null){opControl=controlGetElement(zControlID+"_lblFile");if(opControl)lpType=ControlType.FileLabel;if(lpType==null){opControl=controlGetElement(zControlID+"_divFixed");if(opControl)lpType=ControlType.RichTextEditorLabel;}}}}}}if(lpType==null||lpType==ControlType.Image){opControl=controlGetElement(zControlID+"_imgImage");if(opControl)lpType=ControlType.Image;}omControl[zControlID].ControlType=lpType;return lpType;}
function controlLoad(zControlID,zEntityDisplayName,lControlType){if(!lControlType&&lControlType!=0)lControlType=controlGetType(zControlID);controlGetObject(zControlID);if(omControl[zControlID].Loaded==true){if(lControlType!=ControlType.ID){bmtWebClientError("Control "+zControlID+" has already been loaded.",document.location.href,0);return false;}}omControl[zControlID].Loaded=true;switch(lControlType){case ControlType.Checkbox:opPageControl=omControlForm[zControlID+"$chkCheckbox"];$addHandler(opPageControl,"focus",function(){controlFocus(zControlID);});if(zEntityDisplayName){opPageControl.EntityDisplayName=zEntityDisplayName;$addHandler(opPageControl,"propertychange",function(){controlTextChange(event,zEntityDisplayName);});}break;case ControlType.Input:case ControlType.TextArea:opPageControl=omControlForm[zControlID+"$txtTextbox"];$addHandler(opPageControl,"focus",function(){controlFocus(zControlID);});if(zEntityDisplayName){opPageControl.EntityDisplayName=zEntityDisplayName;$addHandler(opPageControl,"propertychange",function(){controlTextChange(event,zEntityDisplayName);});}break;case ControlType.Date:datePickerLoad(zControlID,zEntityDisplayName);break;case ControlType.File:opPageControl=omControlForm[zControlID+"$txtFile"];$addHandler(opPageControl,"focus",function(){controlFocus(zControlID);});if(zEntityDisplayName){opPageControl.EntityDisplayName=zEntityDisplayName;$addHandler(opPageControl,"propertychange",function(){fileUploadChange(this,event,zEntityDisplayName);});}break;case ControlType.FindControl:findLoad(zControlID,zEntityDisplayName);break;case ControlType.Select:selectLoad(zControlID,zEntityDisplayName);break;case ControlType.FileLink:opPageControl=omControlForm[zControlID+"$txtFileEdit"];$addHandler(opPageControl,"focus",function(){controlFocus(zControlID);});fileLinkLoad(zControlID);if(zEntityDisplayName){opPageControl.EntityDisplayName=zEntityDisplayName;$addHandler(opPageControl,"propertychange",function(){controlTextChange(event,zEntityDisplayName);});}break;}}
function controlLoaded(zControlID){controlGetObject(zControlID);return omControl[zControlID].Loaded;}
function controlAddValidation(zText,oLabel,zStartText){if(!oLabel)oLabel=controlGetElement("lblClientValidation");var opTextNode;var opBR=document.createElement("br");if(oLabel.children.length==0){if(!zStartText)opTextNode=document.createTextNode("Please correct the following validation failures:");else opTextNode=document.createTextNode(zStartText);oLabel.appendChild(opTextNode);oLabel.appendChild(opBR);}else oLabel.appendChild(opBR);opTextNode=document.createTextNode("* "+zText);oLabel.appendChild(opTextNode);}
function controlClearValidation(oLabel,oValidationRow){if(!oLabel)oLabel=controlGetElement("lblClientValidation");if(!oValidationRow)oValidationRow=controlGetElement("trClientValidation");oLabel.innerHTML="";oValidationRow.style.display="none";}
function controlCheckDate(oDate,lControlType){try{var zpDay=String(oDate.getDate());var zpMonth=String(oDate.getMonth()+1);var zpYear=String(oDate.getFullYear());if(zpDay.length==1)zpDay="0"+zpDay;if(zpMonth.length==1)zpMonth="0"+zpMonth;if(zpYear=="1")zpYear="0001";if(zpYear=="0001")return"";zpDate=zpDay+"/"+zpMonth+"/"+zpYear;if(lControlType!=ControlType.Date&&lControlType!=ControlType.DateLabel){var zpHours=String(oDate.getHours());var zpMinutes=String(oDate.getMinutes());var zpSeconds=String(oDate.getSeconds());if(zpHours.length==1)zpHours="0"+zpHours;if(zpMinutes.length==1)zpMinutes="0"+zpMinutes;if(zpSeconds.length==1)zpSeconds="0"+zpSeconds;zpDate+=" "+zpHours+":"+zpMinutes+":"+zpSeconds;}return zpDate;}catch(opCatch){return oDate;}}
function controlChangedReset(zEntityDisplayName){if(zEntityDisplayName)omControlChanged[zEntityDisplayName]=false;else{if(omControlChanged.Index){for(var lpLoop=0;lpLoop<omControlChanged.Index.length;lpLoop++){omControlChanged[omControlChanged.Index[lpLoop]]=false;}}}}
function controlIframeChangedReset(oWindow){try{oWindow.controlChangedReset();var opIframe;for(var lpLoop=0;lpLoop<oWindow.frames.length;lpLoop++){opIframe=oWindow.frames[lpLoop].frameElement;try{controlIframeChangedReset(opIframe.contentWindow);}catch(opCatch){}}}catch(opCatch){}}
function controlChangedSet(zEntityDisplayName){if(zEntityDisplayName)omControlChanged[zEntityDisplayName]=true;else{for(var lpLoop=0;lpLoop<omControlChanged.Index.length;lpLoop++){omControlChanged[omControlChanged.Index[lpLoop]]=true;}}}
function controlHasChanged(zEntityDisplayName){var bpControlChanged;if(zEntityDisplayName)bpControlChanged=omControlChanged[zEntityDisplayName];else{bpControlChanged=false;if(omControlChanged.Index){for(var lpLoop=0;lpLoop<omControlChanged.Index.length;lpLoop++){if(omControlChanged[omControlChanged.Index[lpLoop]]==true){bpControlChanged=true;break;}}}}return bpControlChanged;}
function controlGetAttribute(zControlID,zAttribute,lControlType){var zpValue=null;var lpType=controlGetType(zControlID,lControlType);switch(lpType){case ControlType.Select:zpValue=omControlForm[zControlID+"$txtSelect"].getAttribute(zAttribute);break;case ControlType.SelectLabel:zpValue=controlGetElement(zControlID+"_lblSelect").getAttribute(zAttribute);break;case ControlType.FindControl:zpValue=omControlForm[zControlID+"$txtFindText"].getAttribute(zAttribute);break;case ControlType.FindControlLabel:zpValue=controlGetElement(zControlID+"_lblFind").getAttribute(zAttribute);break;case ControlType.Checkbox:zpValue=omControlForm[zControlID+"$chkCheckbox"].getAttribute(zAttribute);break;case ControlType.CheckboxLabel:zpValue=controlGetElement(zControlID+"_lblCheckbox").getAttribute(zAttribute);break;case ControlType.File:zpValue=omControlForm[zControlID+"$txtFile"].getAttribute(zAttribute);break;}return zpValue;}
function controlGet(zControlID,lControlType){var opControl=null;var lpType=controlGetType(zControlID,lControlType);switch(lpType){case ControlType.ID:opControl=omControlForm[zControlID];break;case ControlType.Select:opControl=selectGetDOMObject(zControlID);break;case ControlType.SelectLabel:opControl=controlGetElement(zControlID+"_lblSelect");break;case ControlType.Date:opControl=omControlForm[zControlID+"$txtDate"].parentNode.parentNode.parentNode.parentNode.parentNode;break;case ControlType.DateLabel:opControl=controlGetElement(zControlID+"_lblDate");break;case ControlType.TextArea:case ControlType.Input:opControl=omControlForm[zControlID+"$txtTextbox"];break;case ControlType.TextAreaLabel:case ControlType.InputLabel:opControl=controlGetElement(zControlID+"_lblTextbox");break;case ControlType.Checkbox:opControl=omControlForm[zControlID+"$chkCheckbox"].parentNode;break;case ControlType.FindControl:opControl=omControlForm[zControlID+"$txtFindText"].parentNode.parentNode.parentNode.parentNode.parentNode;break;case ControlType.FindControlLabel:opControl=controlGetElement(zControlID+"_lblFind");break;case ControlType.DateTimeLabel:opControl=controlGetElement(zControlID+"_lblTextbox");break;case ControlType.Image:opControl=controlGetElement(zControlID+"_imgImage");break;case ControlType.File:opControl=omControlForm[zControlID+"$txtFile"];break;case ControlType.FileLink:opControl=omControlForm[zControlID+"$txtFileEdit"];break;}return opControl;}
function controlSetReadOnly(zControlID,bReadOnly){var lpControlType=controlGetType(zControlID);if(lpControlType>-1){var zpText;switch(lpControlType){case ControlType.Date:zpText=datePickerGetValue(zControlID);break;case ControlType.Select:if(controlGetValue(zControlID)==-1&&bReadOnly)zpText='';else zpText=controlGetText(zControlID,lpControlType);break;default:zpText=controlGetText(zControlID,lpControlType);break;}var zpDisplay;if(bReadOnly)zpDisplay="none";else zpDisplay="block";var opControl=controlGet(zControlID,lpControlType);if(opControl){if(zpDisplay!="block"||opControl.style.display!="")opControl.style.display=zpDisplay;var opReadOnlyControl;opReadOnlyControl=controlGetElement("span_"+zControlID);if(opReadOnlyControl){if(bReadOnly){opReadOnlyControl.firstChild.nodeValue=zpText;opReadOnlyControl.style.display="block";}else opReadOnlyControl.style.display="none";}else if(bReadOnly){opReadOnlyControl=document.createElement("span");opReadOnlyControl.id="span_"+zControlID;var opTextNode=document.createTextNode(zpText);opReadOnlyControl.appendChild(opTextNode);opControl.parentNode.insertBefore(opReadOnlyControl,opControl);}omControl[zControlID].ReadOnly=opReadOnlyControl;}}}
function controlNavigateCheck(oWindow){var bpLoad=true;if(oWindow){try{var zpUnload=oWindow.controlUnload();if(zpUnload){bpLoad=confirm("Are you sure you want to navigate away from this page?\n\n"+zpUnload+"\n\n"+"Press OK to continue, or Cancel to stay on the current page.");if(bpLoad==true)controlIframeChangedReset(oWindow);}}catch(opCatch){}}return bpLoad;}
function controlWithFocus(){return zmControlFocus;}
function controlGetObject(zControlID){var opControl;if(omControl[zControlID])opControl=omControl[zControlID];else{opControl=new Object();omControl[zControlID]=opControl;}return opControl;}
function controlTextChange(oEvent,zEntityDisplayName){if(event.propertyName=="value"||event.propertyName=="checked"){controlChanged(zEntityDisplayName);if(event.srcElement.tagName=="TEXTAREA"){if(event.srcElement.value.length>parseInt(event.srcElement.maxLength)){alert("The maximum length for this field is "+event.srcElement.maxLength+" characters.");var opOffset=0;if(event.srcElement.value.charCodeAt(event.srcElement.maxLength-1)==13)opOffset=1;event.srcElement.value=event.srcElement.value.slice(0,(event.srcElement.maxLength-opOffset));}}}}
function controlChanged(zEntityDisplayName){omControlChanged[zEntityDisplayName]=true;}
function controlChangeCheckIframe(opIFRAME,zpLinkName){var bpConfirm=false;try{bpConfirm=opIFRAME.controlHasChanged();}catch(opCatch){alert("controlChangeCheckIframe Error:"+opCatch.description);}if(bpConfirm==true){return confirm("Changes to the "+zpLinkName+" Link Page have not been saved.  Are you sure you want to continue?");}else return true;}
function controlMaxLength(oCtrl){var bpCheck;bpCheck=bmtStringTrimControl(oCtrl,event);if(bpCheck==false){alert("The Maximum length for this field is "+oCtrl.maxLength+" characters.");event.returnValue=false;return;}else{event.returnValue=true;return;}}
function controlUnload(){var opEntityDisplayNames=new Array();var lpLoop;controlUnloadIframe(opEntityDisplayNames,window);if(opEntityDisplayNames.length>0){var zpEntityDisplayNames="Changes to the ";for(lpLoop=0;lpLoop<opEntityDisplayNames.length;lpLoop++){if(lpLoop==0)zpEntityDisplayNames+=opEntityDisplayNames[lpLoop];else if(lpLoop==(opEntityDisplayNames.length-1))zpEntityDisplayNames+=" and "+opEntityDisplayNames[lpLoop];else zpEntityDisplayNames+=", "+opEntityDisplayNames[lpLoop];}zpEntityDisplayNames+=" screen";if(opEntityDisplayNames.length>1)zpEntityDisplayNames+="s";zpEntityDisplayNames+=" will be lost.";return zpEntityDisplayNames;}}
function controlPageReload(){try{popupMenuHide();}catch(oCatch){}try{selectPageReload();}catch(oCatch){}try{findPageReload();}catch(oCatch){}try{datePickerPageReload();}catch(oCatch){}}
function controlUnloadIframe(oArray,oWindow){var opIframe;if(oWindow.controlHasChanged()){for(lpLoop=0;lpLoop<oWindow.omControlChanged.Index.length;lpLoop++){if(oWindow.omControlChanged[oWindow.omControlChanged.Index[lpLoop]]==true)oArray[oArray.length]=oWindow.omControlChanged.Index[lpLoop];}}for(var lpLoop=0;lpLoop<oWindow.frames.length;lpLoop++){opIframe=oWindow.frames[lpLoop].frameElement;if(opIframe.src!=""){try{oWindow.controlUnloadIframe(oArray,opIframe.contentWindow);}catch(oCatch){}}}}
function controlFocus(zControlID){if(zControlID)zmControlFocus=zControlID;else zmControlFocus=null;controlPageReload();}

