//check numeric input
function isNumberKey(evt)
{
	var charCode = (evt.which) ? evt.which : event.keyCode
	if (charCode > 31 && (charCode < 48 || charCode > 57))
		return false;
	return true;
}

//update/add product to cart
function update_cart(product_id,quantityField,type)
{
  (function($) {
    var param = product_id;
    var quantity = $('#'+quantityField).val();
    if((!quantity || quantity==0) && type == 'drop')
    	quantity = 1;
    if((!quantity || quantity==0) && type != 'drop')
    {
    	alert('Please enter quantity');
    	$('#'+quantityField).focus();
    	return false;
    }
    if(type == 'drop')
    	type = 'add';
      $.ajax({
		        url: SITE_URL + "ajax/shop.update_quantity",
		        async: false,
		        type: "POST",
		        data: ({
		            'product_id': product_id,
		            'quantity':quantity,
		            'type':type
		        }),
		        dataType: "html",
		        success: function(data){
		        	$('#headerTxtEmptyCart').hide();
		        	$('#headerTxtCart').show();
		         	$('#innerQuickcart').fadeOut('slow').load(SITE_URL + 'ajax/shop.quickcart').fadeIn("slow");   
		         	if(document.getElementById('view_cart_product_list'))
		         		$('#view_cart_product_list').fadeOut('slow').load(SITE_URL + 'ajax/shop.update_view_cart').fadeIn("slow");
		         	//0006384: Show cart on add to cart 
		         	if(type == 'add')
		         		show_make_the_cart_popup();
		         	//end 0006384: Show cart on add to cart 
		        }
		    });
  })(jQuery);
}

//remove product
function remove_product_in_cart(product_id)
{
  (function($) {
      	$.ajax({
		        url: SITE_URL + "ajax/shop.delete_cart",
		        async: false,
		        type: "POST",
		        data: ({
		            'product_id': product_id
		        }),
		        dataType: "html",
		        success: function(data){
		        	if(data == 'Cart is Empty')
		         		$('.quickcartArea').fadeOut('slow').load(SITE_URL + 'ajax/shop.quickcart').fadeIn("slow");   
		         	else
		         		$('#innerQuickcart').fadeOut('slow').load(SITE_URL + 'ajax/shop.quickcart').fadeIn("slow");   
		         	if(document.getElementById('view_cart_product_list'))
		         		$('#view_cart_product_list').fadeOut('slow').load(SITE_URL + 'ajax/shop.update_view_cart').fadeIn("slow");   
		        }
		    });
  })(jQuery);
}

function frm_user_login_reset() {
	$("#username").val('');
	$("#password").val('');
	$("#username").focus();
	return false;
}

function frm_user_forgot_password_reset() {
	$("#email").val('');
	$("#password").val('');
	$("#password2").val('');
	return false;
}

function frm_user_change_password_reset() {
	//$("#username").val('');
	$("#password_old").val('');
	$("#password").val('');
	$("#password2").val('');
	$("#password_old").focus();
	return false;
}

function check_user(frm_type) {
	var firstname	= $("#firstname").val();
	var lastname	= $("#lastname").val();
	var email		= $("#email").val();
	var security	= $("#security").val();
	var password	= $("#password").val();
	var password2	= $("#password2").val();
	
	if(frm_type == 'register') {
		var username	= $("#username").val();
		
		if(username == "") {
			alert("Please input data");
			$('#username').focus();
			return false;	
		}
		
		if(password == "") {
			alert("Please input data");
			$('#password').focus();
			return false;	
		}
		
		if(password2 != password) {
			alert("Check password");
			$('#password2').focus();
			return false;
		}
	}
	
	if((password != "" || password2 != "") && password2 != password) {
		alert("Check password");
		$('#password').focus();
		return false;
	}
	
	if(firstname == "") {
		alert("Please input data");
		$('#firstname').focus();
		return false;	
	}
	
	if(lastname == "") {
		alert("Please input data");
		$('#lastname').focus();
		return false;	
	}
	
	if(email == "" || !validateEmail(email)) {
		alert("Please input a valid email");
		$('#email').focus();
		return false;	
	}
	
	if(security == "") {
		alert("Please input data");
		$('#security').focus();
		return false;	
	}
	
	$('#frm_user').submit();
}

