  // identify user agents
  var gnEbMinZIndex = 0;
  var hbx_pagename = "";
  var hbx_seg_val = "";
  
  var mac    = window.navigator.platform == "MacPPC" && navigator.appName == "Netscape" && navigator.appVersion.substring(0,1) == "4";
  var mac_ie = window.navigator.platform == "MacPPC" && navigator.userAgent.match(/MSIE/i);
  var safari = window.navigator.platform == "MacPPC" && navigator.userAgent.match(/Safari/i);
  var ie     = navigator.userAgent.match(/MSIE\s5.*/i);
  var ie4    = navigator.userAgent.match(/MSIE\s4.*/i);
  var ie5    = navigator.appVersion.match(/MSIE.+5\.0/i);
  var ie6    = navigator.userAgent.match(/MSIE\s6.*/i);
  var ie7    = navigator.userAgent.match(/MSIE\s7.*/i);  
  var op     = navigator.userAgent.indexOf('Opera') != -1;
  var ns4    = navigator.appName == "Netscape" && navigator.appVersion.substring(0,1) == "4";
  var moz    = navigator.appName == "Netscape" && navigator.appVersion.substring(0,1) > "4";
  var ns6    = navigator.userAgent.match(/Netscape6/i);
  var konq   = navigator.userAgent.match(/Konqueror/i);
  var fustyUserAgent = mac_ie || ns4 || ns6 || mac || ie4;
  var msie   = ie || ie5 || ie6;

  if(mac_ie)
    document.writeln('<link rel="stylesheet" href="/css/GEO/ie_mac.css" type="text/css" media="screen" />');

// adtag flags
  fullsize = 0;
  LeaderBoard = 0;
  promo = 0;
  halfpage = 0;
  contentad = 0;
  skyscraper = 0;
  textteaser = 0;
  textcontent = 0;
  popup = 0;
  
  var no_col_adj = 0;
  
// vars for adplace refreshing
  ad_refresh_counter = 1;
  ad_date = new Date();
  ad_timestamp = ad_date.getTime();  
  //ad_belegung = "homepage";  

//detect flash 7 plugin or active-x
  var usesActiveX = false;
  var swf7 = false;
  var swf8 = false;
  var swf9 = false;
  var swf10 = false;
  
  if (navigator.plugins.length != 0) {
    for (i=0; i<navigator.plugins.length; i++) {
      var plugDescr = navigator.plugins[i].description.toLowerCase();
      if ((plugDescr.indexOf('flash') != -1) && (plugDescr.indexOf('7.') != -1)) {
        swf7 = true;        
      } else if((plugDescr.indexOf('flash') != -1) && (plugDescr.indexOf('8.') != -1)) {
        swf8 = true;
      } else if((plugDescr.indexOf('flash') != -1) && (plugDescr.indexOf('9.') != -1)) {
        swf9 = true;
      } else if((plugDescr.indexOf('flash') != -1) && (plugDescr.indexOf('10.') != -1)) {
        swf10 = true;
      }
    }
  } else {
    usesActiveX = true;
  }

// #### resize layout for halfpage-integration ####
function resizeLayout() {
  document.getElementById("magNav").style.padding            = "0 0 3px 60px";
  document.getElementById("rubrikenAd").style.width          = "991px";
  document.getElementById("mainHeader").style.width          = "991px";
  if(ie5) document.getElementById("mainNav").style.width     = "991px"; 
  else    document.getElementById("mainNav").style.width     = "992px"; 
  document.getElementById("seperatorHalfpage").style.display = "block";
  document.getElementById("topNavHalfpage").style.display    = "block";
  document.getElementById("mainContent").style.width         = "993px";
  document.getElementById("right").style.width               = "336px";
  if(document.getElementById("issueBoxLarge")) 
    document.getElementById("issueBoxLarge").style.display   = "block";
  if(ie5) document.getElementById("footer").style.width      = "992px";
  else    document.getElementById("footer").style.width      = "991px";
  if (document.getElementById("floater")) document.getElementById("floater").style.display = "none";
  document.getElementById("gujSites").style.width            = "991px";
  document.getElementById("promoAd").style.display           = "inline";
  document.getElementById("promoAd").style.visibility        = "visible";
  //document.getElementById("promoAd").style.visibility        = "visible";
  document.getElementById("promoAd").style.width             = "336px";
  document.getElementById("promoAd").style.margin            = "0 0 10px 0";
  if(document.getElementById('issueBox'))
    document.getElementById('issueBox').style.display        = "none";
}


