// JavaScript Document

//  =========== START SCRIPTS NEEDED FOR FILTER LOGIC ==============

function ddState(vcurrent, vsilent) {
	alert('ddState fired!');
	var SilentNum
	var SelectedDD
	SelectedDD = vcurrent + "Qty";
	var SilentDD
	SilentDD = vsilent + "Qty";
	var CurrentNum = document.getElementById(SilentDD).options[document.getElementById(SilentDD).selectedIndex].value;	
	
	if (document.getElementById(vcurrent).checked == true) {
		if (document.getElementById(vsilent).checked == true) {
			SilentNum = document.getElementById(SilentDD).options[document.getElementById(SilentDD).selectedIndex].value;
			SilentNum = 5 - SilentNum;
			ddWrite(vcurrent, SilentNum, vsilent, CurrentNum);
		}
		else {
			ddWrite(vcurrent,5,vsilent, 0);
		}
	}
	else {
		document.getElementById(SelectedDD).disabled = true;
		if (document.getElementById(vsilent).checked == true) {
			ddWrite(vsilent,5,vcurrent, 0);
		}		
	}
}

function ddNum(ycurrent, ysilent) {
	alert('ddNum fired!');
	var ysilentDD
	var ycurrentDD
	ycurrentDD = ycurrent + "Qty";
	ysilentDD = ysilent + "Qty";
	var ycurrentNum = document.getElementById(ycurrentDD).options[document.getElementById(ycurrentDD).selectedIndex].value;
	var ysilentNum = 5 - ycurrentNum;
	ykeepnum = document.getElementById(ysilentDD).options[document.getElementById(ysilentDD).selectedIndex].value;
	
	if (document.getElementById(ysilent).checked == true) { 
		ddWrite(ysilent,ysilentNum,ycurrent, ykeepnum);
	}
}


function ddWrite(xcurrent, xnum, xsilent, xkeepnum) {
    alert('ddWrite fired!');
	var SelectedArea
	var ddName
	
	alert(xcurrent);
	alert(xsilent);
	SelectedArea = xcurrent + "Area";
	var selOpen = "<select id=" + xcurrent + "Qty name=" + xcurrent + "Qty onchange=ddNum('" + xcurrent + "','" + xsilent + "'); style=font-size:9px;>";
	var selClose = "</select>";
	var msg = "";
	xsilentDD = xsilent + "Qty";
	
	//alert(xkeepnum);
	if (xnum > 0) {
		for (var x = 1; x <= xnum; x++)   {
			if (xkeepnum == x) {
				msg = msg + "<option value=" + x + " selected>" + x + "</option>" + "\n";
			}
			else {
				msg = msg + "<option value=" + x + ">" + x + "</option>" + "\n";	
			}
	   }
	}
	else {
			msg = msg + "<option value=0>&nbsp;</option>";
	}
   //alert(SelectedArea);
   document.getElementById(SelectedArea).innerHTML = selOpen + msg + selClose;
   //document.getElementById('AddOnSec').style.display = "block";
   
   //if (document.getElementById(xcurrent).checked == true) {
		//if (document.getElementById(xsilent).checked == true) {
			
			//document.getElementById(xsilentDD).selectedIndex = xkeepnum;
		//}
   //}
}	
	
//  =========== END SCRIPTS NEEDED FOR FILTER LOGIC ==============


//  =========== START SHOPPING CART LOGIC ==============

