// JavaScript Document

function httpsRedirect()
{
	var oldURL = window.location.hostname + window.location.pathname;
	var newURL = "https://" + oldURL;
	window.location = newURL;
}

if (window.parent.document.location.protocol != "https:") {
	httpsRedirect();
}

$(document).ready(function(){

// resize page

$("#columnContainer").css('height',$("#rightColumn").height());
if ($("#columnContainer").height() < $("#columnContainer").css('min-height')) {
	$("#columnContainer").height() = $("#columnContainer").css('min-height')
}

// determine number of brands
var brandsHeight = ($("#columnContainer").height() - (375 + $("#shoppingNav").height()));
brandsHeight /= 57;
brandsHeight = Math.floor(brandsHeight) * 57;
var maxBrandHeight = $('.brandIcon').size() / 4;
maxBrandHeight = Math.floor(maxBrandHeight) * 57;
if (brandsHeight > maxBrandHeight) {
	brandsHeight = maxBrandHeight;
}
$("#brands").css("height",brandsHeight);

//INITIAL PROPERTIES
	//$(".shopCategoryContents").hide();
	//$(".genderActive").css("background-image","url(images/navBG.gif)");
	//$(".genderActive").css("color","#000");
	
//MEN, WOMEN, KIDS


//mouse overs
$("#genderMens, #genderWomens, #genderKids").mouseover(function(){
			$(this).css("background-color","#edeceb");
			$(this).css("cursor","pointer");
		});

//mouse outs

	$("#genderMens, #genderWomens, #genderKids").mouseout(function(){
			$(this).css("background-color",'none');
		});
	
//click

$("#genderMens, #genderWomens, #genderKids").click(function(){
	

			$("#genderMens, #genderWomens, #genderKids").css("background-image","none");
			$("#genderMens, #genderWomens, #genderKids").css("color","#797979");

			$(this).css("background-image","url(images/navBG.gif)");			
			$(this).css("color","#000");
			
			
		});
	


//CATEGORIES

//mouse overs
		$(".shopCategory").mouseover(function(){
			$(this).css("background-color","#edeceb");
			$(this).css("cursor","pointer");
		});
		
//mouse out		
		$(".shopCategory").mouseout(function(){
			$(this).css("background-color",null);
			$(this).css("cursor","normal");
		});
		
//click		
		$(".shopCategory").click(function(){
			
			var id = $(this).attr("id");
			
			$(".shopCategoryContents").slideUp();
			$("#shopCategoryContents"+id).slideDown(400);
			
			
			$(".shopCategory").css("background-image","none");
			$(".shopCategory").css("color","#797979");
			
			$(this).css("background-image","url(images/navBG.gif)");
			$(this).css("color","#000");
			
			$(".bullet").attr("src","images/bullet1.png");
			$("#bullet"+id).attr("src","images/bullet2.png");
			
		});


//ITEMS

//mouse over
$(".shopItem").mouseover(function(){
			$(this).css("background-color","#edeceb");
			$(this).css("cursor","pointer");
			$(this).css("color","#000");
		});

$(".shopItem").mouseout(function(){
			$(this).css("background-color",null);
			$(this).css("cursor","normal");
			$(this).css("color","#797979");
		});


//email alerts

$("#emailAlerts").click(function(){
	
	window.location = "http://www.gravityboardsports.com/account-info.php";
	
});

$("#freeShipping").click(function(){
	
	window.location = "http://www.gravityboardsports.com/shipping.php";
	
});


//TOP NAV BAR

var active = 0;

$("#topNav1HotSpot,#topNav2HotSpot,#topNav3HotSpot").mouseover(function(){
		$(this).css("cursor","pointer");
				
									});
$("#topNav1HotSpot,#topNav2HotSpot,#topNav3HotSpot").mouseout(function(){
		$(this).css("cursor","normal");
				
									});

$("#topNav1HotSpot").click(function(){
	if (active == 1) {
		$("#topNav1").animate({
			top: "0px",
			left: "0px"
			}, 300)
			
		$("#topNav2").animate({
			top: "0px",
			left: "188px"
			}, 300)
			
		$("#topNav3").animate({
			top: "0px"
			}, 300)
			
		active = 0;
	} else {
		$("#topNav1").animate({
			top: "-50px",
			left: "0px"
			}, 300)
			
		$("#topNav2").animate({
			top: "0px",
			left: "188px"
			}, 300)
			
		$("#topNav3").animate({
			top: "0px"
			}, 300)
			
		active = 1;		
	}
});

$("#topNav2HotSpot").click(function(){
	if (active == 2) {
		$("#topNav1").animate({
			top: "0px",
			left: "0px"
			}, 300)
			
		$("#topNav2").animate({
			top: "0px",
			left: "188px"
			}, 300)
			
		$("#topNav3").animate({
			top: "0px"
			}, 300)
			
		active = 0;
	} else {
		$("#topNav1").animate({
			top: "0px",
			left: "-45px"
			}, 300)
			
		$("#topNav2").animate({
			top: "-50px",
			left: "188px"
			}, 300)
			
		$("#topNav3").animate({
			top: "0px"
			}, 300)
			
		active = 2;		
	}
});

$("#topNav3HotSpot").click(function(){
	if (active == 3) {
		$("#topNav1").animate({
			top: "0px",
			left: "0px"
			}, 300)
			
		$("#topNav2").animate({
			top: "0px",
			left: "188px"
			}, 300)
			
		$("#topNav3").animate({
			top: "0px"
			}, 300)
			
		active = 0;
	} else {
		$("#topNav1").animate({
			top: "0px",
			left: "-45px"
			}, 300)
			
		$("#topNav2").animate({
			top: "0px",
			left: "140px"
			}, 300)
			
		$("#topNav3").animate({
			top: "-50px"
			}, 300)
			
		active = 3;		
	}
});

//minimize button for banner

$("#featureMinimize").click(function(){								 
	$("#bigImageContainer").slideUp(500, function() {
		
		});
		
		$.ajax({
	   type: "POST",
	   url: "/ajax/hideBanner.php",
	   data: "null=tyler",
	   success: function(msg){
		 // complete
	   }
 	});
});

$("#featureMinimize").mouseover(function(){
										 
			$(this).css('cursor','pointer');							 
										 
	
									 });

///send search

$('#search').keyup(function(e) {
	//alert(e.keyCode);
	if(e.keyCode == 13) {
		
		if( $(this).val() != '' && $(this).val() != 'search' ){ 
		var searchString = $(this).val();
		
		searchString =  searchString.replace(/^\s+|\s+$/g,"");
		
		var searchUrl = 'index.php' + '?q=' + searchString;
		
		document.location = searchUrl;
		
		}
		
		
	}
});


//filtering
function getUrlParamArray(param)
{
  param = param.replace(/([\[\](){}*?+^$.\\|])/g, "\\$1");
  var value = [];
  var regex = new RegExp("[?&]" + param + "=([^&#]*)", "g");
  var url   = decodeURIComponent(window.location.href);
  var match = null;
  while (match = regex.exec(url)) {
    value.push(match[1]);
  }    
  return value;
}



$(".sort").change(function(){
	
	var sortBy = $(this).val();
	
	var currentLocation =  document.location.href;
	
	var catId = getUrlParamArray("c");
	var filter1 = getUrlParamArray("f1");
	var filter2 = getUrlParamArray("f2");
	var filter3 = getUrlParamArray("f3");
	var filter4 = getUrlParamArray("f4");
	
	if(filter1 != '') { filter1 = "&f1=" + filter1; }
	if(filter2 != '') { filter2 = "&f2=" + filter2; }
	if(filter3 != '') { filter3 = "&f3=" + filter3; }
	if(filter4 != '') { filter4 = "&f4=" + filter4; }
		

window.location = "index.php?c=" + catId + "&sort=" + sortBy + filter1 + filter2 + filter3 + filter4;



});


//sorting

$(".sort").change(function(){
	
	var sortBy = $(this).val();
	
	var currentLocation =  document.location.href;

	
	var catId = getUrlParamArray("c");
	var filter1 = getUrlParamArray("f1");
	var filter2 = getUrlParamArray("f2");
	var filter3 = getUrlParamArray("f3");
	var filter4 = getUrlParamArray("f4");
	var q = getUrlParamArray("q");
	
	if(filter1 != '') { filter1 = "&f1=" + filter1; }
	if(filter2 != '') { filter2 = "&f2=" + filter2; }
	if(filter3 != '') { filter3 = "&f3=" + filter3; }
	if(filter4 != '') { filter4 = "&f4=" + filter4; }
	if(q != '') { q = "&q=" + q; }
	
	if(catId != '') { catId = "c=" + catId; }
		

	window.location = "index.php?" + catId + "&sort=" + sortBy + filter1 + filter2 + filter3 + filter4 + q;



});


//filtering
$(".filter").change(function(){
	
	var catId = getUrlParamArray("c");
	var sortBy = getUrlParamArray("sort");
	var filter1 = getUrlParamArray("f1");
	var filter2 = getUrlParamArray("f2");
	var filter3 = getUrlParamArray("f3");
	var filter4 = getUrlParamArray("f4");
	var q = getUrlParamArray("q");
	
	if ($(this).attr("id") == "f1"){
		var filter1 = $(this).val();	
	}
	if ($(this).attr("id") == "f2"){
		var filter2 = $(this).val();	
	}
	if ($(this).attr("id") == "f3"){
		var filter3 = $(this).val();	
	}
	if ($(this).attr("id") == "f4"){
		var filter4 = $(this).val();	
	}
	
	

	
	var currentLocation =  document.location.href;

	if(sortBy != '')  { sortBy = "&sort=" + sortBy;  }
	if(filter1 != '') { filter1 = "&f1=" + filter1; }
	if(filter2 != '') { filter2 = "&f2=" + filter2; }
	if(filter3 != '') { filter3 = "&f3=" + filter3; }
	if(filter4 != '') { filter4 = "&f4=" + filter4; }
	if(q != '') { q = "&q=" + q; }
	
	if(catId != '') { catId = "c=" + catId; }
	
	
	window.location = "index.php?" + catId + sortBy + filter1 + filter2 + filter3 + filter4 + q;
	
});


//Overlays / Links

$(".product").mouseover(function(){
	
	$(this).css('background-color', '#EFEFEF');
	$(this).css('cursor', 'pointer');
	
});
$(".product").mouseout(function(){
	
	$(this).css('background-color', '#FFF');
	
});

$(".product").click(function(){
	
	var pageLink = $(this).attr("link");
	
window.location = pageLink;
	
	
});


// LEFT NAV

$(".shopCategory, #genderMens, #genderWomens, #genderKids, .brandIcon, .shopItem").mouseover(function(){
	
	$(this).css('background-color', '#EFEFEF');
	$(this).css('cursor', 'pointer');
	
	
	
});

$(".shopCategory, #genderMens, #genderWomens, #genderKids, .brandIcon, .shopItem").mouseout(function(){
	
	$(this).css('background-color', '#FFFFFF');
	
	
});


$(".shopCategory").click(function(){
	var pageLink = $(this).attr("link");
	window.location = pageLink;
	});



 
 $(".brandIcon").click(function(){
	var pageLink = $(this).attr("link");
	window.location = pageLink;
	});



/*payment form stuff */



	/* Copy Shipping Info */
	
	$("#copyInfoButton").click(function(){
		
		$("#firstNameBilling").val($("#firstNameShipping").val());
		$("#lastNameBilling").val($("#lastNameShipping").val());
		$("#areaCodeBilling").val($("#areaCodeShipping").val());
		$("#phoneNumberBilling").val($("#phoneNumberShipping").val());
		
		$("#addressBilling").val($("#addressShipping").val());
		$("#address2Billing").val($("#address2Shipping").val());
		$("#cityBilling").val($("#cityShipping").val());
		$("#provinceBilling").val($("#provinceShipping").val());
		$("#postalCodeBilling").val($("#postalCodeShipping").val());
		$("#countryBilling").val($("#countryShipping").val());

		
		
		return false;
	});


/// Change Shipping Info on Checkout Page //

$("#shippingRadios_0").click(function(){
	
	var shippingPrice = parseFloat($(this).val());
	var replacePrice = "<h1><b><span style='color: #CC0000;'>$" + shippingPrice + ".00</span></b></h1>"
	
	$("#shippingPrice").html(replacePrice);
	
	var replaceLabel = "<h1><span style='color: #CC0000;'>Free Shipping</span></h1>";
	
	$("#shippingLabel").html(replaceLabel);
	
		$.ajax({
	   type: "POST",
	   url: "ajax/updateShipping.php",
	   data: "shipping=" + shippingPrice,
	   success: function(msg){
		 // complete
	   }
 	});
	
	
});

$("#shippingRadios_1").click(function(){
	
	var shippingPrice = parseFloat($(this).val());
	var replacePrice = "<h1><b>$" + shippingPrice + ".00</b></h1>"
	
	$("#shippingPrice").html(replacePrice);
	
	var replaceLabel = "<h1>Express Shipping</h1>";
	
	$("#shippingLabel").html(replaceLabel);
	
		$.ajax({
	   type: "POST",
	   url: "ajax/updateShipping.php",
	   data: "shipping=" + shippingPrice,
	   success: function(msg){
		 // complete
	   }
 	});
	
	
});

$("#shippingRadios_2").click(function(){
	
	var shippingPrice = parseFloat($(this).val());
	var replacePrice = "<h1><b>$" + shippingPrice + ".00</b></h1>"
	
	$("#shippingPrice").html(replacePrice);
	
	var replaceLabel = "<h1>Overnight Shipping</h1>";
	
	$("#shippingLabel").html(replaceLabel);
	
		$.ajax({
	   type: "POST",
	   url: "ajax/updateShipping.php",
	   data: "shipping=" + shippingPrice,
	   success: function(msg){
		 // complete
	   }
 	});
	
	
});




$("#creditCardType_1").change(function(){

});


 /* Submit Payment Form */
 
 function emailCheck(str) {

		var at="@"
		var dot="."
		var lat=str.indexOf(at)
		var lstr=str.length
		var ldot=str.indexOf(dot)
		if (str.indexOf(at)==-1){
		   alert("Invalid E-mail ID")
		   return false
		}

		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
		   alert("Invalid E-mail ID")
		   return false
		}

		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		    alert("Invalid E-mail ID")
		    return false
		}

		 if (str.indexOf(at,(lat+1))!=-1){
		    alert("Invalid E-mail ID")
		    return false
		 }

		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		    alert("Invalid E-mail ID")
		    return false
		 }

		 if (str.indexOf(dot,(lat+2))==-1){
		    alert("Invalid E-mail ID")
		    return false
		 }
		
		 if (str.indexOf(" ")!=-1){
		    alert("Invalid E-mail ID")
		    return false
		 }

 		 return true					
	}
	
