// JavaScript Document

var IE = document.all?true:false

function Loading(id){
	//top.document.getElementById(id).innerHTML = '<div class="loading"><img src="img/icon_spinner.gif" alt="" /></div>'
}

function aspHtmlDecode(s) {
	// Functie op een string gecodeerd in asp met server.htmlencode te decoderen.
	// Versie 1.0 (07-03-2007)
	s = s.replace(/&lt;/g,"<");
	s = s.replace(/&gt;/g,">");
	s = s.replace(/&quot;/g,"\"");
	s = s.replace(/&amp;/g,"&");
	return s;
}

function GetHttpRequest() { // Functie die http_request vult met een XmlHttp object, geeft false terug als er een fout optreedt.
	var http_request = false;
	if (window.XMLHttpRequest) { // Mozilla, Safari, ...
		http_request = new XMLHttpRequest();
		if (http_request.overrideMimeType) {
			http_request.overrideMimeType('text/xml');
			// See note below about this line
		}
	} else if (window.ActiveXObject) { // IE
		for(var i = 5; i; i--) {
			try {
				if(i==2) {
					http_request = new ActiveXObject("Microsoft.XMLHTTP");
				} else {
					http_request = new ActiveXObject("Msxml2.XMLHTTP." + i + ".0");
				}
				break;
			} catch(e) {
				http_request = false;
			}
		}
	}
	if (!http_request) {
		alert('Error: Kan geen AJAX object aanmaken! Neem contact op met uw systeembeheerder');
		return false;
	}
	return http_request
}


function addArticle(articleId,qty){
//	$('#btn_addtoshop').hide(); //.center();
	centerObj('btn_addtoshop');	
	$('#btn_addtoshop').show();
	var http_request = GetHttpRequest();
	if(!http_request) return false; // Kan geen ajax component aanmaken.
	var url = ""
	if( (qty && qty>0) || (!qty)  )  {
		url = PROJECT_URL+"xml/updateShoppingcart.xml.asp?container=container_shoppingcart&type=add&id=" + articleId + "&aantal=" + qty
	}
	//window.open(url)
	//alert(url)
	if (url!='') {
		http_request.onreadystatechange = function() { GetShoppingcartResult(http_request); };
		http_request.open('GET', url, true);
		http_request.send(null);
	}
}

function editArticle(line) {
	var http_request = GetHttpRequest();
	if(!http_request) return false; // Kan geen ajax component aanmaken.

	var qty
	if(document.getElementById('qty'+ line)) qty = document.getElementById('qty'+ line).value

	var url = ""
	url = PROJECT_URL+"xml/updateShoppingcart.xml.asp?container=container_shoppingcart&type=edit&lineno=" + line + "&aantal=" + qty
	//window.open(url)
	http_request.onreadystatechange = function() { GetShoppingcartResult(http_request); };
	http_request.open('GET', url, true);
	http_request.send(null);
}

function delArticle(line) {
	var http_request = GetHttpRequest();
	if(!http_request) return false; // Kan geen ajax component aanmaken.

	var url = ""
	url = PROJECT_URL+"xml/updateShoppingcart.xml.asp?container=container_shoppingcart&type=del&lineno=" + line
	//window.open(url)
	http_request.onreadystatechange = function() { GetShoppingcartResult(http_request); };
	http_request.open('GET', url, true);
	http_request.send(null);
}

function initShoppingCart(container){
	var http_request = GetHttpRequest();
	if(!http_request) return false; // Kan geen ajax component aanmaken.

	var url = ""
	url = PROJECT_URL+"xml/updateShoppingcart.xml.asp?container=" + container
	//window.open(url)
	http_request.onreadystatechange = function() { GetShoppingcartResult(http_request); };
	http_request.open('GET', url, true);
	http_request.send(null);
}

function GetShoppingcartResult(http_request) {
	if (http_request.readyState == 4) {
		if (http_request.status == 200) {
			//afvangen te lange nodes
			if(!IE) http_request.responseXML.normalize()

			var xmldoc = http_request.responseXML;
			var container_node = xmldoc.getElementsByTagName('container').item(0);
			var content_node = xmldoc.getElementsByTagName('content').item(0);
			
			if(content_node.firstChild){
				if(!IE){
					top.document.getElementById(container_node.firstChild.data).innerHTML = xmldoc.getElementsByTagName("content")[0].textContent
				}else{
					top.document.getElementById(container_node.firstChild.data).innerHTML = content_node.firstChild.data
				}
			}
			/*
			var total_node = xmldoc.getElementsByTagName('total').item(0);
			if(total_node.firstChild){
				if(!IE){
					alert ( xmldoc.getElementsByTagName("total")[0].textContent);
				}else{
					alert( total_node.firstChild.data );
				}
			}
			*/
			setTimeout("$('#btn_addtoshop').hide();",3000);

		}
	}
	
}


