﻿// JScript File
var g_ControlID="";
var g_bWebServRet = false;
var ex;
var BGElement;
var PopUpButtons = new Array('ClearButtonHebCal','CloseModal_btn','AddModal_btn','code','HebDay','HebMonth','HebYear','OkButtonTxt','OkButtonArea','CancelButtonTxt','CancelButtonArea','OkButtonList','CancelButtonList','OkButtonHebCal','CancelButtonHebCal');

//function check4Modal()
//{
//  if (document.readyState == "complete")
//  {
//    if(document.getElementById("asModal")!=null)
//    {
//      if(document.getElementById("asModal").value=="true")
//        document.body.onblur=FocusMe;
//    }
//  }
//  else
//    window.setTimeout("check4Modal();",100);
//}
//check4Modal();
//function FocusMe()
//{
//    window.setTimeout("top.focus()",50);
//}

function CreateBGElement()
{
	BGElement = document.createElement("div");
	BGElement.id = "BGElement";
	BGElement.style.display = "none";
	BGElement.style.position = "absolute";
	BGElement.style.pixelLeft = 0;
	BGElement.style.pixelTop = 0;
	BGElement.style.zIndex = 10000;
	BGElement.className = "modalBackground";
}
CreateBGElement();

function setBGExtent()
{
	BGElement.style.pixelWidth = document.documentElement.clientWidth;  
	BGElement.style.pixelHeight = document.documentElement.clientHeight;
	//document.body.scroll = "no";
}

function HideSomeElements()
{
	var Elements = document.getElementsByTagName('SELECT');
	for(var j=0;j<Elements.length;j++) 
	{
		Elements[j].style.visibility = 'hidden';
	}
	Elements = document.getElementsByTagName('INPUT');
	for(var j=0;j<Elements.length;j++) 
	{
		if(Elements[j].type=="button" )
		Elements[j].style.visibility = 'hidden';
	}
	for(var j=0;j<PopUpButtons.length;j++) 
	{
		if(document.getElementById(PopUpButtons[j]))
		document.getElementById(PopUpButtons[j]).style.visibility = 'visible';
	}
}

function ShowSomeElements()
{
	var Elements = document.getElementsByTagName('SELECT');
	for(var j=0;j<Elements.length;j++) 
	{
		Elements[j].style.visibility = 'visible';
	}

	Elements = document.getElementsByTagName('INPUT');
	for(var j=0;j<Elements.length;j++) 
	{
		if(Elements[j].type=="button" )
		Elements[j].style.visibility = 'visible';
	}
}

function OpenCenter(sName)
{
	var extObj = document.getElementById(sName);
	extObj.style.position = "absolute";
	extObj.style.zIndex = 10001;

	//the popup is about 220 height and 260 width (unable to get it's dimentions at runtime)
	extObj.style.pixelTop = document.documentElement.clientHeight/2 - 110; 
	extObj.style.pixelLeft = document.documentElement.clientWidth/2 - 130;  

	extObj.style.display = "";
	extObj.parentNode.appendChild(BGElement);  
	setBGExtent();
	HideSomeElements();
	BGElement.style.display = "";
}

function ClosePopUp(sName)
{
	var extObj = document.getElementById(sName);
	extObj.style.display = 'none';
	BGElement.style.display = 'none';
	//document.body.scroll="auto";
	ShowSomeElements();
}

function InitTxt(obj)
{
	var sobjId = obj.getAttribute("params");
	g_ControlID = sobjId;
	var lbl = document.getElementById("lbl"+g_ControlID);
	document.getElementById("divHeadTxt").innerHTML = "<p>"+lbl.innerHTML+"</p>";
	document.getElementById("txt_"+g_sLang).value = document.getElementById(sobjId).value;
	try
	{
		if(g_sLangs!="")
		{
			var ArrLang = g_sLangs.split(",");
			for(var j=0;j<ArrLang.length;j++)
			{
				var frm = GetIFrame("frm"+ArrLang[j]);
				if(frm!=null)
				document.getElementById("txt_"+ArrLang[j]).value = frm.document.getElementById(sobjId).value;
				else
				if(document.getElementById(sobjId+"_"+ArrLang[j]))
				document.getElementById("txt_"+ArrLang[j]).value = document.getElementById(sobjId+"_"+ArrLang[j]).value;
			}
		}
	}
	catch(ex)
	{}

	OpenCenter("PanelModalTxt");
}

