/**
 * @author Vivek Bajpai
 */

	var mapLogo = new Array(
		"California~california-seal.gif",
		"Colorado~colorado-seal.gif",
		"Florida~florida-seal.gif",
		"Georgia~georgia-seal.gif",
                "Indiana~indiana-seal.gif",
		"Nevada~nevada-seal.gif",
		"Oklahoma~oklahoma-seal.gif",
		"Pennsylvania~pennsylvania-seal.gif",
		"Texas~texas-seal.gif",
		"Virginia~virginia-seal.gif"
	);

	var mapPrice = new Array(
		"California~ca-price.gif",
		"Colorado~co-price.gif",
		"Florida~fl-price.gif",
		"Georgia~ga-price.gif",
                "Indiana~in-price.gif",
		"Nevada~nv-price.gif",
		"Oklahoma~ok-price.gif",
		"Pennsylvania~pa-price.gif",
		"Texas~tx-price.gif",
		"Virginia~va-price.gif"
	);

	var mapURL = new Array(
		"California~http://teen.idrivesafely.com/signup/?rm=displayCourseSelection&LANGUAGE=EN&STATE=CA&COUPON=CETDE",
		"Colorado~http://teen.idrivesafely.com/signup/?rm=displayCourseSelection&LANGUAGE=EN&STATE=CO&COUPON=CETDE",
		"Florida~http://teen.idrivesafely.com/signup/?rm=displayCourseSelection&LANGUAGE=EN&STATE=FL&COUPON=CETDEFL",
		"Georgia~http://teen.idrivesafely.com/signup/?rm=displayCourseSelection&LANGUAGE=EN&STATE=GA&COUPON=CETDEGA",
                "Indiana~http://teen.idrivesafely.com/signup/?rm=displayCourseSelection&LANGUAGE=EN&STATE=IN&COUPON=CETDEIN",
		"Nevada~http://teen.idrivesafely.com/signup/?rm=displayCourseSelection&LANGUAGE=EN&STATE=NV&COUPON=CETDE",
		"Oklahoma~http://teen.idrivesafely.com/signup/?rm=displayCourseSelection&LANGUAGE=EN&STATE=OK&COUPON=CETDE",
		"Pennsylvania~http://teen.idrivesafely.com/signup/?rm=displayCourseSelection&LANGUAGE=EN&STATE=PA&COUPON=CETDE",
		"Texas~http://teen.idrivesafely.com/signup/?rm=displayCourseSelection&LANGUAGE=EN&STATE=TX&COUPON=CETDE",
		"Virginia~http://teen.idrivesafely.com/signup/?rm=displayCourseSelection&LANGUAGE=EN&STATE=VA&COUPON=CETDE"
	);

	var mapLinkHome = new Array(
		"California~california-drivers-ed.html",
		"Colorado~colorado-learners-permit.html",
		"Florida~florida-learners-permit.html",
		"Georgia~georgia-drivers-ed.html",
		"Nevada~nevada-drivers-permit.html",
		"Oklahoma~oklahoma-drivers-education.html",
		"Pennsylvania~pennsylvania-drivers-permit.html",
		"Texas~texas-driving-permit.html",
		"Virginia~virginia-learners-permit.html",
		"Indiana~indiana-learners-permit.html"
	);

	var mapLinkCourse = new Array(
		"California~california-drivers-education.html",
		"Colorado~colorado-driver-education.html",
		"Florida~florida-drivers-ed-online.html",
		"Georgia~georgia-driver-education.html",
                "Indiana~indiana-drivers-ed.html",
		"Nevada~nevada-drivers-education.html",
		"Oklahoma~oklahoma-drivers-ed.html",
		"Pennsylvania~pennsylvania-drivers-education.html",
		"Texas~texas-drivers-education.html",
		"Virginia~virginia-driver-education.html"
	);

	var mapCourseDMVURL = new Array(
		"California~http://teen.idrivesafely.com/signup/?rm=displayCourseSelection&LANGUAGE=EN&STATE=CA&COUPON=CETDEPT",
		"Colorado~http://teen.idrivesafely.com/signup/?rm=displayCourseSelection&LANGUAGE=EN&STATE=CO&COUPON=CETDEPT",
		"Florida~http://teen.idrivesafely.com/signup/?rm=displayCourseSelection&LANGUAGE=EN&STATE=FL&COUPON=CETDEFLPT",
		"Georgia~http://teen.idrivesafely.com/signup/?rm=displayCourseSelection&LANGUAGE=EN&STATE=GA&COUPON=CETDEGAPT",
		"Nevada~http://teen.idrivesafely.com/signup/?rm=displayCourseSelection&LANGUAGE=EN&STATE=NV&COUPON=CETDEPT",
		"Oklahoma~http://teen.idrivesafely.com/signup/?rm=displayCourseSelection&LANGUAGE=EN&STATE=OK&COUPON=CETDEPT",
		"Pennsylvania~http://teen.idrivesafely.com/signup/?rm=displayCourseSelection&LANGUAGE=EN&STATE=PA&COUPON=CETDEPT",
		"Texas~http://teen.idrivesafely.com/signup/?rm=displayCourseSelection&LANGUAGE=EN&STATE=TX&COUPON=CETDEPT",
		"Virginia~http://teen.idrivesafely.com/signup/?rm=displayCourseSelection&LANGUAGE=EN&STATE=VA&COUPON=CETDEPT",
		"Indiana~http://teen.idrivesafely.com/signup/?rm=displayCourseSelection&LANGUAGE=EN&STATE=IN&COUPON=CETDEPT"
	);

	var mapArr = new Array(
				"sitemap.html",
				"privacypolicy.html",
				"resources.html",
				"aboutus.html",
				"parents.html",
				"practice-tests.html",
				"contactus.html",
				"login.html",
				"teen-driver-education.html",
				"driver-ed-online.html",
				"driver-ed-course.html",
				"teen-drivers-license.html",
				"dmv-learners-permit.html",
				"dmv-practice-test.html",
				"index.html"
		);

	var url = window.location.toString();
	url = url.split("/");

	var lengthUrl = url.length;
	var pageName = url[lengthUrl-1];
	var referrer = document.referrer;

        if(pageName != "state-selection.html" && pageName != "practice-tests.html" && pageName != "driver-ed-online.html" && pageName != "driver-ed-course.html" && pageName != "teen-drivers-license.html" && pageName != "dmv-learners-permit.html" && pageName != "dmv-practice-test.html" && pageName.indexOf("-")>0) {
                var statePageCookie = pageName.split('-');
                var stateNamePageSelection = statePageCookie[0].slice(0,1).toUpperCase() + statePageCookie[0].slice(1);
                if(stateNamePageSelection == "Pa") { stateNamePageSelection = "Pennsylvania"; }
                if(statePageCookie[0] != "") { createCookie("state", stateNamePageSelection); }
        }

	var flag = 0;
	var pgName;
	if(pageName.indexOf("?") >= 0) {
		pgName = pageName.split("?");
		/*if(pgName[1] == "state=") {
			alert("Please select state");
			location.href = pgName[0];
		}*/
		pgName = pgName[0];
	} else {
		pgName = pageName;
	}
	for(var i=0; i<mapArr.length; i++) {
		if(pgName == mapArr[i]) {
			flag = 1;
		} 
	}

	if(pageName == "") {
		flag = 1;
	}

	if(pageName.indexOf("?") >= 0) {
		var stateVal = pageName.split("=");
		var lengthStateVal = stateVal.length;
		var state;
		if (stateVal[lengthStateVal - 1] != "") {
			state = stateVal[lengthStateVal - 1];
			createCookie("state", state);
			if (readCookie("stateDelete") != 1) {
				createCookie("stateDelete", "1");
				eraseCookie("stateDel");
			}
			var pageNm = pageName.split('?');
			var tabCookie = readCookie("tabLink");
			tabCookie = readCookie("tabLink") ? readCookie("tabLink") : ((pageName == "index.html") ? 'home' :'course') ;
		}
		pageName = pageName.split("?");
		pageName = pageName[0];
		if(!flag) {
			location.href = getValue(readCookie("state"), tabCookie);
		} else if(pageName == "index.html") {
			location.href = getValue(readCookie("state"), "home");
		} else {
			location.href = pageName;
		}
	}

	if(!flag && readCookie("state") == null && pageName != 'state-selection.html') {
			if (readCookie("stateSel") == 1) {
				if (readCookie("pageSel") != 1) {
					createCookie("pageSel", "1");
					location.href = pageName;
				}
			} else {
				location.href = "state-selection.html";
			}
	}

	function getValue(state, type) {
		var mapType = getType(type);
		flag = 0;
		for(var i=0; i<mapType.length; i++) {
			var stateVal = mapType[i].split("~");
			if(stateVal[0] == state) {
				flag = 1;
				return stateVal[1];
			}
		}
		if(!flag) { return 0; }
	}

	function getType(type) {
		if(type == "home") {
			mapType = mapLinkHome;
		} else if (type == "course") {
			mapType = mapLinkCourse;
		} else if (type == "url") {
			mapType = mapURL;
		} else if (type == "price") {
			mapType = mapPrice;
		} else if (type == "logo") {
			mapType = mapLogo;
		} else if (type == "course_dmv") {
			mapType = mapCourseDMVURL;
		}
		return mapType;
	}

	function getReferrer() {
		var tabCookie = readCookie("tabLink");
		tabCookie = readCookie("tabLink") ? readCookie("tabLink") : ((pageName == "index.html") ? 'home' :'course') ;
		if (tabCookie == "home") {
			if (readCookie("state")) {
				putValue(getValue(readCookie("state"), 'home'));
			} else {
				putValue("course.html");
			}
		}
		if (tabCookie == "course") {
			if (readCookie("state")) {
				putValue(getValue(readCookie("state"), 'course'));
			} else {
				putValue("course.html");
			}
		}
		if (tabCookie == "parent") {
			putValue('parents.html');
		}
		if (tabCookie == "about") {
			putValue('aboutus.html');
		}
		if (tabCookie == "practice") {
			putValue('practice-tests.html');
		}
		if (tabCookie == "contact") {
			putValue('contactus.html');
		}
	}

	function putValue(linkhref) {
		$('#calink').attr("href", linkhref);
		$('#colink').attr("href", linkhref);
		$('#fllink').attr("href", linkhref);
		$('#galink').attr("href", linkhref);
		$('#nvlink').attr("href", linkhref);
		$('#oklink').attr("href", linkhref);
		$('#palink').attr("href", linkhref);
		$('#txlink').attr("href", linkhref);
		$('#valink').attr("href", linkhref);
	}

	function selectBox(val) {
		if(val == 1) {
			if(document.getElementById("idN")) { document.getElementById("idN").style.display = ''; }
			if(document.getElementById("idN1")) { document.getElementById("idN1").style.display = ''; }
			if(document.getElementById("idS")) { document.getElementById("idS").style.display = 'none'; }
		}
		if(val == 2) {
			if(document.getElementById("idN")) { document.getElementById("idN").style.display = 'none'; }
			if(document.getElementById("idN1")) { document.getElementById("idN1").style.display = 'none'; }
			if(document.getElementById("idS")) { document.getElementById("idS").style.display = ''; }
		}
	}

	function swapCookie(cookie1, cookie2) {
		link = pageName;
		tabCookie = readCookie("tabLink") ? readCookie("tabLink") : ((pageName == "index.html") ? 'home' :'course') ;
		if (tabCookie) {
			if (tabCookie == "course" || tabCookie == "home") {
				if (!readCookie(cookie2)) {
					link = getValue(readCookie(cookie1), tabCookie);
				}
			}
			createCookie(cookie2, readCookie(cookie1));
			eraseCookieRedirect(cookie1, getValue(readCookie(cookie1), tabCookie));
		}
	}

	function setState() {
		if(document.frmstate.state.value=="") {
			alert('Please select state.');
		} else {
			document.frmstate.submit();
		}
	}

	function setState2() {
		if(document.frmstate2.state.value=="") {
			alert('Please select state.');
		} else {
			document.frmstate2.submit();
		}
	}

	$().ready(function(){
		if(!readCookie('state')) {
			selectBox(1);
		}
		$('#homelink').click(function(eve){
			if (readCookie("state") != null) {
				$('#homelink').attr("href", getValue(readCookie("state"), 'home'))
			}
			createCookie("tabLink", "home");
		});
		$('#courselink').click(function(eve){
			if (readCookie("state") != null) {
				$('#courselink').attr("href", getValue(readCookie("state"), 'course'))
			}
			createCookie("tabLink", "course");
		});
		$('#parentslink').click(function(eve){
			createCookie("tabLink", "parent");
		});
		$('#aboutlink').click(function(eve){
			createCookie("tabLink", "about");
		});
		$('#practicelink').click(function(eve){
			createCookie("tabLink", "practice");
		});
		$('#contactlink').click(function(eve){
			createCookie("tabLink", "contact");
		});
		$('#calink').click(function(eve){
			createCookie("state", "California");
			createCookie("stateSel", "1");
			getReferrer();
		});
		$('#colink').click(function(eve){
			createCookie("state", "Colorado");
			createCookie("stateSel", "1");
			getReferrer();
		});
		$('#fllink').click(function(eve){
			createCookie("state", "Florida");
			createCookie("stateSel", "1");
			getReferrer();
		});
		$('#galink').click(function(eve){
			createCookie("state", "Georgia");
			createCookie("stateSel", "1");
			getReferrer();
		});
		$('#nvlink').click(function(eve){
			createCookie("state", "Nevada");
			createCookie("stateSel", "1");
			getReferrer();
		});
		$('#oklink').click(function(eve){
			createCookie("state", "Oklahoma");
			createCookie("stateSel", "1");
			getReferrer();
		});
		$('#palink').click(function(eve){
			createCookie("state", "Pennsylvania");
			createCookie("stateSel", "1");
			getReferrer();
		});
		$('#txlink').click(function(eve){
			createCookie("state", "Texas");
			createCookie("stateSel", "1");
			getReferrer();
		});
		$('#valink').click(function(eve){
			createCookie("state", "Virginia");
			createCookie("stateSel", "1");
			getReferrer();
		});
	});
