function CheckLength(CurCtl, ToCtl, Stroke)
	{
	if(CurCtl.value.length > Stroke)
		{
			CurCtl.value = "";
		}
	if(CurCtl.value.length >= Stroke)
		{
			ToCtl.focus();
		}
	if(isNaN(CurCtl.value))
		{
			CurCtl.value = "";
			CurCtl.focus();
		}
	}
	
function ClearIF(CurCtl, Stroke)
	{
	if(CurCtl.value.length >= Stroke)
		{
			CurCtl.select();
		}
	}		
	
function isDateValid(date) { 
  regex = /((0[1-9])|(1[0-2]))\/((0[1-9])|([1-2]\d|30|31|32]))\/(\d\d\d\d)/;
	
  if(regex.test(date)) {
    return true;
  }
  return false;	
}

function MenuCntl(strDivName, strimgName)
	{
	var divCntl = document.getElementById(strDivName);
	var imgCntl = document.getElementById(strimgName);
	
	if (divCntl.style.display == "none")
		{
		divCntl.style.display = "block";
		imgCntl.src = "img/MenuIcon2.jpg";
		}else{
		divCntl.style.display = "none";
		imgCntl.src = "img/MenuIcon.jpg";
		}
	}
	
function DivCntl(strDivName)
	{
	var divCntl = document.getElementById(strDivName);
	
	if (divCntl.style.display == "none")
		{
		divCntl.style.display = "block";
		}else{
		divCntl.style.display = "none";
		}
	}	
	
function MenuChange(strDivName, strMode)
{
	var divCntl = document.getElementById(strDivName);
	
	if (strMode == "block")
	{
		divCntl.style.display = "block";
	}
	else
	{
		divCntl.style.display = "none";
	}
}	

function AjaxRequest(strPage, strDiv)
	{    
	var oXmlHttp = zXmlHttp.createRequest();
	
	oXmlHttp.open("get", strPage, true);
	oXmlHttp.onreadystatechange = function () {
		if (oXmlHttp.readyState == 4) 
			{
			if (oXmlHttp.status == 200) 
				{
					displayAjax(oXmlHttp.responseText, strDiv);
				} else {
					//displayAjax("An error occurred", strDiv); //statusText is not always accurate
					displayAjax(oXmlHttp.responseText, strDiv);
				}
			}            
		};
	oXmlHttp.send(null);
	//return true;
	}

function displayAjax(sText, strDiv) 
	{
	var divDisplay = document.getElementById(strDiv);
	divDisplay.innerHTML = sText;
	}
	
function SpinnerRequest(strPage, strDiv)
	{	
	var oXmlHttp = zXmlHttp.createRequest();
	oXmlHttp.open("get", strPage, false);
	oXmlHttp.onreadystatechange = function () {
		if (oXmlHttp.readyState == 4) 
			{
			if (oXmlHttp.status == 200) 
				{
				displayAjax(oXmlHttp.responseText, strDiv);
				return true;
				}
			}            
		};
	oXmlHttp.send(null);
	//return true;
	}
	
function LogOut () {
	window.location = 'logout.asp';
}

function resetCounter() {
	var divCntl = document.getElementById("divSessionTimeout");
	divCntl.style.display = "none";
	seconds=1200;
}

function NewWindow(page) {
	OpenWin = this.open(page, "CtrlWindow", "toolbar=no,menubar=no,location=no,scrollbars=yes,resizable=yes,height=600,width=825");
}

function OpenSchedule() {
	OpenWin = this.open("scheduleonly.asp", "CtrlWindow", "toolbar=no,menubar=no,location=no,scrollbars=yes,resizable=yes,height=240,width=690");
}

	
function ResetCoverages() {
	document.frmHO.txtCoverageB.value = document.frmHO.txtCoverageA.value * .10;
	document.frmHO.txtCoverageC.value = document.frmHO.txtCoverageA.value * .50;
	document.frmHO.txtCoverageD.value = document.frmHO.txtCoverageA.value * .30;
	
	return false;
}

