
// Simple Pop out DIV
var viewport = {
    o: function() {
        if (self.innerHeight) {
			this.pageYOffset = self.pageYOffset;
			this.pageXOffset = self.pageXOffset;
			this.innerHeight = self.innerHeight;
			this.innerWidth = self.innerWidth;
		} else if (document.documentElement && document.documentElement.clientHeight) {
			this.pageYOffset = document.documentElement.scrollTop;
			this.pageXOffset = document.documentElement.scrollLeft;
			this.innerHeight = document.documentElement.clientHeight;
			this.innerWidth = document.documentElement.clientWidth;
		} else if (document.body) {
			this.pageYOffset = document.body.scrollTop;
			this.pageXOffset = document.body.scrollLeft;
			this.innerHeight = document.body.clientHeight;
			this.innerWidth = document.body.clientWidth;
		}
		return this;
    },
    init: function(el) {
    	jQuery(el).css("display","");
        jQuery(el).css("left",Math.round(viewport.o().innerWidth/2) + viewport.o().pageXOffset - Math.round(jQuery(el).width()/2));
        jQuery(el).css("top",Math.round(viewport.o().innerHeight/2) + viewport.o().pageYOffset - Math.round(jQuery(el).height()/2));
    }
};// End Simple Pop out DIV
//Get X and Y position of an element
var elementPos = {
	init: function(el)
	{
		xPos = document.getElementById(el).offsetLeft;
		tempEl = document.getElementById(el).offsetParent;
		while (tempEl != null) {
			xPos += tempEl.offsetLeft;
			tempEl = tempEl.offsetParent;
		}
		
		yPos = document.getElementById(el).offsetTop;
		tempEl = document.getElementById(el).offsetParent;
		while (tempEl != null) {
			yPos += tempEl.offsetTop;
			tempEl = tempEl.offsetParent;
		}
		yPos = yPos - 250;
		window.scroll(xPos,yPos); 
  }
};//End Get X and Y position of an element    

//Edit State from Country
function dropdownCountry(country_name,divid){
	jQuery.ajax({
    	type: "POST",
    	url: webpath+"ecompro/ajax/ecommerce.php",
    	data: 'pageaction=showState&country_name='+country_name+'&divid='+divid,
    	success: function(responseText, responseStatus) {
			jQuery('#'+divid).html(responseText);
        }
     });
}//End edit State from Country
//Apply Coupon Code to Cart Total
function applyCoupon(){
	var cookie_cartid = jQuery('#cookie_cartid').val();
	var coupon_code = jQuery('#coupon_code').val();
	if(coupon_code==''){
    	jQuery('.couponError').css("display","");
		return false;
	}
	jQuery.ajax({
    	type: "POST",
    	url: webpath+"ecompro/ajax/ecommerce.php",
    	data: 'pageaction=applyCoupon&coupon_code='+coupon_code+'&cart_id='+cookie_cartid,
    	success: function(responseText, responseStatus) {
	    	jQuery('#coupon_code').val('');
    		jQuery('.couponError').css("display","none");
			jQuery('.CartDetail').html(responseText);
        }
     });
}//End Apply Coupon Code to Cart Total

