//ONLOAD SCRIPT FOR EVERY PAGE
$(document).ready(function(){
  LogSwitch();
  MyAccountSwitch();
  //sTvGuarantee();
});



//START Drop Down Forwarding 
function MM_jumpMenu(targ,selObj,restore){ //v3.0
  eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
  if (restore) selObj.selectedIndex=0;
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_jumpMenuGo(selName,targ,restore){ //v3.0
  var selObj = MM_findObj(selName); if (selObj) MM_jumpMenu(targ,selObj,restore);
}
//END Drop Down Forwarding

//START Scroll To Div

function ScrollToID(targetID) {
    var scrollto = $("#"+targetID).offset().top - 20;
    $('html,body').animate({ scrollTop: scrollto }, 1000);
}

//END Scroll To Div

//START Expand Single Div

function ExpandSingleID(indentifier, targetID) {
	if ($("#" + indentifier + targetID).is(":hidden")) {
		$("#" + indentifier + targetID).slideDown();
	} else {
		$("#" + indentifier + targetID).slideUp();
	}
}

//END Expand Single Div

//START Glossary Details AJAX

function GetGlossaryDetails(glossaryID, targetID){
	if (glossaryID)
	{
		$("#" +	targetID).append('<br /><img src="/images/ajaxloader.gif"/>');
		$("#" +	targetID).load("/_AJAX/GlossaryInfo.aspx?id=" + glossaryID );
	}
}

//END Glossary Details AJAX

//START Faq Details AJAX

function GetFaqDetails(faqID, targetID){
	if (faqID)
	{
		$("#" +	targetID).append('<br /><img src="/images/ajaxloader.gif"/>');
		$("#" +	targetID).load("/_AJAX/FaqCategory.aspx?id=" + faqID );
	}
}

//END Faq Details AJAX

//START Free Consultation AJAX

function PostConsultation(){
	$("#errConsultEmail").html('');
	$("#errConsultFullName").html('');
	$("#errConsultPhone").html('');
	var ConsFullName = $("#ConsultFullName").val();
	var ConsPhone = $("#ConsultPhone").val();
	var ConsEmail = $("#ConsultEmail").val();
	var ConsComment = $("#ConsultComments").val();
	var ShouldWePost = true;
	var ErrorStart = '<h3 style="color:red;">';
	var ErrorEnd = '</h3>';

	//check for errors
	if (!isValidEmail(ConsEmail)){
		ShouldWePost = false;
		$("#errConsultEmail").html(ErrorStart+'Please Enter Valid Email'+ErrorEnd);
	}
	if (ConsFullName.length < 1){
		ShouldWePost = false;
		$("#errConsultFullName").html(ErrorStart+'Please Enter Valid Name'+ErrorEnd);
	}
	if (ConsPhone.length < 1){
		ShouldWePost = false;
		$("#errConsultPhone").html(ErrorStart+'Please Enter Valid Phone'+ErrorEnd);
	}
	if (ShouldWePost){
		$("#ConsultSubmit").hide();	
		$("#ConsultLoading").html('<img src="/images/ajaxloader_sm.gif" alt="Loading" onload="LockConsultation();" />');
		$.get("/_ajax/FreeConsultation.aspx", { FullName: ConsFullName, Phone: ConsPhone, Email: ConsEmail, Comments: ConsComment },
			function(data){
			$("#ConsultLoading").html(data);
		});
	}
}
function LockConsultation(){
	$("#ConsultFullName").attr("disabled", true);
	$("#ConsultPhone").attr("disabled", true);
	$("#ConsultEmail").attr("disabled", true);
	$("#ConsultComments").attr("disabled", true);
}

//END Free Consultation AJAX

//START ContactUs AJAX

function PostContactUs(){
	$("#errContactUsFirstName").html('');
	$("#errContactUsLastName").html('');
	$("#errContactUsPhone").html('');
	$("#errContactUsEmail").html('');
	$("#errContactUsComments").html('');
	var ContactUsFirstName = $("#ContactUsFirstName").val();
	var ContactUsLastName = $("#ContactUsLastName").val();
	var ContactUsPhone = $("#ContactUsPhone").val();
	var ContactUsEmail = $("#ContactUsEmail").val();
	var ContactUsComments = $("#ContactUsComments").val();

	var ShouldWePost = true;
	var ErrorStart = '<h3 style="color:red;">';
	var ErrorEnd = '</h3>';

	//check for errors
	if (!isValidEmail(ContactUsEmail)){
		ShouldWePost = false;
		$("#errContactUsEmail").html(ErrorStart+'Please Enter Valid Email'+ErrorEnd);
	}
	if (ContactUsFirstName.length < 1){
		ShouldWePost = false;
		$("#errContactUsFirstName").html(ErrorStart+'Please Enter Valid Name'+ErrorEnd);
	}
	if (ContactUsLastName.length < 1){
		ShouldWePost = false;
		$("#errContactUsLastName").html(ErrorStart+'Please Enter Valid Name'+ErrorEnd);
	}
	if (ContactUsPhone.length < 1){
		ShouldWePost = false;
		$("#errContactUsPhone").html(ErrorStart+'Please Enter Valid Phone'+ErrorEnd);
	}
	if (ContactUsComments.length < 1){
		ShouldWePost = false;
		$("#errContactUsComments").html(ErrorStart+'Please Enter A Comment'+ErrorEnd);
	}
	if (ShouldWePost){
		$("#ContactUsSubmit").hide();	
		$("#ContactUsLoading").html('<img src="/images/ajaxloader_sm.gif" alt="Loading" onload="LockContactUs();" />');
		$.get("/_ajax/ContactUs.aspx", { First: ContactUsFirstName, Last: ContactUsLastName, Phone: ContactUsPhone, Email: ContactUsEmail, Comments: ContactUsComments },
			function(data){
			$("#ContactUsLoading").html(data);
		});
	}
}
function LockContactUs(){
	$("#ContactUsFirstName").attr("disabled", true);
	$("#ContactUsLastName").attr("disabled", true);
	$("#ContactUsPhone").attr("disabled", true);
	$("#ContactUsEmail").attr("disabled", true);
	$("#ContactUsComments").attr("disabled", true);
}

//END Contact Us AJAX

//START ScheduleAppt AJAX

function PostScheduleAppointment(){
	$("#errScheduleApptFirstName").html('');
	$("#errScheduleApptLastName").html('');
	$("#errScheduleApptPhone").html('');
	$("#errScheduleApptEmail").html('');
	$("#errScheduleApptComments").html('');
	$("#errScheduleApptDate").html('');
	$("#errScheduleApptTime").html('');
	$("#errScheduleApptService").html('');
	var ScheduleApptFirstName = $("#ScheduleApptFirstName").val();
	var ScheduleApptLastName = $("#ScheduleApptLastName").val();
	var ScheduleApptPhone = $("#ScheduleApptPhone").val();
	var ScheduleApptEmail = $("#ScheduleApptEmail").val();
	var ScheduleApptComments = $("#ScheduleApptComments").val();
	var ScheduleApptDate = $("#ScheduleApptDate").val();
	var ScheduleApptTimeHour = $("#ScheduleApptTimeHour").val();
	var ScheduleApptTimeMinute = $("#ScheduleApptTimeMinute").val();
	var ScheduleApptService = $("#ScheduleApptService").val();

	var ShouldWePost = true;
	var ErrorStart = '<h3 style="color:red;">';
	var ErrorEnd = '</h3>';

	//check for errors
	if (!isValidEmail(ScheduleApptEmail)){
		ShouldWePost = false;
		$("#errScheduleApptEmail").html(ErrorStart+'Please Enter Valid Email'+ErrorEnd);
	}
	if (ScheduleApptFirstName.length < 1){
		ShouldWePost = false;
		$("#errScheduleApptFirstName").html(ErrorStart+'Please Enter Valid Name'+ErrorEnd);
	}
	if (ScheduleApptLastName.length < 1){
		ShouldWePost = false;
		$("#errScheduleApptLastName").html(ErrorStart+'Please Enter Valid Name'+ErrorEnd);
	}
	if (ScheduleApptPhone.length < 1){
		ShouldWePost = false;
		$("#errCScheduleApptPhone").html(ErrorStart+'Please Enter Valid Phone'+ErrorEnd);
	}
	if (ScheduleApptDate.length < 1){
		ShouldWePost = false;
		$("#errScheduleApptDate").html(ErrorStart+'Please Enter The Date For Your Appointment'+ErrorEnd);
	}
	if (ScheduleApptTimeHour.length < 1){
		ShouldWePost = false;
		$("#errScheduleApptTime").html(ErrorStart+'Please Enter Appointment Time - Hour'+ErrorEnd);
	}
	if (ScheduleApptTimeMinute.length < 1){
		ShouldWePost = false;
		$("#errScheduleApptTime").html(ErrorStart+'Please Enter Appointment Time - Minute'+ErrorEnd);
	}
	if (ScheduleApptService.length < 1){
		ShouldWePost = false;
		$("#errScheduleApptService").html(ErrorStart+'Please Select a Service'+ErrorEnd);
	}
	if (ScheduleApptComments.length < 1){
		ShouldWePost = false;
		$("#errScheduleApptComments").html(ErrorStart+'Please Enter A Comment'+ErrorEnd);
	}
	if (ShouldWePost){
		$("#ScheduleApptSubmit").hide();	
		$("#ScheduleApptLoading").html('<img src="/images/ajaxloader_sm.gif" alt="Loading" onload="LockScheduleAppt();" />');
		$.post("/_ajax/schedule_appointment.aspx", { 
			  First: ScheduleApptFirstName, 
			  Last: ScheduleApptLastName, 
			  Phone: ScheduleApptPhone, 
			  Email: ScheduleApptEmail, 
			  ApptDate: ScheduleApptDate,
			  ApptHour: ScheduleApptTimeHour,
			  ApptMinute: ScheduleApptTimeMinute,
			  Service: ScheduleApptService,
			  Comments: ScheduleApptComments 
			}, function(data){
				$("#ScheduleApptLoading").html(data);
		});
	}
}
function LockScheduleAppt(){
	$("#ScheduleApptFirstName").attr("disabled", true);
	$("#ScheduleApptLastName").attr("disabled", true);
	$("#ScheduleApptPhone").attr("disabled", true);
	$("#ScheduleApptEmail").attr("disabled", true);
	$("#ScheduleApptComments").attr("disabled", true);
	$("#ScheduleApptDate").attr("disabled", true);
	$("#ScheduleApptTimeHour").attr("disabled", true);
	$("#ScheduleApptTimeMinute").attr("disabled", true);
	$("#ScheduleApptService").attr("disabled", true);
}

//END Contact Us AJAX

//START Email Validation

function isValidEmail(str) {
   return (str.lastIndexOf(".") > 2) && (str.indexOf("@") > 0) && (str.lastIndexOf(".") > (str.indexOf("@")+1)) && (str.indexOf("@") == str.lastIndexOf("@"));
}

//END Email Validation

//Start Get Started Login Switch

function ShowLoginArea(showlogin) {
	if (showlogin) {
		$("#AreaTitle").html('Login');
		$("#AreaText").html('Please select your state, enter your email address and password to start your <br/>questionnaire. <a href="javascript:;" onclick="ShowLoginArea(false);">Click Here If You Need To Register.</a>');
		$("#Register_Area").fadeOut(function() {
			$("#Login_Area").fadeIn();
		});
	}
	else {
		$("#AreaTitle").html('Register Free');
		$("#AreaText").html('Please provide your email address. This will allow you to finish any uncompleted questionnaires in your secure account. <a href="javascript:;" onclick="ShowLoginArea(true);">Existing Member? Click Here.</a>');
		$("#Login_Area").fadeOut(function() {
			$("#Register_Area").fadeIn();
		});
	}
}

//End Get Started Login Switch

//Start Login/Logout Button Switch

function LogSwitch() {
	if (readCookie('user_id') == null) {
		$("#LoginSwitch").html('(Login)');
		$("#LoginSwitch").attr("href","/login.aspx");
	}
	else {
		$("#LoginSwitch").html('(Logout)');
		$("#LoginSwitch").attr("href","/login.aspx?logout=1");
	}
}

function MyAccountSwitch() {
	if (readCookie('user_id') == null) {
		$("#MyAccountSwitch").html('Create Account');
		$("#MyAccountSwitch").attr("href","/login.aspx?r=register");
	}
	else {
		$("#MyAccountSwitch").html('My Account');
		$("#MyAccountSwitch").attr("href","/account/default.aspx");
	}
}

// End Login/Logout Button Switch

// Start Read Cookie

function readCookie(name) {
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

// End Read Cookie

//Start GetStartedValidation

function GetStartedValidate() {
	
	$(".RequiredR").html("");
	$(".RequiredL").html("");
	
	var RegisterProceed = true;
	var LoginProceed = true;
	
	if ($("[name=inpFirstName]").val().length < 1) {
		RegisterProceed = false;
		$("#FirstNameR").html("* Required");
	}
	if ($("[name=inpLastName]").val().length < 1) {
		RegisterProceed = false;
		$("#LastNameR").html("* Required");
	}
	if (!isValidEmail($("[name=inpEmail]").val())) {
		RegisterProceed = false;
		$("#EmailR").html("* Invalid Email");
	}
	var PhoneLength = $("[name=inpP1]").val().length + $("[name=inpP2]").val().length + $("[name=inpP3]").val().length
	if (PhoneLength < 10) {
		RegisterProceed = false;
		$("#PhoneR").html("* Invalid Number");
	}
	if ($("[name=inpState]").val() == 0) {
		RegisterProceed = false;
		$("#StateR").html("* Required");
	}
	if ($("[name=inpPassword]").val().length < 1) {
		RegisterProceed = false;
		$("#PasswordR").html("* Required");
	}
	if ($("[name=inpPassword]").val() != $("[name=inpVpassword]").val()) {
		RegisterProceed = false;
		$("#Password2R").html("* Doesn't Match");
	}
	if ($("[name=inpLoginState]").val() == 0) {
		LoginProceed = false;
		$("#StateL").html("* Required");
	}
	if ($("[name=inpLoginEmail]").val().length < 1) {
		LoginProceed = false;
		$("#EmailL").html("* Invalid Email");
	}
	if ($("[name=inpLoginPassword]").val().length < 1) {
		LoginProceed = false;
		$("#PasswordL").html("* Required");
	}

	if (RegisterProceed) {
		return true;
	}
	else if (LoginProceed) {
		return true;
	}
	else {
		$("#FormErrors").html("Please correct the items marked in red above to continue.");
		return false;
	}
}


//End GetStartedValidation

//Start Forward Field

function ForwardField(id,length,passto) {
	var contentslength = $("#"+id).val().length;
	if (contentslength == length) {
		$("#"+passto).focus();
	}
}

//End Forward Field

//Start ForgotPassword Popup

function ForgotPasswordPopup(){
	popup = window.open("/forgotpassword.aspx","ForgotPassword","menubar=0,resizable=0,height=200,width=400");
	popup.moveTo(500,300);
}

//End ForgotPassword Popup