function UpdateCart(vcheck) {
	var DueMonthly
	var DueToday
	var vItemCount
	var ShippingState = 0;
	var ShippingFee = 0.00;
	
	DueMonthly = 0;
	DueToday = 0;
	vItemCount = 0;
	
	
	// check to see if cart is empty		
	if (vcheck == 0) {
		document.getElementById('empty').style.display = "block";
		document.getElementById('notempty').style.display = "none";
	}
	else  {
		
		// this changes the cart from being empty
		document.getElementById('empty').style.display = "none";
		document.getElementById('notempty').style.display = "block";
		
		// checks to see what elements of the cart have been added
		if (document.getElementById('ibroadband').value == 1) {
			document.getElementById('rw_Product').style.display = "block";	
			document.getElementById('ishipping').value = 1;
		}
				
		if (document.getElementById('iinstallation').value == 1) {
			document.getElementById('rw_Installation').style.display = "block";	
		}
		
		if (document.getElementById('ifilters').value == 1) {
			document.getElementById('rw_Filters').style.display = "block";	
			document.getElementById('ishipping').value = 1;
			ShippingState = 1;
		}
		
		if (document.getElementById('isecurity').value == 1) {
			document.getElementById('rw_SecuritySuite').style.display = "block";	
		}
		
		if (document.getElementById('iphoneservice').value == 1) {
			document.getElementById('rw_Phone').style.display = "block";	
		}
		
		if (document.getElementById('ijacks').value == 1) {
			document.getElementById('rw_PhoneJack').style.display = "block";	
			document.getElementById('ishipping').value = 1;
			ShippingState = 1;
		}
		
		if (document.getElementById('iphonelisting').value == 1) {
			document.getElementById('rw_PhoneListing').style.display = "block";	
		}
		
		if (document.getElementById('ipromocode').value == 1) {
			document.getElementById('rw_Promo').style.display = "block";	
		}
		
		if (document.getElementById('ishipping').value == 1) {
			document.getElementById('rw_Shipping').style.display = "block";	
		}
		
		
		// checks to see if cart is inactive
		if (document.getElementById("scstate").value == 0) {
		
		document.getElementById('shoppingcarthdr').src = "images/shoppingcarthdrLocked.gif";
		document.getElementById('cart_remove').style.visibility = "hidden"; // the remove text found above the checkboxes		
		document.getElementById('InlineFilterQtyTxt').style.visibility = "visible"; // Inline Filter text value opposed to drop-down
		document.getElementById('PhoneJackQtyTxt').style.visibility = "visible"; // Phone Jack text value opposed to drop-down
		document.getElementById('InlineFilterQtydd').style.display = "none"; // drop-down for Inline Filters
		document.getElementById('PhoneJackQtydd').style.display = "none"; // drop-down for Phone Jack
		//document.getElementById('txtboxcolProduct').style.visibility = "hidden"; // all text boxes
		//document.getElementById('txtboxcolInstallation').style.visibility = "hidden"; // all text boxes
		//document.getElementById('txtboxcolFilters').style.visibility = "hidden"; // all text boxes
		//document.getElementById('txtboxcolSecuritySuite').style.visibility = "hidden"; // all text boxes
		//document.getElementById('txtboxcolPhone').style.visibility = "hidden"; // all text boxes
		//document.getElementById('txtboxcolPhoneJack').style.visibility = "hidden"; // all text boxes
		//document.getElementById('txtboxcolPhoneListing').style.visibility = "hidden"; // all text boxes
		
		document.getElementById('txtboxcolProduct').style.display = "none"; // Product text boxes
		document.getElementById('rw_Product').style.marginLeft = "10px"; 
		document.getElementById('txtboxcolInstallation').style.display = "none"; // Installation text boxes
		document.getElementById('rw_Installation').style.marginLeft = "10px"; 
		document.getElementById('txtboxcolFilters').style.display = "none"; // Filters text boxes
		document.getElementById('rw_Filters').style.marginLeft = "10px"; 
		document.getElementById('txtboxcolSecuritySuite').style.display = "none"; // Security Suite text boxes
		document.getElementById('rw_SecuritySuite').style.marginLeft = "10px"; 
		document.getElementById('txtboxcolPhone').style.display = "none"; // Phone text boxes
		document.getElementById('rw_Phone').style.marginLeft = "10px"; 
		document.getElementById('txtboxcolPhoneJack').style.display = "none"; // Phone Jack text boxes
		document.getElementById('rw_PhoneJack').style.marginLeft = "10px"; 
		document.getElementById('txtboxcolPhoneListing').style.display = "none"; // Phone Listing text boxes
		document.getElementById('rw_PhoneListing').style.marginLeft = "10px"; 
		
		document.getElementById('updatecartbtn').style.display = "none"; // updata cart button at bottom of shopping cart
		
		}
		
		
		if (document.getElementById('Product').checked == true) {
			document.getElementById('rw_Product').style.display = "none";
		}
		else {
			DueMonthly = parseFloat(DueMonthly) + parseFloat(document.getElementById('Product').value);
			vItemCount = 1;
		}
	
	
	
		if (document.getElementById('Installation').checked == true) {
			document.getElementById('rw_Installation').style.display = "none";
		}
		else {
			DueToday = parseFloat(DueToday) + parseFloat(document.getElementById('Installation').value);
			vItemCount = 1;
		}
	
	
	
		if (document.getElementById('Filters').checked == true) {
			document.getElementById('rw_Filters').style.display = "none";
		}
		else {
			DueToday = parseFloat(DueToday) + parseFloat((document.getElementById('Filters').value * document.getElementById('InlineFilterQty').value));
			vItemCount = 1;
		}
	
	
	
		if (document.getElementById('SecuritySuite').checked == true) {
			document.getElementById('rw_SecuritySuite').style.display = "none";
		}
		else {
			DueMonthly = parseFloat(DueMonthly) + parseFloat(document.getElementById('SecuritySuite').value);
			vItemCount = 1;
		}
		
		if (document.getElementById('Phone').checked == true) {
			document.getElementById('rw_Phone').style.display = "none";
		}
		else {
			DueMonthly = parseFloat(DueMonthly) + parseFloat(document.getElementById('Phone').value);
			vItemCount = 1;
		}
		
		
		if (document.getElementById('PhoneJack').checked == true) {
			document.getElementById('rw_PhoneJack').style.display = "none";
		}
		else {
			DueToday = parseFloat(DueToday) + parseFloat((document.getElementById('PhoneJack').value * document.getElementById('PhoneJackQty').value));
			vItemCount = 1;
		}
		
		if (document.getElementById('PhoneListing').checked == true) {
			document.getElementById('rw_PhoneListing').style.display = "none";
		}
		else {
			DueToday = parseFloat(DueToday) + parseFloat((document.getElementById('PhoneListing').value));
			vItemCount = 1;
		}
	    
		if (vItemCount == 0 ) {
			UpdateCart(0);
		}
		
	DueToday = parseFloat(DueToday) + parseFloat(ShippingFee);
	
	document.getElementById('vDueMonthly').innerHTML = DueMonthly.toFixed(2).toString(10);
	document.getElementById('vDueToday').innerHTML = DueToday.toFixed(2).toString(10);
	
	}
	
}

