// Generic Functions
function PopUp(sUrl,sName,iWid,iHgt){ window.open(sUrl,sName,"width=" + iWid + ",height=" + iHgt + ",left=" + (screen.availWidth - iWid)/2 + ",top=" + (screen.availHeight - iHgt)/2 + ",location=0,menubar=1,resizable=0,status=0,toolbar=0,scrollbars=1") }
function Prompt(sPrompt, sAction) {
	var sInput = prompt(sPrompt,"");
	if (sInput != null && sInput.match(/^.{4,64}$/)) {
		window.location = sAction + "&rs=" + sInput;
	} else {
		alert("Operation failed! Invalid input text. (Length >=4, <=64 Chars).");
	}
}
// Specific Functions
function Show(id){ document.getElementById("imgCur").src = "imgs/hms/i/" + id; }
function Go(inCh){
	window.location.href = "myaccount.aspx?op=" + inCh + "&sr=" + document.getElementById("sr").value;
}
function GoRet(sLink){ if(sLink != '') location.href = sLink + "?ru=" + escape(location.href); }
// Form Validations
function IsValid_sell_new(inForm){
	var sErr = '';
	if(!inForm.txtPhoneNo.value.match(/^\d{10,11}$/)) { sErr = sErr + "Contact No, Length >= 10, Digits only\n"; }
	if(inForm.txtDOB.value == "") { sErr = sErr + "Date of Birth, Cannot be left empty\n"; }
	if(inForm.selService.value == "") { sErr = sErr + "Service Type, Cannot be left empty\n"; }
	if(sErr == "") { return(true); } else { alert("Please check the following: \n\n" + sErr); return(false); }
}
function IsValid_sell_agree(inForm){
	var sErr = '';
	if(!inForm.chkAgree.checked) { sErr = sErr + "Agreement, Cannot be left empty\n"; }
	if(sErr == "") { return(true); } else { alert("Please check the following: \n\n" + sErr); return(false); }
}
function IsValid_edituser(inForm){
	var sErr = '';
	if(!inForm.txtUserName.value.match(/^.{4,64}$/)) { sErr = sErr + "Your name, Length >= 4, No digits & special characters\n"; }
	if(!inForm.txtEmail.value.match(/^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$/)) { sErr = sErr + "Email id, Email syntax\n"; }
	if(inForm.selTimings.value == "") { sErr = sErr + "Timings, Cannot be left empty\n"; }
	if(!inForm.txtAddr1.value.match(/^.{4,128}$/)) { sErr = sErr + "Address Line 1, Length >= 4\n"; }
	if(!inForm.txtAddr2.value.match(/^.{4,128}$/)) { sErr = sErr + "Address Line 2, Length >= 4\n"; }
	if(!inForm.txtArea.value.match(/^[a-zA-Z, ]{4,32}$/)) { sErr = sErr + "Area, Length >= 4, No digits & special characters\n"; }
	if(!inForm.txtCity.value.match(/^[a-zA-Z, ]{4,32}$/)) { sErr = sErr + "City, Length >= 4, No digits & special characters\n"; }
	if(inForm.selState.value == "") { sErr = sErr + "State, Cannot be left empty\n"; }
	if(sErr == "") { return(true); } else { alert("Please check the following: \n\n" + sErr); return(false); }
}
function IsValid_edituser_about(inForm){
	var sErr = '';
	if(!inForm.hdnAboutMe.value.match(/^.{250,2048}$/)) { sErr = sErr + "About You, Length >= 250\nPlease answer more questions and click 'Generate' button\n"; }
	if(inForm.hdnAboutMe.value.match(/\d{3,32}/)) { sErr = sErr + "No Digits, You cannot enter numbers/digits in your answers\n"; }
	if(sErr == "") { return(true); } else { alert("Please check the following: \n\n" + sErr); return(false); }
}
function IsValid_edituser_photo(inForm){
	var sErr = '';
	if(inForm.filUpload.value == "") { sErr = sErr + "Image file path cannot be empty\nPlease click 'Browse' to choose your image\n"; }
	if(sErr == "") { return(true); } else { alert("Please check the following: \n\n" + sErr); return(false); }
}
function IsValid_editprop(inForm){
	var sErr = '';
	if(inForm.selPropType.value == "") { sErr = sErr + "Property Type, Cannot be left empty\n"; }
	if(!inForm.txtAddr1.value.match(/^.{4,128}$/)) { sErr = sErr + "Address Line 1, Length >= 4\n"; }
	if(!inForm.txtAddr2.value.match(/^.{4,128}$/)) { sErr = sErr + "Address Line 2, Length >= 4\n"; }
	if(!inForm.txtArea.value.match(/^[a-zA-Z, ]{4,32}$/)) { sErr = sErr + "Area, Length >= 4, No digits & special characters\n"; }
	if(!inForm.txtCity.value.match(/^[a-zA-Z, ]{4,32}$/)) { sErr = sErr + "City, Length >= 4, No digits & special characters\n"; }
	if(inForm.selState.value == "") { sErr = sErr + "State, Cannot be left empty\n"; }
	if(inForm.selTimings.value == "") { sErr = sErr + "Timings, Cannot be left empty\n"; }
	if(!inForm.txtKeyAccess.value.match(/^.{4,64}$/)) { sErr = sErr + "Key Access, Length >= 4\n"; }
	if(sErr == "") { return(true); } else { alert("Please check the following: \n\n" + sErr); return(false); }
}
function IsValid_editprop_props(inForm){
	var sErr = '';
	if(inForm.txtDOC.value == "") { sErr = sErr + "Date of Construction, Cannot be left empty\n"; }
	if(inForm.txtDOI.value == "") { sErr = sErr + "Date of Inauguration, Cannot be left empty\n"; }
	if(inForm.txtDOP.value == "") { sErr = sErr + "Date of Purchase, Cannot be left empty\n"; }
	if(inForm.chkLoan.checked && !inForm.txtBank.value.match(/^[a-zA-Z, ]{4,64}$/)) { sErr = sErr + "Loan Bank, Length >= 4, No digits & special characters\n"; }
	if(inForm.chkLoan.checked && !inForm.txtLoanYears.value.match(/^\d{1,3}$/)) { sErr = sErr + "Loan Clearance Years, Digits only\n"; }
	if(inForm.selOwnerNo.value == "") { sErr = sErr + "Owner No, Cannot be left empty\n"; }
	if(!inForm.txtOwners.value.match(/^[a-zA-Z, ]{4,512}$/)) { sErr = sErr + "Owner/Partner Names, Length >= 4, No digits & special characters\n"; }
	if(!inForm.txtPrevOwners.value.match(/^[a-zA-Z, ]{0,512}$/)) { sErr = sErr + "Previous Owner/Partner Names, No digits & special characters\n"; }
	if(sErr == "") { return(true); } else { alert("Please check the following: \n\n" + sErr); return(false); }
}
function IsValid_editprop_look(inForm){
	var sErr = '';
	if(!inForm.txtFloorNo.value.match(/^\d{1,3}$/)) { sErr = sErr + "Floor No, Digits only\n"; }
	if(!inForm.txtTotArea.value.match(/^\d{1,8}$/)) { sErr = sErr + "Total Area, Digits only\n"; }
	if(!inForm.txtBuiltArea.value.match(/^\d{1,8}$/)) { sErr = sErr + "Builtup Area, Digits only\n"; }
	if(!inForm.txtNoRooms.value.match(/^\d{1,4}$/)) { sErr = sErr + "No of Rooms, Digits only\n"; }
	if(!inForm.txtNoBeds.value.match(/^\d{1,4}$/)) { sErr = sErr + "No of Bed Rooms, Digits only\n"; }
	if(!inForm.txtNoRests.value.match(/^\d{1,4}$/)) { sErr = sErr + "No of Rest/Bath Rooms, Digits only\n"; }
	if(!inForm.txtNoBals.value.match(/^\d{1,4}$/)) { sErr = sErr + "No of Balconies, Digits only\n"; }
	if(!inForm.txtNoBeds.value.match(/^\d{1,4}$/)) { sErr = sErr + "No of Bed Rooms, Digits only\n"; }
	if(inForm.selCommWalls.value == "") { sErr = sErr + "Common Walls, Cannot be left empty\n"; }
	if(!inForm.txtFloorHeight.value.match(/^\d{1,3}$/)) { sErr = sErr + "Floor Height, Digits only\n"; }
	if(!inForm.txtDrawWid.value.match(/^\d{1,3}$/)) { sErr = sErr + "Drawing/Main Room Width, Digits only\n"; }
	if(!inForm.txtDrawBrd.value.match(/^\d{1,3}$/)) { sErr = sErr + "Drawing/Main Room Breadth, Digits only\n"; }
	if(!inForm.txtMastWid.value.match(/^\d{0,3}$/)) { sErr = sErr + "Master Bed Room Width, Digits only\n"; }
	if(!inForm.txtMastBrd.value.match(/^\d{0,3}$/)) { sErr = sErr + "Master Bed Room Breadth, Digits only\n"; }
	if(inForm.selFlooring.value == "") { sErr = sErr + "Flooring, Cannot be left empty\n"; }
	if(inForm.selFinish.value == "") { sErr = sErr + "Wall Finish, Cannot be left empty\n"; }
	if(inForm.selDoors.value == "") { sErr = sErr + "Doors & Windows, Cannot be left empty\n"; }
	if(inForm.selInterior.value == "") { sErr = sErr + "Interior & Cupboards, Cannot be left empty\n"; }
	if(sErr == "") { return(true); } else { alert("Please check the following: \n\n" + sErr); return(false); }
}
function IsValid_editprop_feats(inForm){
	var sErr = '';
	if(inForm.selParking.value == "") { sErr = sErr + "Parking, Cannot be left empty\n"; }
	if(!inForm.txtBusStop.value.match(/^[a-zA-Z, ]{4,32}$/)) { sErr = sErr + "Nearest Bus Stop, Length >= 4, No digits & special characters\n"; }
	if(!inForm.txtBusNoKms.value.match(/^\d{1,4}$/)) { sErr = sErr + "Bus Stop Distance, Digits only\n"; }
	if(!inForm.txtTrainStop.value.match(/^[a-zA-Z, ]{4,32}$/)) { sErr = sErr + "Nearest Train Stop, Length >= 4, No digits & special characters\n"; }
	if(!inForm.txtTrainNoKms.value.match(/^\d{1,4}$/)) { sErr = sErr + "Train Stop Distance, Digits only\n"; }
	if(!inForm.txtAirPort.value.match(/^[a-zA-Z, ]{4,32}$/)) { sErr = sErr + "Nearest Air Port, Length >= 4, No digits & special characters\n"; }
	if(!inForm.txtAirNoKms.value.match(/^\d{1,4}$/)) { sErr = sErr + "Air Port Distance, Digits only\n"; }
	if(!inForm.txtTheater.value.match(/^[a-zA-Z, ]{0,32}$/)) { sErr = sErr + "Nearest Theater, No digits & special characters\n"; }
	if(!inForm.txtTheaterNoKms.value.match(/^\d{0,4}$/)) { sErr = sErr + "Theater Distance, Digits only\n"; }
	if(!inForm.txtLandMark1.value.match(/^[a-zA-Z, ]{0,32}$/)) { sErr = sErr + "Nearest LandMark 1, No digits & special characters\n"; }
	if(!inForm.txtLandMark1NoKms.value.match(/^\d{0,4}$/)) { sErr = sErr + "LandMark 1 Distance, Digits only\n"; }
	if(!inForm.txtLandMark2.value.match(/^[a-zA-Z, ]{0,32}$/)) { sErr = sErr + "Nearest LandMark 2, No digits & special characters\n"; }
	if(!inForm.txtLandMark2NoKms.value.match(/^\d{0,4}$/)) { sErr = sErr + "LandMark 2 Distance, Digits only\n"; }
	if(inForm.selDrinkWater.value == "") { sErr = sErr + "Drinking Water Supply, Cannot be left empty\n"; }
	if(inForm.selRegWater.value == "") { sErr = sErr + "Regular Water Supply, Cannot be left empty\n"; }
	if(sErr == "") { return(true); } else { alert("Please check the following: \n\n" + sErr); return(false); }
}
function IsValid_editprop_vastu(inForm){
	var sErr = '';
	if(inForm.selFacing.value == "") { sErr = sErr + "Facing, Cannot be left empty\n"; }
	if(!inForm.txtVastu1.value.match(/^[a-zA-Z,. ]{4,128}$/)) { sErr = sErr + "Vastu Considerations, Please fill all four, No digits & special characters\n"; }
	if(!inForm.txtVastu2.value.match(/^[a-zA-Z,. ]{4,128}$/)) { sErr = sErr + "Vastu Considerations, Please fill all four, No digits & special characters\n"; }
	if(!inForm.txtVastu3.value.match(/^[a-zA-Z,. ]{4,128}$/)) { sErr = sErr + "Vastu Considerations, Please fill all four, No digits & special characters\n"; }
	if(!inForm.txtVastu4.value.match(/^[a-zA-Z,. ]{4,128}$/)) { sErr = sErr + "Vastu Considerations, Please fill all four, No digits & special characters\n"; }
	if(sErr == "") { return(true); } else { alert("Please check the following: \n\n" + sErr); return(false); }
}
function IsValid_editprop_price(inForm){
	var sErr = '';
	if(!inForm.txtPrice.value.match(/^\d{1,12}(\.\d{1,2})?$/)) { sErr = sErr + "Price, Digits only\n"; }	
	if(!inForm.txtMargin.value.match(/^\d{1,12}(\.\d{1,2})?$/)) { sErr = sErr + "Margin, Digits only\n"; }	
	if(!inForm.txtParkPrice.value.match(/^\d{1,12}(\.\d{1,2})?$/)) { sErr = sErr + "Parking Price, Digits only\n"; }	
	if(!inForm.txtAddlPrice.value.match(/^\d{1,12}(\.\d{1,2})?$/)) { sErr = sErr + "Additional Price, Digits only\n"; }	
	if(!inForm.txtTotPrice.value.match(/^\d{1,12}(\.\d{1,2})?$/)) { sErr = sErr + "Total Price, Digits only\n"; }	
	if(!inForm.txtRegBudget.value.match(/^\d{1,12}(\.\d{1,2})?$/)) { sErr = sErr + "Registration Budget, Digits only\n"; }	
	if(!inForm.txtMntBudget.value.match(/^\d{1,12}(\.\d{1,2})?$/)) { sErr = sErr + "Maintenance Budget, Digits only\n"; }	
	if(!inForm.txtIncome.value.match(/^\d{1,12}(\.\d{1,2})?$/)) { sErr = sErr + "Rental/Income, Digits only\n"; }	
	if(sErr == "") { return(true); } else { alert("Please check the following: \n\n" + sErr); return(false); }
}
function IsValid_editprop_photo(inForm){
	var sErr = '';
	if(inForm.filUpload.value == "") { sErr = sErr + "Image file path cannot be empty\nPlease click 'Browse' to choose your image\n"; }
	if(sErr == "") { return(true); } else { alert("Please check the following: \n\n" + sErr); return(false); }
}
function IsValid_editprop_photos(){
	var sErr = '';
	if(document.getElementById("divPhotos").innerHTML.toLowerCase() == "<br>none!<br><br>") { sErr = sErr + "Property Photographs, Cannot be left empty\n"; }
	if(sErr == "") { window.location.href='editprop_price.aspx'; } else { alert("Please check the following: \n\n" + sErr); return(false); }
}
function IsValid_editprop_map(){
	var sErr = '';
	if(document.getElementById("filUpload").value == "") { sErr = sErr + "Image file path cannot be empty\nPlease click 'Browse' to choose your image\n"; }
	if(sErr == "") { return(true); } else { alert("Please check the following: \n\n" + sErr); return(false); }
}
function IsValid_default(inForm){
	var sErr = '';
	if(!inForm.sr.value.match(/^[a-zA-Z0-9 ]{0,16}$/)) { sErr = sErr + "Search, No special characters\n"; }
	if(sErr == "") { return(true); } else { alert("Please check the following: \n\n" + sErr); return(false); }
}
function IsValid_buy_new(inForm){
	var sErr = '';
	if(!inForm.txtPhoneNo.value.match(/^\d{10,11}$/)) { sErr = sErr + "Contact No, Length >= 10, Digits only\n"; }
	if(inForm.txtDOB.value == "") { sErr = sErr + "Date of Birth, Cannot be left empty\n"; }
	if(inForm.selService.value == "") { sErr = sErr + "Service Type, Cannot be left empty\n"; }
	if(sErr == "") { return(true); } else { alert("Please check the following: \n\n" + sErr); return(false); }
}
function IsValid_buy_agree(inForm){
	var sErr = '';
	if(!inForm.chkAgree.checked) { sErr = sErr + "Agreement, Cannot be left empty\n"; }
	if(sErr == "") { return(true); } else { alert("Please check the following: \n\n" + sErr); return(false); }
}
function IsValid_editenq(inForm){
	var sErr = '';
	if(inForm.selPropType.value == "") { sErr = sErr + "Property Type, Cannot be left empty\n"; }
	if(inForm.selRange.value == "") { sErr = sErr + "Price Range, Cannot be left empty\n"; }
	if(!inForm.txtArea.value.match(/^[a-zA-Z, ]{4,32}$/)) { sErr = sErr + "Area, Length >= 4, No digits & special characters\n"; }
	if(!inForm.txtCity.value.match(/^[a-zA-Z, ]{4,32}$/)) { sErr = sErr + "City, Length >= 4, No digits & special characters\n"; }
	if(inForm.selState.value == "") { sErr = sErr + "State, Cannot be left empty\n"; }
	if(inForm.selTimings.value == "") { sErr = sErr + "Visit Timings, Cannot be left empty\n"; }
	if(inForm.selAge.value == "") { sErr = sErr + "Property Age, Cannot be left empty\n"; }
	if(inForm.selTotArea.value == "") { sErr = sErr + "Total Area, Cannot be left empty\n"; }
	if(inForm.selNoRooms.value == "") { sErr = sErr + "No Rooms, Cannot be left empty\n"; }
	if(inForm.selNoBeds.value == "") { sErr = sErr + "No Bed Rooms, Cannot be left empty\n"; }
	if(inForm.selProximity.value == "") { sErr = sErr + "Proximity, Cannot be left empty\n"; }
	if(sErr == "") { return(true); } else { alert("Please check the following: \n\n" + sErr); return(false); }
}
function IsValid_login(inForm){
	var sErr = '';
	if(!inForm.txtPhoneNo.value.match(/^\d{10,11}$/)) { sErr = sErr + "Contact No, Length >= 10, Digits only\n"; }
	if(inForm.txtDOB.value == "") { sErr = sErr + "Date of Birth, Cannot be left empty\n"; }
	if(sErr == "") { return(true); } else { alert("Please check the following: \n\n" + sErr); return(false); }
}
function IsValid_task(inForm){
	var sErr = '';
	if(inForm.selUserType.value == "") { sErr = sErr + "UserType, Cannot be left empty\n"; }
	if(inForm.txtSTR.value.value == "") { sErr = sErr + "Start Date, Cannot be left empty\n\n"; }
	if(inForm.txtEND.value.value == "") { sErr = sErr + "END Date, Cannot be left empty\n\n"; }
	if(!inForm.txtEffort.value.match(/^\d{1,4}$/)) { sErr = sErr + "Effort Hours, Digits only\n"; }
	if(!inForm.txtTitle.value.match(/^[a-zA-Z, ]{4,64}$/)) { sErr = sErr + "Task Title, Length >= 4, No digits & special characters\n"; }
	if(inForm.txaTask.value.length < 4 || inForm.txaTask.value.length > 256) { sErr = sErr + "Task notes and description, Length >=4, <=256\n"; }
	if(sErr == "") { return(true); } else { alert("Please check the following: \n\n" + sErr); return(false); }
}
function IsValid_invoice(inForm){
	var sErr = '';
	if(inForm.txtPAY.value.value == "") { sErr = sErr + "Payby Date, Cannot be left empty\n\n"; }
	if(!inForm.txtInvoice.value.match(/^\d{1,12}(\.\d{1,2})?$/)) { sErr = sErr + "Invoice Amount, Digits only\n"; }
	if(!inForm.txtDesc.value.match(/^[a-zA-Z, ]{4,256}$/)) { sErr = sErr + "Invoice Description, Length >= 4, <=256, No digits & special characters\n"; }
	if(sErr == "") { return(true); } else { alert("Please check the following: \n\n" + sErr); return(false); }
}
function IsValid_assign(inForm){
	var sErr = '';
	if(inForm.selUser.value.value == "") { sErr = sErr + "Select user, Cannot be left empty\n\n"; }
	if(sErr == "") { return(true); } else { alert("Please check the following: \n\n" + sErr); return(false); }
}
// AJAX
function ShowErr(sErr){
	document.getElementById("imgFacing").className = "h";
	document.getElementById("imgLoading").className = "s";
	document.getElementById("sErr").innerHTML = " &nbsp; " + sErr;
	document.getElementById("sErr").className = "s xs r";
}
function HideErr(){
	document.getElementById("imgLoading").className = "h";
	document.getElementById("sErr").innerHTML = " &nbsp; loading...";
	document.getElementById("sErr").className = "h xs r";
	document.getElementById("imgFacing").className = "s";
}
var oReq;
function ReqStatusChange()
{
	if (oReq.readyState==4)
	{
		if (oReq.status==200)
		{
			var sResult = oReq.responseText;
			if (sResult != "" && sResult != null) {
				try {
					document.getElementById("sHtml").innerHTML = sResult;
					if(document.getElementById("btnView") != null) document.getElementById("btnView").disabled = true;
					if(document.getElementById("btnEnquire") != null) document.getElementById("btnEnquire").disabled = false;
					if(document.getElementById("fnView") != null) document.getElementById("fnView").className = "r xs";
					if(document.getElementById("fnView") != null) document.getElementById("fnView").innerHTML = "Please click here to enquire!";
					HideErr();
				} catch (e) {
					ShowErr("Browser Error!");
				}
			} else {
				ShowErr("Not Found!");
			}
		} else {
			ShowErr("Too Many Hits!");
		}
	}
}
function GetHtml(sUrl){
	ShowErr(" &nbsp; loading...");
	if (window.XMLHttpRequest)
	{
		oReq = new XMLHttpRequest();
		oReq.onreadystatechange = ReqStatusChange;
		oReq.open("GET", sUrl, true);
		oReq.setRequestHeader("If-Modified-Since", "Sat, 1 Jan 2000 00:00:00 GMT");
		oReq.send(null);
	} else if (window.ActiveXObject) {
		oReq = new ActiveXObject("Microsoft.XMLHTTP");
		if (oReq)
		{
		oReq.onreadystatechange = ReqStatusChange;
		oReq.open("GET", sUrl, true);
		oReq.setRequestHeader("If-Modified-Since", "Sat, 1 Jan 2000 00:00:00 GMT");
		oReq.send();
		}
	}
}
