$(document).ready(function() {
	var cart_detail_on = false;
	var pagebase = '';
	
	function getFilename() {
        var file_name = document.location.href;
        var end = (file_name.indexOf("?") == -1) ? file_name.length : file_name.indexOf("?");
        return file_name.substring(file_name.lastIndexOf("/")+1, end);
    }
	
	if(getFilename() == 'index.php' || getFilename() == '') {
		pagebase = 'cd_business_cards/';
	} 

	/*$('body').click(function(e) {
		if(cart_detail_on) {					
			$('#header #cart #detail').slideUp('fast');
			$('#header #cart img').attr('src', 'img/cart_dropdown.png');
			//$('#header #cart #detail').css('display', 'none');
			cart_detail_on = false;
		}
	});*/
	
	$('#header #cart img').click(function(e) {
		if(!cart_detail_on) {
			// Get cart detail			
			$('#header #cart #detail').css('display', 'block');
			$('#header #cart #detail').hide(0);
			$('#header #cart').css('backgroundImage', 'url(' + pagebase + 'img/cart_blob_active.png)');
			$('#header #cart #detail').slideDown('slow');
			$('#header #cart img').not('#header #cart #detail img').attr('src', '' + pagebase + 'img/cart_up.png');
			
			cart_detail_on = true;
		} else {
			$('#header #cart #detail').slideUp('fast');
			$('#header #cart').css('backgroundImage', 'url(' + pagebase + 'img/cart_blob.png)');
			$('#header #cart img').not('#header #cart #detail img').attr('src', '' + pagebase + 'img/cart_dropdown.png');
			
			//$('#header #cart #detail').css('display', 'none');
			cart_detail_on = false;
		}
		e.preventDefault();
	});
	
	// Popout menu
	$('#nav ul li').not('#nav ul li ul li').hover(function(e) {
		$('ul', this).css('display', 'inline-block');
		$('a', this).not('#nav ul li ul li a').css('backgroundImage', 'url(img/nav_sep_active.png)');
		$('a', this).not('#nav ul li ul li a').css('color', '#fff');
	}, function(e) {
		$('ul', this).css('display', 'none');
		if (! $(this).is('.active')) {
			$('a', this).not('#nav ul li ul li a').css('backgroundImage', 'url(img/nav_sep.png)');
			$('a', this).not('#nav ul li ul li a').css('color', '#862fa7');
		}
	});
	
	/*$('#header #cart #detail').mouseout(function() {
		$('#header #cart #detail').slideUp('fast');
			$('#header #cart img').attr('src', 'img/cart_dropdown.png');
			$('#header #cart').css('backgroundImage', 'url(img/cart_blob.png)');
			//$('#header #cart #detail').css('display', 'none');
			cart_detail_on = false;
	});*/
	
	$("#examples").scrollable({
		size: 4,
		interval: 2000,
		loop: true,
		speed: 500
	});
	
	$("#header_cd_business_cards").scrollable({
		size: 1,
		interval: 2000,
		loop: true,
		speed: 500
	});	
	
	$("input[name^='qty']").focus(function(e) {
		if($(this).val() == 'Quantity') {
			$(this).val('');
		}
	});
	$("input[name^='qty']").blur(function(e) {
		if($(this).val() == '') {
			$(this).val('Quantity');
		}
	});
	
	$('.addprod').click(function(e) {
		e.preventDefault();
		var prodid = $(this).attr('name');
		var qty = $('#qty'+prodid).val();
		//alert(qty);
		if(isNaN(qty) || qty <= 0) {
			return;	
		}
		//alert('adding ' +  qty + ' of product ' + prodid);
		
		var nocache = new Date().getTime(); 
		
		$.post("add_to_basket.php", { prodid: prodid, qty: qty, nocache: nocache},
			function(data){
				//alert("Data Loaded: " + data);
				
				/*alert(qty + ' of product ' + prodid + ' have been added to your basket.\n\nYou now have ' + parts[0] + ' items in your cart to a total of ' + parts[1] + '.');
				var s = '';
				if(parts[0]>1) {
					var s = 's';	
				}*/
				
				var parts = data.split('-');
				var s = '';
				if(parts[0]>1) {
					var s = 's';	
				}
				
				//alert(qty + ' of product ' + prodid + ' have been added to your basket.\n\nYou now have ' + data + ' items in your cart.');
				
				$.facebox(parts[1]);
				
				$('#header #cart p').not('#header #cart #detail p').html('Your Basket<br />' + parts[0] + ' Item' + s);
				
				$.get("basket_detail.php?nocache=" + nocache, function(data){
					$('#header #cart #detail').html(data);
					$.get("basket_get_total.php?nocache=" + nocache, function(data){
						//alert(data);
						$('#header #cart span').not('#header #cart #detail span').html(data);
					});
				});
				$('#qty'+prodid).val('Quantity');
				
				
		});
		
	});
	
	// Checkout form validation
	$('form.checkout #checkout').click(function(e) {
		var error = false;
		$.each($("form.checkout input.req, form.checkout textarea.req, form.checkout select.req"), function(i,v) { 
			if($(this).val() == '') {
				$(this).addClass('error');
				error = true;
			} else {
				if($(this).attr('name') == 'email') {
					if(!emailOk($(this))) {
						$(this).addClass('error');
						error = true;	
					} else {
						$(this).removeClass('error');
					}
				} else {
					$(this).removeClass('error');
				}
			}			
		});
		$('p.error').remove();
		if(error) {
			$('<p class="error">The highlighted fields are required. Please ensure they are completed.</p>').insertBefore('form.checkout');
			$('p.error').hide(0);
			$('p.error').slideDown(500);
			e.preventDefault();
		}
	});
	
	// Checkout form validation
	$('form#CD-R_Enquiry_Form #send').click(function(e) {
		var error = false;
		$.each($("form#CD-R_Enquiry_Form input.req, form#CD-R_Enquiry_Form textarea.req"), function(i,v) { 
			if($(this).val() == '') {
				$(this).addClass('error');
				error = true;
			} else {
				if($(this).attr('name') == 'Email_Address') {
					if(!emailOk($(this))) {
						$(this).addClass('error');
						error = true;	
					} else {
						$(this).removeClass('error');
					}
				} else {
					$(this).removeClass('error');
				}
			}			
		});
		$('p.error').remove();
		if(error) {
			$('<p class="error">The highlighted fields are required. Please ensure they are completed.</p>').insertBefore('form#CD-R_Enquiry_Form table');
			$('p.error').hide(0);
			$('p.error').slideDown(500);
			e.preventDefault();
		}
	})
	
	
	// Spamblock email
	var user = 'sales';
	var domain = 'ebusiness-cards';
	var extension = 'co.uk';
	$('span.email').html('<a href="mailto:' + user + '@' + domain + '.' + extension + '">' + user + '@' + domain + '.' + extension + '</a>');

});

function emailOk(field) {
	var emailat = field.val().indexOf("@");
   	var emaildot = field.val().indexOf(".", emailat+1);
   	if(emailat < 0 || emaildot < emailat) {
		return false;
	}	
	return true;
}
