// Tracking
function tsc_track(obj,ch,typ,ivwtopic){
	var jetzt = new Date();
	var timediff=jetzt.getTime() - load.getTime();
	var fn;
    var buf = new Image();
    var now = new Date();
    var src = location.pathname;
    var q = tsc_urldecode(location.search); if (q != '') q='&' + q.substring(1);
	if (q == '' && location.hostname.indexOf('themen')>-1 && src.indexOf('news')>-1) q='q='+src.substring(6);
	var splitx = q.split("&");
    var t = (arguments.length > 2) ? typ : 'c'; // actual class of the call; 'c[lick]' as default, opposed to 'i[nfo]'
    var loc = '';
	var rang = '';
    var rank = '';
	csmodul="";
	var q_encode="";
    var c = ch.split("_");
	
	for(var i=0;i<splitx.length;i++){
		if(splitx[i].substring(0,2)=="q=")splitx[i]="q="+escape(splitx[i].substring(2));
		if(splitx[i].substring(0,9)=="encQuery=")splitx[i]="encQuery="+escape(splitx[i].substring(9));
		q_encode+="&"+splitx[i];
	}
	q=q_encode;
    ch = c[0];
	if(ch=="p4pviewonly"){
		ch="p4pview";
		q += '&scope=noresults';
	}
	if(ch=="p4ponly"){
		ch="p4p";
		q += '&scope=noresults';
	}
	if(t=='c')q += '&timediff='+timediff;
    if(c.length>1) {
		if(t=='c')rang='&rang='+c[1];
		if(ch=="p4p"||ch=="p4p-adprom"){
			rank=c[1];
			var target=(obj.title);
			if(target!="")q += '&target='+target;
		}
		else {
			loc = '_'+c[1];
		}
		if(ch=="p4pview" && c[1]!="")csmodul='&csmodul='+c[1];
    }
    if (arguments.length > 3) ivw(ivwtopic);        // special extra call

    if (q.indexOf('&mandant=')==-1) q += '&mandant=toi';
	if (q.indexOf('&context=')==-1 && ch=='tpc') q += '&context=hub'; // special hub
	else if (q.indexOf('&context=')==-1) q += '&context=static'; // no original context => build one named 'static'
	if (location.hostname=='themen.t-online-business.de') q += '&ptl=busiallg'; // special busi-hub
	else if (location.hostname=='themen.fussball.de') q += '&ptl=fussball'; // special fussball-hub
    switch (t) {
        case 'i':
            switch (ch) {
                    // special case
                case 'noresult':
                    fn = 'noresult.js';
                    break;
                // standard cases
                default:
                    fn = 'stats.js';
            }
            break;
        default:
            q = q.replace(/&context=/, '&xcontext=');   // mod. query for these
            if (q.indexOf('&url=')==-1 && (typeof obj.href != 'undefined')) q += '&url=' + tsc_urlencode(obj.href);    // click but no target-url given => get from href (if caller got it)
            // build source dep. on caller; NOTE: no loc yet for nonresults!
            if (src.indexOf('/startseite_de')>-1)
                q += '&source=startseite';
            else if (src.indexOf('/Hilfe')>-1)
              q += '&source=hilfeseite';
            else
                q += '&source=ergebnisseite' + loc;
            switch (ch) {
                // special promotion click cases, not treated as redirs
                case 'tbdl':
                case 'pwd':
                    q += '&context=promotion';
                    fn = 'stats.js';
                    break;
                // ls case
                case 'ls':
                    q += '&context=ls_feed';
                    fn = 'stats.js';
                    break;
                // standard cases
                default:
                    q += '&context=redir';
                    fn = 'redir.js';
            }
    }
	//if cs cookie add param cs
	if(ch.substring(0,3)=="s-v")ch="c"+ch;
	// special handling for bbs mod variante
	if(typeof param_csv=="string"){
		cs_variante=param_csv;
	}
	var cs=(cs_variante != 999)?'&cs=variante'+cs_variante+'&more=variante'+cs_variante:'';
	//if(cs_variante == 'x')cs='&cv=variante'+cs_variante;
	//alert('Channel: '+ch+'\nTrack: '+t+'\nq: '+q);
	//if sid cookie add param sid
	var sid=(sid_cookie != '')?'&sid='+sid_cookie:'';
	if(ch=='sid') q=str_replace ('mandant=toi', 'mandant=toi_sid', q);
	if(ch=='cs-v0c-translate-res') ch='www'; //temp. fix for statistics
	if(cs_variante=='bi')ch+='&bidcs=on';
    buf.src = (rank=='') ? '/toi/html/de/css/'+fn +'?track='+t +'&tstamp='+ now.valueOf() +'&src='+src +'&channel='+ch +q+cs+sid+rang+csmodul : '/toi/html/de/css/'+fn +'?track='+t +'&tstamp='+ now.valueOf() +'&src='+src +'&channel='+ch +q+"&rank="+rank+cs+sid+rang+csmodul;
}