function onOkTxt()
{
	ClosePopUp("PanelModalTxt")
	document.getElementById(g_ControlID).value = document.getElementById("txt_"+g_sLang).value;
	try
	{
		if(g_sLangs!="")
		{
			var ArrLang = g_sLangs.split(",");
			for(var j=0;j<ArrLang.length;j++)
			{
				var frm = GetIFrame("frm"+ArrLang[j]);
				if(frm)
				frm.document.getElementById(g_ControlID).value = document.getElementById("txt_"+ArrLang[j]).value;
				else
				if(document.getElementById(g_ControlID+"_"+ArrLang[j]))
				document.getElementById(g_ControlID+"_"+ArrLang[j]).value = document.getElementById("txt_"+ArrLang[j]).value;

			}
		}
	}
	catch(ex)
	{}
}

function InitArea(obj)
{
	var sobjId = obj.getAttribute("params");
	g_ControlID = sobjId;
	var lbl = document.getElementById("lbl"+g_ControlID);
	document.getElementById("divHeadArea").innerHTML = "<p>"+lbl.innerHTML+"</p>";
	document.getElementById("area_"+g_sLang).value = document.getElementById(sobjId).value;
	try
	{
		if(g_sLangs!="")
		{
			var ArrLang = g_sLangs.split(",");
			for(var j=0;j<ArrLang.length;j++)
			{
				var frm = GetIFrame("frm"+ArrLang[j]);
				if(frm)
				document.getElementById("area_"+ArrLang[j]).value = frm.document.getElementById(sobjId).value;
				else
				if(document.getElementById(sobjId+"_"+ArrLang[j]))
				document.getElementById("area_"+ArrLang[j]).value = document.getElementById(sobjId+"_"+ArrLang[j]).value;
			}
		}
	}
	catch(ex)
	{}
	OpenCenter("PanelModalArea");
}

function onOkArea()
{
	ClosePopUp("PanelModalArea");
	document.getElementById(g_ControlID).value = document.getElementById("area_"+g_sLang).value;
	try
	{
		if(g_sLangs!="")
		{
			var ArrLang = g_sLangs.split(",");
			for(var j=0;j<ArrLang.length;j++)
			{
				var frm = GetIFrame("frm"+ArrLang[j]);
				if(frm)
				frm.document.getElementById(g_ControlID).value = document.getElementById("area_"+ArrLang[j]).value;
				else
				if(document.getElementById(g_ControlID+"_"+ArrLang[j]))
				document.getElementById(g_ControlID+"_"+ArrLang[j]).value = document.getElementById("area_"+ArrLang[j]).value;
			}
		}
	}
	catch(ex)
	{}
}

function OpenHebCalendar(obj)
{
	//g_bWebServRet = false;
	var sobjId = obj.getAttribute("params");
	g_ControlID = sobjId;

	var lbl = document.getElementById("lbl"+g_ControlID);
	document.getElementById("HebCalendarHead").innerHTML = lbl.innerHTML;

	var hebdate = document.getElementById(sobjId).value; //getAttribute("hebdate");
	//document.getElementById("HebYear").selectedIndex=-1;
	document.getElementById("HebYear").value = "";
	document.getElementById("HebMonth").selectedIndex=-1;
	document.getElementById("HebDay").selectedIndex=-1;  
	if(hebdate && hebdate!="")
	{
		var Arr = hebdate.split(" ");
		if(Arr.length==3)
		{
			document.getElementById("HebYear").value = Arr[2];
			document.getElementById("HebMonth").value = Arr[1].replace(",","").substr(1);
			document.getElementById("HebDay").value = Arr[0];
		}
		else
		{
			document.getElementById("HebYear").value = Arr[3];
			document.getElementById("HebMonth").value = Arr[1].substr(1) + " " + Arr[2].replace(",","");
			document.getElementById("HebDay").value = Arr[0];
		}
	}
	OpenCenter("PanelHebCalendar");
}