function check_user_login() {
	
	var username	= $("#username").val();
	var password	= $("#password").val();
	if(username == "") {
		alert("Please input data.");
		$('#username').focus();
		return false;	
	}
	
	if(password == "") {
		alert("Please input data.");
		$('#password').focus();
		return false;	
	}
	
	$('#frm_user').submit();
}

function check_user_forgot_password() {
	var email		= $("#email").val();
	
	if(email == "" || !validateEmail(email)) {
		alert("Invalid email");
		$("#email").focus();
		return false;	
	}
	
	$('#frm_user').submit();
}

function check_user_change_password() {
	var password_old	= $("#password_old").val();
	var password		= $("#password").val();
	var password2		= $("#password2").val();
	
	if(password_old == "") {
		alert("Please input data.");
		$("#password_old").focus();
		return false;	
	}
	
	if(password == "") {
		alert("Please input data.");
		$("#password").focus();
		return false;	
	}
	
	if(password2 == "") {
		alert("Please input data.");
		$("#password2").focus();
		return false;	
	}
	
	if(password != password2) {
		alert("New password and confirm not match.");
		$("#password").focus();
		return false;	
	}
	
	$('#frm_user').submit();
}

function validateEmail(id)
{
	var emailPattern = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+.[a-zA-Z]{2,4}$/;
	return emailPattern.test(id);
}

/**
* This function is used for News/Testimonials
*/
function show_article(id){
    $('#article_short_'+id).hide();
    $('#article_full_'+id).show(300);
}

/**
* This function is used for News/Testimonials
*/
function hide_article(id){
    $('#article_short_'+id).show();
    $('#article_full_'+id).hide(300);
}

/**
* toogle order history
*/
function toggleOrder(id){
	(function($) {
		var src_add = BASE_URL + 'application/assets/images/plus_icon.png';
		var src_minus = BASE_URL + 'application/assets/images/minus_icon.png';
		var current_scr = $('img#imgCollapse'+id).attr('src');
		
		$('tr.hide_order_items').hide();
		$('img.img_collapse').attr('src', src_add);
		if(current_scr.indexOf('plus_icon.png') > -1){
		    $('#orderItems'+id).show();
		    $('img#imgCollapse'+id).attr('src', src_minus);
		}
	})(jQuery);
}

/**
*	Go to search product by name
*/
function go_to_search_product()
{
	(function($) {
		if(!$('#searchWord').val())
		{
			alert("Please enter product name to search");
			$('#searchWord').focus();
			return false;
		}
		else
			$('#frmSearchProduct').submit();
	})(jQuery);
}

function show_customer_login_area(idContent)
{
	(function($) {
    		$('#username_login').val('');
    		$('#password_login').val('');
    		$('#isLogin').val(1);
    		$('#'+idContent).show();
    })(jQuery);
}

function hide_customer_login_area(idContent)
{
	(function($) {
    	$('#'+idContent).hide();
    	$('#isLogin').val(0);
    })(jQuery);
}

function ajax_customer_login()
{
	(function($) {
		if($('#username_login').val() == '')
		{
			alert('Please enter username');
			$('#username_login').focus();
			return false;
		}
		else if($('#password_login').val() == '')
		{
			alert('Please enter password');
			$('#password_login').focus();
			return false;
		}
		else
		{
			$.ajax({
		        url: SITE_URL + "ajax/mod.users.ajax_user_login",
		        async: false,
		        type: "POST",
		        data: ({
		            'username': $('#username_login').val(),
		            'password':$('#password_login').val()
		        }),
		        dataType: "html",
		        success: function(data){
		        	if(data == 'OK')
		        		window.location.reload();
		        	else	
		        	{
		        		alert(data);
		        		$('#password_login').focus();
		        	}
		        }
		    });
		}
	})(jQuery);
}


