//Gets the browser specific XmlHttpRequest Object
function getXmlHttpRequestObject() {
	if (window.XMLHttpRequest) {
		return new XMLHttpRequest();
	} else if(window.ActiveXObject) {
		return new ActiveXObject("Microsoft.XMLHTTP");
	} else {
		alert("Ihr Browser unterstützt diese Funktion leider nicht.");
	}
}

function RequestObject() {
if (window.XMLHttpRequest) {
return new XMLHttpRequest();
} else if(window.ActiveXObject) {
return new ActiveXObject("Microsoft.XMLHTTP");
} else {
alert("Ihr Browser unterstützt diese Funktion leider nicht.");
}
}

var num_option_id = new Array();
var num_op_value = new Array();
var attribute_price_req = RequestObject();
var attribute_image_req = RequestObject();
var attribute_qty_req = RequestObject();
var variantprodid = 0;

function checkvalue_att()
{
	document.getElementById('isvariant').innerHTML = "";
	var found = 0;
	var maxfound = 0;
	var usevarpid = 0;
	var tid=new Array();
	var tval=new Array();
	var sel = document.getElementsByTagName("select");
	for(i=0;i< sel.length;i++)
	{
		if(sel[i].name.indexOf("id[")!=-1) // is option id selector
		{
			tid[maxfound] = sel[i].name.substr(3,sel[i].name.indexOf("]")-3);
			tval[maxfound] = sel[i].value;
			maxfound++;
		}		
	}
	
	for(i=0; i<vararr.length; i++){
		found = 0;
		for(j=0; j<tid.length; j++)
			if(vararr[i][tid[j]] == tval[j])
				found++;
		if(found==maxfound)
		if(vararr[i]['id']!="")
			variantprodid = vararr[i]['id'];
	}
	
	if(variantprodid==0)
	{
		var ready = true;
		for(j=0; j<tval.length; j++)
		if(tval[j] == 0 || tval[j]== undefined)
			ready = false;
			
		if(ready)
		document.getElementById('isvariant').innerHTML = "Diese Variante ist nicht Verfügbar!";
	}
	else
	{
		document.getElementById('variant_pid').value = variantprodid;
		// Get Attribute Price
		if(attribute_price_req.readyState == 4 || attribute_price_req.readyState == 0){
			attribute_price_req.open("GET", 'product_option_price.php?var_id='+variantprodid,true);
			attribute_price_req.onreadystatechange = priceGetResponse;
			attribute_price_req.send(null);
		}
		// Get Attribute Image
		if(attribute_image_req.readyState == 4 || attribute_image_req.readyState == 0){
			attribute_image_req.open("GET",'product_option_image.php?p_id=' + document.getElementById('products_id').value + '&var_id='+variantprodid, true);
			attribute_image_req.onreadystatechange = imageGetResponse;
			attribute_image_req.send(null);
		}
		// Get Attribute QTY
		if(attribute_qty_req.readyState == 4 || attribute_qty_req.readyState == 0){
			attribute_qty_req.open("GET",'product_attribute_qty.php?var_id='+variantprodid, true);
			attribute_qty_req.onreadystatechange = qtyGetResponse;
			attribute_qty_req.send(null);
		}
	}
		

}


function imageGetResponse(){
	var result_image = '';
	if(attribute_image_req.readyState == 4){
		p_id = document.getElementById('products_id').value;
		result_image = attribute_image_req.responseText.split("|");
		document.getElementById('product_option_image').src = result_image[0];
		var image_link = document.getElementById('img_link').href;
		if(image_link.indexOf("imgID=0") == -1){
			//for light box
			image_link = document.getElementById('product_option_image').src;
			image_link2 = image_link.replace(/info_images/, "popup_images");
			image_link2 = image_link2.replace("pID="+ p_id, "pID="+result_image[1]);
			document.getElementById('img_link').href = image_link2;
		// for light box
		}else{
			image_link2 = image_link.substr(0,image_link.indexOf("pID="));
			image_link2 = image_link2 + "pID="+ result_image[1] + "&imgID=0');";	
			document.getElementById('img_link').href = image_link2;
		}
	}

}


function priceGetResponse(){
if(attribute_price_req.readyState == 4){
var result = attribute_price_req.responseText;
document.getElementById('report_price').innerHTML = result;
}
}