//Cancel Update Checkout Info
function CancelUpdate(divid){
	jQuery.ajax({
    	type: "POST",
    	url: webpath+"ecompro/ajax/ecommerce.php",
    	data: 'pageaction=CancelUpdate&divid='+divid,
    	success: function(responseText, responseStatus) {
			jQuery('.'+divid).html(responseText);
        }
     });
}//End Cancel Update Checkout Info
//Edit Billing Info
function editBilling(){
	var cookie_cartid = jQuery('#cookie_cartid').val();
	jQuery.ajax({
    	type: "POST",
    	url: webpath+"ecompro/ajax/ecommerce.php",
    	data: 'pageaction=editBilling&cart_id='+cookie_cartid,
    	success: function(responseText, responseStatus) {
			jQuery('.BillTable').html(responseText);
        }
     });
}//End Edit Billing Info
//Edit Shipping Info
function editShipping(){
	var cookie_cartid = jQuery('#cookie_cartid').val();
	jQuery.ajax({
    	type: "POST",
    	url: webpath+"ecompro/ajax/ecommerce.php",
    	data: 'pageaction=editShipping&cart_id='+cookie_cartid,
    	success: function(responseText, responseStatus) {
			jQuery('.ShipTable').html(responseText);
        }
     });
}//End Edit Shipping Info
//Edit Delivery Method
function editDelivery(){
	jQuery.ajax({
    	type: "POST",
    	url: webpath+"ecompro/ajax/ecommerce.php",
    	data: 'pageaction=EditDelivery',
    	success: function(responseText, responseStatus) {
			jQuery('.DeliveryTable').html(responseText);
        }
     });
}//End Edit Delivery Method
//Edit Delivery Method
function SetShipping(shippingid){
	var cookie_cartid = jQuery('#cookie_cartid').val();
	jQuery.ajax({
    	type: "POST",
    	url: webpath+"ecompro/ajax/ecommerce.php",
    	data: 'pageaction=SetShipping&shipping_id='+shippingid+'&cart_id='+cookie_cartid,
    	success: function(responseText, responseStatus) {
	    	if(responseText!=''){
				jQuery('.CartDetail').html(responseText);
			}
        }
     });
}//End Edit Delivery Method

function SaveCustNote(){
	var cookie_cartid = jQuery('#cookie_cartid').val();
	var cust_note = jQuery('#cust_note').val();
	cust_note = escape(cust_note);
	jQuery.ajax({
    	type: "POST",
    	url: webpath+"ecompro/ajax/ecommerce.php",
    	data: 'pageaction=SaveNote&custnote='+cust_note+'&cart_id='+cookie_cartid,
    	success: function(responseText, responseStatus) {
        }
     });		
}
//Update Cart Total
function UpdateCheckout(){
	var cookie_cartid = jQuery('#cookie_cartid').val();
	jQuery.ajax({
    	type: "POST",
    	url: webpath+"ecompro/ajax/ecommerce.php",
    	data: 'pageaction=UpdateCheckout&cart_id='+cookie_cartid,
    	success: function(responseText, responseStatus) {
			jQuery('.CartDetail').html(responseText);
        }
     });
	jQuery.ajax({
    	type: "POST",
    	url: webpath+"ecompro/ajax/ecommerce.php",
    	data: 'pageaction=DeliveryList',
    	success: function(responseText, responseStatus) {
			jQuery('.DeliveryTable').html(responseText);
        }
     });
}//End Update Cart Total
//Update Cart Total
function UpdateBilling(){
	var cookie_cartid = jQuery('#cookie_cartid').val();
	jQuery.ajax({
    	type: "POST",
    	url: webpath+"ecompro/ajax/ecommerce.php",
    	data: 'pageaction=UpdateCheckout&cart_id='+cookie_cartid,
    	success: function(responseText, responseStatus) {
			jQuery('.CartDetail').html(responseText);
        }
     });
}//End Update Cart Total

