var Msg=[/*0*/['',''],
['Record not selected','Record not selected'],
['Number field: \n','Number field: \n'],
['Required fields: \n','Required fields: \n'],
['Record was not changed','Record was not changed'],
['',''],
['Save or cancel changes first','Save or cancel changes first'],
['Undefined searching criteria','Undefined searching criteria'],
['Access denied','Access denied'],
['You must select item first',''],
/*10*/['',''],['',''],['',''],['',''],['',''],['',''],['',''],
['Delete record(s) ?','Delete record(s) ?'],
['Clear Object ?','Clear Object ?'],
['Data Changed.\nSave changes before delete?','Data Changed.\nSave changes before delete?'],
/*20*/['Invalid page number','Invalid page number']]
var winParam='scrollbars',FS="FormBrowser2.aspx",submitAborted=false,beforeDelete=false
var focusedControl='',changesColor='#ff6508',undoChangesColor='#545454'
var oldAutoSave=false,RecordChangedIDs='',selectedRecordTextColor='black',RecordChanged=false
var imageViewerSrc = "window.open(ImageSrc.replace('GetImage.aspx','ImageViewer_Frameset.aspx').replace('GetSBImage.aspx','ImageViewer_Frameset.aspx'),'ImageViewer',winParam+',resizable=yes,width=850,height=600,left=50,top=50');"
var showStatusBar="Yes",AutoShow3DotImages=false
var sAgent = navigator.userAgent.toLowerCase();
function el(s){return document.getElementById(s)}
function ReplSpaceSymb(a,d,b){return a.split(d).join(b)}
function switchAutoSave(id)
{
	if(typeof(window.AutoSave)=='undefined')return;
	else
		switch(id){
		case 0:if(AutoSave){oldAutoSave=true;AutoSave=false}
		break;
		case 1:if(oldAutoSave){AutoSave=true;oldAutoSave=false;}
		break;
	}
}
function CallshowModalDialog(url,args,W,H,M,S)
{	
	if(isIE())
	{
		var s=(S==null)? "no" : S
		if(showStatusBar=="No")H-=10;
		var params="center:yes;help:no;minimize:no;maximize:"+M+";border:thin;scroll:"+s+";dialogWidth:"+W+
		"px;dialogHeight:"+H+"px;status:"+showStatusBar+";"
		switchAutoSave(0)
		var retVal=showModalDialog(url,args,params)
		switchAutoSave(1)
		return retVal
	}
	else if(isFireFox()||isSafari()||isOpera())
	{
		var T=(screen.height-H)/2;
		var L=(screen.width-W)/2;
		var J="location=no,menubar=no,toolbar=no,dependent=yes,dialog=yes,minimizable=no,modal=yes,alwaysRaised=yes"+
			  ",resizable="+M+",width="+W+",height="+H+",top="+T+",left="+L;
		var K=window.open(url,'',J,true);
		K.dialogArguments=args;
		K.height=H;
		K.opener=window;
		K.focus();
		return K
	}
}
function CallFormMediaDlg(m,e,d,a,g,n,h){var b="FormMediaDlg.aspx?tableName="+m+"&mediaFieldName="+strToUrl(e)+"&keyFieldName="+strToUrl(d)+"&keyFieldValue="+strToUrl(a)+"&mediaID="+strToUrl(g)+"&mediaExtFieldName="+strToUrl(n)+"&fileExtValue="+strToUrl(h); var f=CallshowModalDialog(b,"",250,200,"no"); if(isIE()){MediaAction(f,m,e,d,a,g,n,h)}}
function MediaAction(m,e,f,g,d,h,b,a){if((m!=false)&&(m!=null)){switch (m){case 1: url="GetMedia.aspx?TableName="+e+"&KeyFieldValue="+strToUrl(d)+"&MediaFieldName="+f+"&KeyFieldName="+g+"&FileExtension="+a; window.open(url,"",250,280,"no"); break; case 2: url="Repost2.aspx?TableName="+e+"&KeyFieldValue="+strToUrl(d)+"&FieldName="+f+"&KeyFieldName="+g+"&mediaExtFieldName="+b; w=window.open(url,e,winParam+",width=400,height=150,left=300,top=300"); w.opener=window; w.focus(); break; case 3: if(confirm(Msg[18][Form_Direction - 1])){clearMedia(h,e,f,g,d)}break}}}
function CallFormImageDlg(n,g,d,a,m,h,f,p){var b="FormImageDlg.aspx?tableName="+strToUrl(n)+"&imageFieldName="+strToUrl(g)+"&keyFieldName="+strToUrl(d)+"&keyFieldValue="+strToUrl(a)+"&x="+m+"&y="+h+"&imgID="+f+"&mediaExtFieldName="+p; var e=CallshowModalDialog(b,"",250,220,"no"); if(isIE()){ImageAction(e,n,g,d,a,m,h,f,p)}}
function ImageAction(d,m,f,b,a,h,g,e,n){if((d!=false)&&(d!=null)){switch (String(d).substring(0,1)){case "1": url="GetImage.aspx?TableName="+m+"&KeyFieldValue="+strToUrl(a)+"&ImageFieldName="+f+"&KeyFieldName="+b+"&maxdimention=500"; LaunchImageViewer(url,document.images[e].width,document.images[e].height,event); break; case "2": url="Repost2.aspx?TableName="+m+"&KeyFieldValue="+strToUrl(a)+"&FieldName="+f+"&KeyFieldName="+b+"&mediaExtFieldName="+n; w=window.open(url,m,winParam+",width=400,height=150,left=300,top=300"); w.opener=window; w.focus(); break; case "3": if(confirm(Msg[18][Form_Direction - 1])){clearImage(e,m,f,b,a)}break; case "4": rotateImage(e,m,f,b,a,String(d).substring(2,5)); break}}}
function LaunchDocumentViewer(documentSrc)
{
	if(arguments.length==3 && arguments[1]!="")
	{
		var e=arguments[2]
		img=(isFireFox()) ? e.originalTarget : e.srcElement;
		var td=img.parentNode
		obj = getDataFieldEmbededObject(documentSrc, arguments[1])
		td.innerHTML=obj
	}
	else
		window.open(documentSrc)
}
function LaunchImageViewer(ImageSrc,x,y,e) {
    if (allowPopup()) {
        el('popupFrame').style.display = 'block';
        el('popupFrame').src = ImageSrc.replace('GetImage.aspx', 'ImageViewer_Frameset.aspx').replace('GetSBImage.aspx', 'ImageViewer_Frameset.aspx') + "&havePopups=" + havePopups;
        $('#popupDialog').dialog('open');
    }
    else if (allowParentPopup()) {
        window.parent.parent.LaunchImageViewer(ImageSrc,x,y,e);
    }
    else {
        if (x + y != 0) { window.imagex = 500 * x / Math.max(x, y); window.imagey = 500 * y / Math.max(x, y); }
        window.imagesrc = ImageSrc;
        try {
            imgID = (isFireFox()) ? e.originalTarget.id : e.srcElement.id;
            var row = imgID.substring(imgID.lastIndexOf('_') + 1);
            setCurrentRecord(row);
        } catch (e) { }
        eval(imageViewerSrc)
    }
	return false
}
function Delete_Record()
{
	if(typeof(el('CurrentRecordPosition'))=='undefined')return;
	switchAutoSave(0)
	if((el('CurrentRecordPosition').value=='0')||(el('CurrentRecordPosition').value==''))
		alert(Msg[1][Form_Direction-1])
	else{
		if(confirm(Msg[17][Form_Direction-1])){
			if(RecordChanged){
				if((typeof(window.SCR)=='object')&&(confirm(Msg[19][Form_Direction-1]))){
					el('RV_Delete_Insert').value='Delete'
					btnUpdate_OnClick()
				}
			}
			beforeDelete=true
			beforeSubmitDHTML()
			if(submitAborted){submitAborted=false;beforeDelete=false;return;}
			el('RV_Delete_Insert').value='Delete'
			clearActionClicks()
			Submit()
		}
	}
	switchAutoSave(1)
}
function New_Record(Mode) {
    el('RV_Delete_Insert').value = (Mode == 2) ? 'Duplicate' : 'Insert';
	beforeSubmitDHTML()
	if(!submitAborted)ClearSearch();
}
function RunAction(Form_ID,Action_ID,Mode_ID,v_top,v_left,v_width,v_height,v_resizable,v_other)
{
	if(RecordChanged){
		switchAutoSave(0)
		alert(Msg[6][Form_Direction-1]);
		switchAutoSave(1)
		return;
	}
	var other="",r="";
	var c=(el('CurrentRecordPosition')) ? strToUrl(el('CurrentRecordPosition').value) : "";
	var a=(el('Appl_ID')) ? "&Appl_ID="+el('Appl_ID').value : "";
	var v=(el('KEYFIELDVALUE')) ? "&V="+strToUrl(el('KEYFIELDVALUE').value) : "";
	var s=((el('QBE_Where_Clause'))&&(el('Table_Type').value=='2')) ? 
		a+
		"&V="+el('KEYFIELDVALUE').value+"&W="+strToUrl(el('QBE_Where_Clause').value)
		:
		"";
	var sr=(el('SelectedRecords')) ? "&SR="+strToUrl(el('SelectedRecords').value) : "";
	var usr=(el('UnSelectedRecords')) ? "&USR="+strToUrl(el('UnSelectedRecords').value) : "";
	if(sr!=""||usr!="")sr+=a+v
	if(arguments.length==9)other="&"+v_other;
	if(typeof(v_resizable)!='undefined')
	{
		if(String(v_resizable)=='1')r=",resizable"
	}
	if (Mode_ID == 1) Submit();
	else if (Mode_ID == 20) {
	    var s = 'ActionOutput.asp?form_id=' + Form_ID + '&Action_ID=' + Action_ID + "&CurrentRecordPosition=";
	    var n = 'ActionOutput_' + Action_ID;
	    loadXML("BuildList.aspx?Method=getActionCommand&s=" + strToUrl(s) + "&n=" + strToUrl(n) + "&Action_ID=" + Action_ID, 1);
	}
	else if (Mode_ID == 10) {
	    var l = getActionLanguage(Action_ID)
	    if (l == null) return
	    var code = (l == 1 || l == 2 || l == -1) ? 'ActionOutput.asp' : 'ActionOutput.aspx';
	    s = code + '?form_id=' + Form_ID + '&Action_ID=' + Action_ID
	    parent.frames["main"].location.href = s;
	}
	else if (Mode_ID == 3) {
	    var Server_Code = Find_Object(Action_ID, "ACTIONS_DFN", "ACTION_ID", "SERVER_CODE", true);
	    eval(Server_Code);
	}
	else {
	    var l = getActionLanguage(Action_ID)
	    if (l == null) return
	    var code = (l == 1 || l == 2 || l == -1) ? 'ActionOutput.asp' : 'ActionOutput.aspx';
	    s = code + '?form_id=' + Form_ID + '&Action_ID=' + Action_ID + "&CurrentRecordPosition=" + c + s + other + sr + usr;
	    var n = 'ActionOutput_' + Action_ID
	    if (Mode_ID == 4) {
	        if (true/*allowPopup()*/) {
	            el('popupActionFrame_' + Action_ID ).style.display = 'block';
	            el('popupActionFrame_' + Action_ID).src = s + "&havePopups=" + havePopups;
	            el('popupActionFrame_' + Action_ID).opener = window;
	            $('#popupAction_' + Action_ID).dialog('open');
	        }
	    }
	    else {
	        w = window.open(s, n, winParam + r + ',width=' + v_width + ',height=' + v_height + ',left=' + v_left + ',top=' + v_top)
	        w.opener = window
	        w.focus()
	    }
	    return
	}
}
function RunHelp(Help_ID)
{
	if(Help_ID!=0){
		w=window.open('HelpOutput.aspx?Help_ID='+Help_ID,Help_ID,winParam+',width=500,height=500,left=0,top=0')
		w.focus()
	}
}
function popupOpen(url, c, w) {
    el('popupFrame').style.display = 'block';
    el('popupFrame').src = url + "&havePopups=" + havePopups;
    el('popupFrame').opener = w;
    $('#popupDialog').dialog('open');
    el('ui-dialog-title-popupDialog').innerHTML = c;
}
function GetCodeEditorDlg(Table,Field,KeyField,Key,ControlName,ReadWriteStatus,Dir,Caption,w)
{
	var RetVal,url,c=(Caption) ? Caption : "";
	var editor='MemoEditor.aspx',W='530',H='450';
	if (el('Form_ID') != null) { if (el('Form_ID').value == '80' || el('Form_ID').value == '84' || el('Form_ID').value == '86') { editor = 'MemoCodeEditor.aspx'; H = '610'; W = '800';havePopups = false; } }
	url=editor+"?RWStatus="+ReadWriteStatus+"&cn="+ControlName+"&uhcn=false"+
	"&Table=" + Table + "&Field=" + Field + "&KeyField=" + KeyField + "&Key=" + strToUrl(Key) + "&Dir=" + Dir + "&C=" + c;
	if (allowPopup()) {
	    popupOpen(url, c, w);
	}
	else if (allowParentPopup() && typeof(window.parent['GetCodeEditorDlg']) == 'function' && window.location.href != window.parent.location.href) {
	    window.parent.GetCodeEditorDlg(Table, Field, KeyField, Key, ControlName, ReadWriteStatus, Dir, Caption, window);
	}		
	else {
	    RetVal = CallshowModalDialog(url + "&havePopups=false", (el(ControlName)) ? el(ControlName).value : "", W, H, "yes")
	    if (isIE()) {
	        var S = String(RetVal)
	        if ((S != "false") && (S != "null") && (S != "undefined")) {
	            updateControl(ControlName, S, false,w);
	            Changed(); S = true 
	        }
	        else S = false
	        return S
	    }
	}	
}
function GetHTMLEditorDlg(Table,Field,KeyField,Key,ControlName,ReadWriteStatus,Dir,Caption,defaultFont,defaultFontSize)
{
	var url,c=(Caption) ? Caption : "";
	if(isIE())
		var df=(defaultFont) ? defaultFont : el(ControlName).currentStyle.fontFamily.split(',')[0];
	else if(isFireFox())
		df=defaultFont
	var dfs=(defaultFontSize) ? defaultFontSize : "x-small";
	url="HTMLEditor.aspx?RWStatus="+ReadWriteStatus+
	"&Table="+Table+"&Field="+Field+"&KeyField="+KeyField+"&Key="+strToUrl(Key)+"&Dir="+Dir+
	"&C="+c+"&DefaultFont="+df+"&DefaultFontSize="+dfs
	var RetVal=CallshowModalDialog(url,el(ControlName),800,600,"yes","no","no")
	if(isIE())
	{
		var S=String(RetVal)
		if((S!="false")&&(S!="null")&&(S!="undefined")){
			var obj=el(ControlName);
			(obj.tagName=='DIV') ? obj.innerHTML=RetVal : obj.value=RetVal;
			if(document.all[ControlName.replace('CF_','F_')]!=null)document.all[ControlName.replace('CF_','F_')].value=RetVal;
			if(obj.tagName=='TEXTAREA'){var oEditor = FCKeditorAPI.GetInstance(ControlName); oEditor.EditorDocument.body.innerHTML=RetVal;};
			Changed()
		}
	}else if(isFireFox()||isSafari())
	{
		RetVal.controlName=ControlName;
	}
	return
}
function GetMultiSelectDlg(ControlName,TableName,DetailField,ResultField,DefaultValue,OrderByClause,Dir,Caption,w)
{
	var c=(Caption) ? Caption : "";
	var url="FormMultiSelectList.aspx?T="+TableName+"&D="+DetailField+"&R="+ResultField+"&cn="+ControlName+"&uhcn=false"+
	"&O=" + OrderByClause + "&Dir=" + Dir + "&V=" + DefaultValue + "&C=" + c
	if (allowPopup()) {
	    popupOpen(url, c, w);
	}
	else if (allowParentPopup() && typeof (window.parent['GetMultiSelectDlg']) == 'function' && window.location.href != window.parent.location.href) {
	    window.parent.GetMultiSelectDlg(ControlName, TableName, DetailField, ResultField, DefaultValue, OrderByClause, Dir, Caption, window);
	}
	else {
	    var RetVal = CallshowModalDialog(url, "", 300, 300, "no")
	    if (isIE()) updateControl(ControlName, RetVal, false,w)
	}
	return
}
function GetPagingMultiSelectDlg(ControlName,TableName,DetailField,ResultField,DefaultValue,OrderByClause,Dir,Caption,w)
{
	var c=(Caption) ? Caption : "";
	var url="FormPagingMultiSelectList.aspx?T="+TableName+"&D="+DetailField+"&R="+strToUrl(ResultField)+
	"&M=1&cn=" + ControlName + "&uhcn=true&O=" + OrderByClause + "&Dir=" + Dir + "&V=" + DefaultValue.substring(0, 1200) + "&C=" + c
	if (allowPopup()) {
	    popupOpen(url, c, w);
	}
	else if (allowParentPopup() && typeof(window.parent['GetPagingMultiSelectDlg']) == 'function' && window.location.href != window.parent.location.href) {
	    window.parent.GetPagingMultiSelectDlg(ControlName, TableName, DetailField, ResultField, DefaultValue, OrderByClause, Dir, Caption, window);
	}
	else {
	    var RetVal = CallshowModalDialog(url, "", 450, 400, "no", null, ControlName, true)
	    if (isIE()) {
	        var S = String(RetVal)
	        updateControl(ControlName, RetVal, true,w)
	    }
	}
	return
}
function GetPopupTreeFormDlg(ControlName,TableName,DetailField,ResultField,DefaultValue,LookupForm_ID,w)
{
	var url="FormBrowser2.aspx?Form_ID="+LookupForm_ID+"&DefaultValue="+DefaultValue
	var whereTableIndex=TableName.toUpperCase().indexOf(" WHERE ")
	if (whereTableIndex > -1) url += "&TREE_SQL_WHERE_CLAUSE=" + TableName.substring(whereTableIndex + 7)
	if (allowPopup()) {
	    window.controlName = ControlName;
	    window.updateHControl = true;
	    window.tableName = TableName;
	    window.detailField = DetailField;
	    window.resultField = ResultField;
	    popupOpen(url, '&nbsp;', w);
	}
	else if (allowParentPopup() && typeof (window.parent['GetPopupTreeFormDlg']) == 'function' && window.location.href != window.parent.location.href) {
	    window.parent.GetPopupTreeFormDlg(ControlName, TableName, DetailField, ResultField, DefaultValue, LookupForm_ID, window);
	}	
	else {
	    var RetVal = CallshowModalDialog(url, "", 500, 520, "no")
	    if (isIE()) {
	        var S = String(RetVal)
	        if ((S != "false") && (S != "null") && (S != "undefined")) {
	            value = getStringOfRecordset(RetVal, TableName, DetailField, ResultField, true)
	            RetVal = RetVal + ':' + value
	            updateControl(ControlName, RetVal, true,w)
	        }
	    }
	    else {
	        RetVal.controlName = ControlName;
	        RetVal.updateHControl = true;
	        RetVal.tableName = TableName;
	        RetVal.detailField = DetailField;
	        RetVal.resultField = ResultField;
	    }
	}
	return
}
function updateTreeControl4FF() {
    var t = (window.tableName) ? window.tableName : window.parent.tableName;
    var d = (window.detailField) ? window.detailField : window.parent.detailField;
    var r = (window.resultField) ? window.resultField : window.parent.resultField;
    var c = (window.controlName) ? window.controlName : window.parent.controlName;
    var h = (window.updateHControl) ? window.updateHControl : window.parent.updateHControl;
	var value=getStringOfRecordset(window.returnValue,t,d,r,true)
	var RetVal = window.returnValue + ':' + value;
	var obj = (window.opener) ? window.opener : window.parent;
	obj.updateControl(c, RetVal, h,obj.el('popupFrame').opener);
	if (window.parent.$) window.parent.$('#popupDialog').dialog('close');
}
function GetPopupComboBoxDlg(ControlName,TableName,DetailField,ResultField,DefaultValue,OrderByClause,Dir,Caption,w) {
	var c=(Caption) ? Caption : "";
	var url = "FormPopupList.aspx?T=" + TableName + "&D=" + DetailField + "&R=" + strToUrl(ResultField) +
	"&M=1&cn=" + ControlName + "&uhcn=true&O=" + OrderByClause + "&Dir=" + Dir + "&V=" + DefaultValue + "&C=" + c;
	if (allowPopup()) {
	    popupOpen(url, c, w);
	}
	else if (allowParentPopup() && typeof (window.parent['GetPopupComboBoxDlg']) == 'function' && window.location.href != window.parent.location.href) {
	    window.parent.GetPopupComboBoxDlg(ControlName, TableName, DetailField, ResultField, DefaultValue, OrderByClause, Dir, Caption,window);
	}
	else {
	    var RetVal = CallshowModalDialog(url + "&havePopups=false", "", 350, 330, "no")
	    if (isIE()) updateControl(ControlName, RetVal, true,w)
	}
	return
}
function updateControl(ControlName, RetVal, updateHControl, w) {
	var HControlName
	var S = String(RetVal)
	var c = (w && w != 'undefined') ? w : window;
	if((S!="false")&&(S!="null")&&(S!="undefined")){
		var Obj=c.el(ControlName)
		Obj.value = (updateHControl) ? RetVal.substring(RetVal.indexOf(':') + 1) : RetVal;
		if(updateHControl){
		HControlName='H'+ControlName.substring(ControlName.indexOf('_'))
		var HObj=c.el(HControlName)
		if(HObj)
			HObj.value=RetVal.substring(0,RetVal.indexOf(':'))
		else
		{
			HControlName='H_'+ControlName
			HObj=c.el(HControlName)
			if(HObj)HObj.value=RetVal.substring(0,RetVal.indexOf(':'))
		}}
		Obj.focus()
		if(typeof(window['FD_'+ControlName])=='function')eval('FD_'+ControlName+'()')
		c.Changed()
	}
}
function GetPopupListDlg(ControlName,TableName,DetailField,ResultField,DefaultValue,OrderByClause,Dir,Caption,w)
{
	var c=(Caption) ? Caption : "";
	var url="FormPopupList.aspx?T="+TableName+"&D="+DetailField+"&R="+ResultField+
	"&M=0&cn=" + ControlName + "&uhcn=false&O=" + OrderByClause + "&Dir=" + Dir + "&V=" + DefaultValue + "&C=" + c
	if (allowPopup()) {
	    popupOpen(url, c, w);
	}
	else if (allowParentPopup() && typeof (window.parent['GetPopupListDlg']) == 'function' && window.location.href != window.parent.location.href) {
	    window.parent.GetPopupListDlg(ControlName, TableName, DetailField, ResultField, DefaultValue, OrderByClause, Dir, Caption, window);
	}	
	else {
	    var RetVal = CallshowModalDialog(url + "&havePopups=false", "", 350, 330, "no")
	    if (isIE()) updateControl(ControlName, RetVal, true,w)
	}
	return
}
function CallFormPrintDlg(strForm_Type,strForm_ID,strReport_Name)
{
	var url,Q=el('QBE_Where_Clause').value,printType
	var Filtered=((Q=='(1=1)')||(Q=='')) ? '0' : '1';
	var tableType=(el('Table_Type')) ? el('Table_Type').value : '1';
	url="FormReportDlg.aspx?Form_type="+strForm_Type+"&Table_Type="+tableType+
	"&Report_Name=" + strReport_Name + "&Filtered=" + Filtered + "&Form_ID=" + strForm_ID + "&Report_Name=" + strReport_Name
	var RetVal=CallshowModalDialog(url,"",250,290,"no")
	if (isIE()) CallFormPrint(RetVal, strForm_ID, strReport_Name); //RetVal='1_2_50'
}
function CallFormPrint(RetVal, strForm_ID, strReport_Name) {
    if ((RetVal != false) && (RetVal != null)) {
        var A = RetVal.split('_')
        var Q = el('QBE_Where_Clause').value
        printType = A[0]
        if (printType == '1' || printType == '3' || printType == '4') {
            var CurrPage = ""
            var tableType = (el('Table_Type')) ? el('Table_Type').value : '1';
            if (tableType == '2') { if (el('CurrPage')) CurrPage = el('CurrPage').value }
            else { if (el('SQLRowIDsArray')) CurrPage = el('SQLRowIDsArray').value }
            var app = (el('Appl_ID')) ? "&Appl_ID=" + el('Appl_ID').value : "";
            var key = (el('KEYFIELDVALUE')) ? "&KEYFIELDVALUE=" + strToUrl(el('KEYFIELDVALUE').value) : "";
            url = "FormPrint.aspx?Form_ID=" + strForm_ID + app + key +
		"&SQL_Where_Clause=" + strToUrl(ReplSpaceSymb(Q, '%', '*')) +
		"&PrintMode=" + A[1] + "&Max_Records=" + A[2] +
		"&ReportType=" + A[0] + "&ReportName=" + strToUrl(strReport_Name) +
		"&CurrentRecord=" + strToUrl(el('CurrentRecordPosition').value) +
		"&CurrentPage=" + strToUrl(CurrPage) +
		"&Order_By_Clause=" + strToUrl(el('Order_By_Clause').value)
            if (printType == '3' || printType == '4') {
                var w = window.open(url, strForm_ID, winParam + ',menubar,toolbar,resizable,width=600,height=500,left=0,top=0')
                w.opener = window
                w.focus()
                return
            }
            else RetVal = CallshowModalDialog(url, "", 600, 490, "yes", "yes")
        }
    }
}
function CallFormQBE(strForm_ID,SearchType,strFormHeight,design)
{
	var key=(el('KEYFIELDVALUE')) ? "&KEYFIELDVALUE="+strToUrl(el('KEYFIELDVALUE').value) : "";
	var Appl_ID=(el('Appl_ID')) ? strToUrl(el('Appl_ID').value) : "";
	var W=el('QBE_Where_Clause'),v_design="";
	if(arguments.length==4&&design!="")v_design="&"+design;
	var url="FormQBE.aspx?Form_ID="+strForm_ID+"&SearchType="+SearchType+"&Appl_ID="+Appl_ID+key+v_design;
	var RetVal=CallshowModalDialog(url,"",620,strFormHeight+10 ,"no")
	if(isIE())
	{
		if((RetVal!=false)&&(RetVal!=null)){
			var prevSearch=RetVal.substring(0,1)
			var oldWhereClause=(W.value=="") ? "" : W.value+" AND "
			el('Search_Type').value=RetVal.substring(1,2)
			W.value=(prevSearch=="1") ? oldWhereClause+RetVal.substring(2) : RetVal.substring(2);
			if(el('CurrPage'))el('CurrPage').value=""
			clearActionClicks()
			Submit();
		}
	}
}
function ClearSearch()
{
	var tableType=(el('Table_Type')) ? el('Table_Type').value : '1';
	var Identity=(el('Identity')) ? el('Identity').value : "ROWID";
	var P=el('CurrentRecordPosition');ST=el('Search_Type');Q=el('QBE_Where_Clause');
	if((tableType=='1')&&(P)&&(P.value!='0')&&(P.value!='')){
		Q.value="(I."+Identity+"='"+P.value+"')"
		ST.value='1'
	}
	else{
		ST.value='0'
		Q.value="(1=1)"
	}
	if(el('TotalFind'))el('TotalFind').value=""
	if(el('CurrPage'))el('CurrPage').value=""
	clearActionClicks()
	Submit();
}
function hiLite(ID,Name)
{
	if(ID.substring(0,4).toUpperCase()=='BTN_'){if(RecordChangedIDs.indexOf('#'+ID.substring(4)+',')>-1) return;}
	if (document.images[ID] && ID != 'btn_0') document.images[ID].src = Name;
}
function btnClose_OnClick(){window.parent.close;return false;}
function disableEdits()
{
	if(typeof(window.SCR)=='object'){
		if(document.images['btn_0'])document.images['btn_0'].src='images/NewRecord.gif'
		for(var i=0,index='';i<SCR.length;i++){
			index=SCR[i].substring(0,SCR[i].indexOf(','))
			if (index != currentRecordID) hiLite('btn_' + index, 'images/NoCursor.gif')
			else hiLite('btn_'+index,'images/Cursor'+((Form_Direction==2)?'2.gif':'.gif'))
		}
	}
}
function btnReset_OnClick(Page)
{
	if((el('RV_Delete_Insert').value=='AfterInsert')||(el('RV_Delete_Insert').value=='AfterDuplicate'))
	{
		if(el('CurrPage'))el('CurrPage').value=Page;
		el('btnUpdate').value=''
		clearActionClicks()
		Submit();
	}
	else
	{
		if(el('CurrentRecordPosition')){
		var A=el('CurrentPositionButtonName').value
		var B=el('CurrentRecordPosition').value
		resetHTML()
		el('TheForm').reset()
		RecordChangedIDs=''
		disableEdits()		
		el('CurrentPositionButtonName').value=A
		el('CurrentRecordPosition').value=B
		RecordChanged=false
		if(el('SaveBtn'))el('SaveBtn').style.color=undoChangesColor;
		if(el('CancelBtn'))el('CancelBtn').style.color=undoChangesColor
		if(el('Save_And_ExitBtn'))el('Save_And_ExitBtn').style.color=undoChangesColor;
		GridDeletedRowsCount=0
		}
		return
	}
}
function resetHTML()
{
	try
	{
	for(var i=0,e;i<HTMLControls.length;i++){
		c=HTMLControls[i];
		obj=el(c);
		h_obj=el(c.replace('CF_','H_'))
		old_value=ReplSpaceSymb(h_obj.value,'~','"');
		if(obj.tagName=='TEXTAREA'){e=FCKeditorAPI.GetInstance(c);if(e.IsDirty())e.SetHTML(old_value);}
		else{if(obj.innerHTML!=old_value)obj.innerHTML=old_value;}
	}
	}catch(e){}
}
function HaveNewRecord()
{
	var obj,result=false,j,i,C=''
	var S=ReplSpaceSymb(el('FieldsNamesIDArray').value,",","','")
	S=S.substring(2)+"'"
	var A=eval("new Array("+S+")")
	for(i=0;(i<A.length)&&(!result);i++){
		C='CF_'+A[i].substring(A[i].indexOf('#')+1)+'_0'
		if(el(C)){
			if((el(C).value!="")&&(el(C).tagName!="SPAN")&&(el(C).tagName!="DIV"))result=true
		}
	}
	return result
}
function RequiredFieldHaveValue(controlID){
	var C=el(controlID)
	return (!C) ? true : (!(C.value==""))
}
function setFocusedElem(s,j,rownum)
{
	if(focusedControl==''){
		var o=(s==1) ? ReqFields[j] : NumberFields[j];
		focusedControl=o.substring(0,o.indexOf(','))+'_'+rownum
	}
	return
}
function CheckRequitedFields2()
{
	var j,result=true,S='',FieldName,i,C,loopIndex=0,haveNewRec=false,o;
	focusedControl=''
	if(ReqFields.length==0)return ''
	else
	{
		haveNewRec=HaveNewRecord()
		for(j=0;j<ReqFields.length;j++)
		{
			o=ReqFields[j]
			FieldName=o.substring(0,o.indexOf(','))
			if(typeof(window.SCR)=='object')
			{
				for(i=-1;i<SCR.length;i++)
				{
					rownum=(i==-1) ? '0' : SCR[i].substring(0,SCR[i].indexOf(','))
					if(!RequiredFieldHaveValue(FieldName+'_'+rownum))
					{
				   		if(rownum=='0')
						{
					     	if(haveNewRec)
							{
								setFocusedElem(1,j,rownum)
				   				S=S+'"'+o.substring(o.indexOf(',')+1)+'"\n'
				   				result=false
							}
						}
						else
						{
							setFocusedElem(1,j,rownum)
				   			S=S+'"'+o.substring(o.indexOf(',')+1)+'"\n'
				   			result=false
						}
					}
				}
			}
			else {
			    var b=el('CurrentPositionButtonName')
				rownum=b.value.substring(b.value.lastIndexOf('_')+1)
				if(!RequiredFieldHaveValue(FieldName+'_'+rownum))
				{
					setFocusedElem(1,j,rownum)
					S=S+'"'+o.substring(o.indexOf(',')+1)+'"\n'
					result=false
				}
			}
		}
		return S
	}
}
function CheckNumberFields2()
{
	var S='',FieldName,j,result=true,i,C,F='',o
	focusedControl=''
	if(NumberFields.length==0)return ''
	else
	{
		for(j=0;j<NumberFields.length;j++)
		{
			o=NumberFields[j]
			FieldName=o.substring(0,o.indexOf(','))
			if(typeof(window.SCR)=='object')
			{
				for(i=-1;i<SCR.length;i++)
				{
					rownum=(i==-1) ? '0' : SCR[i].substring(0,SCR[i].indexOf(','))
					F=FieldName+'_'+rownum
					C=el(F)
					if((C)&&(C.value!="")&&
					(C.value!="0")&&(C.value!=".00")&&(C.value!="0.00")&&(!C.readOnly))
					{
						if(!parseFloat(C.value))
						{
							setFocusedElem(2,j,C.id.substring(C.id.lastIndexOf('_')+1))
							S=S+'"'+o.substring(o.indexOf(',')+1)+'"\n'
							result=false
						}
					}
				}
			}
			else {
			    var b=el('CurrentPositionButtonName')
				rownum=b.value.substring(b.value.lastIndexOf('_')+1)
				F=FieldName+'_'+rownum
				C=el(F)
				if((C)&&(C.value!="")&&
				(C.value!="0")&&(C.value!=".00")&&(C.value!="0.00")&&(!C.readOnly))
				{
					if(!parseFloat(C.value))
					{
						setFocusedElem(2,j,C.id.substring(C.id.lastIndexOf('_')+1))
						S=S+'"'+o.substring(o.indexOf(',')+1)+'"\n'
						result=false
					}
				}
			}
		}
		return S
	}
}
function btnUpdate_OnClick()
{var Form=el('TheForm')
	if(savePending)return;
	switchAutoSave(0)
	if(RecordChanged||HTMLChanged())
	{
		beforeSubmitDHTML()
		if(submitAborted){submitAborted=false;return;}
		var S=CheckRequitedFields2()
		if(S=='')
		{
			S=CheckNumberFields2()
			if(S=='')
			{
				if(GridDeletedRowsCount>0)
				{
					if(confirm(Msg[17][Form_Direction-1]))
					{
						Form.btnUpdate.value='Update'
						clearActionClicks()
						if(!savePending){savePending=true;Submit();}
					}
				}
				else
				{
					Form.btnUpdate.value='Update'
					clearActionClicks()
					if(!savePending){savePending=true;Submit();}
				}
			}
			else{alert(Msg[2][Form_Direction-1]+S);el(focusedControl).focus();}
		}
		else{alert(Msg[3][Form_Direction-1]+S);el(focusedControl).focus();}
	}
	else
		if(el('exitAfterSave').value==1)CloseForm();
	switchAutoSave(1)
}
function Changed()
{
	if(window.event!=null){
		var e=window.event.srcElement;
		if(e["name"]!=null){
			if(e.name.substring(0,e.name.lastIndexOf('_'))=='DeleteCheckBox'){
				(e.checked) ? GridDeletedRowsCount++ : GridDeletedRowsCount--;
			}
		}
	}
	if((typeof(window.SCR)=='object')){
		document.images['btn_'+currentRecordID].src='images/edit.gif'
		if(RecordChangedIDs.indexOf('#'+currentRecordID+',')==-1)RecordChangedIDs+='#'+currentRecordID+','
	}
	if(el('btnUpdate'))el('btnUpdate').disabled=false
	if(el('SaveBtn'))el('SaveBtn').style.color=changesColor;
	if(el('CancelBtn'))el('CancelBtn').style.color=changesColor;
	if(el('Save_And_ExitBtn'))el('Save_And_ExitBtn').style.color=changesColor;
	RecordChanged=true
	return false
}
var ctrlF12H=620,ctrlF12W=800,F12H=470,F12W=410
var ctrlF10H=570,ctrlF10W=800,F10H=620,F10W=410,F10H2=420,F10W2=370
var ctrlF9H=500,ctrlF9W=820,F9H=420,F9W=410,F8H=350,F8W=350
var savePending=false
function KeyDown(e,d,f,moveByCursor)
{
	e.cancelBubble=true;
	moveByCursor=(arguments.length==4) ? moveByCursor : true;
	switch(e.keyCode){
	case 34:NavigatorClick((e.ctrlKey) ? 3 : 2);break;//Down
	case 33:NavigatorClick((e.ctrlKey) ? 0 : 1);break;//UP
	case 40:if(moveByCursor)moveDown(e);break;
	case 38:if(moveByCursor)moveUp(e);break;
	case 118:
	case 123://F12
		if((String(d)!="")&&(d!=null)&&(String(d)!="undefined"))
		(e.ctrlKey) ? RunPropForm(21,el('Form_ID').value,ctrlF12H,ctrlF12W) : RunPropForm(86,d,F12H,F12W);
		break; 
	case 121://F10
		if((el('Form_ID'))&&(el('Form_ID').value!='')&&(f!=''))
		(e.ctrlKey) ? RunPropForm(22,el('Form_ID').value,ctrlF10H,ctrlF10W) : RunPropForm(80,el('Form_ID').value,F10H,F10W);
		break;
	case 120://F9
		if((el('Appl_ID'))&&(el('Appl_ID').value!=""))
		(e.ctrlKey) ? RunApplPropForm(4,el('Appl_ID').value,ctrlF9H,ctrlF9W) : RunPropForm(14,el('Appl_ID').value,F9H,F9W);
		break;
	case 119: //F8
		if((el('Item_ID'))&&(el('Item_ID').value>0))RunPropForm(93,el('Item_ID').value,F8H,F8W)
		break;
	case 83: //S
		if(e.ctrlKey&&el('Form_ID')){if(!savePending){btnUpdate_OnClick();}}
		break;
	}
	return false
}
function labelKeyDown(e,row)
{
	var tag=(isFireFox()) ? e.originalTarget.tagName : e.srcElement.tagName;
	if(tag=='TD')
		switch(e.keyCode){
		case 40:moveDown(row);break;
		case 38:moveUp(row);break;
		}
	return false
}
function moveDown(e)
{
	function getNextRecordID(recordID)
	{
		var nextRecordID=''
		if((recordID==1)&&(el('Table_Type').value=='1'))return'0'
		for(var i=0;i<SCR.length;i++){
			o=SCR[i]
			if(o.substring(0,o.indexOf(','))==recordID)
				if(i<SCR.length-1)nextRecordID=SCR[i+1].substring(0,SCR[i+1].indexOf(','))
		}
		return nextRecordID
	}
	if(typeof(window.SCR)!='object')return
	if(typeof(e)=="object")
	{
		var obj=(isFireFox()) ? e.originalTarget : e.srcElement;
		var id=obj.id
		var controlName=id.substring(0,id.lastIndexOf('_'))
		var recordID=parseInt(id.substring(id.lastIndexOf('_')+1))
		var nextRecordID=''
		if((obj.tagName!="SELECT")&&(obj.tagName!="TEXTAREA"))
			nextRecordID=getNextRecordID(recordID)
		if(el(controlName+'_'+nextRecordID))el(controlName+'_'+nextRecordID).focus();
	}
	else if(typeof(e)=="string"){if(setCurrentRecord(getNextRecordID(e)))focusElement(currentRecordID)}
}
function focusElement(ID)
{ var e='GridRow_'+currentRecordID
	if(document.all[e]!=null){
		var o=document.all[e].childNodes[0];
		(o.tagName!="TBODY") ? o.focus() : o.childNodes[0].childNodes[0].focus();
	}
}
function moveUp(e)
{
	function getPrevRecordID(recordID)
	{
		var prevRecordID=''
		if((recordID==0)&&(el('Table_Type').value=='1'))return '1'
		for(var i=0;i<SCR.length;i++)
		{
			o=SCR[i]
			if(o.substring(0,o.indexOf(','))==recordID)
				if(i>0)prevRecordID=SCR[i-1].substring(0,SCR[i-1].indexOf(','))
		}
		return prevRecordID
	}
	if(typeof(window.SCR)!='object')return
	if(typeof(e)=="object")
	{
		var obj=(isFireFox()) ? e.originalTarget : e.srcElement;
		var id=obj.id
		var controlName=id.substring(0,id.lastIndexOf('_'))
		var recordID=parseInt(id.substring(id.lastIndexOf('_')+1))
		var prevRecordID=''

		if((obj.tagName!="SELECT")&&(obj.tagName!="TEXTAREA"))
			prevRecordID=getPrevRecordID(recordID)

		if(el(controlName+'_'+prevRecordID))el(controlName+'_'+prevRecordID).focus();
	}
	else if(typeof(e)=="string"){if(setCurrentRecord(getPrevRecordID(e)))focusElement(currentRecordID)}
}
function SearchKeyDown(e){if(e.keyCode=='13')DoTotalSearch()}
function LoadImages()
{var ImgID,i,Key,Obj=document.images
	for(i=0;i<Obj.length;i++)
	{
		if(Obj[i].id!="")
		{
			ImgID=Obj[i].id
			Key=ImgID.substring(0,ImgID.indexOf("_"))
			if ((Key == "Cursor") && (LoadCursorImages)) Obj[i].src = 'images/NoCursor.gif';
			if((Key=="SelectedCursor")&&(LoadCursorImages))Obj[i].src='images/Cursor'+((Form_Direction==2)?'2.gif':'.gif');
			if ((Key == "Dot3") && (Load3DotImage))
			{
			    Obj[i].src = 'images/3Dot.jpg';
				Obj[i].style.cursor='pointer';
				Obj[i].style.visibility=(AutoShow3DotImages)? 'visible' :'hidden';
			}
			if(Key=="BlankBtn")Obj[i].src=BlankBtn.src
		}
	}
}
function RunPropForm(Prop_Form_ID,Form_ID,h,w)
{
	var s=FS+'?form_id='+Prop_Form_ID+'&KEYFIELDVALUE='+Form_ID
	var n='TheForm_'+Form_ID+'_'+Prop_Form_ID
	w = window.open(s, n, winParam + ',resizable=yes,width=' + w + ',height=' + h + ',left=0,top=0')
	w.opener=window
	w.focus()
}
function RunApplPropForm(Prop_Appl_ID,Appl_ID,h,w)
{
	var s='Application.aspx?appl_id='+Prop_Appl_ID+'&KEYFIELDVALUE='+Appl_ID
	var n='TheAppl_'+Appl_ID+'_'+Prop_Appl_ID
	w=window.open(s,n,winParam+',width='+w+',height='+h+',left=0,top=0')
	w.opener=window
	w.focus()
}
function RefreshForm(Page)
{
	if(arguments.length>0)
		if(Page!=''){
			if(el('CurrPage'))el('CurrPage').value=Page;
			el('btnUpdate').value=''
		}
	clearActionClicks()
	if (el('TheForm')) Submit();
}
function RunLookupForm(f){RunPropForm(f,'',600,600)}
function GotoPage()
{
	var a=CallshowModalDialog('FormPageNumberDLG.aspx',el("PageCount").value,150,50,'no')
	if(isIE())
	{
		if(a==null)return;
		((parseInt(a))&&(parseInt(a)>0)) ? RefreshForm(a) : alert(Msg[20][Form_Direction-1]);
	}
}
function NavigatorClick(id)
{
	var M=el('MovePage');
	if(M==null)return;
	var CurrPage=(el("CurrPage")) ? el("CurrPage").value : '';
	var PageCount=(el("PageCount")) ? el("PageCount").value : '';
	if((AutoSave)||(!RecordChanged))
	{
		switch(id){
		case 0:M.value=(CurrPage!='1') ? '|<' : '';break;
		case 1:M.value=(CurrPage!='1') ? '<' : '';break;
		case 2:M.value=(CurrPage!=PageCount) ? '>' : '';break;
		case 3:M.value=(CurrPage!=PageCount) ? '>|' : '';break;
		}
		if(M.value!=''){clearActionClicks();Submit();}
		else return;
	}
	else if(RecordChanged){switchAutoSave(0);alert(Msg[6][Form_Direction-1]);switchAutoSave(1)}
}
function CloseForm(){window.close()}
function DoTotalSearch()
{
	if(el('TotalFind'))
	{
		var S=el('TotalFind').value;
		if(S=='')alert(Msg[7][Form_Direction-1])
		else
		{
			el('Search_Type').value='2';
			el('QBE_Where_Clause').value=S;
			if(el('CurrPage'))el('CurrPage').value=""
			clearActionClicks()
			Submit();
		}
	}
}
function selectTD(C,row,editBgColor,bgColor,borderColor,textColor,readOnlyBGColor)
{
	if((C.id!=null)&&(C.id!=""))
	if((C.id.substring(C.id.lastIndexOf('_')+1)==row)&&(C.type !="checkbox")&&(C.tagName !="IMG"))
	{
		C.style.backgroundColor=((C.tagName=='INPUT')||(C.tagName=='SELECT')||(C.tagName=='TEXTAREA')) ?
			editBgColor : bgColor;
		C.style.borderColor=borderColor
		if(C.className.toUpperCase()!='ANCHORCLASS')C.style.color=textColor
		if((C.tagName=='SPAN')||(C.readOnly))C.style.color=readOnlyBGColor
	}
}
function selectRow(row,state)
{var textColor=selectedRecordTextColor;
var r=null
	if(!el('GridRow_'+row)){
		r=getRowFromArray('GridRow_'+row)
		if(!r)return;
	}
	if(state==0){
		bgColor=el('DataTable').bgColor;
		bgImage=el('table1').background
		borderColor='gray'
		editBgColor=bgColor;
	}
	else{
		bgColor=selectedRecordColor
		bgImage=''
		borderColor='black'
		editBgColor=selectedRecordColor
	}
	var Obj=(r) ? r.childNodes : el('GridRow_'+row).childNodes
	if((typeof(Obj)!='object') && (typeof(Obj) != 'function'))return
	for(i=0;i<Obj.length;i++)
	{
		if(Obj[i].tagName=="TD")
		{
			Obj[i].bgColor=bgColor
			Obj[i].background=bgImage
			for(j=0;j<Obj[i].childNodes.length;j++)
			{
				C=Obj[i].childNodes[j]
				selectTD(C,row,editBgColor,bgColor,borderColor,textColor,readOnlyBGColor)
			}
		}
		else if(Obj[i].tagName=="TBODY")
		{
			Obj[i].bgColor=bgColor
			Obj[i].background=bgImage
			for(j=0;j<Obj[i].childNodes.length;j++)
				for(k=0;k<Obj[i].childNodes[j].childNodes.length;k++)
				{
					O=Obj[i].childNodes[j].childNodes[k]
					if(O.tagName=="TD")
						for(l=0;l<O.childNodes.length;l++)
						{
							C=O.childNodes[l]
							selectTD(C,row,editBgColor,bgColor,borderColor,textColor,readOnlyBGColor)
						}
				}
		}
	}
}
function BlinkActiveControl(rownum){
	var C,i,j,Obj
	if((typeof(currentRecordID)=="undefined")||(SQLFailed))return;
	selectRow(currentRecordID,0)
	selectRow(rownum,1)
	if(rownum==0){
		ReloadDetailForms('','','','','','')
		hiLite('btn_'+currentRecordID,"images/NoCursor.gif")
		el('CurrentPositionButtonName').value=''
		if(el('CurrentRecordPosition'))el('CurrentRecordPosition').value=''
	}
}
function SetPictureSize(ImageID,ImageH,ImageW,WIDTHTABLEPICT)
{var H,W
	if((ImageH==0)||(ImageW==0)){H=0;W=0}	
	else{
		var C=Math.min(1,Math.min(WIDTHTABLEPICT/ImageH,WIDTHTABLEPICT/ImageW))
		H=C*ImageH
		W=C*ImageW
	}
	document.images[ImageID].height=H
	document.images[ImageID].width=W
}
function setCurrentRecord(RecordID)
{
	var o,retVal=false
	if((typeof(currentRecordID)=="undefined")||(String(RecordID)=='')||(SQLFailed))return false;
	if(currentRecordID!=RecordID)
	{
		if(RecordID==0){
			if(el('GridRow_0'))BlinkActiveControl(RecordID)
			else return true
			retVal=true
		}
		else{
			if(typeof(SCR)!='object')return
			for(var i=0;i<SCR.length;i++)
			{
				o=SCR[i]
				if(o.substring(0,o.indexOf(','))==RecordID)
				{
					eval(o.substring(o.indexOf(',')+1))
					retVal=true
				}
			}
		}
		currentRecordID=RecordID
	}
	if(retVal && typeof(window['recordChangeEvent'])=='function')recordChangeEvent()

	return retVal
}
function window_body_onload(){}
function strToUrl(str){return ReplSpaceSymb(escape(str),'+','%2B')}
function ReloadForm(applID,formID,frameID,keyFieldValue)
{
var url,w=window.parent.frames['FORM_'+formID+'_'+frameID]
if(w==null){alert('Application Frame FORM_'+formID+'_'+frameID+' not found');return;}
if(keyFieldValue=="")
{
	url="blankform.aspx?bgColor="+Find_Object(formID,"FORMS_DFN","FORM_ID","WINDOW_BGCOLOR",true)
	w.location.replace(url);
}
else
	with(w.location){
		url=FS+'?Appl_ID='+applID+'&Form_ID='+formID+'&KEYFIELDVALUE='+strToUrl(keyFieldValue);
		if(arguments.length>4){
			for(var i=4;i<arguments.length;i++)url+="&KEYFIELDVALUE"+(i-3)+"="+strToUrl(arguments[i])
		}
		replace(url)
	}
}
function GetCalendarDlg(ControlName){
	var RetVal,MM,DD,YY,TT=""
	var D=new Date()
	var S
	if (isIE()) S = el(ControlName).value
	else S=el(ControlName).value
	var df=dateFormat.toUpperCase()

	switch(df){
		case '101':df='MM/DD/YYYY';//USA
		break;
		case '102':df='YYYY.MM.DD';//ANSI
		break;
		case '103':df='DD/MM/YYYY';//British/French
		break;
		case '104':df='DD.MM.YYYY';//German
		break;
		case '105':df='DD-MM-YYYY';//Italian
		break;
		case '110':df='MM/DD/YYYY';//USA
		break;
		case '111':df='YYYY/MM/DD';//JAPAN
		break;
		case '112':df='YYYYMMDD';//ISO
		break;
		case '20':
		case '120':df='YYYY-MM-DD';//ODBC canonical
		break;
	}

	if((S!='')&&(S!='0')){
		YY=S.substring(df.indexOf('YYYY'),df.indexOf('YYYY')+4)
		DD=S.substring(df.indexOf('DD'),df.indexOf('DD')+2)
		MM=S.substring(df.indexOf('MM'),df.indexOf('MM')+2)
		if(timeFormat.length>0)TT=S.substring(df.length)
	}
	else
	{
		YY=D.getYear().toString()
		MM=(D.getMonth()+1).toString()
		DD=D.getDate().toString()
	}
	var fd=(typeof(Form_Direction)!='undefined') ? Form_Direction : 1;	
	RetVal=CallshowModalDialog("Calendar2.aspx?Year="+YY+"&Day="+DD+"&Month="+MM+"&dir="+fd,"",256,300,"no")
	if(RetVal!=null && isIE()){
		var D1=new Date(RetVal)
		DD=D1.getDate().toString()
		if(DD.length==1){DD='0'+DD}
		MM=(D1.getMonth()+1).toString()
		if(MM.length==1){MM='0'+MM}
		YY=D1.getYear().toString()
		if(YY.length==2){YY='19'+YY}

		var res=""
		var sep=df.substring(df.indexOf('MM')+2,df.indexOf('MM')+3)
		if((df.indexOf('YYYY')>df.indexOf('MM'))&&(df.indexOf('MM')>df.indexOf('DD')))
			res=DD+sep+MM+sep+YY+TT
		else if((df.indexOf('YYYY')>df.indexOf('DD'))&&(df.indexOf('DD')>df.indexOf('MM')))
			res=MM+sep+DD+sep+YY+TT
		else if((df.indexOf('DD')>df.indexOf('MM'))&&(df.indexOf('MM')>df.indexOf('YYYY')))
			res=YY+sep+MM+sep+DD+TT

		document.all[ControlName].value=res
		document.all[ControlName].focus()
		Changed()
	}
	return
}
function abort(){submitAborted=true;savePending=false;}
function Get_Col_ID(f)
{
	var fieldName=String(f),fieldID=''
	var A=(el('FieldsNamesIDArray')) ? el('FieldsNamesIDArray').value.toUpperCase() : '';
	fieldName=fieldName.toUpperCase()
	if(A.indexOf(','+fieldName+'#')!=-1)
	{
		fieldID=A.substring(A.indexOf(','+fieldName+'#')+1)
		fieldID=(fieldID.indexOf(',')!=-1)?
		fieldID.substring(fieldID.indexOf('#')+1,fieldID.indexOf(','))
		:
		fieldID.substring(fieldID.indexOf('#')+1)
	}
	return fieldID
}
function Get_Action_ID(a)
{
	var actionName=String(a),actionID=''
	var A=(el('ActionsNamesIDArray')) ? el('ActionsNamesIDArray').value.toUpperCase() : '';
	actionName=actionName.toUpperCase()
	if(A.indexOf(','+actionName+'#')!=-1)
	{
		actionID=A.substring(A.indexOf(','+actionName+'#')+1)
		actionID=(actionID.indexOf(',')!=-1)?
		actionID.substring(actionID.indexOf('#')+1,actionID.indexOf(','))
		:
		actionID.substring(actionID.indexOf('#')+1)
	}
	return actionID
}
function Get_Current(f)
{
	var fieldValue='',fieldID=Get_Col_ID(f),obj;
	if(fieldID!='')
	{
		if(typeof(currentRecordID)=='undefined')return;
		obj=el('CF_'+fieldID+'_'+currentRecordID);
		if(obj)
		{
			if(obj.tagName=='INPUT')fieldValue=obj.value;
			else if(obj.tagName=='SPAN')fieldValue=obj.innerText
			else if(obj.tagName=='SELECT')fieldValue=document.all['H_'+fieldID+'_'+currentRecordID].value;
		}
		else
		{
			obj=document.all['H_'+fieldID+'_'+currentRecordID];
			if(obj!=null)
				fieldValue=(typeof(obj.value)=='string') ? obj.value : obj[0].value;
		}
	}
	return fieldValue.substring(fieldValue.indexOf(':')+1)
}
function Get_Current_ID(f)
{
	var result='',fieldID=Get_Col_ID(f)
	if(fieldID!=''){
		if(typeof(currentRecordID)=='undefined')return;
		if(el('CF_'+fieldID+'_'+currentRecordID))
			result='CF_'+fieldID+'_'+currentRecordID
	}
	return result
}
function sortFormBy(Field,element,dataType,Col_ID)
{
	var O=el('Order_By_Clause')
	element.className='clsGridHeaderSelected'
	switch(dataType){
		case 'CLOB':
			if(Field!="")
				O.value=(O.value=="dbms_lob.substr(I."+Field+",10)") ? "dbms_lob.substr(I."+Field+",10) DESC" : "dbms_lob.substr(I."+Field+",10)";
			else
				O.value=""
			break;
		default :
			if(Field!="")
				O.value=(O.value=="I."+Field) ? "I."+Field+" DESC" : "I."+Field;
			else
				O.value=""
	}
	el('Sorted_Data_Field').value=''
	if((O.value!='')&&(Col_ID!=''))el('Sorted_Data_Field').value=Col_ID
	window.scrollTo(0,0)
	clearActionClicks()
	Submit();
}
function afterSave(){return(el('DML_Commands').value.indexOf('UPDATE,')>-1)}
function afterInsert(){return(el('DML_Commands').value.indexOf('INSERT,')>-1)}
function afterDelete(){return(el('DML_Commands').value.indexOf('DELETE,')>-1)}
function active3Dot(id)
{
	var obj=document.images['Dot3_'+id]
	if(obj!=null)
	try{obj.style.visibility='visible'}
	catch(e){}
}
function hide3Dot(id)
{
	if(AutoShow3DotImages)return
	var obj=document.images['Dot3_'+id]
	if(obj!=null)
	try{obj.style.visibility='hidden'}
	catch(e){}
}
function clearXML(s){return ReplSpaceSymb(ReplSpaceSymb(ReplSpaceSymb(s,'#lt#','<'),'#gt#','>'),'#amp#','&')}
function getXMLHttp()
{
	var o=null;
	try {
		o=new ActiveXObject("Msxml2.XMLHTTP.4.0");
		return o;
	} catch (e){}
	try {
		o=new ActiveXObject("Msxml2.xmlhttp");
		return o;
	} catch (e){}
	try {
		o=new ActiveXObject("Microsoft.XMLHTTP");
		return o;
	} catch (e){}
}
function loadXML(url,type)
{
if(isIE()){
try{
	var objHTTP=getXMLHttp()
	var scriptName = url.substring(0,url.indexOf('?'))
	var params = url.substring(url.indexOf('?') + 1)
	objHTTP.open("POST",scriptName,false)
	objHTTP.setRequestHeader("Content-Type","application/x-www-form-urlencoded")
	objHTTP.send(params)
	var result=objHTTP.ResponseText
	if(type==1)eval(result)
	else if(type==2)return result
	}
catch(e){alert('Error occur while executing remote service.\n'+e.description)}
}
else if(isFireFox() || isSafari())
{	
	try
	{
		if (window.XMLHttpRequest)
		{
			obj=new XMLHttpRequest()
			obj.open("GET",url,false)
			obj.send(null)
			if (obj.readyState==4 && obj.status==200) 
			{
	            var result=obj.responseText
	            if(type==1)eval(result)
	            else if(type==2)return result			
			}
		}
	}catch(e){alert(e)}
}
}
function getDHTML2(g,d,m,f,b,n,h,p,e){var a="BuildList.aspx?Method=getDHTML2&masterValue="+strToUrl(g)+"&detailControlName="+strToUrl(d)+"&tableName="+strToUrl(m)+"&resultDisplayFieldName="+strToUrl(f)+"&resultValueFieldName="+strToUrl(b)+"&detailKeyFieldName="+strToUrl(n)+"&detailOldValue="+strToUrl(h)+"&printEmptyOption="+strToUrl(p)+"&orderByClause="+strToUrl(e); loadXML(a,1)}
function getDHTML2Calculated(a,d,b,g,h,f){var e="BuildList.aspx?Method=getDHTML2Calculated&masterValue="+strToUrl(a)+"&detailControlName="+strToUrl(d)+"&tableName="+strToUrl(b)+"&resultDisplayFieldName="+strToUrl(g)+"&resultValueFieldName="+strToUrl(h)+"&detailKeyFieldName="+strToUrl(f); loadXML(e,1)}
function clearMedia(g,b,e,f,a){var d="BuildList.aspx?Method=clearMedia&mediaID="+strToUrl(g)+"&tableName="+strToUrl(b)+"&mediaFieldName="+strToUrl(e)+"&keyFieldName="+strToUrl(f)+"&keyFieldValue="+strToUrl(a); loadXML(d,1)}
function rotateImage(d,e,b,h,a,g){var f="BuildList.aspx?Method=rotateImage&imgID="+strToUrl(d)+"&tableName="+strToUrl(e)+"&imageFieldName="+strToUrl(b)+"&keyFieldName="+strToUrl(h)+"&keyFieldValue="+strToUrl(a)+"&rotateType="+strToUrl(g); loadXML(f,2); RefreshForm()}
function clearImage(d,e,b,g,a){var f="BuildList.aspx?Method=clearImage&imgID="+strToUrl(d)+"&tableName="+strToUrl(e)+"&imageFieldName="+strToUrl(b)+"&keyFieldName="+strToUrl(g)+"&keyFieldValue="+strToUrl(a); loadXML(f,1)}
function executeSQL(a){loadXML("BuildList.aspx?Method=executeSQL&SQL="+strToUrl(a),1)}
function setSessionVariable(a,b){loadXML("BuildList.aspx?Method=setSessionVariable&name="+strToUrl(a)+"&value="+strToUrl(b),2)}
function getSessionVariable(a){return loadXML("BuildList.aspx?Method=getSessionVariable&name="+strToUrl(a),2)}
function getMessageText(m)
{
	var m=loadXML("BuildList.aspx?Message_ID="+m+"&Method=getMessageText",2)
	if(arguments.length==2){if(m==""&&arguments[1]!="")return arguments[1]}
	return m
}
function getRecordSet(SQL,method)
{
	if(arguments.length==1)method='getRecordSet'
	if(isIE()){
		var obj=new ActiveXObject("Microsoft.XMLDOM")
		obj.async=false
		obj.load("BuildList.aspx?Method="+method+"&SQL="+strToUrl(SQL))
		return obj
	}
	else if(isFireFox()||isSafari())
	{
		if (window.XMLHttpRequest)
		{
			obj=new XMLHttpRequest()
			obj.open("GET","BuildList.aspx?Method="+method+"&SQL="+strToUrl(SQL),false)
			obj.send(null)
			if (obj.readyState==4 && obj.status==200) 
				return obj
		}
	}
}
function InvokeWebService(url,params)
{
	var retVal="",objHTTP=getXMLHttp();
	objHTTP.open("POST",url,false)
	objHTTP.setRequestHeader("Content-Type","application/x-www-form-urlencoded")
	objHTTP.send(params)
	var objXML=new ActiveXObject("Microsoft.XMLDOM")
	objXML.loadXML(objHTTP.ResponseText)
	if(objXML.xml!=null)retVal=objXML.documentElement.text

	return retVal
}
function getActionLanguage(Action_ID) {
    var a = el('Action_' + Action_ID);
    return (a && a.getAttribute('actionlanguage')) ? a.getAttribute('actionlanguage') : eval(Find_Object(Action_ID, 'ACTIONS_DFN', 'ACTION_ID', 'LANGUAGE_ID', true));
}
function Find_Object(strBuff,strTableName,strKeyName,strResultName,bCheck_Where_Case)
{
	var url="BuildList.aspx?Method=Find_Object&KeyFieldValue="+strToUrl(strBuff)+
		"&TableName="+strToUrl(strTableName)+
		"&KeyFieldName="+strToUrl(strKeyName)+
		"&ResultFieldName="+strToUrl(strResultName)+
		"&CheckWhereClause="+bCheck_Where_Case

	return loadXML(url,2)
}
function getStringOfRecordset(strBuff,strTableName,strKeyName,strResultName,bCheck_Where_Case)
{
	var url="BuildList.aspx?Method=GetStringOfRecordset&KeyFieldValue="+strToUrl(strBuff)+
		"&TableName="+strToUrl(strTableName)+
		"&KeyFieldName="+strToUrl(strKeyName)+
		"&ResultFieldName="+strToUrl(strResultName)+
		"&CheckWhereClause="+bCheck_Where_Case

	return loadXML(url,2)
}
function getDataFieldEmbededObject(src,col_id)
{
	var url=src.replace("GetMedia.aspx?","BuildList.aspx?method=getDataFieldEmbededObject&")+"&SourceCol_ID="+col_id+"&AUTOSTART=true"
	return loadXML(url,2)
}
function GetFormCaption(){return (el('formCaption')) ? el('formCaption').innerText : '';}
function SetFormCaption(C){if(el('formCaption')) el('formCaption').innerHTML=C;}
function DisableActionByID(ID)
{
	if(el('Action_'+ID))
	{
		if(el('Action_'+ID).tagName=="A")
		{
			el('Action_'+ID).disabled=true
			el('Action_'+ID).href=el('Action_'+ID).href.replace('javascript:','javascript://')
		}
		else if(el('Action_'+ID).tagName=="INPUT")
		{
			var S=el('Action_'+ID+'_TD').innerHTML;
			S=S.replace("<A ","<A disabled ")
			S=S.replace("{",";{/*")
			S=S.replace(";}",";*/}")
			el('Action_'+ID+'_TD').innerHTML=S
		}
		else if(el('Action_'+ID).tagName=="IFRAME")
		{
			collapsByName(GetActionCaptionByID(ID));
			if(el('AGroupRow_'+ID))el('AGroupRow_'+ID).href=el('AGroupRow_'+ID).href.replace('javascript:','javascript://');
			if(el('CGroupRow_'+ID))el('CGroupRow_'+ID).disabled=true;
			if(el('ActionRow_'+ID))el('ActionRow_'+ID).disabled=true;
		}
	}
}
function DisableActionByName(A){DisableActionByID(Get_Action_ID(A))}
function EnableActionByID(ID)
{
	if(el('Action_'+ID))
	{
		el('Action_'+ID).disabled=false;
		el('Action_'+ID).href=el('Action_'+ID).href.replace('javascript://','javascript:')
	}
}
function EnableActionByName(A){EnableActionByID(Get_Action_ID(A))}
function GetActionCaptionByName(A){return GetActionCaptionByID(Get_Action_ID(A))}
function SetActionCaptionByName(A,C){SetActionCaptionByID(Get_Action_ID(A),C)}
function GetActionCaptionByID(ID)
{
	if(el('Action_'+ID).tagName=="IFRAME")return el('CGroupRow_'+ID).innerText;
	else
		return (el('Action_'+ID)) ? el('Action_'+ID).innerText : '';
}
function SetActionCaptionByID(ID,C){if(el('Action_'+ID))el('Action_'+ID).innerHTML=C}
function GetFieldCaption(F)
{
	var F_ID=Get_Col_ID(F)
	return (el('GH_'+F_ID)) ? el('GH_'+F_ID).innerText : '';
}
function SetFieldCaption(F,C)
{
	var F_ID=Get_Col_ID(F)
	if(el('GH_'+F_ID))el('GH_'+F_ID).innerHTML = C;
}
function ChangeFieldEnableStatus(F,status)
{
	var F_ID=Get_Col_ID(F),o,r
	if(el('GH_'+F_ID))el('GH_'+F_ID).disabled=!status;
	if(typeof(SCR)=='object')
	{
		for(var i=0;i<SCR.length;i++)
		{		
			o=SCR[i]
			r=o.substring(0,o.indexOf(','))
			if(el('CF_'+F_ID+'_'+r))
			{
				if(el('TD_'+F_ID)(i))el('TD_'+F_ID)(i).disabled=!status
				el('CF_'+F_ID+'_'+r).disabled=!status
			}
		}
	}
	else
	{
		o=el('TD_'+F_ID)
		if(o)o.disabled=!status
	}
}
function DisableField(F){ChangeFieldEnableStatus(F,false)}
function EnableField(F){ChangeFieldEnableStatus(F,true)}
function ChangeCurrentFieldStatus(F,status){
	var ID=Get_Current_ID(F)
	if(el(ID))el(ID).disabled=!status
}
function DisableCurrentField(F){ChangeCurrentFieldStatus(F,false)}
function EnableCurrentField(F){ChangeCurrentFieldStatus(F,true)}
// Grouping
var rowsIndexArray = [];
var rowsNextRowIDArray = [];
var rowsArray = [];
var deep = 0
function ExpandCollaps()
{
	if(deep++ == 0) el('DataDiv').style.overflow='visible';

	var open_close=el(arguments[0]).getAttribute("open_close");
	
	open_close=(open_close==null) ? "open" : open_close;

	for(var i=1;i<arguments.length; (open_close=="open") ? collaps(arguments[i++]) : expand(arguments[arguments.length - i++]))

	el(arguments[0]).setAttribute("open_close",(open_close == "open") ? "close" : "open");
	hiLite(arguments[0], (open_close=="open") ? "images/expand.gif" : "images/fixed.gif");

	if(--deep==0){window.scrollTo(0,0);el('DataDiv').style.overflow='auto'}
}
function getNextRow(row)
{
	if(el(row)==null)return
	var table=(isIE()) ? el(row).parentElement.parentElement : el(row).parentNode.parentNode;
	for(var i=0;i<table.rows.length;i++)
		if(table.rows[i].id==row)
			return (i<table.rows.length-1) ? table.rows[i+1].id : null;
}
function addRowToArray(rowID,nextRowID)
{
	for(var i=0;i<rowsIndexArray.length;i++)if(rowsIndexArray[i]==rowID)return

	i=rowsIndexArray.length
	rowsIndexArray[i]=rowID
	rowsNextRowIDArray[i]=nextRowID
	rowsArray[i]=el(rowID)
}
function getRowFromArray(rowID)
{
	for(var i=0;i<rowsIndexArray.length;i++)
		if(rowsIndexArray[i]==rowID)
			return currentRow=rowsArray[i]
	return null
}
function getNextRowIDFromArray(rowID)
{
	for(var i=0;i<rowsIndexArray.length;i++)
		if(rowsIndexArray[i]==rowID)
			return currentRow=rowsNextRowIDArray[i]
	return null
}
function collaps(row)
{
	if(el('A'+row))
	{
		if(el('I'+row).getAttribute("open_close")=="close")
			el('I'+row).setAttribute("prev_open_close","close")
		el('I'+row).setAttribute("open_close","open")
		var c=el('A'+row)
		eval(c.href.substring(c.href.indexOf(':')+1))
	}
	if(el(row)==null)return
	if(el(row).getAttribute("removed")=='true')return
	addRowToArray(row,getNextRow(row))
	if(isIE())el(row).removeNode(true);
	else if(isFireFox()||isSafari()){
		el(row).setAttribute("removed",true)
		var n=el(row).parentNode.removeChild(el(row))
	}
}
function expand(row)
{
	function activateAction(row)
	{
		var e=el('Action'+row.substring(row.indexOf('_')));
		if(e)
			if(e.getAttribute("src")=="blankform.aspx")e.setAttribute("src",e.getAttribute("src2"));
	}
	var nextRowID=getNextRowIDFromArray(row)
	var newRow=getRowFromArray(row)
	if(newRow==null)return;
	if(nextRowID==null){
		if (isIE()) el('DataTableBody').insertBefore(newRow)
		else if(isFireFox()||isSafari())
		{
			if(newRow.getAttribute("removed")!='true')
				el('DataTableBody').insertBefore(newRow);
			else
				el('DataTableBody').insertBefore(newRow,el(nextRowID))
		}
		newRow.setAttribute("removed",false);activateAction(row);
		}
	else
	{
		el('DataTableBody').insertBefore(newRow,el(nextRowID));
		newRow.setAttribute("removed",false);activateAction(row);
	}
	if(el('A'+row)){
		if(el('I'+row).getAttribute("prev_open_close")=="close")
		{
			el('I'+row).setAttribute("open_close","open");
			el('I'+row).setAttribute("prev_open_close","open");
		}
		c=el('A'+row);
		eval(c.href.substring(c.href.indexOf(':')+1))
	}
}
function expandCollapsAll(s){
	var table=el('DataTable');
	for(var i=0;i<table.rows.length;i++)
		if(table.rows[i].id.indexOf('GroupRow_')>-1) 
			if(el('A'+table.rows[i].id)){
				el('I'+table.rows[i].id).setAttribute("open_close",s);
				c=el('A'+table.rows[i].id);
				eval(c.href.substring(c.href.indexOf(':')+1))
			}
}
function expandCollapsByName(s,name)
{
	var cont;
	var table=el('DataTable');
	for(var i=0;i<table.rows.length;i++)
		if(table.rows[i].id.indexOf('GroupRow_')>-1)
			if(el('A'+table.rows[i].id) && el('C'+table.rows[i].id))
			{
				cont=(isIE()) ? (el('C'+table.rows[i].id).innerText.indexOf(name) > -1) :
								(el('C'+table.rows[i].id).innerHTML.indexOf(name) > -1);
				if (cont)
				{
					el('I'+table.rows[i].id).setAttribute("open_close",s);
					c=el('A'+table.rows[i].id);
					eval(c.href.substring(c.href.indexOf(':')+1))
				}
			}
}
function expandAll(){expandCollapsAll("close")}
function collapsAll(){expandCollapsAll("open")}
function expandByName(name){expandCollapsByName("close",name)}
function collapsByName(name){expandCollapsByName("open",name)}
function CallGroupingDlg(form_id)
{
	var RetVal
	var o=(el('Current_Grouping').value!="0") ? el('Current_Order_By_Clause').value : ""
	var url='FormGroupingDlg.aspx?Current_Form_ID='+form_id+'&Current_Order_By='+o
	RetVal=CallshowModalDialog(url,form_id,300,360,"no","no","no")
	var S=String(RetVal)
	if(S=='undefined')return
	else if(S=='0'){
		el('Current_Grouping').value=""
		sortFormBy('',el('GridTopLeftElement'))
	}
	else if(S=='-1');
	else{
		var S1=S,item="",orderBy=""
		while(S1.length>0)
		{
			item=S1.substring(S1.indexOf('<')+1,S1.indexOf('>'))
			if(item.indexOf('!')>-1)
				orderBy+=",I."+item.substring(item.indexOf('!')+1,item.indexOf(':'))
			S1=S1.substring(S1.indexOf('>')+1)
		}
		if(orderBy.length>0)
		{
			orderBy=orderBy.substring(1)
			el('Order_By_Clause').value=orderBy
			el('Sorted_Data_Field').value=""
			el('Current_Grouping').value=""
			clearActionClicks()
			Submit();
		}
		else
		{
			el('Current_Grouping').value="0"
			clearActionClicks()
			Submit();
		}
	}
}
function clearActionClicks()
{
	if(el('ActionsNamesIDArray')){
		var a=el('ActionsNamesIDArray').value
		var arr=a.split(',')
		for(var i=0,obj='',a_id;i<arr.length;i++){
			obj=arr[i]
			if(obj!=''){
				a_id='Action_'+obj.substring(obj.indexOf('#')+1)
				if(el(a_id))el(a_id).value='';
			}
		}
	}
}
function onBeforeUnloadEvent(){}
function onUnloadEvent(){}
function changeRowSelection(o)
{
	setCurrentRecord(o.id.substring(3))
	addRemoveSelectedRecord('<'+getRecordID(o.id.substring(3))+'>',(o.checked) ? 1 :2 )
}
function getRecordID(index)
{
	var R=el("RowIDsArray").value
	S="<"+index+"#"
	if(R.length>0){
		V=R.substring(R.indexOf(S))
		V=V.substring(S.length,V.indexOf('>'))
		return(V)
	}
	else return ''
}
function isRecordSelected(ID)
{
	S=el("SelectedRecords").value
	return (S=="ALL"||S.indexOf('<'+ID+'>')>-1)
}
function addRemoveSelectedRecord(ID,mode)
{
	var S
	if(mode==1){
		S=el("UnSelectedRecords")
		S.value=S.value.replace(ID,'')
		S=el("SelectedRecords")
		if(S.value.indexOf(ID)==-1 && S.value!="ALL")S.value+=ID
	}
	else if(mode==2){
		S=el("SelectedRecords")
		S.value=S.value.replace(ID,'')
		S=el("UnSelectedRecords")
		if(S.value.indexOf(ID)==-1&&S.value!="ALL")S.value+=ID
	}
}
function pageRecordsSelection(status,addToArray)
{
	for(var i=0,index='';i<SCR.length;i++)
	{
		index=SCR[i].substring(0,SCR[i].indexOf(','))
		if(el('CH_'+index))
		{
			el('CH_'+index).checked=(status==1)
			if(addToArray)addRemoveSelectedRecord('<'+getRecordID(index)+'>',status);
		}
	}
}
function selectUnselectAllRecords(option)
{
	var RetVal=CallshowModalDialog("SelectRecordsDlg.aspx?Option="+option,"",250,200,"no")
	if(isIE())
	{
		if(RetVal==1||RetVal==2)pageRecordsSelection(option,true)
		if(RetVal==2){
			el("SelectedRecords").value=(option==1) ? "ALL" : ""
			el("UnSelectedRecords").value=(option==1) ? "" : "ALL"
		}
	}
}
function selectAllRecords(){selectUnselectAllRecords(1)}
function unSelectAllRecords(){selectUnselectAllRecords(2)}
function initTreeCheckboxes(element)
{
	for(var i=0;i<element.childNodes.length;i++)
	{
		var o=element.childNodes[i];
		if(o.className=='checkboxClass')
		{
			o.checked=(o.getAttribute("select")=="true" || isRecordSelected(o.id.substring(5)));
			o.disabled=(o.getAttribute("disable")=="true");
		}
		else if(o['childNodes']!=null)initTreeCheckboxes(o)
	}
}
function expandDeepTree(id,timerIdx)
{
	if(id)
	{
		var o=el(id)
		if(o&&o['parentNode']!=null)
		{
			o=o.parentNode
			if(o.getAttribute("type")=='parent'){
				ExpandNode(o,null)
				SelectNode(o,true,true)
			}
			var rid='R_ID_'+id.substring(3)
			if(el(rid))el(rid).checked=!el(rid).disabled
		}
		if(iTimerID[timerIdx]!=null)clearInterval(iTimerID[timerIdx])
	}
}
var iTimerID=[];
var treeDelayTime=400
function onTreeLoad()
{
	var o,timerUrl=''
	if(el('DefaultValue').value!=""){
		var a=el('DefaultValue').value.split("#,#")
		for(var i=0;i<a.length;i++){
			timerUrl="expandDeepTree('ID_"+a[i]+"',"+i+");selectedTreeID="+a[i]+";"
				iTimerID[i]=setInterval(timerUrl,treeDelayTime*(i+1))
		}
	}
	if(el('FindEdit'))el('FindEdit').focus();
}
function getAllChildrens(id,status,selectChilds)
{
	var haveChilds,childID
	addRemoveSelectedRecord('<'+id+'>',((status) ? 1:2))
	if(selectChilds=="true"){
		var a=loadXML(el('deeptree').getAttribute("CfgXMLSrc").replace("getTreeConfig","getParentSubTree")+"&Parent_ID="+id,2).split(",")
		for(var i=0;i<a.length;i++){
			if (a[i]!=""){
				haveChilds=a[i].split('#')[1].toLowerCase()
				childID=a[i].split('#')[0]
				addRemoveSelectedRecord('<'+childID+'>',((status) ? 1:2))
				if(el('C_ID_'+childID))
				{
					el('C_ID_'+childID).checked=status;
					if(haveChilds=="true")getAllChildrens(childID,status,el('C_ID_'+childID).getAttribute("selectChilds"))
				}
				else if(haveChilds=="true")getAllChildrens(childID,status,selectChilds)
			}
		}
	}
}
function checkboxClick(e)
{
	var o=(isFireFox()) ? e.originalTarget : e.srcElement;
	getAllChildrens(o.id.substring(5),o.checked,o.getAttribute("selectChilds"))
	Changed();
}
function radioboxClick(e)
{
	var o=(isFireFox()) ? e.originalTarget : e.srcElement;
	radioTreeID=o.id.substring(5);
}
function dropTimers(){for(var i=0;i<iTimerID.length;i++)if(iTimerID[i]!=null)clearInterval(iTimerID[i])}
function SearchTree()
{
	var CfgXMLSrc=el('DefaultCfgXMLSrc').value;
	var form_id=el('Form_ID').value
	loadXML("BuildList.aspx?Method=setSessionVariable&name=TreeSearchKeys_"+form_id+"&value="+el('FindEdit').value,2)
	el('deeptree').setAttribute("CfgXMLSrc",CfgXMLSrc)
	el('DefaultValue').value=""
	dropTimers()
	BuildTree()
	var d = getSessionVariable("TreeSearchKeys_" + form_id);
	setSessionVariable("TreeSearchKeys_"+form_id,"");
	(d.indexOf('alert(')>-1) ? eval(d) : el('DefaultValue').value=d;
	onTreeLoad()
}
function getTreeKeys(arr1,arr2)
{
	var s=arr1;
	var u=ReplSpaceSymb(arr2,"><",",");
	u=u.replace("<","").replace(">","");
	var a_u=u.split(',')
	for(var i=0;i<a_u.length;i++)
		s=s.replace('<'+a_u[i]+'>','');
	s=ReplSpaceSymb(s,"><",",");
	s=s.replace("<","").replace(">","");
	return s;
}
function getSelectedTreeKeys(){return getTreeKeys(el('SelectedRecords').value,el('UnSelectedRecords').value)}
function getUnSelectedTreeKeys(){return getTreeKeys(el('UnSelectedRecords').value,el('SelectedRecords').value)}
function getSelectedRadioBox(){return radioTreeID}
function reCalcActionsHeight()
{
	var a=el('ActionsNamesIDArray').value.split(",")
	var arr=[];
	var openedActions=0,j=0,actionHeight=0;
	for(var i=0;i<a.length;i++)
		if(a[i]!='')
		{
			action_ID=a[i].substring(a[i].indexOf('#')+1);
			if(el('IGroupRow_'+action_ID))
			{
				arr[j++]=action_ID;
				if(!(el('IGroupRow_'+action_ID).getAttribute("open_close")=='close'))
					if(el('ActionRow_'+action_ID))
						if(!el('ActionRow_'+action_ID).disabled)openedActions++;
			}
		}
	if(openedActions==0)return;
	actionHeight=(el('DataDiv').offsetHeight-arr.length*el('ActionCaption_'+arr[0]).offsetHeight)/openedActions;
	if(actionHeight<0)return;
	if(isSafari()||isFireFox())actionHeight=actionHeight-2;
	for(j=0;j<arr.length;j++)
		if(!(el('IGroupRow_'+arr[j]).getAttribute("open_close")=='close'))
			if(el('ActionRow_'+arr[j]))
				if(!(el('ActionRow_'+arr[j]).disabled==true))
					el('ActionRow_'+arr[j]).height=actionHeight;

	document.body.scroll='no'
}
function HTMLChanged()
{
	for(var i=0;i<HTMLControls.length;i++)
		if(el(HTMLControls[i]).tagName=='TEXTAREA')
		{
			var oEditor = FCKeditorAPI.GetInstance(HTMLControls[i]); 
			if(oEditor.IsDirty())return true;
		}
	return false;
}
function isIE()
{
	if(sAgent.indexOf("msie") != -1 && sAgent.indexOf("mac") == -1 && sAgent.indexOf("opera") == -1 )
	{
		var sBrowserVersion=navigator.appVersion.match(/MSIE (.\..)/)[1];
		return (sBrowserVersion >= 5.5);
	}
}
function isOpera()
{
	return (sAgent.indexOf("opera") != -1)
}
function isChrome() {
    return (sAgent.indexOf("chrome") != -1)
}
function isFireFox()
{
    return (sAgent.indexOf("firefox") != -1)
}
function isSafari()
{
	return (sAgent.indexOf("safari") != -1) || isOpera() || isChrome()
}
function addRule2StyleSheet(o,r,v)
{
	if(isIE())
		o.addRule(r,v)
	else if(isFireFox()||isSafari())
	{
		if(v.indexOf('filter:')>-1)
			v='background:url(../images/SilverGradient.gif)';
		o.insertRule(r+'{'+v+'}',o.cssRules.length)
	}
}
function Submit()
{
	el('TheForm').submit()	
}
function autoInc(evnt,obj,tableName,keyFieldName,resultFieldName,orderByFieldName)
{
	evnt.cancelBubble=true;
	switch(evnt.keyCode){
		case 27 : // Escape
			hideAutoInc(obj);
			break;
		case 37: // left
		case 38: moveFocus2List(obj)// Up
		case 39: // Right
		case 40: moveFocus2List(obj)// Down;
			break;
		default:
			var id='A_'+obj.id;
			var d=el(id);
			var t = obj.offsetTop, l = obj.offsetLeft, h, bodyHeight = (isIE()) ? document.body.offsetHeight : document.body.clientHeight;
			if(!d)
			{
				var d=(isIE()) ? document.createElement("<SELECT onkeyup='selectKeyUp(this,event)' ondblclick='selectUpdateValue(this)'>") : document.createElement("SELECT");
				if(!isIE()){
					d.setAttribute('onkeyup','selectKeyUp(this,event)');
					d.setAttribute('ondblclick','selectUpdateValue(this)');
				}
				d.id=id;
				d.size=parseInt(bodyHeight/30);
				if(d.size>6)d.size=6;
			}
			c=obj;
			while(c=c.offsetParent){t+=c.offsetTop;l+=c.offsetLeft;}
			h=d.size*15;
			with(d.style)
			{
				width=obj.offsetWidth+15+'px';
				left=((Form_Direction==1) ? l : l-15)+'px';
				position='absolute';
				top=(bodyHeight<=parseInt(t)+h) ? t-h+'px' : t+18+'px';
			}
			document.body.appendChild(d)
			buildList(obj,tableName,keyFieldName,resultFieldName,orderByFieldName);
			break;
	}
}
function hideAutoInc(e,selectedRow)
{
	var ae=(isIE()) ? document.activeElement.id : selectedRow;
	if(!ae)ae=e.id;
	var d=el('A_'+e.id)
	if (!selectedRow && d && !isIE()) return;
    var cont = (isIE()) ? d && ae.indexOf(e.id) != 4 && ae.indexOf(e.id) != 2 && ae.indexOf(e.id) != 6 :
	                 d && ae.indexOf(e.id) != 4 && ae.indexOf(e.id) != 6;
	if (cont)    
	{
		var v=findSimilarValue(d,e);
		document.body.removeChild(d);
		if(v){el(e.id.replace('CF_','H_')).value=(v=='<null>') ? '' : v;}
	}
}
function findSimilarValue(selectObj,editObj)
{
	if(editObj.value=='')return '<null>';
	for(var i=0;i<selectObj.options.length;i++)
	{
		if(editObj.value.toLowerCase()==selectObj.options[i].text.toLowerCase())
			return selectObj.options[i].value;
	}
}
function buildList(e,tableName,keyFieldName,resultFieldName,orderByFieldName)
{
	orderByFieldName = (orderByFieldName=='') ? "2" : orderByFieldName;
	var SQL="select " + keyFieldName + " as ID, " + resultFieldName + " as RESULT from " + tableName 
	SQL+=(tableName.toUpperCase().indexOf(" WHERE ")>0) ? " AND " : " WHERE ";
	SQL+=resultFieldName + " like N'" + e.value + "%' order by " + orderByFieldName;
	var ors=getRecordSet(SQL,"getDataSet")
	var obj=(isIE()) ? ors.documentElement : ors.responseXML.documentElement;
	var sel=el('A_'+e.id);
	sel.length=0;
	if (sel.size > 1) sel[sel.length++] = new Option('', '');
	if (obj.childNodes.length>0)
	{
		for(var i=0,id='',value='';i<obj.childNodes.length;i++)
		{
			if(isIE())
			{
				id=obj.childNodes[i].childNodes[0].text;
				value=obj.childNodes[i].childNodes[1].text;
			}
			else
			{
				if(obj.childNodes[i].nodeType==1)
				{
					id=obj.childNodes[i].childNodes[1].textContent;
					value=obj.childNodes[i].childNodes[3].textContent;
				}
				else continue;
			}
			sel[sel.length++] = new Option(value, id);
		}
	}
}
function selectUpdateValue(obj)
{
	var o=obj.options[obj.selectedIndex]
	updateControl(obj.id.replace('A_',''),o.value+':'+o.text,true);
	hideAutoInc(el(obj.id.replace('A_','')),obj.id);
}
function selectKeyUp(obj,evnt)
{
	switch(evnt.keyCode)
	{
		case 27: // escape
			el(obj.id.replace('A_','')).focus();
			hideAutoInc(el(obj.id.replace('A_','')),(isIE()) ? obj : obj.id);
			break;
		case 32:
		case 13:
		case 9:
			selectUpdateValue(obj);
			break;
		default:
			return;
	}
}
function moveFocus2List(e)
{
	var d=el('A_'+e.id)
	if(d)el('A_'+e.id).focus();
}
function allowPopup() {
    var p = (typeof (window['havePopups']) != 'undefined') ? havePopups : false;
    return p && document.body.offsetWidth > 400 && document.body.clientHeight > 400;
}
function allowParentPopup() {
    if (typeof (window.parent['allowPopup']) == 'function') {
        return window.parent.allowPopup()
    }
    else if (typeof (window.parent.parent['allowPopup']) == 'function') {
        return window.parent.parent.allowPopup()
    }
    else
        return false;
}