// WebTrends SmartSource Data Collector Tag

// Version: 1.1.1

// Created: 2/13/2008 4:10:50 PM

// *******************************************************

// David Sinner 2/20/2008

// This tag was modifed for Hilton to remain compatible with

// existing functionality.

// Changes are identified with <!--brand.com customizations-->

// and <!--Start global site customizations-->

//

// David Sinner 3/24/2008

// Added dcsCleanUp function and call

//

// Hilton with WT 7/16/2008

// updated functions dcsEvt and dcsDownload to prevent errors on certain controls

//

// David Sinner 7/28/2008

// Added reftemp logic to limit size of referrer field to prevent overflow

//

// David Sinner 7/29/2008

// Corrected g18n changed to dcsInit.i18n

//

// John Clark 03/10/2010

// Corrected tx_i not sending unique invoice ID's

// added calculation for booking lead time in days

// *******************************************************





function dcsCookie(){

	if (typeof(dcsOther)=="function"){

		dcsOther();

	}

	else if (typeof(dcsFPC)=="function"){

		dcsFPC(dcsInit.timezone);

	}

}

function dcsGetCookie(name){
	var cookies=document.cookie.split("; ");

	var cmatch=[];

	var idx=0;

	var i=0;

	var namelen=name.length;

	var clen=cookies.length;

	for (i=0;i<clen;i++){

		var c=cookies[i];

		if ((c.substring(0,namelen+1))==(name+"=")){

			cmatch[idx++]=c;

		}

	}

	var cmatchCount=cmatch.length;

	if (cmatchCount>0){

		idx=0;

		if ((cmatchCount>1)&&(name==dcsInit.fpc)){

			var dLatest=new Date(0);

			for (i=0;i<cmatchCount;i++){

				var lv=parseInt(dcsGetCrumb(cmatch[i],"lv"));

				var dLst=new Date(lv);

				if (dLst>dLatest){

					dLatest.setTime(dLst.getTime());

					idx=i;

				}

			}

		}

		return unescape(cmatch[idx].substring(namelen+1));

	}

	else{

		return null;

	}

}

function dcsGetCrumb(cval,crumb){

	var aCookie=cval.split(":");

	for (var i=0;i<aCookie.length;i++){

		var aCrumb=aCookie[i].split("=");

		if (crumb==aCrumb[0]){

			return aCrumb[1];

		}

	}

	return null;

}

function dcsGetIdCrumb(cval,crumb){

	var id=cval.substring(0,cval.indexOf(":lv="));

	var aCrumb=id.split("=");

	for (var i=0;i<aCrumb.length;i++){

		if (crumb==aCrumb[0]){

			return aCrumb[1];

		}

	}

	return null;

}

function dcsIsFpcSet(name,id,lv,ss){

	var c=dcsGetCookie(name);

	if (c){

		return ((id==dcsGetIdCrumb(c,"id"))&&(lv==dcsGetCrumb(c,"lv"))&&(ss=dcsGetCrumb(c,"ss")))?0:3;

	}

	return 2;

}

