//drei Zusatzfunktionen von Iraida: Referer-Übergabe, falls cgi-Variable "einstiegRef" existiert; Akamai-DCS.dcsref wird dabei überschrieben
function stripCGIArgs( str ) {
    // TODO: hier werden die cgi-parameter aus dem Ref entfernt

   if (str.indexOf('?') != -1) { 
         var dot = str.indexOf("?"); //alert('Der Ref hat EIN Fragezeichen');
         str=str.substring(0, dot) ; //alert('Der Ref HATTE ein Fragezeichen');
    }
    return str;
}

function getReferer() {
    var search = document.location.search ; 
    if ( ! search ) return stripCGIArgs(window.document.referrer) ;

    var dot = search.indexOf("einstiegRef=") ;
    
    // wenn dot < 0 ist, ist kein track-refer in den CGI args enthalten: document.referrer returnieren !
    if ( dot < 0 ) return stripCGIArgs(window.document.referrer);


    search = search.substring(dot+12) ;
    dot = search.indexOf("&") ;

    // pruefen, ob ein & rechts vom einstiegRef=... steht
    // falls ja: alles recht vom & (inklusive & ) entfernen, damit nur der einstiegRef parameter uebrig bleibt
    if ( dot >= 0 ) search = search.substring(0, dot ) ;
    
    // fuer die (unwahrscheinlichen) faelle, bei denen das obige statement einen nullstring geliefert hat, diesen abfangen    
    if ( search ) return search;

    // sehr unwahrscheinlich: search ist null. was tun ? besser, den document.referrer zurueckliefern als garnichts... 
    return stripCGIArgs(window.document.referrer);

}

function getLinkType() {
    var search = document.location.search; //alert(search +' \naus getLink Funktion' );
    if ( ! search ) return null;
    var dot = search.indexOf("linkTyp=") ;
    if ( dot < 0 ) return null;
    search = search.substring(dot+8) ;
    dot = search.indexOf("&") ;
    if ( dot >= 0 ) search = search.substring(0, dot ) ;
    return search;
}
// Ende Iraida's Funktionen


var gImages=new Array;
var gIndex=0;
var DCS=new Object();
var WT=new Object();
var DCSext=new Object();

var gDomain="statse.webtrendslive.com";
var gDcsId="dcse6689w10000kjc248royl3_6p9e";


function dcsVar(){
	var dCurrent=new Date();
	WT.tz=dCurrent.getTimezoneOffset()/60*-1;
	if (WT.tz==0){
		WT.tz="0";
	}
	WT.bh=dCurrent.getHours();
	WT.ul=navigator.appName=="Netscape"?navigator.language:navigator.userLanguage;
	if (typeof(screen)=="object"){
		WT.cd=screen.colorDepth;
		WT.sr=screen.width+"x"+screen.height;
	}
	if (typeof(navigator.javaEnabled())=="boolean"){
		WT.jo=navigator.javaEnabled()?"Yes":"No";
	}
	if (document.title){
		WT.ti=document.title;
	}
	WT.js="Yes";
	if (typeof(gVersion)!="undefined"){
		WT.jv=gVersion;
	}
	WT.sp="@@SPLITVALUE@@";

	DCS.dcsdat=dCurrent.getTime();
	DCS.dcssip=window.location.hostname;
	DCS.dcsuri=window.location.pathname;
	if (window.location.search){
		DCS.dcsqry=window.location.search;
                                //Iraida's bereinigter Referer;
                                DCS.dcsref  = getReferer() ;//alert("Iraidas-Ref="+DCS.dcsref);
	}
	if ((window.document.referrer!="")&&(window.document.referrer!="-")){
		if (!(navigator.appName=="Microsoft Internet Explorer"&&parseInt(navigator.appVersion)<4)){
			//DCS.dcsref=window.document.referrer; alert("Akamai-Ref="+DCS.dcsref);
                                                //Iraida's bereinigter Referer;
                                                DCS.dcsref  = getReferer() ; //alert("Iraidas-Ref="+DCS.dcsref);
		}
	}
}

