/*
** Blätterkatalog Integration Script
** *********************************
**
** 1) 	addToCart(artno, shopsessionid)
**	Wird bei Linktyp "Artikel in Warenkorb legen"
**	aufgerufen.
**
** 
** 2) 	blaetterkatalogflip(newPage)
**	Blättert auf die gegebene Seite
**	Wird bei Linktyp "Gehe zu Seite" verwendet.
**
**	TODO: Kann optional verwendet werden
**	      um mittels 
**	
**	<a href="javascript:blaetterkatalogflip(5)">Gehe zu Seite 5</a>
**
**	den Blätterkatalog umzublättern.
**	(Beispiel: Auf Kapitel-Startseite blättern)
**
** 3)   gotoURL(myURL)
**   	Wird bei Linktyp "Externer Link" und
**	von addToCart aufgerufen
**
*/


	/**
	*/
	function addToCart(artno, shopsessionid)
	{
	   var destinationURL = shopBase + shopURL + shopSessionIDParameterName + shopsessionid + shopArticleIDParameterName + artno + shopURLPostfix;
	   
	   if (shopDebug) alert("ShopSessionID: "+shopsessionid+"\nArtikel "+artno+" in Detailansicht Shop aufrufen\n\nSHOP URL: "+destinationURL);	
		
	   
	   if (!shopDebug) gotoURL(destinationURL);
		
	}


	/**
	*  blättert auf die entsprechende seite um
	*  setzt voraus, dass der blätterkatalog in
	*  dem fenster noch geladen ist
	*/
	function blaetterkatalogflip(newPage)
	{
		flashCommand('jump_to_id', newPage)
	}

	
	/**
	* sprint zu einer URL
	* Ziel: Shop-Fenster
	*/ 
	function gotoURL( myURL ) 
	{
		try {
			if ( typeof( opener ) == "undefined" || typeof( opener ) == "unknown" ||
			    	typeof( opener.name ) == "undefined" || typeof( opener.name ) == "unknown" )
			{
				if ( shopFenster.closed )	
				{
					shopFenster = window.open( myURL, "shop", "" );
					shopFenster.focus();
				}
				else 
				{
					shopFenster.location.href=myURL;
					shopFenster.focus();	
				}
			} 
			else 
			{
				opener.location.href = myURL;
				opener.blatterkatalogPopup = window;
				opener.focus();
			}
		} 
		catch ( Exception )
		{
			if( opener && !opener.closed )
			{
				opener.location.href = myURL;
				opener.focus();
			}
			else 
			{
				try {
					if ( shopFenster.closed )	
					{
						shopFenster = window.open( myURL, "shop", "" );
						shopFenster.focus();
					}
					else 
					{
						shopFenster.location.href = myURL;
						shopFenster.focus();	
					}
				} 
				catch ( Exception )
				{
						shopFenster = window.open( myURL, "shop", "" );
						shopFenster.focus();
				}
			}
		}
	}

	/**
	 * getFlashPath() ermittelt das Flash-Objekt
	 */
	function getFlashPath() 
	{
    	if ( document.all ) 
    	{
	        //ie
	        return document.bkflash;
    	}
    	else 
    	{
	        //safari
	        var ffilm = document.getElementById( "bkflash" );
	        try 
	        {
	            flashfilm.SetVariable( "tst", "1" );
	       	} 
	       	catch ( Exception ) 
	       	{
	            //firefox
            	ffilm = document.embeds["bkflash"];
            }
            return ffilm;
	    }
	}
	
	

	/////////////////////////////////////
	// Funktion zum externen Aufruf der Flash-Commands
	// id => 'jump_to_id'
	// par => pageid
	// aufruf mit z.b. flashCommand('jump_to_id', 5)
	/////////////////////////////////////
	function flashCommand( id, par ) 
	{
		try
		{
		    var movie = getFlashPath();
		    movie.SetVariable( "jscommand", id + "|" + par );
		}   
	    catch( Exception )
	    {
	      	document.getElementById("bkflash").SetVariable( "jscommand", id + "|" + par );		
	    }	
	}
	
	
	function getURLParam( strParamName ) 
	{
	var strReturn = " ";
	var strHref = window.location.href;
	
	var i = strHref.indexOf( strParamName );
	
	if ( i > 0 )
	{
		var j = strHref.indexOf( "=", i + 1 );
		if ( j > 0 )
		{
			var endPos = strHref.length;
			var k = strHref.indexOf( "?", j + 1 );
			var l = strHref.indexOf( "&", j + 1 );
			if ( k > 0 && l > 0 )
			{
			   	if ( k < l ) 
			   	{
			   		endPos = k;
			   	}	
				else 
				{
					endPos = l;
				}	
			} 
			else if ( k > 0 )
			{
			  endPos = k;
			} 
			else if ( l > 0 )
			{
			  endPos = l;
			}
			
			strReturn = strHref.substring( j + 1 , endPos );
		}	
	}
	return strReturn;
	}	

	window.onerror = stoperror;

	function stoperror( a )
	{
  	return false;
	}
	
	
	function showBk(kw, marktid, sid) {
	
	var motherOfAllDivs = document.getElementById("bk");
	
	var bgDiv = document.createElement("div");
	bgDiv.className = "background";
	bgDiv.id = "bk-background";
	bgDiv.style.display = "none";
	
	new Effect.Appear('bk-background',{from: 0, to: 0.5, duration: 2, fps:100, afterFinish: insertBk(kw, marktid, sid, bgDiv, false)});
}

