var gImages=new Array;
var gIndex=0;
var DCS=new Object();
var WT=new Object();
var CO=new Object(); //Array für Cornlesen-spezifische Parameter
var DCSext=new Object();
var gDomain="www07.cornelsen.de";
var gDcsId="";
var lastTimestamp="";
var lastDownloadUrl="";

if (gDcsId=="")	{var gTagPath=gDomain;}
else		{var gTagPath=gDomain+"/"+gDcsId;}

// Diese Funktion kann zum Messen von DLs mit den Metadaten des DL verwendet werden
function co_download(download_url, dcs_url, dcs_parameter)
{
	var letzter_slash = download_url.lastIndexOf("/");
	var dateiname= download_url.substring(letzter_slash);
	
	var dCurrent = new Date(); //Zeitwert für Cache Prevention
	
	//Ändern des Tracking Images zum Loggen des Downloads
	//Anhängen Cornlesen-spezifischer Parameter an die URL String in dcs_parameter
	dcsCreateImage('http://www07.cornelsen.de/dcs.gif?dcsuri='+escape(dcs_url+dateiname)+'&dcsqry='+dcs_parameter+'&dcsref='+escape(window.location.pathname)+'&dcsdat='+escape(dCurrent.getTime()));
	Window.open(download_url); //Öffnen des Downloads
}

//Funktion zum Tracken von Downloads, Danet GmbH, v1.0, 18.11.2003
//Wird ein <A> über Event-Handler aufgerufen, Beispiel:
//<a href="wrctrial.exe" onMouseUp="downloadTrack(this.href)">Download Link</A>

function downloadTrack(download_url, dcs_url, dcs_parameter)
{
	
	//URL zerlegen in Domain und Pfad	
	var url_stripped = download_url.substring(download_url.indexOf('//')+2,download_url.length); // abschnelden des http://
	var url_hostname = url_stripped.substring(0,url_stripped.indexOf('/'));  		     // separieren der Domain
	var url_path = url_stripped.substring(url_stripped.indexOf('/'),url_stripped.length);	     // separieren des Pfads
	
	//var letzter_slash = download_url.lastIndexOf("/");//var dateiname= download_url.substring(letzter_slash);
	var dateiname= download_url.substring(download_url.lastIndexOf("/"));
	
	//DCS Parameter setzen
	var DCS_DL=new Object();
	DCS_DL.dcsuri=url_path;
	DCS_DL.dcssip=url_hostname;
//	DCS.DCSSIP="www.cornelsen-teachweb.de";
//	DCS_DL.dcssip=window.location.hostname;
	DCS_DL.dcsref=window.location.href;
	
	var d_DLCurrent=new Date();
	if (lastTimestamp==d_DLCurrent){alert (escape(d_DLCurrent)+"-"+escape(lastTimestamp))};
	//if (lastTimestamp!=d_DLCurrent&&lastDownloadUrl=)
	DCS_DL.dcsdat=d_DLCurrent.getTime();
	
	
	//Ab hier entnommen aus dcsTag() mit eigenen Variablen P_DL und DCS_DL
	var P_DL="http"+(window.location.protocol.indexOf('https:')==0?'s':'')+"://"+gDomain+(gDcsId==""?'':'/'+gDcsId)+"/dcs.gif?";

	for (N in DCS_DL){
		if (DCS_DL[N]) {
			P_DL+=A(N,DCS_DL[N]);
		}
	}
	// anängen der Cornelsen Parameter
	P_DL+= dcs_parameter;
	
	if (P_DL.length>2048&&navigator.userAgent.indexOf('MSIE')>=0){
		P_DL=P_DL.substring(0,2040)+"&WT.tu=1";
	}
	
	//COL überschreiben 
	
	dcsCreateImage('http://www07.cornelsen.de/dcs.gif?dcsuri='+escape(dcs_url+dateiname)+'&dcssip=www.cornelsen.de'+'&dcsqry='+dcs_parameter+'&dcsref='+escape(window.location.pathname)+'&dcsdat='+escape(d_DLCurrent.getTime()));
	
	//dcsCreateImage(P_DL);
	//alert(P_DL);
	lastTimestamp=d_DLCurrent;
}


function dcsVar(){
	var dCurrent=new Date();
	WT.tz=dCurrent.getTimezoneOffset()/60*-1;
	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";
	}
	//WT.ti=document.title;
	WT.js="Yes";
	if (typeof(gVersion)!="undefined"){
		WT.jv=gVersion;
	}
//	WT.sp="@@SPLITVALUE@@";

	// Bilden der Cornlesen-spezifischen URL (Onlinegruppe, Rubrik, 
//	DCS.dcsuri=window.location.pathname;
	DCS.dcsuri="/"+CO['og']+"/"+CO['br']+"/"+CO['ru']+"/"+CO['ag']+"/"+CO['vp'];

	DCS.dcsqry=window.location.search;
	if ((window.document.referrer!="")&&(window.document.referrer!="-")){
		if (!(navigator.appName=="Microsoft Internet Explorer"&&parseInt(navigator.appVersion)<4)){
			DCS.dcsref=window.document.referrer;
		}
	}
	DCS.dcssip=window.location.hostname;
//	DCS.dcssip="www.cornelsen-teachweb.de";
	DCS.dcsdat=dCurrent.getTime();
}

function A(N,V){
	var prozent=/\%25/g;
	V=escape(V);
	V=V.replace(prozent,"%");
	return "&"+N+"="+(V);
}
function dcsCreateImage(dcsSrc){
	//alert(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="'+dcsSrc+'">');
	}
}

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;
				}
				//Scannen Cornlesen-spezifischer Parameter
				else if (myMeta.name.indexOf('CO.')==0){
					CO[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(TagImage){
	var P="http"+(window.location.protocol.indexOf('https:')==0?'s':'')+"://"+TagImage+"/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]);}
	}
	//Anhängen Cornlesen-spezifischer Parameter an die URL
	for (N in CO){
		if (CO[N]) 	{P+=A("CO."+N,CO[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);
}