// submit search query for specified service
	function submitQuery(formular, query, service){
    
    if(!service)
      var service = document.forms[formular].service.options[document.forms[formular].service.options.selectedIndex].value;
    if(!query)
		  var query   = document.forms[formular].elements["q"].value;
      
		switch(service){
      case "geo":
        document.headerSearchForm.action = "/GEO/info/suche/?service=geo&q="+query;
        document.headerSearchForm.submit();
        break;
      case "geolino":
        document.headerSearchForm.action = "/GEOlino/service/suche/?service=geolino&serviceid=GEOlino&q="+query;
        document.headerSearchForm.submit();
        break;
       case "georc":
        blank_window("http://www.geo-reisecommunity.de/suche?suche="+query,"rc");
        break;
      case "presse":
        //blank_window("http://www.geo.de/GEO/static/registersuche/results.html?START=1&JBEGIN=&TEXT=" + query,"register");
        break;
      case "register":
        var jetzt = new Date();
        var reg_bis_day   = jetzt.getDate();
        var reg_bis_month = jetzt.getMonth();        
        var reg_bis_year  = jetzt.getFullYear();
        reg_bis_month     = reg_bis_month+1;
        if(reg_bis_day < 10) reg_bis_day = "0"+reg_bis_day;
        if(reg_bis_month < 10) reg_bis_month = "0"+reg_bis_month;
        reg_bis = reg_bis_day+"."+reg_bis_month+"."+reg_bis_year;
        document.headerSearchForm.action = "/GEO/info/suche/heftregister.html?q="+query+"&is_search=1&reg_von=01.01.1976&reg_bis="+reg_bis+"&sortRev=0";
        document.headerSearchForm.submit();
        break;
      case "forum":
        blank_window("/GEO/static/forum/dosearch.php?Words="+query+"&Cat=1,2,3&Forum=All_Forums&Match=And&Old=allposts&Limit=25","forum");
        break;
      case "shop":
        var popup = window.open("/search/webshop.html?q="+query,"shop","width=637,height=650,scrollbars=yes,resizable=yes,menubar=no,locationbar=no");
        popup.focus();
        break;
      case "stern":
        var popup = window.open("http://www.stern.de/search/index.html?q="+query+"&stern=1&guj=1","stern");
        popup.focus();
        break;
      case "wissen":
        var popup = window.open("http://www.wissen.de/wde/generator/wissen/services/suche/index.html?query="+query,"wissen");
        popup.focus();
        break;
    }
	}

// various popup-functions
  function openWindow(page,breite,hoehe,name){
    var popup = window.open(page,name,"width=" + breite + ",height=" + hoehe + ",scrollbars=no,resizable=yes,menubar=no,locationbar=no");
    popup.focus();
  }  
  function openScrollWindow(page,breite,hoehe,name){
    var popup = window.open(page,name,"width=" + breite + ",height=" + hoehe + ",scrollbars=yes,resizable=yes,menubar=no,locationbar=no");
    popup.focus();
  }
  function blank_window(page, target){
    var popup = window.open(page,target);
    popup.focus();
  }
  function open_leserreise(page){
		popup = window.open(page,"leserreise","width=660,height=730,scrollbars=yes,resizable=yes,menubar=no,locationbar=no,toolbar=no,left=0,top=0");
		popup.focus();
	}


  function sendArticle(headline){
    var url  = window.location.href;
    var link = url.replace(/\?.*/,"");
    window.location.href = 'mailto:?subject=GEO.de Linktipp: ' + headline + '&body=%0A' + link;
  }

  // add function  getElementsByClassName
  function getElementsByClassName(class_name) {
    var all_obj, ret_obj = new Array(), j = 0, teststr;

    if(document.all) 
      all_obj = document.all;
    else if (document.getElementsByTagName && !document.all)
      all_obj = document.getElementsByTagName("*");
      
    for(i = 0; i < all_obj.length; i++) {
      if(all_obj[i].className.indexOf(class_name)!= -1) {
        teststr = "," + all_obj[i].className.split(" ").join(",")+",";
        if(teststr.indexOf("," + class_name + ",") != -1) {
          ret_obj[j] = all_obj[i];
          j++;
        }
      }
    }
    return ret_obj;
  }