//  =========== END SHOPPING CART LOGIC ==============



//  =========== BEGIN CALENDAR LOGIC ==============

function CalendarDay(ddnum) {
	var d=new Date()
	var calOpen = "<select id=Day class=caldaydd>";
	var calClose = "</select>";
	var msg = "";
	var numdays
	
	if (ddnum == 4 || ddnum == 6 || ddnum == 9 || ddnum == 11) {
		numdays = 30;
	}
	else if (ddnum == 2) {
		numdays = 28;		
	}
	else {
		numdays = 31;	
	}
	
	for (var x = 1; x <= numdays; x++)   {
		msg = msg + "<option value=" + x + ">" + x + "</option>" + "\n";		
   }   
   document.getElementById('calday').innerHTML = calOpen + msg + calClose;
   document.getElementById('Day').selectedIndex = d.getDate() - 1;
}


function CalendarMonth() {
	var Months = new Array("January","February","March","April","May","June","July","August","September","October","November","Decmber")
	var vmonths = "";
	var vstart = "<select id=Month class=calendardd>";
	var vend = "</select>";
	var d=new Date()

	var month=new Array(12)
	month[0]="January"
	month[1]="February"
	month[2]="March"
	month[3]="April"
	month[4]="May"
	month[5]="June"
	month[6]="July"
	month[7]="August"
	month[8]="September"
	month[9]="October"
	month[10]="November"
	month[11]="December"
	
	for (monthCounter = 0; monthCounter < month.length; monthCounter++) {
		vmonths = vmonths + ('<option value=' + (monthCounter+1) + '>' + month[monthCounter]);
	}
	
	document.write ('<select id="Month" class="calmonthdd" onchange="CalendarDay(this.value);">');
	document.write (vmonths);
	document.write ('</select>');
	
	document.getElementById('Month').selectedIndex = d.getMonth();
}


function CalendarYear() {
	var msg = "";
	var d = new Date()
	//alert(d.getFullYear());
	var vstart = "<select id=\"CCExpireYear\" name=\"CCExpireYear\" style=\"font-size: 11px;\">";
	var vend = "</select>";
	
	for (var x = 0; x < 8; x++)   {
		msg = msg + "<option value=" + (d.getFullYear()+x) + ">" + (d.getFullYear()+x) + "</option>" + "\n";		
   }   
   document.getElementById('vWriteYear').innerHTML = vstart + msg + vend;
   //document.write ('<select id="CCExpireYear" style="font-size: 11px;">');
	//document.write (msg);
	//document.write ('</select>');
}


function CalMonth() {
	var msg = "";
	var vstart = "<select id=\"CCExpireMonth\" name=\"CCExpireMonth\" style=\"font-size: 11px;\">";
	var vend = "</select>";
	
	for (var x = 1; x < 13; x++)   {
		msg = msg + "<option value=" + x + ">" + x + "</option>" + "\n";		
   }   
   document.getElementById('vWriteMonth').innerHTML = vstart + msg + vend;
}