function ClearHebDate()
{
	document.getElementById(g_ControlID).value="";
	if(document.getElementById(g_ControlID+"_Greg"))
	  document.getElementById(g_ControlID+"_Greg").value = "";
	ClosePopUp("PanelHebCalendar");
}

function onOkHebCal()
{
	//if(g_bWebServRet) return; //it's a flag 
	//document.getElementById("HebYear").selectedIndex<0
	if(document.getElementById("HebYear").value=="" || document.getElementById("HebMonth").selectedIndex<0 ||
			document.getElementById("HebDay").selectedIndex<0)
	{
		alert(GetUIMessage("GeneralInvalidSelection"));
		return;
	}
	var iMonth = document.getElementById("HebMonth").selectedIndex+1;
	var iDay = document.getElementById("HebDay").selectedIndex+1;
	DataQueryPipe.Get_DateString_FromHeb(document.getElementById("HebYear").value,iMonth,iDay,OnComplete_HebDatetoDate, OnTimeOut, OnError);
	//g_bWebServRet = true;

}

function OnComplete_HebDatetoDate(retResult) 
{
	if(retResult == "")
	{
		alert(GetUIMessage("DateInvalid"));
		return;
	}
	ClosePopUp("PanelHebCalendar");
	//update hidden gregorian date for comper at client side
	if(document.getElementById(g_ControlID+"_Greg"))
	document.getElementById(g_ControlID+"_Greg").value = retResult;
	
	var sHebDate = document.getElementById("HebDay").value ;
	sHebDate += " ב" + document.getElementById("HebMonth").value ;
	sHebDate += ", " + document.getElementById("HebYear").value;

	document.getElementById(g_ControlID).value = sHebDate;
	try
	{
		if(g_sLangs!="")
		{
			var ArrLang = g_sLangs.split(",");
			for(var j=0;j<ArrLang.length;j++)
			{
				var frm = GetIFrame("frm"+ArrLang[j]);
				if(frm)
				frm.document.getElementById(g_ControlID).value = sHebDate;
				
			}
		}
	}
	catch(ex)
	{}
}

var sCodes = "";
var sText = "";
function OpenList(obj)
{
	var codes="";
	sCodes = "";
	sText = "";
	var sobjId = obj.getAttribute("params");
	g_ControlID = sobjId;
	var lbl = document.getElementById("lbl"+g_ControlID);
	document.getElementById("divHeadList").innerHTML = "<p>"+lbl.innerHTML+"</p>";

	var ComboSql = document.getElementById(g_ControlID).getAttribute("ComboSql");
	if(document.getElementById(g_ControlID+"_codes"))
	codes = document.getElementById(g_ControlID+"_codes").value;
	DataQueryPipe.GetListHtml(document.getElementById("Lang").value ,codes, ComboSql,OnComplete_GetListHtml, OnTimeOut, OnError);
	OpenCenter("PanelModalList");
}

function onOkList()
{
	ClosePopUp("PanelModalList");
	var codes = document.getElementById(g_ControlID+"_codes");
	var elmn = document.getElementById(g_ControlID);
	codes.value = "";
	elmn.value = "";
	var bRun = true;
	var j=0;
	while(bRun)
	{
		var mylist = document.getElementById("mylist_"+j);
		if(mylist) 
		{
			if(mylist.checked==true)
			{
				codes.value += mylist.parentElement.getAttribute("val")+",";
				elmn.value += mylist.parentElement.parentElement.outerText+"\n";
			}
		}
		else
		bRun = false;
		j++;
	}
	if(codes.value!="")
	codes.value = codes.value.substr(0,codes.value.length-1);
}

function OnComplete_GetListHtml(retResult)
{
	document.getElementById("PopUpList").innerHTML = retResult;
}

function OpenCalendar(obj)
{
	var sparams = obj.getAttribute("params");
	var ArrPar = sparams.split(",");
	showCalendar(eval(ArrPar[0]),eval(ArrPar[1]));
}