function dcsFPC(offset){

	if (typeof(offset)=="undefined"){

		return;

	}

	if (document.cookie.indexOf("WTLOPTOUT=")!=-1){

		return;

	}

	var name=dcsInit.fpc;

	var dCur=new Date();

	var adj=(dCur.getTimezoneOffset()*60000)+(offset*3600000);

	dCur.setTime(dCur.getTime()+adj);

	var dExp=new Date(dCur.getTime()+315360000000);

	var dSes=new Date(dCur.getTime());

	WT.co_f=WT.vt_sid=WT.vt_f=WT.vt_f_a=WT.vt_f_s=WT.vt_f_d=WT.vt_f_tlh=WT.vt_f_tlv="";

	if (document.cookie.indexOf(name+"=")==-1){

		if ((typeof(gWtId)!="undefined")&&(gWtId!="")){

			WT.co_f=gWtId;

		}

		else if ((typeof(gTempWtId)!="undefined")&&(gTempWtId!="")){

			WT.co_f=gTempWtId;

			WT.vt_f="1";

		}

		else{

			WT.co_f="2";

			var cur=dCur.getTime().toString();

			for (var i=2;i<=(32-cur.length);i++){

				WT.co_f+=Math.floor(Math.random()*16.0).toString(16);

			}

			WT.co_f+=cur;

			WT.vt_f="1";

		}

		if (typeof(gWtAccountRollup)=="undefined"){

			WT.vt_f_a="1";

		}

		WT.vt_f_s=WT.vt_f_d="1";

		WT.vt_f_tlh=WT.vt_f_tlv="0";

	}

	else{

		var c=dcsGetCookie(name);

		var id=dcsGetIdCrumb(c,"id");

		var lv=parseInt(dcsGetCrumb(c,"lv"));

		var ss=parseInt(dcsGetCrumb(c,"ss"));

		if ((id==null)||(id=="null")||isNaN(lv)||isNaN(ss)){

			return;

		}

		WT.co_f=id;

		var dLst=new Date(lv);

		WT.vt_f_tlh=Math.floor((dLst.getTime()-adj)/1000);

		dSes.setTime(ss);

		if ((dCur.getTime()>(dLst.getTime()+1800000))||(dCur.getTime()>(dSes.getTime()+28800000))){

			WT.vt_f_tlv=Math.floor((dSes.getTime()-adj)/1000);

			dSes.setTime(dCur.getTime());

			WT.vt_f_s="1";

		}

		if ((dCur.getDay()!=dLst.getDay())||(dCur.getMonth()!=dLst.getMonth())||(dCur.getYear()!=dLst.getYear())){

			WT.vt_f_d="1";

		}

	}

	WT.co_f=escape(WT.co_f);

	WT.vt_sid=WT.co_f+"."+(dSes.getTime()-adj);

	var expiry="; expires="+dExp.toGMTString();

	var cur=dCur.getTime().toString();

	var ses=dSes.getTime().toString();

	document.cookie=name+"="+"id="+WT.co_f+":lv="+cur+":ss="+ses+expiry+"; path=/"+(((dcsInit.fpcdom!=""))?("; domain="+dcsInit.fpcdom):(""));

	var rc=dcsIsFpcSet(name,WT.co_f,cur,ses);

	if (rc!=0){

		WT.co_f=WT.vt_sid=WT.vt_f_s=WT.vt_f_d=WT.vt_f_tlh=WT.vt_f_tlv="";

		WT.vt_f=WT.vt_f_a=rc;

    }

}

// Code section for Generate an Ad View query parameter for every Ad Click link.

function dcsAdSearch(){

	if (document.links){

		var param=dcsInit.adclickparam+"=";

		var paramlen=param.length;

		var paramre=new RegExp(param,"i");

		var len=document.links.length;

		for (var i=0;i<len;i++){

		    if (document.links[i].href){

			    var anch=document.links[i].href+"";

			    var pos=anch.search(paramre);

			    if (pos!=-1){

				    var start=pos+paramlen;

				    var end=anch.indexOf("&",start);

				    var value=anch.substring(start,(end!=-1)?end:anch.length);

				    WT.ad=WT.ad?(WT.ad+";"+value):value;

			    }

			}

		}

	}

}

function dcsIsOnsite(host){

	host=host.toLowerCase();

	if (host==window.location.hostname.toLowerCase())

	{

		return true;

	}

	if (typeof(dcsInit.onsitedoms.test)=="function"){

		return dcsInit.onsitedoms.test(host);

	}

	else if (dcsInit.onsitedoms.length>0){

		var doms=dcsInit.onsitedoms.toLowerCase().split(",");

		var len=doms.length;

		for (var i=0;i<len;i++){

			if (host==doms[i]){

			    return true;

			}

		}

	}

	return false;

}