function VerifyInstallDate() {
    //alert('VerifyInstallDate START 1');
    //var vMonth = document.getElementById("wsBroadbandInstallDate_Month_ID").value;
	//var vDay = document.getElementById("wsBroadbandInstallDate_Day_ID").value;
	//var vYear = document.getElementById("wsBroadbandInstallDate_Year_ID").value;
    var TodayDate = new Date();
    var gotBB = 0;
    var gotDISH = 0;

	//alert('VerifyInstallDate START 2');

	var BroadbandSelectedDate = new Date();
	if (document.getElementById("wsBroadbandInstallDate_Year_ID") != null) {
	    gotBB = 1;
	    BroadbandSelectedDate.setYear(document.getElementById("wsBroadbandInstallDate_Year_ID").value);
	    BroadbandSelectedDate.setMonth(document.getElementById("wsBroadbandInstallDate_Month_ID").value);
	    BroadbandSelectedDate.setDate(document.getElementById("wsBroadbandInstallDate_Day_ID").value);
	}

	//alert('VerifyInstallDate START 3');

	var BroadbandEarliestDate = new Date();
	BroadbandEarliestDate.setDate(TodayDate.getDate() + 3);
	BroadbandEarliestDate.setHours(BroadbandSelectedDate.getHours());
	BroadbandEarliestDate.setMinutes(BroadbandSelectedDate.getMinutes());
	BroadbandEarliestDate.setSeconds(BroadbandSelectedDate.getSeconds());
	BroadbandEarliestDate.setMilliseconds(BroadbandSelectedDate.getMilliseconds());

	//alert('VerifyInstallDate START 4');

	//alert(document.getElementById("wsDISHInstallDate_Year_ID"));

	var DISHSelectedDate = new Date();
	if (document.getElementById("wsDISHInstallDate_Year_ID") != null) {
	    gotDISH = 1;
	    DISHSelectedDate.setYear(document.getElementById("wsDISHInstallDate_Year_ID").value);
	    DISHSelectedDate.setMonth(document.getElementById("wsDISHInstallDate_Month_ID").value);
	    DISHSelectedDate.setDate(document.getElementById("wsDISHInstallDate_Day_ID").value);
	}

	//alert('VerifyInstallDate START 5');

	var DISHEarliestDate = new Date();
	DISHEarliestDate.setDate(BroadbandEarliestDate.getDate() + 3);
	if (BroadbandEarliestDate < BroadbandSelectedDate) {
	    DISHEarliestDate.setDate(BroadbandSelectedDate.getDate() + 3);    
	}
	DISHEarliestDate.setHours(DISHSelectedDate.getHours());
	DISHEarliestDate.setMinutes(DISHSelectedDate.getMinutes());
	DISHEarliestDate.setSeconds(DISHSelectedDate.getSeconds());
	DISHEarliestDate.setMilliseconds(DISHSelectedDate.getMilliseconds());

	//alert('VerifyInstallDate START 6');

	//alert('Broadband Selected Date: ' + BroadbandSelectedDate);
	//alert('Broadband Earliest Date: ' + BroadbandEarliestDate);
	//alert('DISH Selected Date: ' + DISHSelectedDate);
	//alert('DISH Earliest Date: ' + DISHEarliestDate);

	var wday = BroadbandSelectedDate.getDay();
	if ((gotBB == 1) && ((wday == 6) || (wday == 0))) {
	    alert("Please choose a weekday for your Broadband installation date.");
	    return false;
	}

	//alert('VerifyInstallDate START 10');

	wday = DISHSelectedDate.getDay();
	//if ((gotDISH == 1) && ((wday == 6) || (wday == 0))) {
	//    alert("Please choose a weekday for your DISH installation date.");
	//    return false;
	//}

	//alert('VerifyInstallDate Broadband Compare Result coming up next');
	//alert(BroadbandSelectedDate < BroadbandEarliestDate);
	//alert(BroadbandSelectedDate == BroadbandEarliestDate);
	//alert(BroadbandSelectedDate - BroadbandEarliestDate);
	//alert(BroadbandEarliestDate - BroadbandSelectedDate);
	//alert(BroadbandEarliestDate.toLocaleString());
	//alert(BroadbandSelectedDate.toLocaleString());
	var diff = BroadbandEarliestDate - BroadbandSelectedDate;

	//alert(Math.ceil(diff / 1000 / 60 / 60 / 24));

	if ((gotBB == 1) && (BroadbandSelectedDate < BroadbandEarliestDate) && (BroadbandSelectedDate != BroadbandEarliestDate)) {	
		alert("Please select a Broadband installation date at least three calendar days from today.");	
		return false;
	}

	//alert('VerifyInstallDate START 8');


	if ((gotDISH == 1) && (DISHSelectedDate < DISHEarliestDate) && (DISHSelectedDate != DISHEarliestDate)) {	
		alert("Please select a DISH installation date at least three calendar days after the Broadband date you selected above.");	
		return false;
	}

	//alert('VerifyInstallDate START 9');

	//alert('VerifyInstallDate STOP');	
	return true;
}

//  =========== END CALENDAR LOGIC ==============




//  =========== BEGIN TERMS & CONDITIONS LOGIC ==============


