$.ajaxSetup({ scriptCharset: "utf-8" ,contentType: "application/x-www-form-urlencoded; charset=UTF-8" });

$(document).ready(function(){ 
			
	$("label").inFieldLabels();
	
	getShipping = function(){
		var $isShip = getCheckedValue('toggle')==1;
		if($isShip){
			shippingCountry = $('#ordShipCountry').val();
		}else{
			shippingCountry = $('#ordCountry').val();
		}
		
		$("input[name='payprovider']:checked").val()
		
		//shippingCountry = encodeURI(shippingCountry);
		$.ajax({
			data: {
				async: false,
				cache: false,
				ordCountry: shippingCountry,
				ordPayprovider: $("input[name='payprovider']:checked").val(),
				sessionID: $('#sessionID').val(),
				ms: Date()
			},
			url: "/vsadmin/shippingajax.asp",
			type: "POST",
			dataType: "html",
			contentType: "application/x-www-form-urlencoded;charset=UTF8",
			beforeSend: function(){
				$('#shippingContainer').html('<img src="/img/ajax-loader.gif" align="absmiddle" />');
			},
			success: function(data){
				$('#shippingContainer').html(data);
			},
			error: function(data){
			},
			complete: function(){
	
			}
		});	
	}
	
	checkCode = function(myObject){
		if($(myObject).val().length > 0){
			if(myObject=="#cpncode"){
				var cpncode = $(myObject).val()
			}
			if(myObject=="#giftcode"){
				var giftcode = $(myObject).val()
			}
			$.ajax({
				data: {
					async: false,
					cache: false,
					cpncode: cpncode,
					giftcode: giftcode,
					sessionID: $('#sessionID').val(),
					ms: Date()
				},
				url: "/vsadmin/checkdiscount.asp",
				dataType: "json",
				beforeSend: function(){
					$(myObject+'Message').html('<img src="/img/ajax-loader.gif" align="absmiddle" />');
				},
				success: function(data){
					if( (data.checkCoupon && myObject=="#cpncode") || (data.checkGift && myObject=="#giftcode")){
						$(myObject+'Message').html('<img src="/img/tick.png" align="absmiddle" /> ok, korting wordt toegepast');
						$(myObject+'Message').attr('style','color:#509947;');
					}else{
						$(myObject+'Message').html('<img src="/img/cross.png" align="absmiddle" /> niet gevonden/verlopen/niet geldig');
						$(myObject+'Message').attr('style','color:#E62A2D;');
					}
				},
				error: function(data){
					$(myObject+'Message').empty();
				},
				complete: function(){

				}
			});
		}else{
			$(myObject+'Message').html('<img src="/img/cross.png" align="absmiddle" /> vul een code in');
			$(myObject+'Message').attr('style','color:#E62A2D;');
		}
	}

	firePostcodeSearch = function(preFix){
		if(preFix == null){
			preFix = '';
		}
		if($('#'+preFix+'Country').val()=='Nederland' || $('#'+preFix+'Country').val()=='133'){
			if($('#'+preFix+'AddressVerified').val() == "1"){
				$('#'+preFix+'AddressContainer').show(); 
				$('#'+preFix+'CityContainer').show();
				$('#'+preFix+'Message').hide(); 
			}else{
				if($('#'+preFix+'Zip').val().length > 5 && $('#'+preFix+'Address2').val().length > 0){
					getPostcodeSearch(preFix);
				}
			}
		}else{
			setInputType('#'+preFix+'Address','text');
			setInputType('#'+preFix+'City','text');
			$('#'+preFix+'AddressText').empty();
			$('#'+preFix+'CityText').empty();
			$('#'+preFix+'Message').hide(); 
			$('#'+preFix+'NotFoundMessage').hide(); 
			$('#'+preFix+'AddressContainer').show(); 
			$('#'+preFix+'CityContainer').show();

		}
	}
	
	setInputType = function(className,inputType){
		$(className).each(function(){ 
		  var id = $(this).attr('id');
		  var name = $(this).attr('name'); // grab name of original 
		  var value = $(this).attr('value'); // grab value of original 
		  /* create new visible input */ 
		  var html = '<input type="'+inputType+'" id="'+id+'" name="'+name+'" value="'+value+'" class="cartFields" />'; 
		  $(this).after(html).remove(); // add new, then remove original input 
		  //<!-- CALL 9159 -->
		  $('#'+id).change(function(){showPayproviders()});
		});
	}	

	emptyResult = function(preFix){
		$('#'+preFix+'AddressVerified').val('0');	
		$('#'+preFix+'Address').val('');
		$('#'+preFix+'City').val('');	
		setInputType('#'+preFix+'Address','text');
		setInputType('#'+preFix+'City','text');
		$('#'+preFix+'AddressText').empty();
		$('#'+preFix+'CityText').empty();
	}

	getPostcodeSearch = function(preFix){
		getShipping();
		if($('#'+preFix+'Country').val()=='Nederland' || $('#'+preFix+'Country').val()=='133'){
			if($('#'+preFix+'Zip').length > 0 && $('#'+preFix+'Address2').length > 0){	
				if($('#'+preFix+'Zip').val().length > 5 && $('#'+preFix+'Address2').val().length > 0){	
					$('#'+preFix+'Message').hide(); 
					$.ajax({
						data: {
							async: false,
							postcode: $('#'+preFix+'Zip').val(),
							huisnummer: $('#'+preFix+'Address2').val(),
							sessionID: $('#sessionID').val() 
						},
						url: "/includes/ajax_PostcodeSearch.asp",
						dataType: "json",
						beforeSend: function(){
							$('#'+preFix+'NotFoundMessage').hide(); 
						},
						success: function(data){
							if(data.succes)
							{
								setInputType('#'+preFix+'Address','hidden');
								setInputType('#'+preFix+'City','hidden');
								$('#'+preFix+'AddressText').html(data.straatNaam);
								$('#'+preFix+'CityText').html(data.plaatsNaam);
								$('#'+preFix+'Address').val(data.straatNaam);
								$('#'+preFix+'City').val(data.plaatsNaam);	
								$('#'+preFix+'AddressVerified').val('1');
							}else{
								emptyResult(preFix);
								$('#'+preFix+'NotFoundMessage').show();	
							}
						},
						error: function(data){
							emptyResult(preFix);
							$('#'+preFix+'NotFoundMessage').show();
						},
						complete: function(){
							$('#'+preFix+'AddressContainer').show(); 
							$('#'+preFix+'CityContainer').show();
							//<!-- CALL 9159 -->
							showPayproviders();
						}
					});	
				}else{
					$('#'+preFix+'AddressVerified').val('0');	
					$('#'+preFix+'Message').show(); 
					$('#'+preFix+'NotFoundMessage').hide(); 
					$('#'+preFix+'AddressContainer').hide(); 
					$('#'+preFix+'CityContainer').hide();
				}
			}
		}else{
			emptyResult(preFix);
			$('#'+preFix+'Message').hide(); 
			$('#'+preFix+'NotFoundMessage').hide(); 
			$('#'+preFix+'AddressContainer').show(); 
			$('#'+preFix+'CityContainer').show();
		}
	}

	function openMenu(){
		$(this).addClass("sfhover");
		//$(this).find(".mega").stop().show(); 
	}
	
	function closeMenu(){
		$(this).removeClass("sfhover");
		//$(this).find(".mega").stop().hide(); 
	}

	var config = {    
		 sensitivity: 4, // number = sensitivity threshold (must be 1 or higher)    
		 interval: 250, // number = milliseconds for onMouseOver polling interval    
		 over: openMenu, // function = onMouseOver callback (REQUIRED)    
		 timeout: 100, // number = milliseconds delay before onMouseOut    
		 out: closeMenu // function = onMouseOut callback (REQUIRED)    
	};
	
	$(".sf-menu li").hoverIntent(config);


	changeimage = function(id, sMinus, sPlus)   
	{   
		var img = document.getElementById(id);   
		if (img!=null){   
			var bExpand = img.src.indexOf(sPlus) >= 0;   
			if(!bExpand){  			
				img.src = sPlus;   
			}else{
				img.src = sMinus;   
			}  
		} 
	}
	
	Toggleclass = function(classname)   
	{   
		$('.'+classname).each( function() {
			$(this).toggleClass('hidden');
		});
		changeimage('img_'+classname, 'img/up.png', 'img/down.png');  
	}

	$("a#zoom").fancybox({
		'transitionIn'	:	'elastic',
		'transitionOut'	:	'elastic',
		'speedIn'		:	400, 
		'speedOut'		:	200, 
		'overlayShow'	:	true
	});

	$("a.zoomImage").fancybox({
		'transitionIn'	:	'elastic',
		'transitionOut'	:	'elastic',
		'speedIn'		:	400, 
		'speedOut'		:	200, 
		'overlayShow'	:	true
	});
	
	$("a.iframe").fancybox({
		'hideOnContentClick': false,
		'frameWidth': 800,
		'frameHeight': 500
	});
	
	$('#sText').autofill({value: 'Typ hier je zoekopdracht',defaultTextColor:"#009ED8",activeTextColor:"#009ED8"});
}); 