function ValidateForm(){
	var emailID=document.checkoutForm.emailBilling;
	
	if ((emailID.value==null)||(emailID.value=="") || (emailID.value == "Email Address")){
		alert("Please Enter your Email")
		emailID.focus()
		$("#emailBilling").css("background-color","yellow");
		return false
	}
	if (emailCheck(emailID.value)==false){
		emailID.value=""
		emailID.focus()
		$("#emailBilling").css("background-color","yellow");
		return false
	}
	
	
	return true
 }
 
 
 $("#completePayment").click(function(){
	
	/*validate info */
	
	if(ValidateForm()){
	
		$("#checkoutForm").submit();
	
	}
	
	return false;
	 
 });



 //functions using jquery
 
 function SetTypeText(number)
	{
		//var typeField = document.getElementById("cardType");
		//typeField.innerHTML = GetCardType(number);
		var ccType = GetCardType(number);
		
		if (ccType == "Visa"){
			
			$("#creditCardType_0").attr("checked", true); 
			$("#creditCardType_1").attr("checked", false);
			
			
		
			
			
		} else if (ccType == "MasterCard"){
			$("#creditCardType_1").attr("checked", true); 
			$("#creditCardType_0").attr("checked", false);
			
	
			
		} else {
			
		}
	}
 
        function GetCardType(number)
        {            
            var re = new RegExp("^4");
            if (number.match(re) != null)
                return "Visa";
 
            re = new RegExp("^(34|37)");
            if (number.match(re) != null)
                return "American Express";
 
            re = new RegExp("^5[1-5]");
            if (number.match(re) != null)
                return "MasterCard";
 
            re = new RegExp("^6011");
            if (number.match(re) != null)
                return "Discover";
 
            return "";
        }
 
 

 




 });
 
 




