// Collection of various scripts used throughout the site

// Obfuscate email address - remove span

	$(document).ready(function(){
		$(".hide").empty();
	});

// Opens link in new window whilst retaining validity

	$(function() {
		$('a[rel*=external]').click( function() {
			window.open(this.href);
			return false;
		});
	});
	
// Lightbox

	$(document).ready(function() {
		$("a.zoom").fancybox({
			'transitionIn'	: 'elastic',
			'transitionOut'	: 'elastic',
			'easingIn'      : 'easeOutBack',
			'easingOut'     : 'easeInBack'
		});
	});

// Toggle Fade

(function($) {
  $.fn.toggleFade = function(settings)
  {
  	settings = jQuery.extend(
  		{
        speedIn: "normal",
        speedOut: settings.speedIn
  		}, settings
  	);
  	return this.each(function()
  	{
  	  var isHidden = jQuery(this).is(":hidden");
      jQuery(this)[ isHidden ? "fadeIn" : "fadeOut" ]( isHidden ? settings.speedIn : settings.speedOut);
    });
  };
})(jQuery);
	
// Sign In Form

$(document).ready(function(){
		$("#sign_in_box, #sign_in_form").hide();			   
	});
	
	$(function() {
		$("#sign_in").click(function() {
				$("#sign_in_box, #sign_in_form").toggleFade({ speedIn : "fast"});
				$(this).toggleClass("open");
				$("#login_email").toggleClass("focused");
				$("#login_email").focus();  
				if(!$("#login_email").is(".focused")) $(this).focus();
				return false;
			});
	});
	
	$(function() {
		$("#sign_in_box").click(function() {
				$("#sign_in_box, #sign_in_form").toggleFade({ speedIn : "fast"});
				$("#sign_in").toggleClass("open");
				$("#login_email").toggleClass("focused");
			});
	});
	
// Validate all forms with class="validate" 

	$(document).ready(function(){
		$(".validate").validate();
	});
	
// jump Menu 

	function MM_jumpMenu(targ,selObj,restore){ //v3.0
	  eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
	  if (restore) selObj.selectedIndex=0;
	}
	
// Ajax Edit Addresses

$(document).ready(function(){
	$("#change_billing_address").click(function() {
		$.get('../change_billing_address.php', function(data) {
			$('#billing_address').html(data);
		});
		return false;
	});
});

$(document).ready(function(){
	$("#change_delivery_address").click(function() {
		$.get('../change_delivery_address.php', function(data) {
			$('#delivery_address').html(data);
		});
		return false;
	});
});

// Equalheight 
	
	$(document).ready(function(){
		$(".bottom_box .content").equalHeights();
	});

// ALL AJAX STARTS HERE

//fuction to return the xml http object 

	function getXMLHTTP() { 
		var xmlhttp=false;	
		try{
			xmlhttp=new XMLHttpRequest();
		}
		catch(e)	{		
			try{			
				xmlhttp= new ActiveXObject("Microsoft.XMLHTTP");
			}
			catch(e){
				try{
				req = new ActiveXObject("Msxml2.XMLHTTP");
				}
				catch(e1){
					xmlhttp=false;
				}
			}
		}
			
		return xmlhttp;
	}

//function to change div

	function getPackaging(strURL) {		
		
		var req = getXMLHTTP();
		
		if (req) {
			
			$.prettyLoader.show();
			
			req.onreadystatechange = function() {
				if (req.readyState == 4) {
					// only if "OK"
					if (req.status == 200) {	
						document.getElementById('packaging_change').innerHTML=req.responseText;						
					} else {
						alert("There was a problem while using XMLHTTP:\n" + req.statusText);
					}
				}				
			}	
			
			$.prettyLoader.hide();
			
			req.open("GET", strURL, true);
			req.send(null);
		}			
	}
	
// Copy Delivery Addtess 

function updateDeliveryAddress() { 
	if ($("#copyaddress").is(':checked')) { 
		// Checked, copy values 	
		$("input#delivery_address_1").val($("input#billing_address_1").val()); 
		$("input#delivery_address_2").val($("input#billing_address_2").val()); 
		$("input#delivery_address_3").val($("input#billing_address_3").val());
		$("input#delivery_town_city").val($("input#billing_town_city").val());
		$("input#delivery_county").val($("input#billing_county").val());
		$("input#delivery_postcode").val($("input#billing_postcode").val());
	}
	else { 
		// Clear on uncheck 
		$("input#delivery_address_1").val(""); 
		$("input#delivery_address_2").val(""); 
		$("input#delivery_address_3").val("");
		$("input#delivery_town_city").val("");
		$("input#delivery_county").val("");
		$("input#delivery_postcode").val("");
	} 
}

//function updateBillingAddress() { 
//	if ($("input#copyaddress").is(':checked')) { 
//		// Checked, copy values 	
//		$("input#billing_address_1").val($("input#delivery_address_1").val()); 
//		$("input#billing_address_2").val($("input#delivery_address_2").val()); 
//		$("input#billing_address_3").val($("input#delivery_address_3").val());
//		$("input#billing_town_city").val($("input#delivery_town_city").val());
//		$("input#billing_county").val($("input#delivery_county").val());
//		$("input#billing_postcode").val($("input#delivery_postcode").val());
//	} 
//}

// Hide Billing Address

function showDeliveryAddress() {
	if ($("#copyaddress").is(':checked')) {
		$('#delivery_dets').hide(400);
		return false;
	}
	else {
		$('#delivery_dets').show(400);
		return false;
	}
}

$(document).ready(function(){ 
						   
    $("#delivery_dets").hide();
	
	$("#copyaddress").change(updateDeliveryAddress);
	
	$("#copyaddress").change(showDeliveryAddress);
	
	//$("#delivery_dets input").keyup(updateBillingAddress);
	
	//$("#delivery_dets select").change(updateBillingAddress);
	
	$("#billing_dets input").keyup(updateDeliveryAddress);
	
	$("#billing_dets select").change(updateDeliveryAddress);
	
	$("#copyaddress").click(function(){
		if($.browser.msie){
			this.blur();
		}
	});
	
});	

// Bob Captcha

	function getBobCaptcha(strURL) {
		
		var req = getXMLHTTP();
		
		if (req) {
			
			$.prettyLoader.show();
			
			req.onreadystatechange = function() {
				if (req.readyState == 4) {
					// only if "OK"
					if (req.status == 200) {						
						document.getElementById('bobcaptcha').innerHTML=req.responseText;
					} else {
						alert("There was a problem while using XMLHTTP:\n" + req.statusText);
					}
				}				
			}	
			
			$.prettyLoader.hide();
			
			req.open("GET", strURL, true);
			req.send(null);
		}			
	}
	
	function getBobCaptchaText(strURL) {
		
		var req = getXMLHTTP();
		
		if (req) {
			
			req.onreadystatechange = function() {
				if (req.readyState == 4) {
					// only if "OK"
					if (req.status == 200) {						
						document.getElementById('bobcaptchatext').innerHTML=req.responseText;						
					} else {
						alert("There was a problem while using XMLHTTP:\n" + req.statusText);
					}
				}				
			}			
			req.open("GET", strURL, true);
			req.send(null);
		}			
	}
