        // =======================================================
        // Datei:    price_request.js
        // Funktion: Baut AJAX-Request auf - sendet Result zur�ck
        // von:      Praktikant@work
        // =======================================================
        
var xmlHttp

// Funktion f�ngt Vars ab, baut die URL auf und sendet AJAX-Request
function individual_price(product_id, opt_id, opt_val_id, str)
{
  xmlHttp=GetXmlHttpObject();

  if (xmlHttp==null)
  {
    alert ("Ihr Browser unterst�tzt leider kein AJAX!");
    return;
  }

  var str = str;
  var str_l = str.length;
  var url="price_request.php";
  url=url+"?pID="+product_id;
  url=url+"&oID="+opt_id;
  url=url+"&ovID="+opt_val_id;
  url=url+"&str="+str_l;
  url=url+"&token="+new Date().getTime();
 
  xmlHttp.onreadystatechange = stateChanged;
  xmlHttp.open("GET",url,true);
  
  //xmlhttp.setRequestHeader();
  xmlHttp.send(null);
}

// Funktion pr�ft ob State = 4 ist (Request erfolgreich zur�ck gegeben) -> innerHTML
function stateChanged()
{
	
  if (xmlHttp.readyState == 4)
  {
    document.getElementById("new_price").innerHTML=xmlHttp.responseText;
  }
}

// Funktion unterscheidet zwischen den einzelnen Browsern 
function GetXmlHttpObject()
{
  var xmlHttp = null;
  try
  {
    // Firefox, Opera 8.0+, Safari
    xmlHttp = new XMLHttpRequest();
  }
  catch (e)
  {
    // Internet Explorer
    try
    {
      xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
    }
    catch (e)
    {
      xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
    }
  }
  return xmlHttp;
}

// Funktion gibt die aktuelle Textl�nge im Textarea zur�ck
function count_text(ele)
{
	var text 		= ele.value;
	var count_str 	= text.length;
	var count_log 	= text.replace(/\s/g,"").length;

	// Textstring wird in Hiddeninput gespeichert zur sp�teren �berpr�fung
	// f�r Spezialfall: ob Javascript ausgestellt ist	
	document.getElementById('cart_quantity').hidden_check_string.value = ele.value;
	
	// Ausgabewert, der im Span gesetzt wird
	document.getElementById('count_chars').innerHTML = count_str; 	
	return;
}

function set_price()
{
	var count = document.forms['cart_quantity'].elements.length;
   	var element;
   	var new_price = basis_preis;
   	//alert(basis_preis);
   	
	for (var i = 0; i < count; i++) 
	{
		element = document.forms['cart_quantity'].elements[i];
        var tagName = element.tagName.toLowerCase();
        
        if (tagName == "input") 
        {
            var type = element.type;
            
            if (type == "radio" && element.checked)
            {
            	var inhalt = document.forms['cart_quantity'].elements[i].attributes['x-value'].value;
                var attribut_ele = inhalt.split("|");

				if(attribut_ele[0] == "+")
				{
					new_price = 1*new_price + 1*attribut_ele[1];
				}
				else if(attribut_ele[0] == "-")
				{
					new_price = 1*new_price - 1*attribut_ele[1];
				}
            }
        }
        else if (tagName == "select") 
        {
        	if(element.id == '' || element.id == 'product.image.url' || element.id == 'bcolor' || element.id == 'options.color')
        	{
        	
        	}
        	else
        	{
            var select = document.getElementById(element.id);
            var inhalt = select.options[select.selectedIndex].attributes['x-value'].value;
            
            var attribut_ele = inhalt.split("|");
           
            if(attribut_ele[0] == "+")
			{
				new_price = 1*new_price + 1*attribut_ele[1];
			}
			else if(attribut_ele[0] == "-")
			{
				new_price = 1*new_price - 1*attribut_ele[1];
			}
        	}
        }
    }
    new_price = new_price.toFixed(2);
	document.getElementById('price_request').innerHTML = new_price + " " + currency ;
	return;
}