// Event Stuff
function tsc_addEv(obj,et,f) {
  if (obj.addEventListener)
    obj.addEventListener(et,f,false);
  else if (obj.attachEvent) {
    obj['eH'+et+f] = f;
    obj[et+f] = function(){obj['eH'+et+f](event);}
    obj.attachEvent('on'+et,obj[et+f]);
    delete obj;
  }
}
function tsc_remEv(obj,et,f) {
  if (obj.removeEventListener)
    obj.removeEventListener(et,f,false);
  else if (obj.detachEvent) {
    obj.detachEvent('on'+et,obj[et+f]);
    obj[et+f] = null;
    obj['eH'+et+f] = null;
  }
} 
// click events
function tsc_clickH(e) {
  e = (e) ? e : ((event) ? event : null);
  if (e) {
    var el = (e.target) ? e.target : ((e.srcElement) ? e.srcElement : null);
    if (el && el.className.indexOf("noclick")<0) {
      if (el.tagName!='A' && el.tagName!='AREA')
        el = el.parentNode;
	  if (el.tagName!='A' && el.tagName!='AREA')
        el = el.parentNode;
      if (el && el.id && el.href) {
        var c = el.id.split('.'); // split into parts, acc. to schema 'tscc.<classname>.[...]'
        if (c.length > 2 && c[0]=='tscc') {
          if(c[1]=='') c[1]='generic';	// give empty ones a name...
		  if(c[2]!='') c[1]=c[1]+"_"+c[2];	// add rank...
		  //alert("ClickEvent\nc[1]: "+c[1]);
          tsc_track(el, c[1]);    // simple direct call for now, using <classname> as channel
        }
      }
	  if(document.getElementById('tsc_dd1i'))tsc_header_dd_hide(); //hide dropdown
    }
  }
} 