//Pop Up Large Image
function largeImage(imagelink){	
 	windowDiv = "<div class='pop_large'><div class='pop_close'></div><div class='pop_content'><img id='largePhoto' src='' border='0'></div></div>";
 	jQuery("#popwizard").html(windowDiv);
 	jQuery("#popwizard").attr("width",'600');
 	jQuery("#largePhoto").attr("src",imagelink);
	viewport.init("#popwizard");
    jQuery(".pop_close").click(function(){
        jQuery(".pop_large").remove(); 	                
		jQuery("#popwizard").css("display","none");           
        return false;
    });	 
}//End Pop Up Large Image
//Pop Up Tell A Friend
function friend(product_id){	
	jQuery.ajax({
    	type: "POST",
    	url: webpath+"ecompro/ajax/ecommerce.php",
    	data: 'pageaction=TellFriend&product_id='+product_id,
    	success: function(responseText, responseStatus) {
			windowDiv = "<div class='popup_inner'><div class='popup_header'><div style='float:right;'><a href='#' class='popup_close'>[ Close ]</a></div><b>"+friendtitle+"</b></div><div class='popup_content'><form id='friendform' name='friendform' action='"+webpath+"ecompro/ajax/ecommerce.php' method='post'>"+responseText+"</div><div class='popup_footer'></div></div>"; 
		    jQuery("#popwizard").html(windowDiv);
		    viewport.init("#popwizard");
		    jQuery(".popup_close").click(function(){
		        jQuery(".popup_inner").remove(); 	                
				jQuery("#popwizard").css("display","none");           
		        return false;
		    });	 
			jQuery(".emailBtn").click(function(e){
				e.preventDefault();
				var valid = true;
				var product_id = jQuery('#product_id').val();
				var yourname = jQuery('#yourname').val();
				if (yourname == "") {
			      	jQuery('.errorcode').html("Please Fill in Your Name!");
			      	jQuery("#yourname").focus();
			      	return false;
			      	valid = false;
			    }
				var youremail = jQuery('#youremail').val();	
				if(validateEmail(youremail)){			
			 		jQuery('.errorcode').html("Please Enter Your Valid Email.");
			  		jQuery("#youremail").focus();
			  		return false;
			      	valid = false;
				}
				var friendname = jQuery('#friendname').val();
				if (friendname == "") {
			      	jQuery('.errorcode').html("Please Fill in Your Friend Name!");
			      	jQuery("#friendname").focus();
			      	return false;
			      	valid = false;
			    }
				var friendemail = jQuery('#friendemail').val();
				if(validateEmail(friendemail)){			
			 		jQuery('.errorcode').html("Please Enter Your Friend Valid Email.");
			  		jQuery("#friendemail").focus();
			  		return false;
			      	valid = false;
				}
				var yourmessage = jQuery('#yourmessage').val();
				if(yourmessage == ""){			
			 		jQuery('.errorcode').html("Please Fill in Email Message.");
			  		jQuery("#yourmessage").focus();
			  		return false;
			      	valid = false;
				}
				var emailcode = jQuery('#emailcode').val();
				if (emailcode == "") {
			 		jQuery('.errorcode').html("Please Enter Valid Code.");
			  		jQuery("#emailcode").focus();
			  		return false;
			      	valid = false;
				}
			    if(valid == true){
					jQuery.ajax({
				    	type: "POST",
				    	url: webpath+"ecompro/ajax/ecommerce.php",
				    	data: 'pageaction=EmailFriend&product_id='+product_id+'&yourname='+yourname+'&youremail='+youremail+'&friendname='+friendname+'&friendemail='+friendemail+'&yourmessage='+yourmessage+'&emailcode='+emailcode,
					    success: function(responseText, responseStatus) {
						    if(responseText=='success'){
					       		jQuery(".popup_content").html('Status: Email is sending to your friend.');
						    }else{
				            	var randomnumber=Math.floor(Math.random()*1001);
				           		jQuery('#code').attr("src",webpath+"common/lib.randimage.php?randomnumber="+randomnumber);
			 					jQuery('.errorcode').html(responseText);
				       		}
				    	}
				    });
			    }
			});
        }
     }); 
}//End Pop Up Friend
//Click Add to Cart Button
function addCart(product_str){ 
	viewport.init("#loading");           
	jQuery("#loading").css("display","");
	
	var submitCart = '';
	var product_qty = jQuery('#product_qty').val();
	var cookie_cartid = jQuery('#cookie_cartid').val();
	var mySplit = product_str.split("_");
	var relatedoption = jQuery('#relatedoption').val();
	var option_str = '';
	var i = 0;
	$('#relatedoption :selected').each(function(i, selected){
		i = i + 1;
		if(i==1){
			if($(selected).val()==''){ 
				alert("Please Select Option!");
			  	submitCart = 'failed'; 
			}
			option_str = $(selected).val();
		}else{
			option_str = option_str+', '+$(selected).val();
		}
	});
	if(submitCart!='failed'){
		
		jQuery.ajax({
	    	type: "POST",
	    	url: webpath+"ecompro/ajax/ecommerce.php",
	    	data: 'pageaction=addCart&product_id='+mySplit[1]+'&cart_id='+cookie_cartid+'&product_qty='+product_qty+'&option_str='+option_str,
	    	success: function(responseText, responseStatus) {
				jQuery("#loading").css("display","none");
				windowDiv = "<div class='popup_inner'><div class='popup_header'><div style='float:right;'><a href='#' class='popup_close'>[ Close ]</a></div><b>"+poptitle+"</b></div><div class='popup_content'>"+responseText+"</div><div class='popup_footer'></div></div>"; 
			    jQuery("#popwizard").html(windowDiv);
			    viewport.init("#popwizard");
				setTimeout(function(){
					jQuery(".popup_inner").fadeOut();                
					jQuery("#popwizard").css("display","none"); 
				}, 5000);			
			    jQuery(".popup_close").click(function(){
			        jQuery(".popup_inner").remove(); 	                
					jQuery("#popwizard").css("display","none");           
			        return false;
			    });	 
				jQuery('#cartBox').html(responseText);
	        }
	     }); 
	 }
 }