function QuickQuoteHO (cAction) {
	var FName, LName, PolForm, RatingState, Territory, PolEff, ConstType, YrBuilt, PC, OccupType, NbrFam;
	var NbrUnits, CovA, CovB, CovC, CovD, CovE, CovF, WindHail, AOP, strDest;
	
	FName = document.frmHO.txtFname.value;
	LName = document.frmHO.txtLname.value;
	PolForm = document.frmHO.sel_form.value;
	RatingState = document.frmHO.sel_RatingState.value;
	Territory = document.frmHO.sel_territory.value;
	PolEff = document.frmHO.txtPolEff.value;
	ConstrType = document.frmHO.sel_constrtype.value;
	YrBuilt = document.frmHO.txtYearBuilt.value;
	PC = document.frmHO.sel_protclass.value;
	OccupType = document.frmHO.sel_occupancy.value;
	NbrFam = document.frmHO.txtNbrFam.value;
	NbrUnits = "1";
	CovA = document.frmHO.txtCoverageA.value;
	CovB = document.frmHO.txtCoverageB.value;
	CovC = document.frmHO.txtCoverageC.value;
	CovD = document.frmHO.txtCoverageD.value;
	CovE = document.frmHO.sel_coverageE.value;
	CovF = document.frmHO.sel_coverageF.value;
	WindHail = document.frmHO.sel_windhail.value;
	AOP = document.frmHO.sel_allperils.value;
	
	strDest = 'quick_quote.asp?fname='+FName+'&lname='+LName+'&form='+PolForm+'&state='+RatingState+'&terr='+Territory;
	strDest = strDest + '&poleff='+PolEff+'&consttype='+ConstrType+'&yrbuilt='+YrBuilt+'&pc='+PC+'&occtype='+OccupType;
	strDest = strDest + '&nbrfam='+NbrFam+'&nbrunits='+NbrUnits+'&cova='+CovA+'&covb='+CovB+'&covc='+CovC+'&covd='+CovD;
	strDest = strDest + '&cove='+CovE+'&covf='+CovF+'&windhail='+WindHail+'&aop='+AOP+'&action='+cAction;
	
	if(cAction != 'changestate'){
		SpinnerRequest('AjaxActivity.asp','divDisplay');
	}
	
	AjaxRequest(strDest,'divDisplay');
}

function ViewWorksheet(quotenumber) {
	var loc;
	
	loc = "worksheet.asp?quote="+quotenumber;		
	pWin = window.open(loc,'pWin','location=no, menubar=yes, toolbar=no, scrollbars=yes, width=650, height=550'); 				
}
	
function GenerateReport (strAgent, strPolicy) {
	var report, timeperiod, startdate, enddate, reportby, number, location;
	
	report = '';
	timeperiod = '';
	reportby = '';
	number = '';
	startdate = '1/1/1900';
	enddate = '1/1/2100';
	
	MenuChange('divReportError','none');
	report = document.frmReports.selReport.value;

    if (report == 'BalReport') {
       	strDest = 'BalanceReport.asp';
        SpinnerRequest("AjaxActivitySmall.asp","divDisplay"); 
        AjaxRequest(strDest,'divDisplay');
        return true;
    }
    
	if (report == '') {
		alert('Please select a report.');
		return false;
	}		
	
	for (i=0;i<document.frmReports.rbTimePeriod.length;i++){
		if (document.frmReports.rbTimePeriod[i].checked==true) {
			timeperiod = document.frmReports.rbTimePeriod[i].value;
		}
	}

	if (timeperiod == 'specific' || report == 'ExpList' || report == 'LossRunAll') {
		startdate = document.frmReports.dtStartDate.value;
		enddate = document.frmReports.dtEndDate.value;
	
		if (startdate == '') {
			alert('Please enter the starting date for the report.');
			return false;
		}
		if (dateValid(startdate) == false) {
			alert('The starting date you entered is not valid.  Please try again.');
			return false;
		}
		if (enddate == '') {
			alert('Please enter the ending date for the report.');
			return false;
		}
		if (dateValid(enddate) == false) {
			alert('The ending date you entered is not valid.  Please try again.');
			return false;
		}
	}
	for (i=0;i<document.frmReports.rbReportBy.length;i++){
		if (document.frmReports.rbReportBy[i].checked==true) {
			reportby = document.frmReports.rbReportBy[i].value;			

			if (reportby == 'policy') { 
				number = document.frmReports.txtPolicy.value; }
			else if (reportby == 'agent') {
				number = document.frmReports.txtAgent.value; }
			else if (reportby == 'claim') {
				number = document.frmReports.txtClaim.value; }
			else {
			    number = 'X'; }

		}
	}

	if (number == '') {
		alert('Please enter the ' + reportby + ' number for the report.');
		return false;
	}
	
	if (report == 'AgentProd') {
		startdate = document.frmReports.dtStartDate.value;
		enddate = document.frmReports.dtEndDate.value;
    }
	location2 = 'validate_reports.asp?report='+report+'&policy='+number+'&agent='+strAgent+'&startdate='+startdate+'&enddate='+enddate;
	var oXmlHttp = zXmlHttp.createRequest();	
	oXmlHttp.open("get", location2, true);
	var winMax = new xWindow(
								'winMax',               // target name
								screen.availWidth-10,   // width
								screen.availHeight-20,  // height
								0, 0,                   // position: left, top
								0,                      // location field
								0,                      // menubar
								1,                      // resizable
								1,                      // scrollbars
								0,                      // statusbar
								0);                     // toolbar
	oXmlHttp.onreadystatechange = function () {
		if (oXmlHttp.readyState == 4) {
			if (oXmlHttp.status == 200) {
				if(oXmlHttp.responseText.length > 3) {					
					MenuChange('divReportError','block');
					displayAjax(oXmlHttp.responseText, 'divReportError');
				}
				else {	
					location = 'showreport.asp?report='+report+'&timeperiod='+timeperiod+'&reportby='+reportby;
					location = location+'&agent='+strAgent+'&number='+number+'&startdate='+startdate+'&enddate='+enddate;
 				    winMax.load(location);
				}
			} 
			else {
				displayAjax("An error occurred", "divReportError"); //statusText is not always accurate
				//displayAjax(oXmlHttp.responseText, strDiv);
			}
		}            
	};
	oXmlHttp.send(null);			
}