function UpdateHb(obj)
{
	var sparams = obj.getAttribute("params");
	var ArrPar = sparams.split(",");
	g_ControlID = eval(ArrPar[0]);
	g_ControlID += "_heb";

	if(document.getElementById(eval(ArrPar[0])).value!="")
	{
		var ArrD = document.getElementById(eval(ArrPar[0])).value.split("/");
		
		if(ArrD[1].substr(0,1) == "0")
      var Month = ArrD[1].substr(1);
    else
      var Month = ArrD[1];
      
    if(ArrD[0].substr(0,1) == "0")
      var day = ArrD[0].substr(1);
    else
      var day = ArrD[0];

    var d = new Date(parseInt(ArrD[2]),parseInt(Month)-1,parseInt(day)+1);      
		//var d = new Date();
		//d.setFullYear(ArrD[2]);
		//d.setMonth(parseInt(ArrD[1])-1);
		//d.setDate(ArrD[0]);
		DataQueryPipe.GetHebDateString(d,OnHebDateUpdate, OnTimeOut, OnError);
	}
}
function OnHebDateUpdate(retResult) 
{
	if(retResult == "")
	{
		alert(GetUIMessage("DateInvalid"));
		return;
	}
	document.getElementById(g_ControlID).value = retResult;
	if(document.getElementById(g_ControlID+"_Greg"))
	{
	  document.getElementById(g_ControlID+"_Greg").value = document.getElementById(g_ControlID.substr(0,g_ControlID.length-4)).value;
	}
}

function UpdateGr(obj)
{
	var sobjId = obj.getAttribute("params");
	g_ControlID = sobjId.substr(0,sobjId.length-4);
  //alert(document.getElementById(sobjId).value)
	var hebdate = document.getElementById(sobjId).value;
	//document.getElementById("HebYear").selectedIndex=-1;
	document.getElementById("HebYear").value = "";
	document.getElementById("HebMonth").selectedIndex=-1;
	document.getElementById("HebDay").selectedIndex=-1;  
	
	if(hebdate && hebdate!="")
	{
		var Arr = hebdate.split(" ");
		if(Arr.length==3)
		{
			document.getElementById("HebYear").value = Arr[2];
			document.getElementById("HebMonth").value = Arr[1].replace(",","").substr(1);
			document.getElementById("HebDay").value = Arr[0];
		}
		else
		{
			document.getElementById("HebYear").value = Arr[3];
			document.getElementById("HebMonth").value = Arr[1].substr(1) + " " + Arr[2].replace(",","");
			document.getElementById("HebDay").value = Arr[0];
		}
		var iMonth = document.getElementById("HebMonth").selectedIndex+1;
		var iDay = document.getElementById("HebDay").selectedIndex+1;
		DataQueryPipe.Get_DateString_FromHeb(document.getElementById("HebYear").value,iMonth,iDay,OnHebDate2GrDate, OnTimeOut, OnError);
	}
}

function OnHebDate2GrDate(retResult) 
{
	if(retResult == "")
	{
		alert(GetUIMessage("DateInvalid"));
		return;
	}
	document.getElementById(g_ControlID).value = retResult;
}

function onCheckClicked(obj)
{
	if(document.getElementById("hidd_"+obj.id)==null) return;
	
	if(obj.checked) 
	    document.getElementById("hidd_"+obj.id).value = "True";
	else
	    document.getElementById("hidd_"+obj.id).value = "False";
}