// transform  teaser layout on contentad-delivery   
  function transformTeaserLayout() {
    var teaserElement = getElementsByClassName("teaserM").length - 1;
    var teaserWidth = 573;
    var teaserMargin = "0 18px 18px 18px";   
   
    if(msie) teaserMargin = "0 0 10px 9px";
    if(ie7)  teaserMargin = "18px";
    
    document.getElementsByName("teaserImg")[teaserElement].style.display = "none";      
    getElementsByClassName("teaserM")[teaserElement].style.width = teaserWidth + "px";  
    getElementsByClassName("teaserM")[teaserElement].style.padding = "10px";  
    getElementsByClassName("teaserM")[teaserElement].style.margin = teaserMargin;  
    getElementsByClassName("teaserM")[teaserElement].style.border = "1px solid #" + catColorDark; 
  }

// display or hide the reportBox for  article comments
  function reportComment(warn_comment, comment_nr, pv, comments_pv) {
    var report_box    = document.getElementById("report"+comment_nr);
    var report_button = document.getElementById("button"+comment_nr);
    var comment_box   = document.getElementById("commentBox"+comment_nr);
    
    if(report_box) {
      comment_box.removeChild(report_box);
      report_button.style.display = "block";
    } else {
      report_button.style.display = "none";
      comment_content = comment_box.innerHTML;
      report_content = '<div class="reportBox" id="report'+comment_nr+'"><form name="notify_form'+comment_nr+'" id="notify_form'+comment_nr+'" action="#comments" method="post"><input type="hidden" name="comment_id" value="'+comment_nr+'" /><input type="hidden" name="com" value="notify" /><input type="hidden" name="p" value="'+pv+'" /><input type="hidden" name="pageview" value="'+comments_pv+'" /><strong>Beitrag mit bedenklichem Inhalt melden</strong><div class="close" title="Box schlie&szlig;en" onclick="reportComment(\''+warn_comment+'\',\''+comment_nr+'\',\''+pv+'\');">[x]</div><br class="clearFloat" /><br />Grund der Meldung (mindestens 10 Zeichen): <p id="errorMessage'+comment_nr+'" style="color:red"></p><input type="text" style="margin-left: 0px;width:350px; font-size:10px;" name="reportReason" maxlength="50" value="" onfocus="if (this.value == \'Eingabe von mindestens 10 Zeichen\') this.value=\'\'" /><br /><br /><img src="/images/GEO/kommentar/beitrag_melden.gif" width="92" height="19" onclick="checkReportComment(0, '+comment_nr+', 0, 0)" alt="Beitrag melden!" title="Beitrag melden!"/> </form></div>';
      comment_box.innerHTML = comment_content+report_content;
    }
  }
  
  function checkReportComment(warn_comment, comment_nr, pv, comments_pv) {
	
	textlaenge = document.getElementById("notify_form"+comment_nr).reportReason.value
	textlaenge = textlaenge.length;
	if (textlaenge < 10)
	document.getElementById("errorMessage"+comment_nr).innerHTML = "Bitte geben Sie mindestens 10 Zeichen ein!";
	
	else
	//document.getElementById("errorMessage"+comment_nr).innerHTML = "alright";
	document.getElementById("notify_form"+comment_nr).submit();
	
  }

  
  /* 2007-08-03 js (spiegel.julia@guj.de) 
  	Zaehlt, wie viele Zeichen schon ins Textfeld eingegeben wurden, und gibt einen Status darueber aus. 
	Ausserdem eine Fehlermeldung, wenn es mehr als 1000 Zeichen sind */
	function count_textarea(text)
	{
		
		if (text.length >= 1000)
		{
			document.getElementById("form-error-msg_comment_text").innerHTML = "<strong style=\"color:red\">Sie haben die maximale Textl&auml;nge von 1000 Zeichen erreicht!<strong>";
			document.getElementById("form-comment-text-counter").innerHTML = "";
			document.getElementById("mitteilung").value = document.getElementById("mitteilung").value.substring(0,1000);
		}
		
		else
		{
			document.getElementById("form-comment-text-counter").innerHTML = "Noch "+(1000 - text.length) + " Zeichen frei";
			document.getElementById("form-error-msg_comment_text").innerHTML = "";
		}
		
	}