//function ChangeReportOptions(nAllDates, nSpecificDates, nPolicy, nAgent, nClaims) {
//	var cntl;

//	if (nAllDates == 1 || nSpecificDates == 1) { MenuChange('ShowDates','block'); }	
//	else { MenuChange('ShowDates','none'); }	
//	
//	if (nPolicy == 1 || nAgent == 1 || nClaims == 1) { MenuChange('ShowReportBy','block'); }	
//	else { MenuChange('ShowReportBy','none'); }

//	if (nAllDates == 1) { MenuChange('ShowAllDates','block'); }	
//	else { MenuChange('ShowAllDates','none'); }
//		
//	if (nSpecificDates == 1) { MenuChange('ShowSpecificDates','block'); }	
//	else { MenuChange('ShowSpecificDates','none'); }
//					
//	if (nPolicy == 1) { MenuChange('ShowPolicyOption','block'); }	
//	else { MenuChange('ShowPolicyOption','none'); }
//		
//	if (nAgent == 1) { MenuChange('ShowAgentOption','block'); }	
//	else { MenuChange('ShowAgentOption','none'); }
//		
//	if (nClaims == 1) { MenuChange('ShowClaimOption','block'); }
//	else { MenuChange('ShowClaimOption','none'); }						
//}

function ChangeReportOptions(nAllDates, nSpecificDates, nPolicy, nAgent, nClaims) {
	var cntl;
	if (nPolicy == 1 || nAgent == 1 || nClaims == 1) { MenuChange('ShowReportBy','block'); }	
	else { MenuChange('ShowReportBy','none'); }

	//if (nAllDates == 1 || nSpecificDates == 1) { MenuChange('ShowDates','block'); }	
	//else { MenuChange('ShowDates','none'); }	

	//if (nAllDates == 1) { MenuChange('ShowAllDates','block'); }	
	//else { MenuChange('ShowAllDates','none'); }
		
	//if (nSpecificDates == 1) { MenuChange('ShowSpecificDates','block'); }	
	//else { MenuChange('ShowSpecificDates','none'); }
					
	if (nPolicy == 1) { 
	    MenuChange('ShowPolicyOption','block'); 
	    document.frmReports.txtPolicy.focus();
    }	
	else { MenuChange('ShowPolicyOption','none'); }
		
	if (nAgent == 1) { MenuChange('ShowAgentOption','block'); }	
	else { MenuChange('ShowAgentOption','none'); }
		
	if (nClaims == 1) { MenuChange('ShowClaimOption','block'); }
	else { MenuChange('ShowClaimOption','none'); }						
	
    if (nAllDates == 0 && nSpecificDates == 0) {
 	    MenuChange('divReportDates','none');
	    MenuChange('ShowSpecificDates','none');
		MenuChange('GetDates','none'); 
		MenuChange('GetReport','block'); 
    }
	else if (nSpecificDates == 1 && nPolicy == 0) { 
	    MenuChange('divReportDates','none');
	    MenuChange('ShowSpecificDates','block');
		MenuChange('GetDates','none'); 
		MenuChange('GetReport','block'); 
		document.frmReports.dtStartDate.value = "";
		document.frmReports.dtEndDate.value = "";
		document.frmReports.rbReportBy[3].checked = "checked";
		document.frmReports.dtStartDate.focus();
	}	
	else { 
	    MenuChange('ShowSpecificDates','none');
		MenuChange('GetDates','block'); 
		MenuChange('GetReport','none'); 
	}
}


