function NavisConvertTagToPhoneNumberBasic(t){
	switch (t){
		case "chamber": return("8006574183");
		case "home": return("8006839776");
		case "map": return("8006861289");
		case "Vacation": return("8662053188");
		case "northwest": return("8662316217");
		case "german": return("8662617594");
		case "homeschool": return("8662883691");
		case "atl0809": return("8663203978");
		case "ajcblast": return("8663203997");
		case "gnashgulf": return("8663480775");
		case "gatpet": return("8663488863");
		case "NW FL": return("8663741225");
		case "seahawks": return("8664023642");
		case "Carrabelle": return("8665395522");
		case "FL travel": return("8666265210");
		case "NEGA": return("8666271185");
		case "life": return("8666272209");
		case "airport": return("8666278315");
		case "kayak": return("8666279565");
		case "flmap": return("8666280420");
		case "E-News": return("8666421808");
		case "AJC": return("8666483240");
		case "brochure": return("8667020813");
		case "postcards": return("8667136155");
		case "catalog": return("8667239460");
		case "Geiger": return("8667317558");
		case "St George Island Vacation Rentals": return("8667672439");
		case "southern": return("8667850144");
		case "TDC Combo": return("8669123682");
		case "Tallahassee": return("8669211780");
		case "survey": return("8669212716");
		case "combo": return("8669214255");
		case "getaway": return("8669340815");
		case "gnashbeach": return("8669347074");
		case "trip": return("8669665107");
		case "village": return("8669665685");
		case "military": return("8669760531");
		case "vrma": return("8772989175");
		case "seafood": return("8773460415");
		case "southwest": return("8774637311");
		case "forgotten": return("8775826971");
		case "sierra": return("8775969352");
		case "face": return("8776033247");
		case "lighthouse": return("8776609892");
		case "visitfl": return("8777054614");
		case "montreal": return("8777823271");
		case "oyster": return("8777979804");
		case "gulf": return("8778910079");
		case "pet": return("8882397763");
		case "Visitor": return("8882676312");
		case "state park": return("8883061338");
		case "gatfla": return("8883648599");
		case "TACVB": return("8883858347");
		case "coastal": return("8883882325");
		case "FVRMA": return("8884308677");
		case "gatfam": return("8884657247");
		case "Green": return("8884800606");
		case "gatbeach": return("8884818749");
		case "gdrivepet": return("8885420046");
		case "must": return("8885913874");
		case "Quest": return("8886004712");
		case "gdriveoil": return("8886789021");
		case "gnashfam": return("8886913365");
		case "expo": return("8886984280");
		case "gnashfla": return("8888272514");
		case "gdrivegulf": return("8888281211");
		case "gnashpet": return("8888350304");
		case "gatgulf": return("8888586379");
	}
	return("8006839776");
}


function CreateNavisTagCookie(t) {
	CreateNavisTagCookie2(t, "");
}

function CreateNavisTagCookie2(t, dom) {
	var date = new Date();
	date.setTime(date.getTime()+(30*24*60*60*1000));
	var expires = "; expires="+date.toGMTString();
	var domstr = (dom=="")? "" : "; domain=" + dom;
	document.cookie = "NavisNCKeyword="+t+expires+domstr+"; path=/";
}

function ReadNavisTagCookie() {
	var nameEQ = "NavisNCKeyword=";
	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;
}

function GetNavisTagQueryString(){
	var nameEQ = "NCK=";
	//alert(window.location.search.substring(1, window.location.search.length));
	var ca = window.location.search.substring(1, window.location.search.length).split('&');
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

function GetNavisTagReferrer(){
	var r = document.referrer;
	var rs = r.split('/');
	var rd = rs.length > 2 ? rs[2] : null;
	return rd;
}

function GetNavisTagHash(){
	var nameEQ = "NCK=";
	var h = document.location.hash;
	return (h.substring(1, nameEQ.length + 1) == nameEQ) ? h.substring(nameEQ.length + 1, h.length) : null; 
}

	

function ProcessNavisNCKeyword(){
	ProcessNavisNCKeyword3("", false);
}

function ProcessNavisNCKeyword2(dom){
	ProcessNavisNCKeyword3(dom, false);
}

function ProcessNavisNCKeyword3(dom, referrer){
	ProcessNavisNCKeyword4(dom, true, false, referrer);
}

//dom: domain for the cookie, useful for cookies that persist on multiple subdomains
//querystring:  Should I look in the querystring for the token?
//hash:  Should I look in the hash (the part of the URL after #) for the token?
//referrer:  Should I use the domain of the referrer as the token?
function ProcessNavisNCKeyword4(dom, querystring, hash, referrer){
	var t = null;
	if (t == null && querystring){
		t = GetNavisTagQueryString();
	}
	if (t == null && hash){
		t = GetNavisTagHash();
	}
	if (t == null && referrer){
		t = GetNavisTagReferrer();
	}
	
	if (t != null){
		CreateNavisTagCookie2(t, dom);
	}
}



function FormatPhone(ph, fmt){
	var fs = fmt.split("#");
	var s = "";
	for (var i = 0; i < 10; i++){
		s += fs[i] + ph.substr(i, 1);
	}
	s += fs[10];
	return s;
}

function ShowNavisNCPhoneNumber(){
	ShowNavisNCPhoneNumberFormat("(###) ###-####");
}

function ShowNavisNCPhoneNumberFormat(fmt){
	var ph = NavisConvertTagToPhoneNumberBasic(ReadNavisTagCookie());
	document.write(FormatPhone(ph, fmt));
}

function NavisConvertTagToPhoneNumber(t){
	return FormatPhone(NavisConvertTagToPhoneNumberBasic(t), "(###) ###-####");
}

function NavisSetHiddenKeywordField(id){
	var fld = document.getElementById(id);
	if (fld != null){
		fld.value = ReadNavisTagCookie();
	}
}
function NavisSetHiddenPhoneNumberField(id){
	var fld = document.getElementById(id);
	if (fld != null){
		fld.value = NavisConvertTagToPhoneNumberBasic(ReadNavisTagCookie());
	}
}



function SetNavisP2TalkLink(linkId){
	SetNavisLink(linkId, "P2Talk", "");
}
function SetNavisP2TalkCustomLink(linkId){
	SetNavisLink(linkId, "P2TCust", "");
}
function SetNavisP2ChatLink(linkId){
	SetNavisLink(linkId, "P2ChatIni", "");
}
function SetNavisP2ChatCustomLink(linkId){
	SetNavisLink(linkId, "P2ChatIni", "&cust=1");
}
function SetNavisLink(linkId, page, extra){
	var lnk = document.getElementById(linkId);
	if (lnk != null && (lnk.tagName.toLowerCase() == "a" || lnk.tagName.toLowerCase() == "area")){
		var ph = NavisConvertTagToPhoneNumberBasic(ReadNavisTagCookie());
		var acct = "13431";

		lnk.href = "http://www.navistechnologies.info/p2talk/" + page + ".aspx?account=" + acct + "&dnis=" + ph + extra;
	}
}

function AppendNavisKeywordToLink(linkId){
	var lnk = document.getElementById(linkId);
	if (lnk != null && (lnk.tagName.toLowerCase() == "a" || lnk.tagName.toLowerCase() == "area")){
		var kwd = ReadNavisTagCookie();
		if (kwd != null){
    		lnk.href = lnk.href + (lnk.href.indexOf("?") == -1 ? "?" : "&") + "NCK" + "=" + kwd;
    	}
	}
}