function add_order_history_to_cart(product_id,order_id,quantityField){
	(function($) {
		var quantity = $('#'+quantityField).val();
		if(!quantity || quantity == 0)
		{
			alert('Please enter quantity');
	    	$('#'+quantityField).focus();
	    	return false;
		}
		else
		{
		    var url = $('#frm_order_history').attr('action')+'/'+product_id+'/'+order_id+'/'+quantity;
		    var queryString = $('#frm_order_history').formSerialize(); 
		    $.post(url, queryString, function(data){
		        $('#headerTxtEmptyCart').hide();
	        	$('#headerTxtCart').show();
	         	$('#innerQuickcart').fadeOut('slow').load(SITE_URL + 'ajax/shop.quickcart').fadeIn("slow");
		    }); 
		    return false;
		}
    })(jQuery);
}

function add_product_detail_to_cart(product_id,quantityField){
	(function($) {
		var quantity = $('#'+quantityField).val();
		if(!quantity || quantity == 0)
		{
			alert('Please enter quantity');
			$('#'+quantityField).focus();
			return false;
		}
	    var url = $('#frm_product_detail').attr('action')+'/'+product_id+'/'+quantity;
	    var queryString = $('#frm_product_detail').formSerialize(); 
	    $.post(url, queryString, function(data){
	        $('#headerTxtEmptyCart').hide();
        	$('#headerTxtCart').show();
         	$('#innerQuickcart').fadeOut('slow').load(SITE_URL + 'ajax/shop.quickcart').fadeIn("slow");
         	//0006384: Show cart on add to cart 
         	show_make_the_cart_popup();
	    }); 
	    return false;
    })(jQuery);
}

function post_reviews()
{
	(function($) {
		var product_id = $('#review_product_id').val();
		if($('#review_name').val() == '')
		{
			alert('Please enter name');
			$('#review_name').focus();
			return false;
		}
		else if($('#review_email').val() == '')
		{
			alert('Please enter email');
			$('#review_email').focus();
			return false;
		}
		else if(!validateEmail($('#review_email').val())) {
			alert("Invalid email");
			$('#review_email').focus();
			return false;	
		}
		else if($('#review_message').val() == '')
		{
			alert("Please enter review");
			$('#review_message').focus();
			return false;	
		}
		else if($('#review_security').val() == '')
		{
			alert("Please enter security code");
			$('#review_security').focus();
			return false;	
		}
		else
		{
		    var url = $('#frm_post_reviews').attr('action');
		    var queryString = $('#frm_post_reviews').formSerialize(); 
		    $.post(url, queryString, function(data){
		        if(data == 'OK')
		        {
		        	$('#msg_error').html('');
		        	$('#review_name').val('')
		        	$('#review_email').val('')
		        	$('#review_message').val('')
		        	$('#review_security').val('')
		        	$('#content_reviews').fadeOut('slow').load(SITE_URL + 'ajax/shop.product_reviews/'+product_id).fadeIn("slow");
		        	$('#review_captcha').fadeOut('slow').load(SITE_URL + 'ajax/shop.products.reload_captcha').fadeIn("slow");
					//alert("A new review has been entered on your website. This will not be visible to the public until it is approved");
		        }
		        else
		        {
		        	$('#msg_error').html(data);
		        	$('#review_captcha').fadeOut('slow').load(SITE_URL + 'ajax/shop.products.reload_captcha').fadeIn("slow");
					//alert("Can't post. Please try again");
		        }
		    }); 
		}
	    return false;
    })(jQuery);
}

function paging_product_reviews(url)
{
	(function($) {
		$('#content_reviews').fadeOut('slow').load(url).fadeIn("slow");
    })(jQuery);
}