/////////////////////////////////
//for saving and adding
function SaveForm(objButt)
{
	var bIsValid = validateControls();
	
	if(!bIsValid) return;
	
	if(document.getElementById("FormName"))
	{
		var sfrmName = document.getElementById("FormName").value;
		if(sfrmName == "DeceasedEdit")
		{
			if(!Custom_Comper2Dates("death_date", "birth_date", true) || !Custom_Comper2Dates("burial_date", "birth_date", true) || !Custom_Comper2Dates("burial_date", "death_date", true))
			{
				alert(GetUIMessage("Comper2DatesBD"));
				return;
			}
			// we add '_Greg' to date heb control for comparing gregorian date
			if(!Custom_Comper2Dates("death_date_heb_Greg", "birth_date_heb_Greg", false) || !Custom_Comper2Dates("burial_date_heb_Greg", "birth_date_heb_Greg", false) || !Custom_Comper2Dates("burial_date_heb_Greg", "death_date_heb_Greg", false))
			{
				alert(GetUIMessage("Comper2DatesBD"));
				return;
			}
		}
	}

	var fieldsType = document.getElementById("fieldsType");
	
	if(fieldsType)
	{
		fieldsType.value = "";
		var obj;
		
		for(var j=0;j<document.form1.all.length;j++)
		{
			obj = document.form1.all[j];
			if(obj.getAttribute("fldType"))
			fieldsType.value+=obj.id+":"+obj.getAttribute("fldType")+",";
		}
		
		fieldsType.value = fieldsType.value.substr(0,fieldsType.value.length-1);
		
		if(objButt)
		    objButt.disabled = true;
		if(document.getElementById("IsNewFrm").value=="true")
		    CallServer(document.getElementById("FormName").value+";"+document.getElementById("KeyField").value);
		else
		    UpdateForms();
	}
}

function OnNewRecord(sResult)
{
	if(sResult=="")
	{
		alert(GetUIMessage("SaveFailure"));
		return;
	}
	document.getElementById("IsNewFrm").value = "false";
	document.getElementById("FormParams").value = sResult;
	window.setTimeout("UpdateForms();",500);
}

function UpdateForms()
{
	if(g_sLangs!="")
	{
		var ArrLang = g_sLangs.split(",");
		for(var j=0;j<ArrLang.length;j++)
		{
			var frmObj = GetIFrame("frm"+ArrLang[j]);
			if(frmObj)
			{
				frmObj.document.getElementById("IsNewFrm").value = document.getElementById("IsNewFrm").value;
				frmObj.document.getElementById("FormParams").value = document.getElementById("FormParams").value;
				frmObj.document.getElementById("fieldsType").value = document.getElementById("fieldsType").value;
				frmObj.document.all("form1").submit();
			}
		}
	}
	document.form1.submit();
}

////////////////////////////////////
//for deleting 
function DeleteDeceased()
{
	if(_Id_=="-1")
	{
		alert(GetUIMessage("MustSaveFirst"));
		return;
	}

	if(confirm(GetUIMessage("DeleteConfirmDeceased")))
	{
		var req_str = "objName=deceased&command=delete&objId="+_Id_;
		ExecXmlHttpRequest("../Tools/ExecCommand.aspx",req_str, OnDeleteDeceased);
	}
}

function DeleteGrave()
{
	if(confirm(GetUIMessage("DeleteConfirmGrave")))
	{
		var req_str = "objName=grave&command=delete&objId="+_Id_;
		ExecXmlHttpRequest("../Tools/ExecCommand.aspx",req_str, OnDeleteGrave);
	}
}

function OnDeleteDeceased()
{
	if (XMLHttpObj.readyState == 4)
	{
		if(XMLHttpObj.status == 200)
		{
			if(XMLHttpObj.responseText=="success")
			    alert(GetUIMessage("DeleteSuccess"));
			else
			    alert(GetUIMessage("DeleteFailure"));

			if(top.opener) top.opener.top.close();
			top.close();
		}
		else
		    alert("XmlHttp Error!");
	}
}

function OnDeleteGrave()
{
	if (XMLHttpObj.readyState == 4)
	{
		if(XMLHttpObj.status == 200)
		{
			if(XMLHttpObj.responseText=="success")
			    alert(GetUIMessage("DeleteSuccess"));
			else
			    alert(GetUIMessage("DeleteFailure"));

			if(top.opener) top.opener.Reload(1);			
			top.close();
		}
		else
		    alert("XmlHttp Error!");
	}
}

function OpenLog()
{
	var Arr = document.getElementById("FormParams").value.split("=");
	
	if(document.getElementById("FormName").value == "DeceasedEdit")
	    OpenLogForm(Arr[1],null);
	else
	    if(document.getElementById("FormName").value == "GraveEdit")
	        OpenLogForm(null,Arr[1]);
}