function dcsTypeMatch(pth, typelist){

	var type=pth.substring(pth.lastIndexOf(".")+1,pth.length);

	var types=typelist.split(",");

	for (var i=0;i<types.length;i++){

		if (type==types[i]){

			return true;

		}

	}

	return false;

}

function dcsEvt(evt,tag){

    var e=evt.target||evt.srcElement;

    if(!e || e.tagName == "")

    {

        return false;

    }

    while (e.tagName&&(e.tagName!=tag)){

        e=e.parentElement||e.parentNode;

        if(!e || e.tagName == "")

        {

            return false;

        }

    }

    return e;

}

function dcsNavigation(evt){

	return "";

}

function dcsBind(event,func){

	if ((typeof(window[func])=="function")&&document.body){

		if (document.body.addEventListener){

			document.body.addEventListener(event, window[func], true);

		}

		else if(document.body.attachEvent){

			document.body.attachEvent("on"+event, window[func]);

		}

	}

}

function dcsET(){

	var e=(navigator.appVersion.indexOf("MSIE")!=-1)?"click":"mousedown";

	dcsBind(e,"dcsDownload");

	dcsBind(e,"dcsDynamic");

	dcsBind(e,"dcsFormButton");

	dcsBind(e,"dcsOffsite");

	dcsBind(e,"dcsAnchor");

	dcsBind("contextmenu","dcsRightClick");

	dcsBind(e,"dcsImageMap");

}

function dcsMultiTrack(){

	if (arguments.length%2==0){

		for (var i=0;i<arguments.length;i+=2){

			if (arguments[i].indexOf('WT.')==0){

				WT[arguments[i].substring(3)]=arguments[i+1];

			}

			else if (arguments[i].indexOf('DCS.')==0){

				DCS[arguments[i].substring(4)]=arguments[i+1];

			}

			else if (arguments[i].indexOf('DCSext.')==0){

				DCSext[arguments[i].substring(7)]=arguments[i+1];

			}

		}

		var dCurrent=new Date();

		DCS.dcsdat=dCurrent.getTime();

		dcsFunc("dcsCookie");

		dcsTag();

	}

}



// Add event handlers here



// Code section for Track clicks to download links.

function dcsDownload(evt){

	evt=evt||(window.event||"");

	if (evt&&((typeof(evt.which)!="number")||(evt.which==1))){

		var e=dcsEvt(evt,"A");

        if (e.href) {

            if (e.hostname&&dcsIsOnsite(e.hostname)){

                if (dcsTypeMatch(e.pathname,dcsInit.downloadtypes)){

                    var qry=e.search?e.search.substring(e.search.indexOf("?")+1,e.search.length):"";

                    var pth=e.pathname?((e.pathname.indexOf("/")!=0)?"/"+e.pathname:e.pathname):"/";

                    var ttl="";

                    var text=document.all?e.innerText:e.text;

                    var img=dcsEvt(evt,"IMG");

                    if (img.alt){

                        ttl=img.alt;

                    }

                    else if (text){

                        ttl=text;

                    }

                    else if (e.innerHTML){

                        ttl=e.innerHTML;

                    }

                    dcsMultiTrack("DCS.dcssip",e.hostname,"DCS.dcsuri",pth,"DCS.dcsqry",e.search||"","WT.ti","Download:"+ttl,"WT.dl","20","WT.nv",dcsNavigation(evt));

                    DCS.dcssip=DCS.dcsuri=DCS.dcsqry=WT.ti=WT.dl=WT.nv="";

                }

            }

        }

	}

}

// Code section for Track right clicks to download links.

