function NavisConvertTagToPhoneNumberBasic(t){
	switch (t){
		case "literarysojourn": return("8003270036");
		case "email": return("8007958606");
		case "remarketing": return("8008580947");
		case "steamboatwine": return("8662055564");
		case "statesman": return("8663204183");
		case "tribune": return("8663204185");
		case "denverpost": return("8663204186");
		case "9news": return("8663204187");
		case "winevendor": return("8663204189");
		case "trappeurscrossing": return("8663485189");
		case "LWS": return("8663488824");
		case "forgetaway": return("8663565932");
		case "coloradoinfo": return("8663710782");
		case "sisters": return("8664318282");
		case "allsteamboat": return("8664555008");
		case "skiernews": return("8665349837");
		case "denisson": return("8665355020");
		case "vr411": return("8665355804");
		case "PPC": return("8665446612");
		case "dbm350": return("8665508615");
		case "houstonchron": return("8665538972");
		case "rsvip": return("8665607568");
		case "yellowpags.com": return("8665695921");
		case "TripHomes Inquiry Emails": return("8665705871");
		case "skimag": return("8665705872");
		case "travelzoo": return("8665998874");
		case "torianplum": return("8665999019");
		case "tripAtorian": return("8665999026");
		case "freenowfreelater": return("8666265283");
		case "coloradobanner": return("8666271281");
		case "facebook": return("8666271360");
		case "quote": return("8666279302");
		case "society": return("8666280379");
		case "yahooppc": return("8666287441");
		case "goplanit": return("8666287481");
		case "tripAemerald": return("8666349610");
		case "coloradostate": return("8666349611");
		case "10k": return("8666349614");
		case "discovercolorado": return("8666349615");
		case "stringsgarden": return("8666653925");
		case "emailco": return("8666653944");
		case "familylaw": return("8666661289");
		case "skicoupons": return("8667459213");
		case "twitter": return("8667875069");
		case "onthesnow": return("8667875072");
		case "dexknows": return("8668321479");
		case "tripAbronz": return("8668321630");
		case "skitown": return("8668321701");
		case "theknot": return("8668368910");
		case "steamboatchamber": return("8668368957");
		case "tripAtim": return("8668368964");
		case "wholesaler": return("8668369096");
		case "marathonemail": return("8669020024");
		case "dopplr": return("8669213265");
		case "tripAtrap": return("8669214454");
		case "bodyworks": return("8669218447");
		case "allartsartists": return("8669219913");
		case "google": return("8669221014");
		case "flipkey": return("8669312604");
		case "rew": return("8669312610");
		case "rentalplaces": return("8669313205");
		case "steamboatorchestra": return("8669349172");
		case "ppcadssresort": return("8772214901");
		case "endlessvacations": return("8775034007");
		case "youtube.com": return("8775034041");
		case "ppcadsscondos": return("8775271325");
		case "allarts": return("8776671837");
		case "snowpak": return("8777490745");
		case "exploresteamboat": return("8778295043");
		case "snowflower": return("8882351231");
		case "vrbo": return("8882664217");
		case "postcardhomeowner": return("8883640795");
		case "ypndiscount": return("8883642581");
		case "homeownerpostcardw": return("8883642595");
		case "ppcevents": return("8883647592");
		case "pilotvacations": return("8883835430");
		case "pilotowners": return("8883837486");
		case "ppcspecials": return("8883864596");
		case "emailbetterdeal": return("8883950716");
		case "contactusform": return("8883972680");
		case "ppcadsssumactiv": return("8884426010");
		case "ppcadsslodging": return("8884439220");
		case "ppcadsvacrental": return("8885538951");
		case "ppcadssaccom": return("8887071747");
		case "aeiseminars": return("8887123369");
		case "vrbo.com": return("8887123372");
		case "bearlodgepc": return("8887123374");
		case "ppcadssvacations": return("8887202087");
		case "ppcadsslodge": return("8887621309");
		case "ppcbing": return("8887689031");
		case "ppcadproperty": return("8888548902");
		case "ppcadsssumer": return("8888840249");
	}
	return("8666349616");
}


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 = "14339";

		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;
    	}
	}
}

