function NavisConvertTagToPhoneNumberBasic(t){
	switch (t){
		case "BeachGuide_banner": return("8004300754");
		case "www.visitflorida.com": return("8006187796");
		case "corporate_website": return("8007280679");
		case "corporate_real_estate": return("8007814604");
		case "www.destinvacations.com": return("8663371993");
		case "arieldunes": return("8663481071");
		case "usaresortrentals": return("8663488959");
		case "getmorevacations": return("8663488982");
		case "olinmarlercharterboats.com": return("8663827753");
		case "sign on property": return("8664042438");
		case "Majestic Sun VRBO": return("8664047659");
		case " rental sign on property": return("8664051538");
		case "Totebag": return("8664057499");
		case "rental yard sign": return("8664069296");
		case "www.destin-vacation.com": return("8664617948");
		case "bigkahunasadwords": return("8665016703");
		case "Spring 15% 2009": return("8665343798");
		case "pokerrunadwords": return("8665469638");
		case "boatracesadwords": return("8665475024");
		case "Resort_Guide_Enclave": return("8665538978");
		case "destin-ation.com_rentals": return("8666120125");
		case "resortsandlodges": return("8666279223");
		case "gulfwindsadwords": return("8666415480");
		case "destinvacationadwords": return("8666415486");
		case "destinrentaladwords": return("8666445753");
		case "destinhomeadwords": return("8666445760");
		case "floridarentaladwords": return("8666445765");
		case "floridacondoadwords": return("8666661285");
		case "Resort_Guide_Gulf_Winds": return("8666685419");
		case "enclaveadwords": return("8667020814");
		case "Resort_Guide_Full_Page": return("8667178222");
		case "destinrentaladword": return("8667502015");
		case "snowbirdadwords": return("8667759094");
		case "enclavegoogleadwords": return("8667899826");
		case "luauadwords": return("8668064924");
		case "baytowneadwords": return("8668078151");
		case "sandestinadwords": return("8668161152");
		case "CVB": return("8668289857");
		case "destincondoadwords": return("8668874007");
		case "Resort_Guide_Sandestin": return("8669210965");
		case "gulf_winds_east": return("8669212773");
		case "Enclave": return("8669213966");
		case "localadlink": return("8669312504");
		case "condos": return("8669763844");
		case "www.destindirect.com": return("8669763956");
		case "beachhouses": return("8669767395");
		case "banner": return("8669768048");
		case "www.destin-vacations.com": return("8772251955");
		case "destinrentalsadword": return("8772795812");
		case "VRBO_Beachside_1": return("8775796046");
		case "VRBO_Luau": return("8775954361");
		case "VacationHomeRentals.com_Beachside_1": return("8776394811");
		case "seacrestbeachadwords": return("8777021048");
		case "VLBO_Vacation_Listing": return("8777784297");
		case "destincondosadwords ": return("8777833340");
		case "VRBO_The_Enclave": return("8777979801");
		case "Sand_Buckets": return("8778169910");
		case "Company_Brochure": return("8882397632");
		case "crystalbeachadwords": return("8882540723");
		case "Memphis-Wanda_Duke_Team": return("8882664218");
		case "gulfwindsgoogleadwords": return("8882982504");
		case "homeaway.com": return("8886570529");
		case "BeachGuide_Sandestin_Resort": return("8888428593");
		case "googleadwords": return("8888428595");
		case "BeachGuide_Hidden_Dunes": return("8888578778");
	}
	return("8663565946");
}


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 = "q=";
	//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 = "q=";
	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 = "14303";

		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 ? "?" : "&") + "q" + "=" + kwd;
    	}
	}
}

