var		objExplain		=	null;


/**
 *	Die Position der linken/oberen Ecke des Rahmens unter dem Ahava-Logo.
 *
 *	Wird zur Positionierung der Verpackungs-Erklärung gebraucht, da diese
 *	Angabe relativ zum übergeordneten position: relative - Element wirkt.
 *
 *	Die Werte müssen bei Layout-Änderungen u.U. angepasst werden.
 */
var		offsetExplainX	=	71;
var		offsetExplainY	=	112;


/**
 *	Wird aufgerufen, wenn der Benutzer die Maus über eine der Checkboxen
 *	führt, ob die die Verpackung demarkiert werden kann
 */
function shop_explainPackageOn( obj, event ) {

	if ( !document.getElementById ) {
		return;
	}

	if ( objExplain == null ) {

		/**
		 *	Erster Aufruf. Objekt suchen und für zukünftige Verwendung vorbereiten
		 */

		objExplain			=	document.getElementById( 'warenkorb_verpackung_explain_self' );

		/**
		 *	Problem:	Für den Fall, dass jemand kein JS oder kein DOM hat, fügen wir
		 *				den Erklärungsknoten klassisch unter dem Warenkorb mit ein. Das
		 *				hat aber den Nachteil, dass er so in div-wrapper2 liegt, welches
		 *				position: relative benutzt.
		 *
		 *				Positionieren wir unsere Element, so passiert das relativ zu
		 *				diesem.
		 *
		 *				Da wir uns, um kompatibel zu Änderungen zu sein, nicht mal an
		 *				wrapper2 orientieren können, nehmen wir eine allgemein funktionierende
		 *				Lösung und nehmen unser Element dort raus und hängen es direkt dem Body
		 *				an.
		 *
		 *	PLANÄNDERUNG: Bei ie6 führt die Entnahme des Knotens aus seinem angestammten Platz
		 *				und Zuordnung zum body-Objekt dazu, dass bei jeder Anzeige des Knotens
		 *				der Seiteninhalt nach Meinung des Browsers grösser wird (das Layout
		 *				ändert sich zwar nicht, aber die Scrollbar zeigt das).
		 *				Daher bleibt das jetzt an Ort uns Stelle eingeordnet.
		 */


//		objExplain.parentNode.removeChild( objExplain );				// vom Elter lösen

//		elements			=	document.getElementsByTagName( "body" );
//		if ( elements.length > 0 ) {
//			elements[0].appendChild( objExplain );						// an obersten Elter hängen
//		}

	}

	obj.title		=	'';									// Überlagerung von Titel + Layer verhindern

	/**
	 *	Wir setzen alles jedes mal, falls es zu einer Überschneidung mit
	 *	shop_hidePackageExplaination() kommt.
	 */

	objS					=	objExplain.style;

	objS.display			=	"block";
	objS.width				=	"180px";

	objS.padding			=	"6px";
	objS.borderWidth		=	"1px";
	objS.borderStyle		=	"solid";
	objS.borderColor		=	"#404040";
	objS.color				=	"#000000";
	objS.backgroundColor	=	"#f0f0f0";
	objS.position			=	"absolute";

	/**
	 *	Wir platzieren die Erklärung neben dem Mauszeiger.
	 *
	 *	Dabei macht IE den Fehler, dass in event.x/y die Position relativ
	 *	zum alten Parent zurückgibt und nicht zum oben neu gesetzten.
	 *
	 *	Wir gehen daher in allen Fällen über das page-offset + client
	 */

/*
for ( name in event ) {
	alert( name + "=" + event[name] );
}
*/

	if ( document.documentElement.scrollLeft !== undefined ) {
		pageOffsetX		=	document.documentElement.scrollLeft;
		pageOffsetY		=	document.documentElement.scrollTop;
	}
	else if ( document.body.scrollTop !== undefined ) {
		pageOffsetX		=	document.body.scrollLeft;
		pageOffsetY		=	document.body.scrollTop;
	}
	else {
		pageOffsetX		=	window.pageXOffset;
		pageOffsetY		=	window.pageYOffset;
	}

	mousePosX			=	pageOffsetX + event.clientX;
	mousePosY			=	pageOffsetY + event.clientY;

	objS.left			=	( mousePosX - offsetExplainX + 20 ) + "px";
	objS.top			=	( mousePosY - offsetExplainY + 0  ) + "px";

	objS.visibility 	=	'visible';

}


/**
 *	Wird beim Verlassen oben erwähnter Checkbox aufgerufen.
 */

function shop_explainPackageOff( obj ) {

	if ( objExplain != null ) {
		objExplain.style.visibility = 'hidden';
	}

}


/**
 *	Wird beim Aufbau der Seite aufgerufen um den beo JS + DOM überflüssigen
 *	Hinweis zur Verpackung zu entfernen.
 */
function shop_hidePackageExplaination() {

	var objMarker
	var objExplain;

	if ( !document.getElementById ) {
		return;
	}

	// das (*) oben in der Kopfzeile des Korbs -> kommt ganz weg.

	objMarker					=	document.getElementById( 'warenkorb_verpackung_explain_marker' );
	if ( objMarker ) {
		objMarker.style.display		=	"none";
		objMarker.style.visibility	=	"hidden";
	}

	// das (*) in der Fusszeile (vor der Erklärung)

	objMarker					=	document.getElementById( 'warenkorb_verpackung_explain_markerfootnote' );
	if ( objMarker ) {
		objMarker.style.display		=	"none";
		objMarker.style.visibility	=	"hidden";
	}

	// die Erklärung. Wird von shop_explain_package_on wieder angezeigt.

	objExplain					=	document.getElementById( 'warenkorb_verpackung_explain_self' );
	if ( objExplain ) {
		objExplain.style.display	=	"none";
		objExplain.style.visibility	=	"hidden";
	}

}


/**
 *	Öffnet ein Fenster für die Anzeige der Inhaltsstoffe zu einem Produkt.
 */
function openWindowIngredients( url ) {

	innerWidth			=	300;

	widthWindow			=	innerWidth + 20;
	heightWindow		=	300;

	screenX				=	50;
	screenY				=	50;

	myWin				=	window.open( url, 'ingredients', 'width=' + widthWindow + ',height=' + heightWindow + ',screenX=' + screenX + ',screenY=' + screenY + ',scrollbars=yes,locationbar=no,menubar=no,resizable=yes,status=no' );

	myWin.innerWidth	=	innerWidth;

}


function showIngredients() {

	obj			=	document.getElementById( 'product_ingredients' );

	if ( obj ) {
		obj.style.display	=	'block';
	}

}

function hideIngredients() {

	obj			=	document.getElementById( 'product_ingredients' );
	if ( obj ) {
		obj.style.display	=	'none';
	}

}