function ConnectionForm()
{
	if(parseInt(sGraveConnections) > 0)
	    OpenConnectionForm(document.getElementById("deceased_id").value, sGraveConnections);
	else
	    alert(GetUIMessage("GraveConnections"));
}

function OnStartDisableButtonsIfNew()
{
	if(_Id_=="-1")
	{
		if(document.getElementById("btnDelete_btn"))
		    document.getElementById("btnDelete_btn").disabled=true;
		
		if(document.getElementById("btnLog_btn"))
		    document.getElementById("btnLog_btn").disabled=true;  
		
		if(document.getElementById("btnConnect_btn"))
		    document.getElementById("btnConnect_btn").disabled=true;  
		
		if(document.getElementById("burial_society_code"))
		{
			var selObj = document.getElementById("burial_society_code");
			var newEll = document.createElement("OPTION");
			newEll.value = "-1";
			newEll.text = "";
			selObj.options.add(newEll);
			selObj.selectedIndex = selObj.length-1;
		}   
	}

}

//////////////////////////////////////////

function ReloadObjectCard()
{
	if(formChanged())
	{
		if(confirm(GetUIMessage("SubmitQuestion")))
		{
			SaveForm();
		}
		else
		{
			ReloadObjectCardAfterSubmit();
			top.close();
		}
	}
	else
	{
		ReloadObjectCardAfterSubmit();
		top.close();
	}
}

function ReloadObjectCardAfterSubmit()
{
	if(document.getElementById("Submited") != null)
	{
		var Arr = document.getElementById("FormParams").value.split("=");
		if(document.getElementById("FormName").value == "DeceasedEdit")
		    OpenObjectCard(Arr[1],null,0);
		else if(document.getElementById("FormName").value == "GraveEdit")
		    OpenObjectCard(null,Arr[1],1);
	}
}

//////////////////////////////////////
//dropdown lists dependesed on each other
function BurialSocietyChanged(obj)
{
	if(document.getElementById(obj.id).value=="")
	    var sparam = "0";
	else
	    var sparam = document.getElementById(obj.id).value;
	    
	g_ControlID = obj.id;
	DataQueryPipe.GetComboHtml(document.getElementById("Lang").value ,"GraveEdit","parcel_id",sparam, OnComplete_BurialSociety, OnTimeOut, OnError);
}

function OnComplete_BurialSociety(retResult)
{
	document.getElementById("parcel_id").parentElement.innerHTML = retResult;
	MarkRequiredFields(document.getElementById("parcel_id"));
	document.getElementById("section_id").length = 0;
	document.getElementById("sub_section_id").length = 0;
	document.getElementById("row_id").length = 0;
	
	if(g_sLangs != "")
	{
		var ArrLang = g_sLangs.split(",");
		
		for(var j = 0; j < ArrLang.length; j++)
		{
			var frmObj = GetIFrame("frm" + ArrLang[j]);
			
			if(frmObj)
			{
				frmObj.document.getElementById(g_ControlID).value = document.getElementById(g_ControlID).value;
				frmObj.document.getElementById("parcel_id").parentElement.innerHTML = retResult;
				frmObj.document.getElementById("section_id").length = 0;
				frmObj.document.getElementById("sub_section_id").length = 0;
				frmObj.document.getElementById("row_id").length = 0;
			}
		}
	}
	
	// if there is only one option returned, then fill section list
	var objSelect = document.getElementById("parcel_id");
	if(objSelect.options.length == 1) ParcelChanged(objSelect);
}

function ParcelChanged(obj)
{
	if(document.getElementById(obj.id).value=="")
	    var sparam = "0";
	else
	    var sparam = document.getElementById(obj.id).value;
	    
	g_ControlID = obj.id;
	DataQueryPipe.GetComboHtml(document.getElementById("Lang").value ,"GraveEdit","section_id",sparam, OnComplete_Parcel, OnTimeOut, OnError);
}