function dcsRightClick(evt){

	evt=evt||(window.event||"");

	if (evt){

		var btn=evt.which||evt.button;

		if ((btn!=1)||(navigator.userAgent.indexOf("Safari")!=-1)){

			var e=dcsEvt(evt,"A");

			if ((typeof(e.href)!="undefined")&&e.href){

				if ((typeof(e.protocol)!="undefined")&&e.protocol&&(e.protocol.indexOf("http")!=-1)){

					if ((typeof(e.pathname)!="undefined")&&dcsTypeMatch(e.pathname,dcsInit.rightclicktypes)){

						var pth=e.pathname?((e.pathname.indexOf("/")!=0)?"/"+e.pathname:e.pathname):"/";

						dcsMultiTrack("DCS.dcssip",e.hostname,"DCS.dcsuri",pth,"DCS.dcsqry","","WT.ti","RightClick:"+pth,"WT.dl","25");

						DCS.dcssip=DCS.dcsuri=WT.ti=WT.dl=WT.nv="";

					}

				}

			}

		}

	}

}

// Code section for Track clicks to links leading offsite.

function dcsOffsite(evt){

	evt=evt||(window.event||"");

	if (evt&&((typeof(evt.which)!="number")||(evt.which==1))){

		var e=dcsEvt(evt,"A");

		if (e.hostname&&!dcsIsOnsite(e.hostname)){

			var qry=e.search?e.search.substring(e.search.indexOf("?")+1,e.search.length):"";

			var pth=e.pathname?((e.pathname.indexOf("/")!=0)?"/"+e.pathname:e.pathname):"/";

			var trim=true;

			dcsMultiTrack("DCS.dcssip",e.hostname,"DCS.dcsuri",pth,"DCS.dcsqry",trim?"":qry,"WT.ti","Offsite:"+e.hostname+pth+qry,"WT.dl","24","WT.nv",dcsNavigation(evt));

			DCS.dcssip=DCS.dcsuri=DCS.dcsqry=WT.ti=WT.dl=WT.nv="";

		}

	}

}



// WT Modification to Base Tag - Dec 27 2008 add dcsCQP function to set WT.mc_ev=click on links with WT.mc_id

function dcsCQP(){

	var qry=window.location.search.toLowerCase();

  if((qry && (qry.indexOf("wt.mc_id")!=-1) && (qry.indexOf("wt.mc_ev")==-1)) || ((WT.mc_id!=null) && (WT.mc_id.toString()!="")) ) {

  	return "click";

  }

  else{

  	return "";

  }

}



//WT Modification to base tag - March 24, 2008 Added function dcsCleanUp to resolve persistent parameter issue

function dcsCleanUp(){

    DCS=new Object();

    WT=new Object();

    DCSext=new Object();

    if (arguments.length%2==0){

        for (var i=0;i<arguments.length;i+=2){

			if (arguments[i].indexOf('WT.')==0){

				WT[arguments[i].substring(3)]=arguments[i+1];

			}

			else if (arguments[i].indexOf('DCS.')==0){

				DCS[arguments[i].substring(4)]=arguments[i+1];

			}

			else if (arguments[i].indexOf('DCSext.')==0){

				DCSext[arguments[i].substring(7)]=arguments[i+1];

			}

		}

    }

}



function dcsAdv(){

	if (dcsInit.trackevents){

		dcsFunc("dcsET");

	}

	dcsFunc("dcsCookie");

	dcsFunc("dcsAdSearch");

	dcsFunc("dcsTP");

	dcsFunc("dcsMetaCap");

}

// Read HHonors cookie - Changes for CR 21114
function hhonorsCookie( check_name ) {
	var all_cookies = document.cookie.split( ';' );
	var temp_cookie = '';
	var cookie_name = '';
	var cookie_found = false; // set boolean true/false default false

	for ( i = 0; i < all_cookies.length; i++ )
	{
		// now split apart each name=value pair
		temp_cookie = all_cookies[i].split( '=' );

		// and trim left/right whitespace 
		cookie_name = temp_cookie[0].replace(/^\s+|\s+$/g, '');

		// if the extracted name matches passed check_name
		if ( cookie_name == check_name )
		{
			cookie_found = true;
			return cookie_found;
			break;
		}
		temp_cookie = null;
		cookie_name = '';
	}
	if ( !cookie_found )
	{
		return null;
	}
}

