function NavisConvertTagToPhoneNumberBasic(t){
	switch (t){
		case "grcontent": return("8662845962");
		case "gdsgeneral": return("8662848179");
		case "gdshome": return("8662902394");
		case "gdsvacation": return("8662909859");
		case "contactus": return("8663231395");
		case "grscabins": return("8663481063");
		case "yrscabins": return("8663485974");
		case "yrshome": return("8663489873");
		case "ggd6": return("8664302759");
		case "ggdpl5": return("8664974421");
		case "ggdpl4": return("8665001445");
		case "ggdpm1": return("8665580534");
		case "ggdpm3": return("8665581165");
		case "ggdcl": return("8665581172");
		case "yydplf": return("8665581191");
		case "ggd1": return("8665581196");
		case "ggvrd3": return("8665581203");
		case "ggvrd9": return("8665581204");
		case "ggvrd2": return("8665581205");
		case "ggvrd4": return("8665581218");
		case "yyl8": return("8665581224");
		case "ggrdp1": return("8665581237");
		case "yydpl5": return("8665581242");
		case "ggdpm6": return("8665581253");
		case "ggd2": return("8665581258");
		case "yydpf": return("8665581269");
		case "ggdpvh": return("8665581272");
		case "ggd4": return("8665581276");
		case "yydpm4": return("8665581278");
		case "yydpm2": return("8665581284");
		case "ggrdp2": return("8665581438");
		case "ggdpr2": return("8665581440");
		case "ggdc": return("8665581442");
		case "yydpr2": return("8665581443");
		case "ggdpf": return("8665581463");
		case "ggvrd6": return("8665581464");
		case "ggdpm5": return("8665581470");
		case "ggdpvr": return("8665581473");
		case "yyl4": return("8665581474");
		case "yyl1": return("8665581477");
		case "ggdpm2": return("8665581478");
		case "yydpr": return("8665581483");
		case "yydpm5": return("8665581486");
		case "yydpl9": return("8665581488");
		case "ggd3": return("8665581490");
		case "ggdc7": return("8665581554");
		case "yydpr1": return("8665581570");
		case "yydpm1": return("8665581572");
		case "ggrdp": return("8665581573");
		case "ggdpr1": return("8665581576");
		case "ggd7": return("8665581578");
		case "yyl7": return("8665719084");
		case "ggdpr": return("8665722827");
		case "ggdpl8": return("8665744362");
		case "ggdpl7": return("8665744371");
		case "ggdpl6": return("8665809563");
		case "General Keywords Grouping": return("8665815923");
		case "gglfv": return("8665830007");
		case "ggdc23": return("8665837576");
		case "yydp1": return("8665838927");
		case "yyl5": return("8665840021");
		case "yydprm": return("8665988784");
		case "ggdc24": return("8666062894");
		case "ggdc1": return("8666066089");
		case "ggdc21": return("8666075329");
		case "yydpl7": return("8666094814");
		case "ggvrd1": return("8666094815");
		case "ggl1": return("8666094818");
		case "ggdc4": return("8666100787");
		case "ggdpl9": return("8666137473");
		case "ggdpm": return("8666137475");
		case "yydpl1": return("8666137478");
		case "ggdpv1": return("8666184002");
		case "ggvrd5": return("8666187464");
		case "ggdc8": return("8666189918");
		case "yydpm6": return("8666210556");
		case "ggdch": return("8666214979");
		case "ggcm": return("8666227485");
		case "ggdc5": return("8666229598");
		case "ggdplf": return("8666231072");
		case "ggdc22": return("8666231073");
		case "ggvrd8": return("8666235669");
		case "ggdc20": return("8666236774");
		case "yyl2": return("8666236819");
		case "yydpl2": return("8666239809");
		case "yydpl4": return("8666240976");
		case "ggcm1": return("8666241058");
		case "yyl6": return("8666241062");
		case "ggvrd7": return("8666241084");
		case "ggdc25": return("8666250147");
		case "yydpm3": return("8666250174");
		case "ggdc3": return("8666257113");
		case "ggl2": return("8666263012");
		case "yyl3": return("8666263014");
		case "ggdc10": return("8666265162");
		case "ggdc2": return("8666265163");
		case "yydp2": return("8666278241");
		case "ggdc6": return("8666282381");
		case "yydpl3": return("8666306044");
		case "yydpm": return("8666306057");
		case "ggrdp3": return("8666816934");
		case "ggd5": return("8666846871");
		case "ggdprr": return("8666846875");
		case "ggdprm": return("8666872172");
		case "yydpl8": return("8666895399");
		case "ggdc9": return("8667030472");
		case "yydpl6": return("8667030607");
		case "ggdpv": return("8667030985");
		case "ggl4": return("8667502785");
		case "ggdpm4": return("8667502794");
		case "yrsvacation": return("8667504624");
		case "ggl3": return("8667526118");
		case "ggl6": return("8669353840");
		case "ggl5": return("8669355043");
		case "ggmh": return("8669356716");
		case "ggdclh": return("8669357061");
		case "ggdpl1": return("8669357690");
		case "ggdpl3": return("8669358583");
		case "ggdpl2": return("8669358770");
		case "ggl8": return("8669358938");
		case "ggdp2": return("8669359249");
		case "ggdp1": return("8669359781");
		case "ggl7": return("8669360581");
		case "yrsgeneral": return("8669660621");
		case "gdscabins": return("8669662735");
		case "gdscontent": return("8669668817");
		case "brsgeneral": return("8669766202");
		case "grstop": return("8772586059");
		case "grshome": return("8882540721");
		case "grsvacation": return("8882868042");
		case "grsgeneral": return("8882886119");
		case "grgulf": return("8883647205");
		case "dctsearch": return("8888844168");
	}
	return("8665443223");
}


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 = "14421";

		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;
    	}
	}
}