function addArticleCheckout(articleId,qty){
	var http_request = GetHttpRequest();
	if(!http_request) return false; // Kan geen ajax component aanmaken.

	var url = ""
	url = PROJECT_URL+"xml/updateShoppingcartcheckout.xml.asp?container=container_checkout&type=add&id=" + articleId + "&aantal=" + qty
	//window.open(url)
	http_request.onreadystatechange = function() { GetShoppingcartResultCheckout(http_request); };
	http_request.open('GET', url, true);
	http_request.send(null);
}

function editArticleCheckout(line) {
	var http_request = GetHttpRequest();
	if(!http_request) return false; // Kan geen ajax component aanmaken.

	var qty
	if(document.getElementById('qty_c'+ line)) qty = document.getElementById('qty_c'+ line).value
	var url = ""
	url = PROJECT_URL+"xml/updateShoppingcartcheckout.xml.asp?container=container_checkout&type=edit&lineno=" + line + "&aantal=" + qty
	//window.open(url)
	http_request.onreadystatechange = function() { GetShoppingcartResultCheckout(http_request); };
	http_request.open('GET', url, true);
	http_request.send(null);
}

function delArticleCheckout(line) {
	var http_request = GetHttpRequest();
	if(!http_request) return false; // Kan geen ajax component aanmaken.
	var url = ""
	url = PROJECT_URL+"xml/updateShoppingcartcheckout.xml.asp?container=container_checkout&type=del&lineno=" + line
	//window.open(url)
	http_request.onreadystatechange = function() { GetShoppingcartResultCheckout(http_request); };
	http_request.open('GET', url, true);
	http_request.send(null);
}

function initShoppingCartCheckout(container){
	var http_request = GetHttpRequest();
	if(!http_request) return false; // Kan geen ajax component aanmaken.

	var url = ""
	url = PROJECT_URL+"xml/updateShoppingcartcheckout.xml.asp?container=" + container
	//window.open(url)
	http_request.onreadystatechange = function() { GetShoppingcartResultCheckout(http_request); };
	http_request.open('GET', url, true);
	http_request.send(null);
}

function GetShoppingcartResultCheckout(http_request) {
	if (http_request.readyState == 4) {
		if (http_request.status == 200) {
			//afvangen te lange nodes
			if(!IE) http_request.responseXML.normalize()

			var xmldoc = http_request.responseXML;
			var container_node = xmldoc.getElementsByTagName('container').item(0);
			var content_node = xmldoc.getElementsByTagName('content').item(0);
			var allProductsAvailable_node = xmldoc.getElementsByTagName('allProductsAvailable').item(0);
			var idealEnabled_node = xmldoc.getElementsByTagName('idealEnabled').item(0);
			
			var idealEnabled = false;
			var allProductsAvailable = false;
			
			if(content_node.firstChild){
				if(!IE){
					top.document.getElementById(container_node.firstChild.data).innerHTML = xmldoc.getElementsByTagName("content")[0].textContent

					allProductsAvailable = xmldoc.getElementsByTagName("allProductsAvailable")[0].textContent
					idealEnabled = xmldoc.getElementsByTagName("idealEnabled")[0].textContent
					
//					if(xmldoc.getElementsByTagName("allProductsAvailable")[0].textContent == "false"){
//						document.getElementById('stockwarning').style.display = 'block';
//					} else {
//						document.getElementById('stockwarning').style.display = 'none';
//						idealEnabled = xmldoc.getElementsByTagName("idealEnabled")[0].textContent;
//						//alert("Uw bestelling ligt hoger dan dat wij voorradig hebben. Pas uw bestelhoeveelheid aan of verwijder het artikel uit de winkelwagen om verder te gaan met uw bestelling.");
//				    }

				}else{
				top.document.getElementById(container_node.firstChild.data).innerHTML = content_node.firstChild.data
				allProductsAvailable = allProductsAvailable_node.firstChild.data;
				idealEnabled = idealEnabled_node.firstChild.data;
					
//					if(allProductsAvailable_node.firstChild.data == "false"){
//						document.getElementById('stockwarning').style.display = 'block';
//					} else {
//						document.getElementById('stockwarning').style.display = 'none';
//						//alert("Uw bestelling ligt hoger dan dat wij voorradig hebben. Pas uw bestelhoeveelheid aan of verwijder het artikel uit de winkelwagen om verder te gaan met uw bestelling.");
//				    }
				}
            }

            if (idealEnabled.toLowerCase() == 'true' && allProductsAvailable.toLowerCase() == 'false') {
                $('.btn_continue').hide();
                alert('Uw bestelling ligt hoger dan dat wij voorradig hebben. Pas uw bestelhoeveelheid aan of verwijder het artikel uit de winkelwagen om verder te gaan met uw bestelling.');
            } else if (idealEnabled.toLowerCase() == 'false' && allProductsAvailable.toLowerCase() == 'false') {
                alert('Uw bestelling ligt hoger dan dat wij voorradig hebben, dit levert een backorder op');
            } else {
                $('.btn_continue').show();
            }

		}
	}
}