function A(N,V){
	return "&"+N+"="+dcsEscape(V);
}

function dcsEscape(S){
	if (typeof(RE)!="undefined"){
		var retStr = new String(S);
		for (R in RE){
			retStr = retStr.replace(RE[R],R);
		}
		return retStr;
	}
	else{
		return escape(S);
	}
}

function dcsCreateImage(dcsSrc){
	if (document.images){
		gImages[gIndex]=new Image;
		gImages[gIndex].src=dcsSrc;
		gIndex++;
	}
	else{
		document.write('<IMG BORDER="0" NAME="DCSIMG" WIDTH="1" HEIGHT="1" SRC="../BMW%20WilliamsF1%20Team_files/%27%2BdcsSrc%2B%27">');
	}
}

function dcsMeta(){
	var myDocumentElements;
	if (document.all){
		myDocumentElements=document.all.tags("meta");
	}
	else if (document.documentElement){
		myDocumentElements=document.getElementsByTagName("meta");
	}
	if (typeof(myDocumentElements)!="undefined"){
		for (var i=1;i<=myDocumentElements.length;i++){
			myMeta=myDocumentElements.item(i-1);
			if (myMeta.name){
				if (myMeta.name.indexOf('WT.')==0){
					WT[myMeta.name.substring(3)]=myMeta.content;
				}
				else if (myMeta.name.indexOf('DCSext.')==0){
					DCSext[myMeta.name.substring(7)]=myMeta.content;
				}
				else if (myMeta.name.indexOf('DCS.')==0){
					DCS[myMeta.name.substring(4)]=myMeta.content;
				}
			}
		}
	}
}

function dcsTag(){
	var P="http"+(window.location.protocol.indexOf('https:')==0?'s':'')+"://"+gDomain+(gDcsId==""?'':'/'+gDcsId)+"/dcs.gif?";
	for (N in DCS){
		if (DCS[N]) {
			P+=A(N,DCS[N]);
		}
	}
	for (N in WT){
		if (WT[N]) {
			P+=A("WT."+N,WT[N]);
		}
	}
	for (N in DCSext){
		if (DCSext[N]) {
			P+=A(N,DCSext[N]);
		}
	}
	if (P.length>2048&&navigator.userAgent.indexOf('MSIE')>=0){
		P=P.substring(0,2040)+"&WT.tu=1";
	}
	dcsCreateImage(P);
//alert(P);
}

function dcsMultiTrack(){ 
for (var i=0;i<arguments.length;i++){ 
if (arguments[i].indexOf('WT.')==0){ 
WT[arguments[i].substring(3)]=arguments[i+1]; 
i++; 
} 
if (arguments[i].indexOf('DCS.')==0){ 
DCS[arguments[i].substring(4)]=arguments[i+1]; 
i++; 
} 
if (arguments[i].indexOf('DCSext.')==0){ 
DCSext[arguments[i].substring(7)]=arguments[i+1]; 
i++; 
} 
} 
var dCurrent=new Date(); 
DCS.dcsdat=dCurrent.getTime(); 
dcsTag(); 
} 


//Zusatzcode von Iraida für die LinkTyp-Übergabe
var type = getLinkType() ;
if ( type ) { DCSext.linkTyp = type; }





function dcsPrintVariables() {//diese Akamai-Fkt. dient zur Ausgabe der globalen Variablen 

    var tagVariables="\nDomain = "+gDomain; 
    tagVariables+="\nDCSId = "+gDcsId; 
     
    for (N in DCS) { 
        tagVariables+="\nDCS."+N+" = "+DCS[N];         
    } 
    for (N in WT) { 
        tagVariables+="\nWT."+N+" = "+WT[N];         
    } 
    for (N in DCSext) { 
        tagVariables+="\nDCSext."+N+" = "+DCSext[N];         
    } 
    window.alert(tagVariables); 
} 
	