// Add customizations here



<!--brand.com customizations-->



if ( portal != "null" ) {

    if ( portal == 'hhonors' ) {

        WT.z_HHonors = '1';

        DCSext.portal = '';

    }

    else {

        DCSext.portal = portal;

    }

}



// set tags after an honors log in

if ( temp_after_sign_in != undefined && temp_after_sign_in ) {

    WT.rv = '1';

    WT.seg_1 = temp_hhonors_tier;
    if(temp_hhonors_prev_page_title != undefined || temp_hhonors_prev_page_title!=null )
    	    WT.hhloginpage = temp_hhonors_prev_page_title;
    
    WT.t_H004 = dcsGetCookie("accountId");
    
    WT.z_HHonors = '1';

}


WT.z_brand = temp_brand_name;

if(hhonorsCookie("accountId") && (temp_after_sign_in==false || temp_after_sign_in==undefined)){

	WT.z_HHonors = '2';
}

if(! hhonorsCookie("accountId") && (temp_after_sign_in==false || temp_after_sign_in==undefined)){

	WT.z_HHonors = '3';
}


//CR18212:Start

if ( typeof(temp_tslang) != 'undefined' )

{

	if (temp_brand_name == 'Hilton'){ DCSext.hi_tslang = temp_tslang ; }

  if (temp_brand_name == 'Conrad'){ DCSext.cd_tslang = temp_tslang ; }

  if (temp_brand_name == 'Doubletree') { DCSext.dt_tslang = temp_tslang ; }

  if (temp_brand_name == 'EmbassySuites') { DCSext.es_tslang = temp_tslang ; }

  if (temp_brand_name == 'GardenInn') { DCSext.gi_tslang = temp_tslang ; }

  if (temp_brand_name == 'HamptonInn'){ DCSext.hp_tslang = temp_tslang ; }

  if (temp_brand_name == 'Homewood') { DCSext.hw_tslang = temp_tslang ; }

  if (temp_brand_name == 'WAC') { DCSext.wa_tslang = temp_tslang ; }

}





function new_url(old_url){

var HV = old_url;

if (HV.indexOf(';jsession') != -1){if (HV.indexOf('?') != -1){var HV = HV.substring(0,HV.indexOf('?'))+'&'+HV.substring(HV.indexOf('?')+1,HV.length);}

if (HV.indexOf(';') != -1){var HV = HV.substring(0,HV.indexOf(';'))+'?'+HV.substring(HV.indexOf(';')+1,HV.length);}}return(HV);}



function hilton_customizations() {

		//  invoice id fix

	//

	// Purpose

	// It was discovered that the booking engine is reusing conformation numbers and sending them as invoice ids

	// webtrends requires that the invoice id's be unique, or they are considered duplicates and discarded

	// this plugin ensures that the invoice ids are unique by appending a date / time stamp

	//

	// History

	// 03.01.2010 JCLARK - Created

	// 03.02.2010 JCLARK - Added booked leadtime calculation

	// 03.19.2010 JCLARK - changed getDay to getDate

	// 04.02.2010 JCLARK - chagned date calculation to not include hours

	//



	//

	// ensure uniqueness of the confirmation number

	//



	var myCurrentTime = new Date()



		if (typeof(WT.tx_i) != "undefined") {

           			 if (WT.tx_i != null)

				WT.tx_i = WT.tx_i +

					String( myCurrentTime.getMonth()) +

					String( myCurrentTime.getDate()) +

					String( myCurrentTime.getFullYear());

		}

		//

		// Calculate the number of days ahead of time they are booking

		//

 		if ( typeof(DCSext.a_dat) != "undefined" ) {

 				  myCurrentTime.setHours(0,0,0,0);

   	  		myArrivalDate = new Date(DCSext.a_dat);

    	 		WT.z_booked_lead_days = Math.round((myArrivalDate.valueOf() - myCurrentTime.valueOf())/(60 * 60 * 24 * 1000));

		 }

 	}