//tracking for flash and dhtml applications
function flashInteractionTracking (application, action, clicktarget, refresh_freq){	
  if(!refresh_freq) refresh_freq = 2;
  
  var IVW = "http://geo.ivwbox.de/cgi-bin/ivw/CP/"+agof_id+";"+ivw_id+",,"+application+",";	
  
  //google analytics alt
  if(typeof urchinTracker == "function") {
    urchinTracker(application+"-"+action+"="+clicktarget);
  }	
  
  //google analytics neu
  
  //pageTracker._trackPageview(application);
  //pageTracker._trackEvent(application, action, clicktarget);
  _gaq.push(['_trackPageview', "/"+application+"/"+action+"/"+clicktarget]);
  //alert("/"+application+"/"+action+"/"+clicktarget);
  _gaq.push(['_trackEvent', application, action, clicktarget]);
  
  // Site Catalyst
  if((typeof s != "undefined") && (s != null)) {
    savehier = s.hier1;
    saveprop7 = s.prop7;    

    if (application.match(/schiebepuzzle/)) {
      application = application.replace(/_\d{4,5}/g, "");
    }
    
    //s.prop7 = application;
    s.prop7 = "interaktion-spiele";
    s.hier1 = s.hier1 + ","+application;
    
    s.referrer=window.location.protocol+"//"+document.location.host+document.location.pathname;
    void(s.t());
    s.prop7 = saveprop7;
    s.hier1 = savehier;
  }
  
  if(!document.getElementById("pixel_container")) {
    var pc = document.createElement('div');  
    pc.setAttribute('id', 'pixel_container');
    $('body').append(pc);
  }
  
  document.getElementById("pixel_container").innerHTML = "<img src='"+IVW+"?r=noref&amp;d="+(Math.random()*100000)+"' width='1' height='1' alt='' \/><br \/>";
  
  //refreshAdPlaces(refresh_freq);
}

//tracking for brightcove video
function videoTracking(p1ayerName, videoName, videoKeywords) {
 
	p1 = deleteUmlaute(p1ayerName);
    p2 = deleteUmlaute(videoName);
    p3 = '';
    if (videoKeywords) {
        p3 = deleteUmlaute(videoKeywords);
    }
	//alert(agof_id+videoKeywords);
	ivw_string = 'http://geo.ivwbox.de/cgi-bin/ivw/CP/'+agof_id+';'+ivw_id+',,Brightcove_'+ p1 +':'+ p2 +':'+ p3 +',?p='+ (Math.random()*100000);
	
	if(typeof _hbPageView == "function") {
		  _hbPageView(hbx_para_1, hbx_para_2);
		}
	 //pageTracker._trackPageview("brightcove_videoplayer");
	 //pageTracker._trackEvent("brightcove_videoplayer", p1ayerName, videoName);
	 _gaq.push(['_trackPageview', "brightcove_videoplayer"]);
     _gaq.push(['_trackEvent', "brightcove_videoplayer", p1ayerName, videoName]);

	 
	 if(!document.getElementById("pixel_container")) {
    var pc = document.createElement('div');  
    pc.setAttribute('id', 'pixel_container');
    $('body').append(pc);
	}
  
	document.getElementById("pixel_container").innerHTML = "<img src='"+ivw_string+"?r=noref&amp;d="+(Math.random()*100000)+"' width='1' height='1' alt='' \/><br \/>";
  
}

// global cookie function
function setCookie (name, string, expires){	
  var date = new Date();
  killtime = date.getTime()+expires;
  document.cookie = name+"="+string+"; expires="+killtime;
  //alert(name+"="+string+"; expires="+killtime);
}