function GetTerms()
  {
  var xmlHttp;
  try
    {
    // Firefox, Opera 8.0+, Safari
    xmlHttp=new XMLHttpRequest();
    }
  catch (e)
    {
    // Internet Explorer
    try
      {
      xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
      }
    catch (e)
      {
      try
        {
        xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
        }
      catch (e)
        {
        alert("Your browser does not support AJAX!");
        return false;
        }
      }
    }
    xmlHttp.onreadystatechange=function()      
    {
      if(xmlHttp.readyState==4)
        {
        document.getElementById("itermstxt").innerHTML=xmlHttp.responseText;
        }
      }
    xmlHttp.open("GET","/shopping/Terms.html");
    xmlHttp.send(null); 
	
	
}


function TermsConditions() {

	if (document.getElementById('Terms').checked == true) {
		document.getElementById('InactiveButtons').style.display = "none";
		document.getElementById('ActiveButtons').style.display = "block";
	}
	else {
		document.getElementById('InactiveButtons').style.display = "block";
		document.getElementById('ActiveButtons').style.display = "none";
	}
}


function TermsDisagree() {
	var answer = confirm("Selecting \"I Disagree\" will empty your cart.  Click \"OK\" to continue or \"Cancel\" to return to Terms and Conditions.")
	
	if (answer){
		return true;
	}
	else{
		return false;
	}
}


//  =========== END TERMS & CONDITIONS LOGIC ==============





//  =========== BEGIN CHANGE LOCATION CODE ==============

function LocationState(nstate) {
	
	if (nstate == 'open') {
		document.getElementById('location_closed').style.display = "none";
		document.getElementById('location_open').style.display = "block";
		document.getElementById('showcart').style.display = "block";
		//document.getElementById('imgBlock').style.visibility = "visible";
		return false
	}
	
	if (nstate == 'close') {
		document.getElementById('location_closed').style.display = "block";
		document.getElementById('location_open').style.display = "none";
		document.getElementById('showcart').style.display = "none";	
		//document.getElementById('imgBlock').style.visibility = "hidden";
		return false
	}
}

function UpdateLocVar(vkeep, vstep) {
	document.getElementById('LookupForm1_KeepCartOpen').value = vkeep; 
	document.getElementById('LookupForm1_wSiteStep').value = vstep;	
	//alert(document.getElementById("KeepCartOpen").value + "====" +  document.getElementById("wSiteStep").value);
}

//  =========== END CHANGE LOCATION CODE ==============



//  =========== BEGIN PROGRESS BAR ==============

function progressionBar(vwidth) {
		
		var pbwidth
		
		pbwidth = Math.round((vwidth/ 14) * 100) + "%";
		
		if (vwidth != 0) {
			document.getElementById('progressbarinner').style.width = pbwidth;
		}
}


//  =========== END PROGRESS BAR ==============



//  =========== BEGIN PASSWORD VALIDATION ==============