function new_uri(old_uri){

var HV = old_uri;

if (HV.indexOf(';') != -1){var HV = HV.substring(0,HV.indexOf(';'));}return(HV);}



function new_search(old_url){

var HV = new_url(old_url);



if(HV.indexOf('?') != -1)

{

        var prev;

        var end;

        var newSub;

        HV = HV.substr(HV.indexOf('?'));

        if(HV.indexOf('ctyhocn=') != -1)

        {

                prev = HV.substr(HV.indexOf('?'),HV.indexOf('ctyhocn='));

                var ctyhocnIndex = HV.indexOf('ctyhocn=');

                var temp = HV.substr(ctyhocnIndex);

                if(temp.indexOf('&') != -1)

                {

                        var ampersandIndex = temp.indexOf('&');

                        end = temp.substr(ampersandIndex);

                        var tempSub = temp.substr(0,ampersandIndex);

                        if(tempSub.indexOf('#') != -1)

                        {

                                newSub = tempSub.substr(0,tempSub.indexOf('#'));

                        }else

                        {

                                newSub = tempSub;

                        }



                        HV = prev + newSub + end;

                }else

                {

                        if(temp.indexOf('#') != -1)

                        {

                                newSub = temp.substr(0,temp.indexOf('#'));

                                HV = prev + newSub;

                        }else

                        {

                                newSub = temp;

                                HV = prev + newSub;

                        }

                }

        }



        return(HV);

}



return("");

}

<!--end brand.com customizations-->



function dcsVar(){

	var dCurrent=new Date();

	WT.tz=(dCurrent.getTimezoneOffset()/60*-1)||"0";

	WT.bh=dCurrent.getHours()||"0";

	WT.ul=navigator.appName=="Netscape"?navigator.language:navigator.userLanguage;

	if (typeof(screen)=="object"){

		WT.cd=navigator.appName=="Netscape"?screen.pixelDepth:screen.colorDepth;

		WT.sr=screen.width+"x"+screen.height;

	}

	if (typeof(navigator.javaEnabled())=="boolean"){

		WT.jo=navigator.javaEnabled()?"Yes":"No";

	}

	if (document.title){

		if (window.RegExp){

			var tire=new RegExp("^"+window.location.protocol+"//"+window.location.hostname+"\\s-\\s");

			WT.ti=document.title.replace(tire,"");

		}

		else{

			WT.ti=document.title;

		}

	}

	WT.js="Yes";

	WT.jv=dcsJV();

	if (document.body&&document.body.addBehavior){

		document.body.addBehavior("#default#clientCaps");

		WT.ct=document.body.connectionType||"unknown";

		document.body.addBehavior("#default#homePage");

		WT.hp=document.body.isHomePage(location.href)?"1":"0";

	}

	else{

		WT.ct="unknown";

	}

	if (document.all){

		WT.bs=document.body?document.body.offsetWidth+"x"+document.body.offsetHeight:"unknown";

	}

	else{

		WT.bs=window.innerWidth+"x"+window.innerHeight;

	}

	WT.fi="No";

	if (window.ActiveXObject){

		for(var i=10;i>0;i--){

			try{

				var flash = new ActiveXObject("ShockwaveFlash.ShockwaveFlash."+i);

				WT.fi="Yes";

				WT.fv=i+".0";

				break;

			}

			catch(e){

			}

		}

	}

	else if (navigator.plugins&&navigator.plugins.length){

		for (var i=0;i<navigator.plugins.length;i++){

			if (navigator.plugins[i].name.indexOf('Shockwave Flash')!=-1){

				WT.fi="Yes";

				WT.fv=navigator.plugins[i].description.split(" ")[2];

				break;

			}

		}

	}

	if (dcsInit.i18n){

		if (typeof(document.defaultCharset)=="string"){

			WT.le=document.defaultCharset;

		}

		else if (typeof(document.characterSet)=="string"){

			WT.le=document.characterSet;

		}

		else{

			WT.le="unknown";

		}

	}

	WT.tv="1.1.1";

//	WT.sp="@@SPLITVALUE@@";

	WT.dl="0";

	DCS.dcsdat=dCurrent.getTime();

	DCS.dcssip=window.location.hostname;

	DCS.dcsuri=window.location.pathname;

	WT.es=DCS.dcssip+DCS.dcsuri;

	if (window.location.search){

		DCS.dcsqry=window.location.search;

		if (dcsInit.qp.length>0){

			for (var i=0;i<dcsInit.qp.length;i++){

				var pos=DCS.dcsqry.indexOf(dcsInit.qp[i]);

				if (pos!=-1){

					var front=DCS.dcsqry.substring(0,pos);

					var end=DCS.dcsqry.substring(pos+dcsInit.qp[i].length,DCS.dcsqry.length);

					DCS.dcsqry=front+end;

				}

			}

		}

	}

	 if ((window.document.referrer!="")&&(window.document.referrer!="-"))

	 {

            if (!(navigator.appName=="Microsoft Internet Explorer"&&parseInt(navigator.appVersion)<4)){

                  DCS.dcsref=window.document.referrer;

            }

      }

}