function getDeliveryAddress(id)
{
	
	var http_request = GetHttpRequest();
	if(!http_request) return false; // Kan geen ajax component aanmaken.

	var url = PROJECT_URL+"xml/getDeliveryAddress.xml.asp?delivery_address_nr=" + id
	//window.open(url)
	http_request.onreadystatechange = function() { handleGetDeliveryAddres(http_request); };
	http_request.open('GET', url, true);
	http_request.send(null);
}

function handleGetDeliveryAddres(http_request)
{
if (http_request.readyState == 4) {
		if (http_request.status == 200) {
			//afvangen te lange nodes
			if(!IE) http_request.responseXML.normalize()
			var xmldoc = http_request.responseXML;
			
			var containerID_node = xmldoc.getElementsByTagName('containerID').item(0);
			var content_node = xmldoc.getElementsByTagName('content').item(0);

			if(content_node.firstChild){
				if(!IE){
					top.document.getElementById("delivery_address_"+containerID_node.firstChild.data).innerHTML = xmldoc.getElementsByTagName("content")[0].textContent
				}else{
					top.document.getElementById("delivery_address_"+containerID_node.firstChild.data).innerHTML = content_node.firstChild.data
				}
				top.document.getElementById("delivery_address_"+containerID_node.firstChild.data).style.display = 'block';
			}
		
		}
	}
}

// JavaScript Document
var xmlDoc
function checkUsername(obj,edit){
	var http_request = GetHttpRequest();
	if(!http_request) return false; // Kan geen ajax component aanmaken.

	var url = "xml/validateUser.xml.asp?str="+obj.value+"&edit="+edit
	document.getElementById('validateUserError').innerHTML =''
	if(obj.value.length != 0){
		//window.open(url)
		http_request.onreadystatechange = function() { ResultValidationUsername(http_request); };
		http_request.open('GET', url, true);
		http_request.send(null);
	}
}
function ResultValidationUsername(http_request){
	if (http_request.readyState == 4)	{
		if (http_request.status == 200) {
			var xmldoc = http_request.responseXML;
			var action_node = xmldoc.getElementsByTagName('actionResult').item(0);

			if(action_node.firstChild.data != '0'){
				document.getElementById('validateUserError').innerHTML = action_node.firstChild.data
				UserOK = false
			}else{
				document.getElementById('validateUserError').innerHTML = ""
				UserOK = true
			}
		}
	}else{
		document.getElementById('validateUserError').innerHTML = ""
		UserOK = true
	}
}

function GetAJAX(url, container, gets, values, debug) {
	var http_request = GetHttpRequest();
	if(!http_request) return false; // Kan geen ajax component aanmaken.

	Loading(container);
	url = PROJECT_URL+'xml/' + url + '?container='+ container + '&'
	for (i = 0; i < gets.length; i++) {
		if(i>0) url += '&';
		url += gets[i] +'='+ values[i];
	}
	if(debug) window.open(url)
	http_request.onreadystatechange = function() { GetAJAXResult(http_request,container); };
	http_request.open('GET', url, true);
	http_request.send(null);
}

function GetAJAXResult(http_request, container){
	if (http_request.readyState == 4)	{
		if (http_request.status == 200) {

			var content = http_request.responseText;
			if(container!='') {
				if(document.getElementById(container)) document.getElementById(container).innerHTML = content;
			}

		}
	}
}

function submitNewsletter(path){
	$('.text').removeClass('errormessage');
	$('#frmNewsletter [name=email]').removeClass('error');
	var email = $('#frmNewsletter [name=email]').val();
	var optin = ($('#newsletteroptin').attr('checked'))
	if(isEmail(email) && optin){
		$.ajax({
			type: "GET",
			url: path + 'xml/newsletter.xml.asp',
			data: 'email=' + email,
			dataType: "html",
			success: function(html) {
				$('#newsletter-result').html(html);
				$('#frmNewsletter [name=email]').removeClass('error');
			}
		});
	} else {
		if(!isEmail(email)){
			$('#frmNewsletter [name=email]').addClass('error');
		}
		if(!optin){
			$('.text').addClass('errormessage');
		}
	}
}

