var usedRef; // speichert letzten Referrer

function setReferrer() {
  if (!(navigator.appName=="Microsoft Internet Explorer"&&parseInt(navigator.appVersion)<4)){
    usedRef = window.document.referrer;
  }  
}

function getFolder(){return thisFolder = self.location.pathname.substring(0,self.location.pathname.lastIndexOf('/')+1);}

//Typ:String, AbgehendeUrl:String und ZielUrl:String
//Teaser-Link-Tracking, welches den Namen des Teasertyps als Typ

function trackRelative(objectReference,objectTitle,keepLastReferrer){
   et_ref=usedRef; // referrer fuer tracking aus letztem Request
   if (!keepLastReferrer) {setReferrer();} // aktuellen ref. fuer naechsten request setzen
	et_pagename=objectTitle; // Name der Seite
	//et_areas="rlbmw.de"; // Bereich, von dem ein Aufruf kommt
	et_areas=et_ref; // Bereichsanalyse
	et_url=getFolder() + objectReference; // Ziel bei einem Deeplink;
	et_group=""; // Gruppierung liefert ersten Parameter der zweidimensionalen Auswertung, z.B. den Teaser
	et_eC(et); // Aufruf der Tracking Funktion
}

function trackAbsolute(objectReference,objectTitle,keepLastReferrer,edxEnabled){
  	if (!keepLastReferrer) {setReferrer();} // aktuellen ref. fuer naechsten request setzen
	et_pagename=objectTitle; // Name der Seite
	et_url=window.location.protocol+"//"+window.location.host+objectReference; 
	et_areas=et_url;
	et_group=""; // Gruppierung liefert ersten Parameter der zweidimensionalen Auswertung, z.B. den Teaser
	path = objectReference;
	//TeaserTracking, referrer enth?lt '?source='
	if(path.indexOf('?source') != -1){
		var splitted = path.split('?'); // Trennung URI und Parameter
		var queryString = splitted[1]; // Parameter der URL
		var splitted2;
		if(queryString.indexOf('&target=') != -1) {
			splitted2 = queryString.split('&target='); //Trennung Source und Target, denn wenn es Target gibt, gibt es auch Source.
			et_pagename=et_pagename+" Von: "+escape(splitted2[0].substr(7)); // source= ....
			et_pagename=et_pagename+" nach: "+escape(splitted2[1]); // target= ....
			et_group="Teaser"; // Gruppierung liefert ersten Parameter der zweidimensionalen Auswertung, z.B. den Teasertypen
			et_areas=et_ref; // Bereichsanalyse
		}
		var click_from = '';
		if (splitted2[0].lastIndexOf('/de/de/')>0){
			click_from = splitted2[0].substring(splitted2[0].lastIndexOf('/de/de/')+7, splitted2[0].lastIndexOf('.')); //Quellbezeichner startet nach /de/de/
		}else
		{
			click_from =splitted2[0].substr(7); //Quellbezeichner startet nach source=
		}
		
		var click_to = '';
		if (splitted2[1].lastIndexOf('/de/de/')>0){
			click_to = splitted2[1].substring(splitted2[1].lastIndexOf('/de/de/')+7, splitted2[1].lastIndexOf('.'));
		}
		else
		{
			click_to = splitted2[1];
		}
		var tname = escape(window.document.referrer);
		if (tname.lastIndexOf('_teaserpool')>0){
			tname=tname.substring(tname.lastIndexOf('_teaserpool')+12,tname.lastIndexOf('.'));		
		}
				
		et_group="Teaser "+tname;
		et_areas="Von "+click_from+" nach "+click_to;
		et_url="http://www.bmw.de" + splitted2[0].substr(7); 
		et_pagename=et_areas;
		var img_url = "http%3A%2F%2Fwww.bmw.de%2Fde%2F_common%2Fimg%2F1x1_trans.gif";
		et_pagename=et_areas;
		etCreateImage("http://stats.bmw.de/lnkcnt.php?et=qxgsss&url="+img_url+"&group="+et_group+"&lnkname="+et_areas);
      et_group="Quelle "+click_from;
		et_areas="Teaser "+tname+" nach "+click_to;
		et_pagename=et_areas;
		etCreateImage("http://stats.bmw.de/lnkcnt.php?et=qxgsss&url="+img_url+"&group="+et_group+"&lnkname="+et_areas);
      et_group="Ziel "+click_to;
		et_areas="Teaser "+tname+" von "+click_from;
		et_pagename=et_areas;
		etCreateImage("http://stats.bmw.de/lnkcnt.php?et=qxgsss&url="+img_url+"&group="+et_group+"&lnkname="+et_areas);
   }
	else
	{
	 	et_eC(et);
	}
}


function trackExternal(objectReference,objectTitle){
   et_ref=usedRef; // referrer fuer tracking aus letztem Request
   setReferrer(); // aktuellen ref. fuer naechsten request setzen
	et_pagename=objectTitle; // Name der Seite
	//et_areas="rlbmw.de"; // Bereich, von dem ein Aufruf kommt
	et_areas="external"; // Bereichsanalyse
	et_url="/external/" + objectReference; // Ziel 
	et_group="external"; // Gruppierung
	et_eC(et); // Aufruf der Tracking Funktion
}

function trackEDX() {
  //function will be overwritten in /it/it/highend_content_flashmovie.html
}