function qtyGetResponse(){
if(attribute_qty_req.readyState == 4){
var result = attribute_qty_req.responseText;
oldImgUrl = document.getElementById('response_qty').src;		
newImgUrl = oldImgUrl.substr(0,oldImgUrl.lastIndexOf("/")+1);

if(result<=0)
{	
	newImgUrl = newImgUrl + "nicht_verfuegbar.gif";
	newImgTitle = "Dieser Artikel wird für Sie bestellt!";
}
if(result>0)
{
	newImgUrl = newImgUrl + "verfuegbar.gif";
	newImgTitle = "Dieser Artikel ist sofort verfügbar!";
}


document.getElementById('response_qty').src = newImgUrl;
document.getElementById('response_qty').title = newImgTitle;
}
}

// --- Suggest ---
//Our XmlHttpRequest object to get the auto suggest
var searchReq = getXmlHttpRequestObject();

//Called from keyup on the search textbox.
//Starts the AJAX request.
function searchSuggest() {
	if (searchReq.readyState == 4 || searchReq.readyState == 0) {
		var str = escape(document.getElementById('txtSearch').value);
		searchReq.open("GET", 'searchSuggest.php?search=' + str, true);
		searchReq.onreadystatechange = handleSearchSuggest; 
		searchReq.send(null);
	}		
}

//Called when the AJAX response is returned.
function handleSearchSuggest() {
	if (searchReq.readyState == 4) {
		var ss = document.getElementById('search_suggest')
		ss.innerHTML = '';
		var str = searchReq.responseText.split("\n");
		for(i=0; i < str.length - 1; i++) {
			//Build our element string.  This is cleaner using the DOM, but
			//IE doesn't support dynamically added attributes.
			var suggest = '<div onmouseover="javascript:suggestOver(this);" ';
			suggest += 'onmouseout="javascript:suggestOut(this);" ';
			suggest += 'onclick="javascript:setSearch(this.innerHTML);" ';
			suggest += 'class="suggest_link">' + str[i] + '</div>';
			ss.innerHTML += suggest;
		}
		if (i==0) {
			ss.style.visibility  = "hidden";
		} else {
			ss.style.visibility  = "visible";
		}
		//Schließen link einfügen
		ss.innerHTML += '<p align="right"><a onmouseover="javascript:suggestOver(this);" onmouseout="javascript:suggestOut(this);" onClick="javascript:suggestClose(this);" class="suggest_link"><b>Fenster schließen</b></a></p>';
	}
}
// Close Function
function suggestClose (div_value) {
	document.getElementById('search_suggest').innerHTML = '';
	document.getElementById('search_suggest').style.visibility  = "hidden";
}

//Mouse over function
function suggestOver(div_value) {
	div_value.className = 'suggest_link_over';
}
//Mouse out function
function suggestOut(div_value) {
	div_value.className = 'suggest_link';
}
//Click function
function setSearch(value) {
	// HTML-TAGS entfernen
  	var newvalue = value.replace(/<.*?>/gi, '');
	//Kategorienamen entfernen (fängt mit &nbsp; an)
	var Suche =	newvalue.indexOf("&nbsp;");
	var produktname = newvalue.substring(0,Suche);
	document.getElementById('txtSearch').value = produktname;
	document.getElementById('search_suggest').innerHTML = '';
	document.getElementById('search_suggest').style.visibility  = "hidden";
	//zum Suchergebnis weiterleiten
	top.location.href = "/advanced_search_result.php?keywords=" + produktname; 
}

// change welcome greeting during the day
function changeWelcomeGreeting()
{
  var jetzt = new Date();
  var Std = jetzt.getHours();
  var Min = jetzt.getMinutes();
  var atime = parseInt(Std +""+ Min);
  var msg = "Herzlich Willkommen";
 
  if(atime >= 0 && atime <= 959) 
    msg = "Guten Morgen";
  if(atime >= 1400 && atime <= 1759)
    msg = "Einen wunderschönen Nachmittag";
  if(atime >= 1800 && atime <= 2359)
   msg = "Guten Abend";

    document.getElementById("welcomegreeting").innerHTML = msg;
}

var bsboxes = new Array();
var bsintv = new Array();
function showBSBox(bid)
{
  document.getElementById("BSBox"+bid).className = "showbox";
  bsboxes[bid] = 1;  
  bsintv[bid] = window.setInterval("checkBSBox('"+bid+"')",2000);
}
function hideBSBox(bid)
{ 
 bsboxes[bid]=0;
}

function checkBSBox(bid)
{
 if(bsboxes[bid]== 0)
 {
 document.getElementById('BSBox'+bid).className = 'hidebox'; 
 window.clearInterval(bsintv[bid]);
 }
}