function open_video(video_link) {
	//add flash video
	//var my_file = base_url + 'application/assets/scripts/FLVPlayer.swf';
	//var my_source = base_url + 'application/assets/scripts/Evian_BABY_DANCE.flv';
	
	//var my_file = 'http://www.youtube.com/e/VIDEO_ID?enablejsapi=1&playerapiid=ytplayer';
	//var my_file = 'http://www.youtube.com/v/u1zgFlCw8Aw?version=3';
	//var my_file = 'http://www.youtube.com/watch?v=YghrQ27xuWE&feature=related';
	
	//var my_file = 'http://www.youtube.com/v/YghrQ27xuWE?version=3';
	var my_file = video_link.replace("watch?v=", "v/")
	var my_source = video_link;
	
	var so = new SWFObject(my_file, "mymovie_video", "550", "380", "8", "#ffffff");
	
	so.addParam("quality", "high");
	so.addParam("wmode", "transparent");
	so.addVariable('autostart', 'true');
	so.addVariable('file', my_file);
	so.write("mymovie_video");
}

function close_block()
{
	$.unblockUI();   
}

function add_options_product_to_cart(product_id, option_id, option_value_id)
{
	var old_option_value = $('#old_option_value'+product_id+option_id).val();
	$.ajax({
        url: SITE_URL + "ajax/shop.view_cart.add_options_to_cart",
        async: false,
        type: "POST",
        data: ({
            'product_id': product_id,
            'option_id':option_id,
            'option_value_id':option_value_id,
            'old_option_value':old_option_value
        }),
        dataType: "html",
        success: function(data){
        	
        }
    });
}

function ajax_payment_voucher_check()
{
	var voucher_number 	= $('#voucher_number').val();
	var code_minmax		= check_voucher_number(voucher_number);
	if(code_minmax == 0) {
		alert('Please check voucher number');
		return false;		
	}
	(function($) {
		
		code_minmax_arr		= code_minmax.split("|");
		var voucher_code 	= code_minmax_arr[0];
		var voucher_minmax	= code_minmax_arr[1];
		
		$.ajax({
			url: SITE_URL + "ajax/shop.payment.ajax_payment_voucher_check",
			async: false,
			type: "POST",
			data: ({
				'voucher_number': $('#voucher_number').val(),
				'hid_discount_total': $('#hid_discount_total').val(),
				//'voucher_value':$('#voucher_value').val()
				'voucher_code': voucher_code,
				'voucher_minmax': voucher_minmax
			}),
			dataType: "html",
			success: function(data){
				var res = data.split("|");	
				if(res[0] == 'OK') {
					if(res[3] > 0) {
						var str = "This voucher requires a minimum order total of $" + res[3];
						$("#min_spend_msg").html(str);
						$("#min_spend_msg").show();
						
						$('#voucher_number').val('');
						$('#voucher_value').val('');
						$("#btn_voucher").attr("disabled", "disabled");
					} else {
						$("#min_spend_msg").hide();
						$("#btn_voucher").removeAttr("disabled");
						
						if(res[1] == '1') {
							$('#voucher_value').val(res[2]);
							//$('#voucher_value').val(res[2].numberFormat('$#,###.##'));
							$("#voucher_value").attr("disabled", "disabled");
						} else {
							$('#voucher_value').val();
							$("#voucher_value").removeAttr("disabled");
						}	
					}
				}
				else	
				{
					alert(res[1]);
					$('#voucher_number').val('');
					$('#voucher_value').val('');
					$('#voucher_number').focus();
					$("#min_spend_msg").hide();
				}
			}
		});
		
	})(jQuery);
}

/*function check_voucher_number(val)  {	
	var code = val.substr(0,2);
	var num = val.substr(2,val.length-2);

	if(val.length <= 2 || isNaN(num)) {
		return false;
	}
	return true;
}*/

function check_voucher_number(val)  {	
	var code = val.substr(0,2);
	var num = val.substr(2,val.length-2);
	
	if(val.length > 2 && !isNaN(num))
		return code + '|' + num;
		
	code = val.substr(0,3);
	num = val.substr(3,val.length-3);
	if(val.length > 3 && !isNaN(num)) 
			return code + '|' + num;	
	return 0;
}