function GetReportDates(pcPolicy) {
	//MenuChange('ShowDates','block');
	//MenuChange('ShowAllDates','block');
	//MenuChange('ShowSpecificDates','block'); 

	var strDest = "report_policy_dates.asp?policy=" + pcPolicy;
	
	MenuChange('divReportDates','block'); 
	
	if (pcPolicy == "") {		
		MenuChange('GetDates','block'); 
		MenuChange('GetReport','none'); 
	}
	else {
		MenuChange('GetDates','none'); 
		MenuChange('GetReport','block'); 
	}	

    SpinnerRequest("AjaxActivitySmall.asp","divReportDates"); 
    AjaxRequest(strDest,'divReportDates');
}

function SetReportBy(sValue) {
	for (i=0;i<document.frmSearch.rbSearchType.length;i++){
		if (document.frmSearch.rbSearchType[i].value==sValue) {document.frmSearch.rbSearchType[i].checked = true; }
		else { document.frmSearch.rbSearchType[i].checked = false; }
	}
}

function xWindow(name, w, h, x, y, loc, men, res, scr, sta, too)
{
  var e='',c=',',xf='left=',yf='top='; this.n = name;
  if (document.layers) {xf='screenX='; yf='screenY=';}
  this.f = (w?'width='+w+c:e)+(h?'height='+h+c:e)+(x>=0?xf+x+c:e)+
    (y>=0?yf+y+c:e)+'location='+loc+',menubar='+men+',resizable='+res+
    ',scrollbars='+scr+',status='+sta+',toolbar='+too;
  this.opened = function() {return this.w && !this.w.closed;};
  this.close = function() {if(this.opened()) this.w.close();};
  this.focus = function() {if(this.opened()) this.w.focus();};
  this.load = function(sUrl) {
    //if (this.opened()) this.w.location.href = sUrl;
	//else this.w = window.open(sUrl,this.n,this.f);
	this.close();
	this.w = window.open(sUrl,this.n,this.f);
    this.focus();
    return false;
  };
}

function ViewDoc(strDoc,strDocType) {
	strDoc = 'attachments/' + strDoc + '.' + strDocType;

	var winMax = new xWindow(
								'winMax',               // target name
								screen.availWidth-10,   // width
								screen.availHeight-40,  // height
								0, 0,                   // position: left, top
								0,                      // location field
								0,                      // menubar
								1,                      // resizable
								1,                      // scrollbars
								0,                      // statusbar
								0);                     // toolbar
	winMax.load(strDoc);

}

function ViewAgencyDoc(strAcctDate,strDoc) {
	strDoc = 'attachments/agents/' + strAcctDate + '/' + strDoc ;
	var winMax = new xWindow(
								'winMax',               // target name
								screen.availWidth-10,   // width
								screen.availHeight-40,  // height
								0, 0,                   // position: left, top
								0,                      // location field
								0,                      // menubar
								1,                      // resizable
								1,                      // scrollbars
								0,                      // statusbar
								0);                     // toolbar
	winMax.load(strDoc);

}

function PayBill() {
	page = 'http://www.securitymutual.com/pay_direct.html';

	var winMax = new xWindow(
								'winMax',               // target name
								800,   // width
								600,  // height
								0, 0,                   // position: left, top
								0,                      // location field
								0,                      // menubar
								1,                      // resizable
								1,                      // scrollbars
								1,                      // statusbar
								0);                     // toolbar
	winMax.load(page);

}