function dcsA(N,V){

	if (dcsInit.i18n&&(dcsInit.exre!="")&&!dcsInit.exre.test(N)){

		if (N=="dcsqry"){

			var newV="";

			var params=V.substring(1).split("&");

			for (var i=0;i<params.length;i++){

				var pair=params[i];

				var pos=pair.indexOf("=");

				if (pos!=-1){

					var key=pair.substring(0,pos);

					var val=pair.substring(pos+1);

					if (i!=0){

						newV+="&";

					}

					newV+=key+"="+dcsEncode(val);

				}

			}

			V=V.substring(0,1)+newV;

		}

		else{

			V=dcsEncode(V);

		}

	}

	return "&"+N+"="+dcsEscape(V, dcsInit.re);

}

function dcsEscape(S, REL){

	if (REL!=""){

		S=S.toString();

		for (var R in REL){

			S=S.replace(REL[R],R);

		}

		return S;

	}

	else{

		return escape(S);

	}

}

function dcsEncode(S){

	return (typeof(encodeURIComponent)=="function")?encodeURIComponent(S):escape(S);

}

function dcsCreateImage(dcsSrc){

	if (document.images){

		dcsInit.images[dcsInit.index]=new Image;

		dcsInit.images[dcsInit.index].src=dcsSrc;

		dcsInit.index++;

	}

	else{

		document.write('<IMG ALT="" BORDER="0" NAME="DCSIMG" WIDTH="1" HEIGHT="1" SRC="'+dcsSrc+'">');

	}

}

function dcsMeta(){

	var elems;

	if (document.all){

		elems=document.all.tags("meta");

	}

	else if (document.documentElement){

		elems=document.getElementsByTagName("meta");

	}

	if (typeof(elems)!="undefined"){

		var length=elems.length;

		for (var i=0;i<length;i++){

			var name=elems.item(i).name;

			var content=elems.item(i).content;

			var equiv=elems.item(i).httpEquiv;

			if (name.length>0){

				if (name.indexOf("WT.")==0){

					WT[name.substring(3)]=content;

				}

				else if (name.indexOf("DCSext.")==0){

					DCSext[name.substring(7)]=content;

				}

				else if (name.indexOf("DCS.")==0){

					DCS[name.substring(4)]=content;

				}

			}

		}

	}

}

