/* 	########################
 	Bilder vorab in den Cache laden
*/
function preLoadImage(sPath)
{
    var oImg = new Image();
    oImg.src = sPath;
}

/* 	########################
	Zubehör Liste anzeigen
*/
function showZubehoer(elementId)
{
    if (document.getElementById(elementId).style.visibility == "hidden") {
	document.getElementById(elementId).style.visibility = "visible";
	document.getElementById(elementId).style.display = "block";
	window.scrollBy(0, 200);
    } else {
	document.getElementById(elementId).style.visibility = "hidden";
	document.getElementById(elementId).style.display = "none";
    }
}

/* 	########################
	Großes Bild anzeigen
*/
function showLargeImage(oElement, sPath)
{
    oElement.id = (oElement.id) ? oElement.id:"12345678987654321";
 
    var oImg = new Image();
    oImg.src = sPath;
 	
    var breite 	= oImg.width;
    var hoehe 	= oImg.height;
 	
    document.getElementById("largeImageIMG").src=oImg.src;
    document.getElementById("largeImageIMG").alt="Click to close";
    document.getElementById("largeImageDIV").className="largeImage_visible";
    document.getElementById("largeImageDIV").title="Click image to close";
 	
    var a = getPosition(oElement);
    /*Position wird zwar ermittelt aber trotzdem auf 205 gesetzt*/
    //a.x=205;
 	
    document.getElementById("largeImageDIV").style.left=a.x;
    document.getElementById("largeImageDIV").style.top=a.y;
    oElement.id="";
}

/* 	########################
	Großes Bild ausblenden
*/
function hideLargeImage()
{
    document.getElementById("largeImageDIV").className="largeImage_hidden";
}
 
 
/* der Aufruf dieser Funktion ermittelt die absoluten Koordinaten
   des Objekts element */
function getPosition(element)
{
    var elem=element,tagname="",x=0,y=0;
  
    /* solange elem ein Objekt ist und die Eigenschaft offsetTop enthaelt
       wird diese Schleife fuer das Element und all seine Offset-Eltern ausgefuehrt */
    while ((typeof(elem)=="object")&&(typeof(elem.tagName)!="undefined"))
	{
	    y+=elem.offsetTop;     /* Offset des jeweiligen Elements addieren */
	    x+=elem.offsetLeft;    /* Offset des jeweiligen Elements addieren */
	    tagname=elem.tagName.toUpperCase(); /* tag-Name ermitteln, Grossbuchstaben */

	    /* wenn beim Body-tag angekommen elem fuer Abbruch auf 0 setzen */
	    if (tagname=="BODY")
		elem=0;

	    /* wenn elem ein Objekt ist und offsetParent enthaelt
	       Offset-Elternelement ermitteln */
	    if (typeof(elem)=="object")
		if (typeof(elem.offsetParent)=="object")
		    elem=elem.offsetParent;
	}

    /* Objekt mit x und y zurueckgeben */
    position=new Object();
    position.x=x;
    position.y=y;
    return position;
}


/* gibt eine Meldung mit x und y des zu elementId gehoerenden Elements aus */
function alertPosition(elementId)
{
    var a,element;

    /* Element-Objekt zur ID ermitteln */
    element=document.getElementById(elementId);
    alert(element.width)
	/* Position bestimmen und melden */
	a=getPosition(element);
    window.alert("Position "+elementId+": ("+a.x+","+a.y+")");
}