// ticker specific
var pixtxt=new Array(), start=0;
	var mpixtxt=new Array(), start=0;
	var google_ad_client = "pub-8430527671881951";
	//var google_ad_slot = "<?php echo $_cfg["ad_slot_hor"]; ?>";
	var google_ad_width = "420";
	var google_ad_height = "60";
	var ttcatstr = "";
	var exp = new Date();
	var einJahr = exp.getTime() + (365 * 24 * 60 * 60 * 1000);
	exp.setTime(einJahr);
	if(document.cookie)
	{
		var liste = document.cookie.split("; ");
		for(i=0; i<liste.length; i++)
		{
			if(liste[i].split("=")[0] == 'ttcats')
				ttcatstr = liste[i].split("=")[1];
		}
		// alert(ttcatstr)
		ttcatstr=ttcatstr.replace(/,viewmy/i, "");
		ttcatstr=ttcatstr.replace(/,viewall/i, "");
		ttcatstr=ttcatstr.replace(/null/i, "");
		// alert(ttcatstr)
	}
	// refresh cookie, delete viewhat
	// if(ttcatstr!=null && ttcatstr!="")
		document.cookie = "ttcats="+ttcatstr+";expires="+exp.toGMTString()+";path=/;";

	function tsc_check_hubsrch(v){
		if(v.q.value==''||v.q.value=='Suchbegriff eingeben'){
			self.location.href='/';
			return false;
		} else {
			return true;
		}
	}
	function hideInfo() {
		document.getElementById("viewer").style.display="none";
		document.getElementById("dort").style.display="none";
	}
	function viewInfo(num,pix) {
		// alert(document.getElementById(pix+num).offsetTop +" höhe: "+document.getElementById(pix+num).offsetHeight )
		var oben=document.getElementById(pix+num).offsetTop+document.getElementById(pix+num).offsetHeight;
		var links=document.getElementById(pix+num).offsetLeft;
		var linksstat=document.getElementById(pix+"1").offsetLeft;
		if(document.getElementById(pix+'1').offsetTop <100)oben+=170; // IE
		if(navigator.appName == 'Microsoft Internet Explorer' && navigator.appVersion.search(/MSIE 8.0/) == -1)
		{
			links += 430;
			linksstat += 430;
		}
		oben-=9;
		if(pix && pix == 'pix')
			var txt="<div style='font-weight:bold;'>"+pixtxt[num][0]+"</div><div style='font-size:11px;'>"+pixtxt[num][1]+"</div><div style='color:#999;'>"+pixtxt[num][2]+"</div>";
		else
			var txt="<div style='font-weight:bold;'>"+mpixtxt[num][0]+"</div><div style='font-size:11px;'>"+mpixtxt[num][1]+"</div><div style='color:#999;'>"+mpixtxt[num][2]+"</div>";
		document.getElementById("viewer_in").innerHTML=txt.replace(/&amp;#34;/g, "&quot;");
		document.getElementById("viewer").style.left=(linksstat)+"px";
		document.getElementById("viewer").style.top=(oben+9)+"px";
		document.getElementById("dort").style.top=(oben)+"px";
		document.getElementById("dort").style.left=(links+(document.getElementById(pix+num).offsetWidth)/2-6)+"px";    
		document.getElementById("viewer").style.display="block";
		document.getElementById("dort").style.display="block";
	}
	
	function viewInfo_old(num) {
		var oben=document.getElementById("pix"+num).offsetTop+document.getElementById("pix"+num).offsetHeight;
		var links=document.getElementById("pix"+num).offsetLeft;
		var linksstat=document.getElementById("pix1").offsetLeft;
		var txt="<div style='color:#000;font-weight:bold;'>"+pixtxt[num][0]+"</div>"+pixtxt[num][1]+"<div style='color:#999;'>"+pixtxt[num][2]+"</div>";
		document.getElementById("viewer").innerHTML=txt.replace(/&amp;#34;/g, "&quot;");
		document.getElementById("viewer").style.left="623px";
		document.getElementById("viewer").style.left=(linksstat)+"px";
		document.getElementById("viewer").style.top=(oben+9)+"px";
		document.getElementById("dort").style.top=(oben)+"px";
		document.getElementById("dort").style.left=(links+(document.getElementById("pix"+num).offsetWidth)/2-6)+"px";
		document.getElementById("viewer").style.display="block";
		document.getElementById("dort").style.display="block";
	}
	
	function gogo(viewwhat,link) {
		// if(ttcatstr!=null && ttcatstr!="")
		document.cookie = (ttcatstr!=null)?"ttcats="+ttcatstr+","+viewwhat+";expires="+exp.toGMTString()+";path=/;":"ttcats=,"+viewwhat+";expires="+exp.toGMTString()+";path=/;";
		self.location.href=link;
	}
function showCats() {
		if(document.getElementById("showcats"))document.getElementById("showcats").style.display = 'none';
		if(document.getElementById("hidecats"))document.getElementById("hidecats").style.display = 'inline';   
		if(document.getElementById("personalizer"))document.getElementById("personalizer").style.display = 'inline';
		document.cookie = "dispcats=true;expires="+exp.toGMTString()+";path=/;";
	}
	
	function hideCats() {
		if(document.getElementById("showcats"))document.getElementById("showcats").style.display = 'inline';
		if(document.getElementById("hidecats"))document.getElementById("hidecats").style.display = 'none';   
		if(document.getElementById("personalizer"))document.getElementById("personalizer").style.display = 'none';
		document.cookie = "dispcats=false;expires="+exp.toGMTString()+";path=/;";
	}
	
	function saveCategories() {
		var ttcats = new Array();
		
		if(document.getElementById("auto").checked)
			ttcats.push('auto');
		if(document.getElementById("bundesliga").checked)
			ttcats.push('bundesliga');
		if(document.getElementById("computer").checked)
			ttcats.push('computer');
		if(document.getElementById("nachrichten").checked)
			ttcats.push('nachrichten');
		if(document.getElementById("spiele").checked)
			ttcats.push('spiele');
		if(document.getElementById("sport").checked)
			ttcats.push('sport');
		if(document.getElementById("unterhaltung").checked)
			ttcats.push('unterhaltung');
		if(document.getElementById("wirtschaft").checked)
			ttcats.push('wirtschaft');
		if(document.getElementById("eltern").checked)
			ttcats.push('eltern');
		if(document.getElementById("lifestyle").checked)
			ttcats.push('lifestyle');
		if(document.getElementById("reisen").checked)
			ttcats.push('reisen');
		document.cookie = "ttcats="+ttcats.join(",")+";expires="+exp.toGMTString()+";path=/;";
		window.location.href = window.location;
	}
	
	function selectAllCategories() {
		if(!document.getElementById("alle").checked)
		{
			document.getElementById("auto").checked = false;
			document.getElementById("bundesliga").checked = false;
			document.getElementById("computer").checked = false;
			document.getElementById("nachrichten").checked = false;
			document.getElementById("spiele").checked = false;
			document.getElementById("sport").checked = false;
			document.getElementById("unterhaltung").checked = false;
			document.getElementById("wirtschaft").checked = false;
			document.getElementById("eltern").checked = false;
			document.getElementById("lifestyle").checked = false;
			document.getElementById("reisen").checked = false;
		}
		else
		{
			document.getElementById("auto").checked = true;
			document.getElementById("bundesliga").checked = true;
			document.getElementById("computer").checked = true;
			document.getElementById("nachrichten").checked = true;
			document.getElementById("spiele").checked = true;
			document.getElementById("sport").checked = true;
			document.getElementById("unterhaltung").checked = true;
			document.getElementById("wirtschaft").checked = true;
			document.getElementById("eltern").checked = true;
			document.getElementById("lifestyle").checked = true;
			document.getElementById("reisen").checked = true;
		}
	}
	
	function setHideShowLink() {
		var dispcatstr = null;
		if(document.cookie)
			 {
				 var liste = document.cookie.split("; ");
				 for(i=0; i<liste.length; i++)
				 {
					 if(liste[i].split("=")[0] == 'dispcats')
					dispcatstr = liste[i].split("=")[1];
				 }
			 }
			if(dispcatstr != null && dispcatstr == 'false')
				hideCats();
			else
				showCats();            
	}
	function initPersonalizer() {
		setHideShowLink();
	}
	function doIt(mode){
		start+=(start==0)?25:25;
		var url="/to/themen/?prefhost=unknown&mandant=toi&device=html&portallanguage=de&userlanguage=de&context=top-hub&inc=a&ptl=nachrichten&q=*&q_org=*&exip=unknown&filter=nachrichten&top_start="+start+"&mode="+mode;
		//read cookie 
		var ttcats = new Array();
		//append cookie
		if(ttcatstr != null && ttcatstr!="")
			url += '&ttcats=' + ttcatstr;
		try
		{
			var req = new XMLHttpRequest();
				}
				catch (ms)
				{
					try
					{
					  req = new ActiveXObject("Msxml2.XMLHTTP");
					} 
			catch (nonms)
			{
				try
				{
					      req = new ActiveXObject("Microsoft.XMLHTTP");
				} 
				catch (failed)
				{
					req = null;
				}
			}
		}

		if (req == null) alert("Error creating request object!");
		req.open("GET",url, true);
		//Beim abschliessen des request wird diese Funktion ausgeführt
		req.onreadystatechange = function()  {
			switch(req.readyState) 
			{
				case 4:
					if(req.status!=200) 
					{
					  // alert("Fehler:"+req.status); 
					          }
					          else
					          {    
					              // alert(req.responseText);
					  // alert(obj.id);
					  var Matches = eval('(' + req.responseText + ')');
					  // alert(Matches)
					  var all_suggests="";
					  var mein_suggests="";
					  var anz=Matches.length-1;
					  
					  for(var i=1;i<anz && i<100;i++)
					  {
					    if(Matches[i][0] == 'all')
					    {
					      all_suggests+='<div class="tsc_res"><div class="tsc_rescore"><h2 class="tsc_restitle"><a id="tscc.top-hub.'+i+'.title" href="'+Matches[i][5]+'" class="tsc_restitle" target="_blank">'+Matches[i][1].replace(/&amp;#34;/g, "&quot;")+'</a></h2>';
					      all_suggests+='<span class="tsc_date tsc_block">'+Matches[i][2]+'</span>';
					      all_suggests+='<span class="tsc_resbody tsc_block">'+Matches[i][3].replace(/&amp;#34;/g, "&quot;")+'...';
								all_suggests+=' <a id="tscc.top-hub.'+i+'.more" href="'+Matches[i][5]+'" target="_blank">mehr</a></span>';
					      // all_suggests+='<span class="tsc_resurl">'+Matches[i][4]+'</span></div></div>';
								all_suggests+='</div></div>';
					    }
					    else
					    {
					      mein_suggests+='<div class="tsc_res"><div class="tsc_rescore"><h2 class="tsc_restitle"><a id="tscc.top-hub.'+i+'.title" href="'+Matches[i][5]+'" class="tsc_restitle" target="_blank">'+Matches[i][1].replace(/&amp;#34;/g, "&quot;")+'</a></h2>';
					      mein_suggests+='<span class="tsc_date tsc_block">'+Matches[i][2]+'</span>';
					      mein_suggests+='<span class="tsc_resbody tsc_block">'+Matches[i][3].replace(/&amp;#34;/g, "&quot;")+'...';
								mein_suggests+=' <a id="tscc.top-hub.'+i+'.more" href="'+Matches[i][5]+'" target="_blank">mehr</a></span>';
					      // mein_suggests+='<span class="tsc_resurl">'+Matches[i][4]+'</span></div></div>';
								mein_suggests+='</div></div>';
					    }
					  }
					  if(document.getElementById('mein_results'))document.getElementById('mein_results').innerHTML+=mein_suggests;
					  if(document.getElementById('all_results'))document.getElementById('all_results').innerHTML+=all_suggests;
					}
					break;
				default:
					return false;
					break;     
			}
		}
		req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
		req.send(null);
	}
	function doIt2(obj,key,solr){
	// q+=String.fromCharCode(k).toLowerCase();
	var q=obj.value; //+String.fromCharCode(k).toLowerCase();
	actq=q;
	document.getElementById('sugg').innerHTML="";
	if(q.length<3)hideIt();
	else {
		try{
					          req = new XMLHttpRequest();
				}
				catch (ms){
					  try{
					              req = new ActiveXObject("Msxml2.XMLHTTP");
					  } 
			catch (nonms){
				try{
					                  req = new ActiveXObject("Microsoft.XMLHTTP");
				} 
				catch (failed){
					req = null;
				}
			}  
		}

		if (req == null) alert("Error creating request object!");
		req.open("GET", '/toi/html/de/themen/hpc/suggest.php?solr='+solr+'&q='+q, true);
				  
			//Beim abschliessen des request wird diese Funktion ausgeführt
		req.onreadystatechange = function(){
			//alert(document.getElementById('qinput').offsetTop)
			document.getElementById('sugg').style.display="block";
			switch(req.readyState) {
				case 4:
					if(req.status!=200) {
						// alert("Fehler:"+req.status); 
					             }else{    
					                  // alert(req.responseText);
							// alert(obj.id);
						var Matches = eval('(' + req.responseText + ')');
						var suggests="";
						var anz=Matches[1].length;
						for(var i=0;i<anz && i<100;i++)
						{
							suggests+="<a href='"+Matches[3][i]+"' id='suggest_"+(i+1)+"' onmouseover='suggover("+(i+1)+")' class='passugg' onmousedown='self.location.href=this.href;return false;'>"+Matches[1][i]+"</a> "
						}
						document.getElementById('sugg').style.height=(anz<10)?eval(anz*20)+"px":"200px";
						document.getElementById('sugg').innerHTML=suggests;
					}
					break;
				default:
					return false;
					break;     
			}
		}
		req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
		req.send(null);
	}
}
function suggover(num) {
	if(document.getElementById('suggest_'+(sugg_act)))document.getElementById('suggest_'+sugg_act).className="passugg";
	document.getElementById('suggest_'+num).className="actsugg";
	sugg_act=num;
}
var sugg_act = 0;
var actkey=0;
var actq="";
function hideIt(){
	document.getElementById('sugg').style.display="none";
	document.getElementById('sugg').scrollTop=0;
	sugg_act = 0;
}
function tsc_init() {
 var f=document.tsc_hpcsrch;
 f.q.focus();

 var qinputWidth = 0;
 var leftpos = 0;
 var toppos = 0;
 if(document.getElementById('qinput') != null) {
	 leftpos=document.getElementById('qinput').offsetLeft;
	 qinputWidth=document.getElementById('qinput').offsetWidth;
	 toppos=document.getElementById('qinput').offsetTop + document.getElementById('qinput').offsetHeight
 }
 if(toppos<50){toppos+=21;leftpos+=5;}
 document.getElementById('sugg').style.top=toppos+document.getElementById('tsc_page').offsetTop-4+"px";
 document.getElementById('sugg').style.left=(leftpos-0)+document.getElementById('tsc_page').offsetLeft+"px";
 document.getElementById('sugg').style.width=(qinputWidth-2)+"px";
}

// register click handler with document
tsc_addEv(document,'click',tsc_clickH);

	
function str_replace (search, replace, subject)
{
  var result = "";
  var  oldi = 0;
  for (i = subject.indexOf (search)
     ; i > -1
     ; i = subject.indexOf (search, i))
  {
    result += subject.substring (oldi, i);
    result += replace;
    i += search.length;
    oldi = i;
  }
  return result + subject.substring (oldi, subject.length);
}

function tsc_toggle(num) {
		if(num<2) {
			var x1 = (num==1)?"block":"none";
			var x0 = (num==0)?"block":"none";
			document.getElementById('meins_outer').style.display=x1;
			document.getElementById('alles_outer').style.display=x0;
			if(num==0){
				var buf1 = new Image();
				buf1.src = 'http://toi.ivwbox.de/cgi-bin/ivw/CP/40010000;/Startseite/Thementicker/Alle-Themen.html?r='+escape(document.referrer)+'&d='+Date.parse(new Date());
			}
			else if(num==1){
				var buf1 = new Image();
				buf1.src = 'http://toi.ivwbox.de/cgi-bin/ivw/CP/40010000;/Startseite/Thementicker/Meine-Themen.html?r='+escape(document.referrer)+'&d='+Date.parse(new Date());
			}
		}
		else if(num==2) {
			// self.location.href="http://<?php echo BHOST; ?>/toi/html/de/themen/top.php?mode=best";
			self.location.href="/beliebte-themen";
		}
		else if(num==3) {
			// self.location.href="http://<?php echo BHOST; ?>/toi/html/de/themen/top.php?mode=a-z";
			self.location.href="/themen-a-z/uebersicht";
		}
	}