delCartItem = function(id,message){
	if (confirm(message) == true) 
	{
		$('#delet'+id).val('true');
		$('#checkoutform').submit();
	}
};

// JavaScript Document
// Auto-Fill Plugin
// Written by Joe Sak http://www.joesak.com/2008/11/19/a-jquery-function-to-auto-fill-input-fields-and-clear-them-on-click/
(function($){$.fn.autofill=function(options){var defaults={value:'',defaultTextColor:"#666666",activeTextColor:"#666666"};var options=$.extend(defaults,options);return this.each(function(){var obj=$(this);obj.css({color:options.defaultTextColor}).val(options.value).focus(function(){if(obj.val()==options.value){obj.val("").css({color:options.activeTextColor});}}).blur(function(){if(obj.val()==""){obj.css({color:options.defaultTextColor}).val(options.value);}});});};})(jQuery);

function selectHide(){
	selects = document.getElementsByTagName("select");
	for (i = 0; i != selects.length; i++) {
		selects[i].style.visibility = "hidden";
	}
}
function selectShow(){
	selects = document.getElementsByTagName("select");
	for (i = 0; i != selects.length; i++) {
		selects[i].style.visibility = "visible";
	}
}
function toggle(obj) {
	selectShow();
	var el = document.getElementById(obj);
	el.style.display = (el.style.display != 'none' ? 'none' : '' );
    document.mainform.clientEmail.focus();
}
function ntoggle(obj) {
	var el = document.getElementById(obj);
	el.style.display = (el.style.display != 'none' ? 'none' : '' );
}
function getCheckedValue(radioObj) {
	return $("#mainform input[name="+radioObj+"]:checked").val();
}
function getCheckedIndex(radioObj) {
	return $("#mainform input[name="+radioObj+"]:checked").index("input[name="+radioObj+"]");
}
function ShipToggle() {
	var toggleobject = document.getElementById('shiptoggle1');
	var toggleobject2 = document.getElementById('shiptoggle2');
	var togglevalue = getCheckedValue('toggle');
	if(togglevalue == '1'){
		toggleobject.style.display = '';
		toggleobject2.style.display = '';
	}else{
		toggleobject.style.display = 'none';
		toggleobject2.style.display = 'none';
	}
	$("label").inFieldLabels();
}
function ajaxcombo(selectobjID, loadarea, prodid,rowid,selectedvalue,selectedid)
{
	var selectobj=document.getElementById? document.getElementById(selectobjID) : ""
	if (selectobj!="" && selectobj.options[selectobj.selectedIndex].value!="")
	$.ajax({
		data: 
		{
			async: false,
			cache: false,
			prodid: prodid,
			rowid: rowid,
			selectedvalue: selectedvalue,
			selectedid: selectedid,
			id: selectobj.options[selectobj.selectedIndex].value,
			ms: Date()
		},
		url: '/ajaxSelect.asp',
		type: 'GET',
		dataType:'html',
		success: function(data) 
		{
			$('#'+loadarea).html(data);
		}
	});
}
function filterInput(filterType, evt, allowDecimal, allowCustom,maxfieldlenght){ 
    var keyCode, Char, inputField, filter = ''; 
    var alpha = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'; 
    var num   = '0123456789'; 
    // Get the Key Code of the Key pressed if possible else - allow 
    if(window.event){ 
        keyCode = window.event.keyCode; 
        evt = window.event; 
    }else if (evt)keyCode = evt.which; 
    else return true; 
    // Setup the allowed Character Set 
    if(filterType == 0) filter = alpha; 
    else if(filterType == 1) filter = num; 
    else if(filterType == 2) filter = alpha + num; 
    if(allowCustom)filter += allowCustom; 
    // Get the Element that triggered the Event 
    inputField = evt.srcElement ? evt.srcElement : evt.target || evt.currentTarget; 
	if(inputField.value.length >= maxfieldlenght && keyCode != 8) 
	if(window.event){ event.returnValue = false; }else{ return false; }
	if(filter == '')return true; 
    // If the Key Pressed is a CTRL key like Esc, Enter etc - allow 
    if((keyCode==null) || (keyCode==0) || (keyCode==8) || (keyCode==9) || (keyCode==13) || (keyCode==27) )return true; 
    // Get the Pressed Character 
    Char = escape(String.fromCharCode(keyCode));
	//alert(Char);
    // If the Character is a number - allow 
    if((filter.indexOf(Char) > -1)) return true; 
    // Else if Decimal Point is allowed and the Character is '.' - allow 
    else if(filterType == 1 && allowDecimal && (Char == ',') && inputField.value.indexOf(',') == -1)return true; 
    else if(window.event){ event.returnValue = false; }else{ return false; } 
}
/*
Inserts GA using DOM insertion of <script> tag and "script onload" method to
initialize the pageTracker object. Prevents GA insertion from blocking I/O!

As suggested in Steve Souder's talk. See:
http://google-code-updates.blogspot.com/2009/03/steve-souders-lifes-too-short-write.html
*/

/* acct is GA account number, i.e. "UA-5555555-1" */
function gaSSDSLoad (acct) {
	var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www."),
	pageTracker,
	s;
	s = document.createElement('script');
	s.src = gaJsHost + 'google-analytics.com/ga.js';
	s.type = 'text/javascript';
	s.onloadDone = false;
	function init () {
	pageTracker = _gat._getTracker(acct);
	pageTracker._trackPageview();
	}
	s.onload = function () {
	s.onloadDone = true;
	init();
	};
	s.onreadystatechange = function() {
	if (('loaded' === s.readyState || 'complete' === s.readyState) && !s.onloadDone) {
	s.onloadDone = true;
	init();
	}
	};
	document.getElementsByTagName('head')[0].appendChild(s);
}

/* and run it */