function ConfirmPassword() {
	
	if (document.getElementById('PrimaryLogin').value == "" ||  document.getElementById('PrimaryLogin').value == null) {
		alert("Please complete the required fields indicated with an \"*\" so that we can provide you with service.");
		document.getElementById('PrimaryLogin').focus();
		return false;
	}
	
	if (document.getElementById('AlternateLogin1').value == "" ||  document.getElementById('AlternateLogin1').value == null) {
		alert("Please complete the required fields indicated with an \"*\" so that we can provide you with service.");
		document.getElementById('AlternateLogin1').focus();
		return false;
	}
	
	if (document.getElementById('AlternateLogin2').value == "" ||  document.getElementById('AlternateLogin2').value == null) {
		alert("Please complete the required fields indicated with an \"*\" so that we can provide you with service.");
		document.getElementById('AlternateLogin2').focus();
		return false;
	}
	
	if (document.getElementById('Password1').value == "" ||  document.getElementById('Password1').value == null) {
		alert("Please complete the required fields indicated with an \"*\" so that we can provide you with service.");
		document.getElementById('Password1').focus();
		return false;
	}
	
	if (document.getElementById('Password2').value == "" ||  document.getElementById('Password2').value == null) {
		alert("Please complete the required fields indicated with an \"*\" so that we can provide you with service.");
		document.getElementById('Password2').focus();
		return false;
	}
	
	if (document.getElementById('PrimaryLogin').value.length < 3 || document.getElementById('PrimaryLogin').value.length > 40)  {  
		alert("Login must be between 3 - 40 characters")
        document.getElementById('PrimaryLogin').focus();
		return false;
	}
	
	if (document.getElementById('AlternateLogin1').value.length < 3 || document.getElementById('AlternateLogin1').value.length > 40)  {  
		alert("Alternate Login must be between 3 - 40 characters")
        document.getElementById('AlternateLogin1').focus();
		return false;
	}
	
	if (document.getElementById('AlternateLogin2').value.length < 3 || document.getElementById('AlternateLogin2').value.length > 40)  {  
		alert("Alternate Login must be between 3 - 40 characters")
        document.getElementById('AlternateLogin2').focus();
		return false;
	}
	
	if (document.getElementById('PrimaryLogin').value == document.getElementById('AlternateLogin1').value) {
		alert("Please insure that your Primary and Alternate Log In IDs are all unique. No two can be alike.");
		document.getElementById('AlternateLogin1').focus();
		return false;
	}
	
	if (document.getElementById('PrimaryLogin').value == document.getElementById('AlternateLogin2').value) {
		alert("Please insure that your Primary and Alternate Log In IDs are all unique. No two can be alike.");
		document.getElementById('AlternateLogin2').focus();
		return false;
	}
	
	if (document.getElementById('AlternateLogin1').value == document.getElementById('AlternateLogin2').value) {
		alert("Please insure that your Primary and Alternate Log In IDs are all unique. No two can be alike.");
		document.getElementById('AlternateLogin2').focus();
		return false;
	}
	
	if (document.getElementById('PrimaryLogin').value == document.getElementById('Password1').value || document.getElementById('PrimaryLogin').value == document.getElementById('Password2').value) {
		alert("The Password you have entered matches one of your Log In IDs. Please insure that the Password and Log In ID are different.");
		document.getElementById('PrimaryLogin').focus();
		return false;
	}
	
	if (document.getElementById('AlternateLogin1').value == document.getElementById('Password1').value || document.getElementById('AlternateLogin1').value == document.getElementById('Password2').value) {
		alert("The Password you have entered matches one of your Log In IDs. Please insure that the Password and Log In ID are different.");
		document.getElementById('AlternateLogin1').focus();
		return false;
	}
	
	if (document.getElementById('AlternateLogin2').value == document.getElementById('Password1').value || document.getElementById('AlternateLogin2').value == document.getElementById('Password2').value) {
		alert("The Password you have entered matches one of your Log In IDs. Please insure that the Password and Log In ID are different.");
		document.getElementById('AlternateLogin2').focus();
		return false;
	}
	
	if (document.getElementById('Password1').value.length < 6 || document.getElementById('Password1').value.length > 20)  {  
		alert("Password must be between 6 - 20 characters");
        document.getElementById('Password1').focus();
		return false;
	}
	
	if (document.getElementById('Password1').value != document.getElementById('Password2').value) {
		alert("The Password and Confirm Password must be the same. Please verify that they match.");	
		document.getElementById('Password1').focus();
		return false;
	}

return true;
}

//  =========== END PASSWORD VALIDATION ==============



//  =========== BEGIN PHONE / EMAIL / ZIP VALIDATION ==============

function isNumberKey(evt)
{    
    var charCode = (evt.which) ? evt.which : event.keyCode;
    if ((charCode == 8) || (charCode >= 48 && charCode <= 57))
    {
        return true;
    }
    else
    {
         return false;
    }    
}

function isSpaceKey(evt)
{    
    var charCode = (evt.which) ? evt.which : event.keyCode;
    if (charCode == 32) 
    {
        return false;
    }
    else
    {
         return true;
    }    
}


function moveNext(currentControl, nextControl, cnum) {
	
var eleObjArr=document.getElementsByTagName("input");
for(var i=0; i<eleObjArr.length; i++)
{ 
if( eleObjArr[i].getAttribute("autocomplete") )
{
eleObjArr[i].setAttribute('autocomplete','off'); 
}
}


	if (document.getElementById(currentControl).value.length == cnum)  {      
       // alert(nextControl);
		//var obj= eval("document.Form1." + nextControl);
		//obj.focus():
		//document.Form1.Con_Phone1.focus();
		
		document.getElementById(nextControl).focus();
	}
	document.getElementById(nextControl).setAttribute('autocomplete','off'); 
}

function Step4Validation()
{
       // set var radio_choice to false
        var radio_choice = false;
        // Loop from zero to the one minus the number of radio button selections
        for (counter = 0; counter < document.Form1.InstallationType.length; counter++)
        {
        // If a radio button has been selected it will return true
        // (If not it will return false)
        if (document.Form1.InstallationType[counter].checked)
            radio_choice = true; 
        }

        if (!radio_choice)
        {
             // If there were no selections made display an alert box 
            alert("Please select an Installation Type.")
            return (false);
        }
    return (true);
}