//End Click Add to Cart Button
$(function() {
	
	jQuery(".enquiryBtn").click(function(e){
		var product_str = jQuery(this).attr('id');
		var mySplit = product_str.split("_");
		var product_id = mySplit[1];
		jQuery.ajax({
	    	type: "POST",
	    	url: webpath+"ecompro/ajax/ecommerce.php",
	    	data: 'pageaction=enquiryForm&product_id='+product_id,
	    	success: function(responseText, responseStatus) {
				windowDiv = "<form id='frmEnquiry' name='frmEnquiry' action='"+webpath+"ecompro/ajax/ecommerce.php' method='post'><div class='popup_inner'><div class='popup_header'><div style='float:right;'><a href='#' class='popup_close'>[ Close ]</a></div><b>"+enquirytitle+"</b></div><div class='popup_content'>"+responseText+"</div><div class='popup_footer'></div></div>"; 
			    jQuery("#popwizard").html(windowDiv);
			    viewport.init("#popwizard");
			    jQuery(".popup_close").click(function(){
			        jQuery(".popup_inner").remove(); 	                
					jQuery("#popwizard").css("display","none");           
			        return false;
			    });	
			    jQuery(".sendEnquiryBtn").click(function(e){
				var product_id = jQuery('#product_id').val();
				var enquiryname = jQuery('#enquiryname').val();
				if (enquiryname == "") {
			      	jQuery('#errorenquiry').html("Please Fill in Your Name!");
			      	jQuery("#enquiryname").focus();
			      	return false;
			    }
				var enquiryemail = jQuery('#enquiryemail').val();	
				if(validateEmail(enquiryemail)){			
			 		jQuery('.errorcode').html("Please Enter Your Valid Email.");
			  		jQuery("#enquiryemail").focus();
			  		return false;
				}
				var enquirymsg = jQuery('#enquirymsg').val();
				if (enquirymsg == "") {
			      	jQuery('#errorenquiry').html("Please Fill in Your Enquiry!");
			      	jQuery("#enquirymsg").focus();
			      	return false;
			    }
				var enquirycode = jQuery('#enquirycode').val();
				if (enquirycode == "") {
			      	jQuery('#errorenquiry').html("Please Fill in Verify Code!");
			      	jQuery("#enquirycode").focus();
			      	return false;
			    }
				var relatedoption = jQuery('#relatedoption').val();
				var option_str = '';
				var i = 0;
				$('#relatedoption :selected').each(function(i, selected){
					i = i + 1;
					if(i==1){
						option_str = $(selected).val();
					}else{
						option_str = option_str+', '+$(selected).val();
					}
				});
				document.frmEnquiry.option_str.value = option_str;
				jQuery.ajax({
			    	type: "POST",
			    	url: webpath+"ecompro/ajax/ecommerce.php",
			    	data: 'pageaction=sendEnquiry&product_id='+product_id+'&enquiryname='+enquiryname+'&enquiryemail='+enquiryemail+'&option_str='+option_str+'&enquirymsg='+enquirymsg+'&enquirycode='+enquirycode,
			    	success: function(responseText, responseStatus) {
				    	if(responseText!='failed'){
							jQuery('.popup_content').html("Thank you for your enquiry.");
						}else{
							jQuery('#errorenquiry').css("display",'');
							jQuery('#errorenquiry').html("Verify Code Invalid");
						}
			        }
			     });	
			});		
			} 	
		});	
	});
	jQuery(".submitBtn").click(function(e){
		var author = jQuery('#author').val();
		if (author == "") {
			jQuery('.errorcode').css("display","");
	      	jQuery('.errorcode').html("Please Fill in Author!");
	      	jQuery("#author").focus();
	      	return false;
	    }
		var reviews = jQuery('#reviews').val();
		if (reviews == "") {
			jQuery('.errorcode').css("display","");
	      	jQuery('.errorcode').html("Please Fill in Reviews!");
	      	jQuery("#reviews").focus();
	      	return false;
	    }
		var validationcode = jQuery('#validationcode').val();
		if (validationcode == "") {
			jQuery('.errorcode').css("display","");
	      	jQuery('.errorcode').html("Please Fill in Verify Code!");
	      	jQuery("#validationcode").focus();
	      	return false;
	    }
		var product_id = jQuery('#product_id').val();
		
		jQuery.ajax({
	    	type: "POST",
	    	url: webpath+"ecompro/ajax/ecommerce.php",
	    	data: 'pageaction=submitComment&product_id='+product_id+'&author='+author+'&reviews='+reviews+'&validationcode='+validationcode,
	    	success: function(responseText, responseStatus) {
		    	if(responseText!='failed'){
					jQuery('.CommentTable').html(responseText);
					jQuery('#author').val('');
					jQuery('#reviews').val('');
					jQuery('#validationcode').val('');	
					jQuery('.errorcode').css("display","");
					jQuery('.errorcode').html("Thank you for your review.");
	            	var randomnumber=Math.floor(Math.random()*1001);
	           		jQuery('#captchacode').attr("src",webpath+"common/lib.randimage.php?randomnumber="+randomnumber);
				}else{
					jQuery('.errorcode').css("display","");
				}
	        }
	     });		
	});
});
//Offline Payment Info
function OfflinePaymentInfo(payment_method){
	jQuery.ajax({
    	type: "POST",
    	url: webpath+"ecompro/ajax/ecommerce.php",
    	data: 'pageaction=OfflinePaymentInfo&payment_method='+payment_method,
    	success: function(responseText, responseStatus) {
			jQuery('.OfflineInfo').html(responseText);
        }
     });
}//End Offline Payment Info
//function Validate Email contributed by Scott Gonzalez: http://projects.scottsplayground.com/email_address_validation/
function validateEmail(email){
	if(! /^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/i.test(email)){
	      	return true;
		}
}//End Validate Email
//Product Options
function selectOptions(item_id, option_id, num_opt){
	var product_id = jQuery('#product_id').val();	
	jQuery.ajax({
    	type: "POST",
    	url: webpath+"ecompro/ajax/ecommerce.php",
    	data: 'pageaction=ProductOptions&product_id='+product_id+'&item_id='+item_id+'&option_id='+option_id+'&num_opt='+num_opt,
    	success: function(responseText, responseStatus) {
			jQuery('#ProductOptions').html(responseText);
        }
     });
}//End Offline Payment Info