function dcsTag(){

	if (document.cookie.indexOf("WTLOPTOUT=")!=-1){

		return;

	}

	var P="http"+(window.location.protocol.indexOf('https:')==0?'s':'')+"://"+dcsInit.domain+(dcsInit.dcsid==""?'':'/'+dcsInit.dcsid)+"/dcs.gif?";

	if (dcsInit.i18n){

		WT.dep="";

	}

	for (var N in DCS){

		if (DCS[N]){

			P+=dcsA(N,DCS[N]);

		}

	}

	var keys=["co_f","vt_sid","vt_f_tlv"];

	for (var i=0;i<keys.length;i++){

		var key=keys[i];

		if (WT[key]){

			P+=dcsA("WT."+key,WT[key]);

			delete WT[key];

		}

	}

	for (N in WT){

		if (WT[N]){

			P+=dcsA("WT."+N,WT[N]);

		}

	}

	for (N in DCSext){

		if (DCSext[N]){

			if (dcsInit.i18n){

				WT.dep=(WT.dep.length==0)?N:(WT.dep+";"+N);

			}

			P+=dcsA(N,DCSext[N]);

		}

	}

	if (dcsInit.i18n&&(WT.dep.length>0)){

		P+=dcsA("WT.dep",WT.dep);

	}

	if (P.length>2048&&navigator.userAgent.indexOf('MSIE')>=0){

		P=P.substring(0,2040)+"&WT.tu=1";

	}

	dcsCreateImage(P);

	WT.ad="";

	//Run dcsCleanUp to clear custom page-level tags. Excluded Hilton global parameters:  WT.z_brand, WT.dcsvid and DCS.dcsaut.

  	dcsCleanUp("WT.co_f",WT.co_f,"WT.vt_sid",WT.vt_sid,"WT.z_brand",WT.z_brand,"DCS.dcsaut",DCS.dcsaut,"WT.dcsvid",WT.dcsvid);

}

function dcsJV(){

	var agt=navigator.userAgent.toLowerCase();

	var major=parseInt(navigator.appVersion);

	var mac=(agt.indexOf("mac")!=-1);

	var ff=(agt.indexOf("firefox")!=-1);

	var ff0=(agt.indexOf("firefox/0.")!=-1);

	var ff10=(agt.indexOf("firefox/1.0")!=-1);

	var ff15=(agt.indexOf("firefox/1.5")!=-1);

	var ff20=(agt.indexOf("firefox/2.0")!=-1);

	var ff3up=(ff&&!ff0&&!ff10&!ff15&!ff20);

	var nn=(!ff&&(agt.indexOf("mozilla")!=-1)&&(agt.indexOf("compatible")==-1));

	var nn4=(nn&&(major==4));

	var nn6up=(nn&&(major>=5));

	var ie=((agt.indexOf("msie")!=-1)&&(agt.indexOf("opera")==-1));

	var ie4=(ie&&(major==4)&&(agt.indexOf("msie 4")!=-1));

	var ie5up=(ie&&!ie4);

	var op=(agt.indexOf("opera")!=-1);

	var op5=(agt.indexOf("opera 5")!=-1||agt.indexOf("opera/5")!=-1);

	var op6=(agt.indexOf("opera 6")!=-1||agt.indexOf("opera/6")!=-1);

	var op7up=(op&&!op5&&!op6);

	var jv="1.1";

	if (ff3up){

		jv="1.8";

	}

	else if (ff20){

		jv="1.7";

	}

	else if (ff15){

		jv="1.6";

	}

	else if (ff0||ff10||nn6up||op7up){

		jv="1.5";

	}

	else if ((mac&&ie5up)||op6){

		jv="1.4";

	}

	else if (ie5up||nn4||op5){

		jv="1.3";

	}

	else if (ie4){

		jv="1.2";

	}

	return jv;

}

function dcsFunc(func){

	if (typeof(window[func])=="function"){

		window[func]();

	}

}



if (dcsInit.enabled){

    dcsVar();

    dcsMeta();

    

// WT Modification - add hilton customixations - 3/3/2010 Clark

    hilton_customizations();

// WT Modification to Base Tag - Dec 28 2008 add WT.mc_ev line

    WT.mc_ev=dcsCQP();

    dcsFunc("dcsAdv");

    dcsTag();

}