function OnComplete_Parcel(retResult)
{
	document.getElementById("section_id").parentElement.innerHTML = retResult;
	MarkRequiredFields(document.getElementById("section_id"));
	document.getElementById("sub_section_id").length=0;
	document.getElementById("row_id").length=0;
	if(g_sLangs!="")
	{
		var ArrLang = g_sLangs.split(",");
		for(var j=0;j<ArrLang.length;j++)
		{
			var frmObj = GetIFrame("frm"+ArrLang[j]);
			if(frmObj)
			{
				frmObj.document.getElementById(g_ControlID).value = document.getElementById(g_ControlID).value;
				frmObj.document.getElementById("section_id").parentElement.innerHTML = retResult;
				frmObj.document.getElementById("sub_section_id").length=0;
				frmObj.document.getElementById("row_id").length=0;
			}
		}
	}
	
	// if there is only one option returned, then fill section list
	var objSelect = document.getElementById("section_id");
	if(objSelect.options.length == 1) SectionChanged(objSelect);
}

function SectionChanged(obj)
{
	if(document.getElementById(obj.id).value=="")
	    var sparam = "0";
	else
	    var sparam = document.getElementById(obj.id).value;
	    
	g_ControlID = obj.id;
	DataQueryPipe.GetComboHtml(document.getElementById("Lang").value ,"GraveEdit","sub_section_id",sparam, OnComplete_Section, OnTimeOut, OnError);
}

function OnComplete_Section(retResult)
{
	document.getElementById("sub_section_id").parentElement.innerHTML = retResult;
	MarkRequiredFields(document.getElementById("sub_section_id"));
	document.getElementById("row_id").length=0;
	if(g_sLangs!="")
	{
		var ArrLang = g_sLangs.split(",");
		for(var j=0;j<ArrLang.length;j++)
		{
			var frmObj = GetIFrame("frm"+ArrLang[j]);
			if(frmObj)
			{
				frmObj.document.getElementById(g_ControlID).value = document.getElementById(g_ControlID).value;
				frmObj.document.getElementById("sub_section_id").parentElement.innerHTML = retResult;
				frmObj.document.getElementById("row_id").length=0;
			}
		}
	}
	
	// if there is only one option returned, then fill section list
	var objSelect = document.getElementById("sub_section_id");
	if(objSelect.options.length > 0) SubSectionChanged(objSelect);
}

function SubSectionChanged(obj)
{
	if(document.getElementById(obj.id).value=="")
	    var sparam = "0";
	else
	    var sparam = document.getElementById(obj.id).value;
	    
	g_ControlID = obj.id;
	DataQueryPipe.GetComboHtml(document.getElementById("Lang").value ,"GraveEdit","row_id",sparam, OnComplete_SubSection, OnTimeOut, OnError);
}

function OnComplete_SubSection(retResult)
{
	document.getElementById("row_id").parentElement.innerHTML = retResult;
	MarkRequiredFields(document.getElementById("row_id"));
	//if(document.getElementById("row_id").length>0) document.getElementById("row_id").selectedIndex=1;
	if(g_sLangs!="")
	{
		var ArrLang = g_sLangs.split(",");
		for(var j=0;j<ArrLang.length;j++)
		{
			var frmObj = GetIFrame("frm"+ArrLang[j]);
			if(frmObj)
			{
				frmObj.document.getElementById(g_ControlID).value = document.getElementById(g_ControlID).value;
				frmObj.document.getElementById("row_id").parentElement.innerHTML = retResult;
				
				if(frmObj.document.getElementById("row_id").length>0)
				    frmObj.document.getElementById("row_id").selectedIndex=1;
			}
		}
	}
}


//Ajax Callback Functions-------------------------------------------------

function OnTimeOut(retResult)
{
	alert(GetUIMessage("TimeoutAjax"));
}

function OnError(retResult)
{
	alert(GetUIMessage("ErrorAjax"));
}

//---------------------------

function OnDocumentUnload(func_name)
{
    if(opener && func_name != "")
    {
        try
        {
            eval("opener." + func_name);
        }
        catch(e)
        {
        
        }
    }
}

function OpenHelp()
{
    OpenHelpManagement(document.getElementById("hdnHelpLang").value,document.getElementById("hdnHelpParagraph").value)
}
