function rate_item(objekt,number) {
  images=0;
  
  document.getElementById("voting").value="" + number;
  
  for(i=0; i<objekt.parentNode.childNodes.length; i++) {
    if(objekt.parentNode.childNodes[i].nodeName.toLowerCase()=='img') {
      if(images<=number-1 && i>0) {
        objekt.parentNode.childNodes[i].src = '../images/stern_1.gif';
        images++
      } else {
        if(i>0) objekt.parentNode.childNodes[i].src = '../images/stern_0.gif';
      }
    }
    
  }
}


var cartshown = 0;
function show_cart() {
  if(document.getElementById("shoppingcart").getAttribute("style")==null) {

    style = document.createAttribute("style");
    style.nodeValue = "display: block;";
    document.getElementById("shoppingcart").setAttributeNode(style);
    
    if(document.all && navigator.userAgent.indexOf('6.')>-1) { }
    else document.shoppingcart_image.src = "../images/dropdown.gif";
    
    cartshown=1;
  } else if(!cartshown) {
    if(document.all) {
      document.getElementById("shoppingcart").style.setAttribute("display","block", false);
    } else document.getElementById("shoppingcart").setAttribute("style", "display: block;");

    if(document.all && navigator.userAgent.indexOf('6.')>-1) { }
    else document.getElementById("shoppingcart_image").src = "../images/dropdown.gif";

    cartshown=1;
  } else {
    if(document.all) {
      document.getElementById("shoppingcart").style.setAttribute("display","none", false);
    } else document.getElementById("shoppingcart").setAttribute("style", "display: none;");

    if(document.all && navigator.userAgent.indexOf('6.')>-1) { }
    else document.getElementById("shoppingcart_image").src = "../images/dropright.gif";

    cartshown=0;
  }
}

function format_number(wert) {
  if(wert.indexOf(".")>-1) {
    vorkomma = wert.substring(0,wert.indexOf("."));
    nachkomma = wert.substring(wert.indexOf(".")+1);
    if(nachkomma.length<2) nachkomma=nachkomma+"0";
  } else {
    vorkomma = wert;
    nachkomma = "-";
  }
  
  if(vorkomma.length>3) {
    parts = new Array();
    while(vorkomma.length>3) {
      parts.push(vorkomma.substr(vorkomma.length-3,3));
      vorkomma = vorkomma.substring(0,vorkomma.length-3);
    }
    parts.push(vorkomma.substr(0));
    
    parts.reverse();
    vorkomma = parts.join("."); 
  }
  
  wert=vorkomma+","+nachkomma;
  
  return(wert);
}

function change_total(field) {
  formular = field.form;
  
  summe = 0;
  for(i=0; i<formular.elements.length; i++) {
    field = formular.elements[i];
    
    if(field.name.indexOf("_")>-1) {
      prefix = field.name.substring(0,field.name.indexOf("_"));

      if(isNaN(parseFloat(field.value))) field.value="1";
      wert = Math.round(
               (  parseFloat(document.getElementById(prefix+"_wert").firstChild.nodeValue.replace(/\./, "").replace(/,/, "."))
                  * parseFloat(field.value)
               )*100
             ) / 100;
      wert = format_number(wert.toString());
    
      document.getElementById(prefix+"_summe").firstChild.nodeValue=wert;

      summe+= parseFloat(document.getElementById(prefix+"_summe").firstChild.nodeValue.replace(/\./, "").replace(/,/, "."));
    }
  }

  suffix = field.form.name.substr(field.form.name.indexOf("_")+1);
  summe = Math.round(summe*100)/100;
  summe = format_number(summe.toString());
  if(document.getElementById("summe_"+suffix)!=undefined) document.getElementById("summe_"+suffix).firstChild.nodeValue=summe.toString();
  
  return false;
}




function getPosition(element)
/* der Aufruf dieser Funktion ermittelt die absoluten Koordinaten
   des Objekts 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;
}

function alertPosition(elementId)
/* gibt eine Meldung mit x und y des zu elementId gehoerenden Elements aus */
{
  var a,element;

/* Element-Objekt zur ID ermitteln */
  element=document.getElementById(elementId);
 
/* Position bestimmen und melden */
  a=getPosition(element);
  window.alert("Position "+elementId+": ("+a.x+","+a.y+","+element.offsetWidth+")");
}