function Step6Validation() {

    // set var radio_choice to false
    if (document.Form1.modem){
        var modem_choice = false;
        // Loop from zero to the one minus the number of radio button selections
        for (counter = 0; counter < document.Form1.modem.length; counter++) {
            // If a radio button has been selected it will return true
            // (If not it will return false)
            if (document.Form1.modem[counter].checked)
                modem_choice = true;
        }

        if (!modem_choice) {
            // If there were no selections made display an alert box
            alert("Please select a modem for your Broadband service.")
            return (false);
        }
    }
    
    if(document.Form1.TelephoneLine){
       // set var radio_choice to false
        var radio_choice = false;
        // Loop from zero to the one minus the number of radio button selections
        for (counter = 0; counter < document.Form1.TelephoneLine.length; counter++)
        {
            // If a radio button has been selected it will return true
            // (If not it will return false)
            if (document.Form1.TelephoneLine[counter].checked)
                radio_choice = true; 
        }

        if (!radio_choice)
        {
             // If there were no selections made display an alert box 
            alert("Please select a Telephone Service.")
            return (false);
        }
    }
    
    return (true);
}




function Step9Validation()
{
	if (document.getElementById('FirstName').value == "" ||  document.getElementById('FirstName').value == null) {
		alert("Please complete the required fields indicated with an \"*\" so that we can provide you with service.");
		document.getElementById('FirstName').focus();
		return false;
	}
	
	if (document.getElementById('LastName').value == "" ||  document.getElementById('LastName').value == null) {
		alert("Please complete the required fields indicated with an \"*\" so that we can provide you with service.");
		document.getElementById('LastName').focus();
		return false;
	}
	
	if (document.getElementById('Con_AreaCode').value == "" ||  document.getElementById('Con_AreaCode').value == null) {
		alert("Please complete the required fields indicated with an \"*\" so that we can provide you with service.");
		document.getElementById('Con_AreaCode').focus();
		return false;
	}
	
	if (document.getElementById('Con_Phone1').value == "" ||  document.getElementById('Con_Phone1').value == null) {
		alert("Please complete the required fields indicated with an \"*\" so that we can provide you with service.");
		document.getElementById('Con_Phone1').focus();
		return false;
	}
	
	if (document.getElementById('Con_Phone2').value == "" ||  document.getElementById('Con_Phone2').value == null) {
		alert("Please complete the required fields indicated with an \"*\" so that we can provide you with service.");
		document.getElementById('Con_Phone2').focus();
		return false;
	}
	
		
	if (document.getElementById('Email').value == "" ||  document.getElementById('Email').value == null) {
		alert("Please complete the required fields indicated with an \"*\" so that we can provide you with service.");
		document.getElementById('Email').focus();
		return false;
	}
	
	if (document.getElementById('County').value == "" ||  document.getElementById('County').value == null) {
		alert("Please complete the required fields indicated with an \"*\" so that we can provide you with service.");
		document.getElementById('County').focus();
		return false;
	}
	//CityLimits
	//if (!document.getElementById('CityLimits').checked) {
		//alert("Please complete the required fields indicated with an \"*\" so that we can provide you with service.");
		//document.getElementById('CityLimits').focus();
		//return false;
	//}
	
	if (!EmailCheck(document.getElementById('Email').value)) {
		return false;
	}

   return true;
}


function EmailCheck(str) {

		var at="@"
		var dot="."
		var lat=str.indexOf(at)
		var lstr=str.length
		var ldot=str.indexOf(dot)
		if (str.indexOf(at)==-1){
		   alert("Invalid E-mail ID");
		   document.getElementById('Email').focus();
		   return false;
		}

		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
		   alert("Invalid E-mail ID");
		   document.getElementById('Email').focus();
		   return false;
		}

		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		    alert("Invalid E-mail ID");
			document.getElementById('Email').focus();
		    return false;
		}

		 if (str.indexOf(at,(lat+1))!=-1){
		    alert("Invalid E-mail ID");
			document.getElementById('Email').focus();
		    return false;
		 }

		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		    alert("Invalid E-mail ID");
			document.getElementById('Email').focus();
		    return false;
		 }

		 if (str.indexOf(dot,(lat+2))==-1){
		    alert("Invalid E-mail ID");
			document.getElementById('Email').focus();
		    return false;
		 }
		
		 if (str.indexOf(" ")!=-1){
		    alert("Invalid E-mail ID");
			document.getElementById('Email').focus();
		    return false;
		 }

 		 return true;					
	}


//  =========== END PHONE / EMAIL / ZIP VALIDATION ==============




//  =========== BEGIN PAGE SPECIFIC STUFF ==============

function ShowPOTSListing(productid,price,name,desc) 
{
    document.getElementById('hidProductId').value = productid;
    document.getElementById('hidtelephoneListingPrice').value = price; 
    document.getElementById('hidtelephoneListingDesc').value = desc; 
    document.getElementById('hidtelephoneListingName').value = name; 
    if((productid == 254) || (productid == 253) || (productid == 491) || (productid == 490))
    {
       document.getElementById('potslisting').style.display = 'block';
    }
    else
    {
        document.getElementById('potslisting').style.display = 'none';
    }
}