function doRequest(url) {  
        http_request = false;
        error = false;
        
        if (window.XMLHttpRequest) { // Mozilla, Safari,...
            http_request = new XMLHttpRequest();
            if (http_request.overrideMimeType) {
                http_request.overrideMimeType('text/xml');
            }
        } else if (window.ActiveXObject) { // IE
            try {
                http_request = new ActiveXObject("Msxml2.XMLHTTP");
            } catch (e) {
                try {
                    http_request = new ActiveXObject("Microsoft.XMLHTTP");
                } catch (e) {}
            }
        }

        if (!http_request) {
            alert('Ende: ( Kann keine XMLHTTP-Instanz erzeugen');
            return false;
        }
     
        if(!error) {
          http_request.onreadystatechange = processAdResponse;
          http_request.open('GET', url, true);
          http_request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded charset:ISO-8859-1');
          http_request.send(null);         
        } 
}

function processAdResponse() {
        if (http_request.readyState == 4) {
            if (http_request.status == 200) {

                // get the response XML and the ad values
                var xmlDoc = http_request.responseXML;
                var bannerCode = xmlDoc.getElementsByTagName("banner")[0].childNodes[0].nodeValue;
                var bannerType = xmlDoc.getElementsByTagName("banner")[0].getAttribute("type");
                var skyCode = xmlDoc.getElementsByTagName("sky")[0].childNodes[0].nodeValue;
                
                //alert(skyCode);
                //alert(bannerType);
                
                if(bannerType == "leaderboard") {
                  $("#rubrikenAd").css("height", "90px");
                  $("#floater").css("top", "128px");
                } else if(bannerType == "fullsize"){
                  $("#rubrikenAd").css("height", "60px");
                  $("#floater").css("top", "98px");
                } else {
                  $("#rubrikenAd").css("display", "none");
                  $("#floater").css("top", "23px");
                }
                
                // append the ad-code to the ad-containers
                if(bannerCode != "" && $("#rubrikenAd")) {
                  document.getElementById("rubrikenAd").innerHTML = "";
                  $("#rubrikenAd").html(bannerCode); 
                }
                if(skyCode != "" && $("#floater")) {
                  document.getElementById("floater").innerHTML = "";
                  $("#floater").html(skyCode);
                }
            } 
        }

      }
	  
	  
	  
	  
	  
 // next one
	  
	  
	  
function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}
	  
	  
	  

// funkion mehr
	
	
function SPONgetCookie (name)
{
	function SPONgetCookieVal (offset)
	{
		var endstr = document.cookie.indexOf (";", offset);
		if (endstr == -1)
			endstr = document.cookie.length;
		return unescape(document.cookie.substring(offset, endstr));
	}
	var arg = name + "=";
	var alen = arg.length;
	var clen = document.cookie.length;
	var i = 0;
	while (i < clen) {
		var j = i + alen;
		if (document.cookie.substring(i, j) == arg)
			return SPONgetCookieVal (j);
		i = document.cookie.indexOf(" ", i) + 1;
		if (i == 0) break;
	}
	return null;
}





// HP-Channelboxen
function spHPTeaserInit(allchannels) {
	spHPTeaserLen = {};
	var cookie = SPONgetCookie('spHPTeaser');
	if (cookie != null) {
		var channel = cookie.split(' ');

		for (var i in channel) {
			spHPTeaserLen[channel[i]] = 1;
		}
	}
	var allchannelslist = allchannels.split(' ');
	for (var c in allchannelslist) {
		spHPTeaserToggle(allchannelslist[c],(typeof(spHPTeaserLen[allchannelslist[c]]) == 'undefined' ? 'less' : 'more'),0);
	}
	return false;
}

function spHPTeaserToggle(channelname, what, save) {
	if (typeof(spHPTeaserLen) == 'undefined') {
		spHPTeaserLen = {};
	}
	if (what == 'more') {
		spHPTeaserLen[channelname] = '1';
		document.getElementById('spRTmore_'+channelname).style.display = 'block';
		document.getElementById('spRTless_'+channelname).style.display = 'none';
	} else if (what == 'less'){
		if (typeof(spHPTeaserLen[channelname]) != 'undefined') {
			delete spHPTeaserLen[channelname];
		}
		document.getElementById('spRTmore_'+channelname).style.display = 'none';
		document.getElementById('spRTless_'+channelname).style.display = 'block';
	} else {
		return false;
	}
	
	if (save == 1) {
		var cookie = '';
		for (var c in spHPTeaserLen) {
			cookie = cookie + (cookie.length > 0 ? ' ' : '') + c
		}
		spSetCookie('spHPTeaser',cookie,365);
	}
	return false;
}
// Reminder für alten Popup-Player