function ajax_payment_voucher(total,account)
{
	
	(function($) {
		var voucher_value	= $('#voucher_value').val();
		var voucher_number	= $('#voucher_number').val();
		voucher_value = voucher_value.replace(',','');
		voucher_value = parseFloat(voucher_value);
		
		if(!isNaN(voucher_value)){
			if(voucher_value > 0) {	
				total = parseFloat($('#order_total').html().replace(',',''));
				//alert (total); return false;
				var total_voucher = total - voucher_value;
				$('#voucher_row_value').html(voucher_value).format({format:"#,###.00", locale:"us"});				
				$('#voucher_row_total').html(total_voucher).format({format:"#,###.00", locale:"us"});
				
				$('#hid_voucher').val(voucher_value);
				$('#hid_total').val(total_voucher);
				
			 	if(voucher_value > total) {
					var str = 'Your voucher value is greater than the total order amount. We cannot give credit for the remainder and it will be lost. Do you agree?';
					if(confirm(str)) {
						$('#voucher_row_total').html('0.00');	
						$('#hid_total').val('0');
						if(account != '1') {
							disable_card();
						}
					}
				} else {
					enable_card();
				}
				
				$("#voucher_row").show();
				$("#total_row").show();
			}
		}
		
	})(jQuery);
}

function disable_card() {
	$("#tbl_card_payment").css("backgroundColor","#999999");
	$("#card_holder_name").attr("disabled", "disabled");
	$("#card_number").attr("disabled", "disabled");
	$("#expiry_month").attr("disabled", "disabled");
	$("#expiry_year").attr("disabled", "disabled");
	$("#cvc").attr("disabled", "disabled");
}

function enable_card() {
	$("#tbl_card_payment").css("backgroundColor","#FFF");
	$("#card_holder_name").removeAttr("disabled");
	$("#card_number").removeAttr("disabled");
	$("#expiry_month").removeAttr("disabled");
	$("#expiry_year").removeAttr("disabled");
	$("#cvc").removeAttr("disabled");
}

/** check show/hide quickcart   ---> done new request 0006318: Quick Cart  ****/
function toogle_quickcart(type)
{
	if($('#floatQuickcartSlide').attr('rel') == 'off')
		type = 'on';
	else
		type = 'off';
	$('#floatQuickcartSlide').attr('rel',type);
	$.ajax({
		url: SITE_URL + "ajax/shop.quickcart.check_toogle_quickcart",
		async: false,
		type: "POST",
		data: ({
			'toggle_type': type
		}),
		dataType: "html",
		success: function(data){
			if(type == 'on')
			{
				$('#floatQuickcartSlide').show('slow');
				$('#innerQuickcart').load(SITE_URL + 'ajax/shop.quickcart/toggle'); 
			}
			else
				$('#floatQuickcartSlide').hide('slow');
		}
	});
}
//0006384: Show cart on add to cart 
function show_make_the_cart_popup()
{
	$.ajax({
		url: SITE_URL + "ajax/shop.quickcart.check_toogle_quickcart",
		async: false,
		type: "POST",
		data: ({
			'toggle_type': 'on'
		}),
		dataType: "html",
		success: function(data){
			if($('#floatQuickcartSlide').attr('rel') == 'off')
			{
				$('#floatQuickcartSlide').show('slow');
				$('#innerQuickcart').load(SITE_URL + 'ajax/shop.quickcart/toggle'); 
			}
		}
	});
	$('#floatQuickcartSlide').attr('rel','on');
}

function check_frm_school_online() {
	var url = $('#frm_school_online').attr('action');
    var queryString = $('#frm_school_online').formSerialize(); 
    $.post(url, queryString, function(data){
        if(data.match('<success>')) {
            alert("Thank you for your submission. We will be in contact with you shortly");
            $('#div_school_form').load(SITE_URL + 'ajax/mod.school.school_form');
        } else {
            $('#div_school_form').html(data);
        }
    });
    return false;
}