function DisplayPostListing(strDisplay)
{
   if(document.getElementById('potslisting') != null)
   {
       if(strDisplay == "Yes")
       {
            document.getElementById('potslisting').style.display = "block";
       }
       else
       {
            document.getElementById('potslisting').style.display = "none";
       }
   }
}

function EnableJacks(dropdownQty) {
   document.getElementById(dropdownQty).disabled = false;

}
	


function Step11Validation() {

	if (document.getElementById('SSNum1') == null ||	document.getElementById('SSNum1') == "") {
		alert("Please complete the required fields indicated with an \"*\" so that we can provide you with service.");
		document.getElementById('SSNum1').focus();
		return false;
	}
	
	if (document.getElementById('SSNum2') == null ||	document.getElementById('SSNum2') == "") {
		alert("Please complete the required fields indicated with an \"*\" so that we can provide you with service.");
		document.getElementById('SSNum2').focus();
		return false;
	}
	
	if (document.getElementById('SSNum3') == null ||	document.getElementById('SSNum3') == "") {
		alert("Please complete the required fields indicated with an \"*\" so that we can provide you with service.");
		document.getElementById('SSNum3').focus();
		return false;
	}
	
	if (document.getElementById('FirstName') == null ||	document.getElementById('FirstName') == "") {
		alert("Please complete the required fields indicated with an \"*\" so that we can provide you with service.");
		document.getElementById('FirstName').focus();
		return false;
	}
	
	if (document.getElementById('LastName') == null ||	document.getElementById('LastName') == "") {
		alert("Please complete the required fields indicated with an \"*\" so that we can provide you with service.");
		document.getElementById('LastName').focus();
		return false;
	}
	
	if (document.getElementById('CCNum') == null ||	document.getElementById('CCNum') == "") {
		alert("Please complete the required fields indicated with an \"*\" so that we can provide you with service.");
		document.getElementById('CCNum').focus();
		return false;
	}
	
	if(!Step11Validation2())
	{
	    return false;
	}
	
	return true;
}

function CheckIfRequiredItemsSelected()
{
    var frm = document.Form1;  
    var doWeHaveRequiredItems = "false";
    for(i=0;i< frm.length;i++) 
    {
      var e=frm.elements[i]; 
      if (e.type == 'checkbox' && e.name.indexOf('cbox') != -1 )
      {
         if(e.checked)
         {
     	    e=frm.elements[i+1]; //LOOKING for the Product ID
     	    
            if(requiredProducts.indexOf(e.value) != -1)
            {
              doWeHaveRequiredItems = "true";
              break;
            } 
          }
      }
    }
    if(doWeHaveRequiredItems == "true")
    {
	    var answer = confirm("Some items you selected to remove are required items. Do you wish to still remove these items?")
    	
	    if (answer)
	    {
		    return true;
	    }
	    else{
		    return false;
	    }
    }
    return true;
}

function UpdateCityLimits(strval)
{
  var radioObj = document.Form1.CityLimits;
  var radioLength = radioObj.length;
  for(var i = 0; i < radioLength; i++) {
		radioObj[i].checked = false;
		if(radioObj[i].value == strval) {
			radioObj[i].checked = true;
		}
	}

}

function UpdateBestTime(strVal)
{
   var frm = document.Form1;
   frm.BestTime.value=strVal;
}

function UpdatePrefix(strVal)
{
   var frm = document.Form1;
   frm.Prefix.value=strVal;
}

function UpdateBillingAddress()
{
    document.Form1.chkBillingAddress.checked=true;
}
function UpdateShippingAddress()
{
    document.Form1.chkShippingAddress.checked=true;
}
//  =========== END PAGE SPECIFIC STUFF ==============



var debug = function(what){
	if(window.console && window.console.firebug){
		console.log(what);
	}	
	else{
		//alert(what);
	}
}		

debug('loading...');

$(document).ready(function() {
  debug('dom ready');
  init();
});

var init = function() {

   $('.arrowLink').hover(
	  function () {
		 debug('show...'); 
		$(this).parent().find('.arrowPopup').css('display', 'block').css('visibility', 'visible');
	  },
	  function () {
		  debug('hide...');
		$(this).parent().find('.arrowPopup').css('display', 'none').css('visibility', 'visible');
	  }
   )
   
   
   $("input[name='productSelections']").click(function(){
		if ($("input[name='productSelections']:checked").val() == '1')
		{ 
			$('.replaceExisting').hide();
			$('.ExistingLines').hide();
		} else {
			$('.replaceExisting').show();
			$('.ExistingLines').show();
		}
	});
   
   $('.vasList .webhost:even').css('clear','both');
   $('.vasList .securitysuite:even').css('clear', 'both');
 
 };

