	//BEGIN s2track Wrapper-Code
	function s2trackReplaceSpecialChars(str) 
	{
	    str=str.replace(/&amp;/g,'&');
	    str=str.replace(/&auml;/g,'ae');
	    str=str.replace(/&ouml;/g,'oe');
	    str=str.replace(/&uuml;/g,'ue');
	    str=str.replace(/&Auml;/g,'Ae');
	    str=str.replace(/&Ouml;/g,'Oe');
	    str=str.replace(/&Uuml;/g,'Ue');
	    str=str.replace(/&szlig;/g,'ss');
		str=str.replace(/ /g,'+');
	    return str;
	}
	
	// Clientside Page-Tracking
	function s2trackWrapperPageView(category,page,url)
	{
		if(installedFlashVersion > 1 && category != '')
			category = 'flash';
	    else
			category = 'html';
	    	 
		var s2trackCategory = s2trackReplaceSpecialChars(category);
			s2trackCategory = escape(s2trackCategory);
			s2trackCategory = s2trackCategory+";"+this.area+s2trackCategory;
		var s2trackPage = s2trackReplaceSpecialChars(page);
			s2trackPage = escape(s2trackPage);
			s2trackPage = s2trackPage+";"+s2trackPage;

		pageTracker._trackPageview(s2trackPage);
		_hbPageView(s2trackPage,s2trackCategory);
	   	_hbSend();
		// url temp. not implemented
	}
	
	//  Download-Re-Tracking
	function s2trackWrapperDownload(downloadfile)
	{
		var s2trackValstring = this.area+"/"+downloadfile;
			s2trackValstring = s2trackReplaceSpecialChars(s2trackValstring);
			s2trackValstring = escape(s2trackValstring);
			
		pageTracker._trackPageview(s2trackValstring);
		_hbDownload(s2trackValstring);
	   	_hbSend();
		// url temp. not implemented
	}
	
	//  Exit-Link-Tracking
	function s2trackWrapperExitLink(exiturl)
	{
		var s2trackUrl = escape(exiturl);
			s2trackUrl = this.area+"/"+s2trackUrl;

		pageTracker._trackPageview(s2trackUrl);
		_hbExitLink(s2trackUrl);
	   	_hbSend();
	}
	
	// Client-Event-Tracking to custom metric
	function s2trackWrapperEvent(category,actionkey,actionvalue,metric)
	{
		if ((metric!=null) && (metric>0) && (metric<5))
		{
	   		var s2trackValstring = escape(actionkey);
	   			s2trackValstring += "|";
	   			s2trackValstring += escape(actionvalue);
				s2trackValstring = s2trackReplaceSpecialChars(s2trackValstring);
				
	   		_hbSet(metric,s2trackValstring);
	   		_hbSend();
		}
	}
	//END s2track Wrapper-Code
	
		
	var FLASH_HEADER_HEIGHT = 100;
	
	function callLink(url, name) {
		//if(!YAHOO.env.ua.ie || YAHOO.env.ua.ie >= 7) showFrame(url);
		//else window.open(url);

		showFrame(url);
		s2trackWrapperPageView('',name,url);
	}
	
	function setFlashMax() {
		removeFrame();
		maximizeHtmlContainer();
	}
	
	function activateMinHeight(minHeight) {
		document.getElementById('container').style.height = minHeight + "px";
	}
	
	var frameId = "";
	function showFrame(url) {
		//shrink flash movie container
		document.getElementById('container').style.height = FLASH_HEADER_HEIGHT + "px";
		
		frameId = "ext" + new Date().getTime();
		var flashContainerFrame = document.createElement("IFRAME");
			flashContainerFrame.frameBorder = "0";
			flashContainerFrame.id = frameId;
			flashContainerFrame.src = url;
			flashContainerFrame.style.height = YAHOO.util.Dom.getViewportHeight() - FLASH_HEADER_HEIGHT + "px";

		document.getElementsByTagName("BODY")[0].appendChild(flashContainerFrame);
	}
	
	function removeFrame() {
		document.getElementsByTagName("BODY")[0].removeChild(document.getElementById(frameId));
	}
	
	function maximizeHtmlContainer() {
		document.getElementById('container').style.height = YAHOO.util.Dom.getViewportHeight() + "px";
		document.getElementById('container').style.width = "100%";
	}
	
	function resizeDivHeights() {
		if(document.getElementById(frameId))
			document.getElementById(frameId).style.height = YAHOO.util.Dom.getViewportHeight() - FLASH_HEADER_HEIGHT + "px";
		else
			document.getElementById('container').style.height = YAHOO.util.Dom.getViewportHeight() + "px";
	}
	window.onresize=resizeDivHeights;

	function _init(){
		var loader = new YAHOO.util.YUILoader({
			require: ["dom"],
			loadOptional: true,
			onSuccess: function(){
				maximizeHtmlContainer();
			}
		});
		loader.insert();
	}