function insertBk(kw, marktid, sid, backgroundElement, fixSizeForStandard) {
	
	// Disable Scrolling
	document.body.style.overflow = "hidden";

	$top = getScroll();

	document.getElementsByTagName("html")[0].style.width = "100%";

	// Open Bk
	var motherOfAllDivs = document.getElementById("bk");
	
//	var bgDiv = document.createElement("div");
//	bgDiv.className = "background";
	var bgDiv = backgroundElement;

	var closeDiv = document.createElement("div");
  closeDiv.className = "close";

	bgDiv.style.width = "100%";
	bgDiv.style.margin = "0px 0px 0px 0px";
	bgDiv.style.padding = "0px 0px 0px 0px";

	var placeholderDiv = document.createElement("div");
	placeholderDiv.className = "placeholder";
	placeholderDiv.id = "placeholder";
	
	var noflashhtml = ""+
"<a href=\"http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash\"><img src=\"img/noflash.gif\" width=\"520\" height=\"172\" border=\"0\" /></a>"+
"	<noscript>"+
"			<h1>Der Bl&auml;tterkatalog&reg; der COMINTO GmbH erm&ouml;glicht Ihnen echtes Bl&auml;ttern im Online-Shop!</h1>"+
"			Die Produkte erscheinen online in der gewohnten Katalogdarstellung mit integrierter<br /> Bestellfunktion und Verlinkung direkt aus dem Bl&auml;tterkatalog heraus."+
"     <br />"+
"     <br />"+
"			<div class=\"notice\">"+
"  				Der Bl&auml;tterkatalog ben&ouml;tigt Javascript fÃ¼r die korrekte Funktionsweise."+
"  				<p>"+
"  					Bitte aktivieren Sie Javascript in Ihrem Browser und laden Sie diese Seite erneut."+
"  				</p>"+
"  				<p>"+
"  					Vielen Dank fÃ¼r Ihr Verst&auml;ndnis."+
"  				</p>"+
"  			</div>"+		
"  			<a href=\"http://www.blaetterkatalog.de\">Informieren Sie sich &uuml;ber den Bl&auml;tterkatalog&copy;</a>"+
"  		</noscript>"+
"";      	
	
	
	placeholderDiv.innerHTML = noflashhtml;

	motherOfAllDivs.appendChild(closeDiv);
	motherOfAllDivs.appendChild(placeholderDiv);
	motherOfAllDivs.appendChild(bgDiv);

	 placeholderDiv.style.width = "95%"; 
	 placeholderDiv.style.height = "95%"; 
	 placeholderDiv.style.left = "2.5%";
	 placeholderDiv.style.top = "2.5%";

	var globalPathPrefix = "/kataloge/";
	if (marktid == 'profil') globalPathPrefix = "/broschuere/";

	// Insert Demokatalog Flash object
	var so = new SWFObject(globalPathPrefix + "swf/blaetterkatalog.swf", "bkflash", "100%", "100%", "8", "#FFFFFF");
	so.addVariable("catalog_config",globalPathPrefix +  kw + "/" +  marktid + "/xml/");
	so.addVariable("pagenr", "1");
	so.addVariable("sid", sid);
	so.addVariable("kw", kw);
	so.addVariable("marktid", marktid);
	
	so.addParam("allowScriptAccess", "always");
	so.addParam("allowFullscreen", "true");
	so.addParam("quality", "HIGH");
	so.addParam("bgcolor", "#FFFFFF");

	so.write("placeholder");	
}

function closeBK() {
	
	var bkDiv = document.getElementById("bk");
	
	while (bkDiv.hasChildNodes()) {
		bkDiv.removeChild(bkDiv.firstChild);
	}
	window.location.reload(true);
}

function getScroll(){
	var ScrollTop = document.body.scrollTop;
	if (ScrollTop == 0){
		if (window.pageYOffset)
        	ScrollTop = window.pageYOffset;
   		else
	        ScrollTop = (document.body.parentElement) ? document.body.parentElement.scrollTop : 0;
		}
	return ScrollTop;
}
	