/**
 * @author BSH
 */



/* -----------------------------  Image Swap function ----------------------------------------- 
 * assumes that an image is inside of a link for example
 * <a href=""><img src="someimage.gif" /></a>
 * 
 * DOES NOT WORK FOR INPUTS USE swapImagesInput
 */

function swapImages(btnName,imgName,imgType){
	var imgNorm = "/assets/images/" + imgName + "."+imgType;
	var imgOver = "/assets/images/" + imgName + "_over." + imgType; 
	
	$(btnName).hover(
			function() { $(this).find('img').attr({src:imgOver});},
			function() { $(this).find('img').attr({src:imgNorm});});
}

/* -----------------------------  Image Swap for Inputs function ----------------------------------------- */

function swapImagesInput(btnName,imgName,imgType){
	var imgNorm = "/assets/images/" + imgName + "."+imgType;
	var imgOver = "/assets/images/" + imgName + "_over." + imgType;
	
	$(btnName).hover(
			function() { $(this).attr({src:imgOver});},
			function() { $(this).attr({src:imgNorm});});
}




$(document).ready(function(){
	$.preloadCssImages();
	
	swapImages('a.detailsBtn','btn_featureDetails','gif');
	swapImages('a.learnMoreBtn','btn_learnMore','gif');
	
	/* ------------------------------   Drop Down Stuff ------------------------ */
	$('#header ul#mainNav li#menu1').hover(
			function() { $('div.subLinks', this).css('display', 'block');
						$('img.menuBtn', this).attr({src:'/assets/images/btn_mainNavBath_over.gif'});
			},
			function() { $('div.subLinks', this).css('display', 'none'); 
						$('img.menuBtn', this).attr({src:'/assets/images/btn_mainNavBath.gif'});
	});
	
	$('#header ul#mainNav li#menu2').hover(
			function() { $('div.subLinks', this).css('display', 'block');
						$('img.menuBtn', this).attr({src:'/assets/images/btn_mainNavKitchen_over.gif'});
			},
			function() { $('div.subLinks', this).css('display', 'none'); 
						$('img.menuBtn', this).attr({src:'/assets/images/btn_mainNavKitchen.gif'});
	});
	
	$('#header ul#mainNav li#menu3').hover(
			function() { $('div.subLinks', this).css('display', 'block');
						$('img.menuBtn', this).attr({src:'/assets/images/btn_mainNavSpecialty_over.gif'});
			},
			function() { $('div.subLinks', this).css('display', 'none'); 
						$('img.menuBtn', this).attr({src:'/assets/images/btn_mainNavSpecialty.gif'});
	});
	
	$('#header ul#mainNav li#menu4').hover(
			function() { $('div.subLinks', this).css('display', 'block');
						$('img.menuBtn', this).attr({src:'/assets/images/btn_mainNavCommercial_over.gif'});
			},
			function() { $('div.subLinks', this).css('display', 'none'); 
						$('img.menuBtn', this).attr({src:'/assets/images/btn_mainNavCommercial.gif'});
	});
	
	$('#header ul#mainNav li#menu5').hover(
			function() { $('div.subLinks', this).css('display', 'block');
						$('img.menuBtn', this).attr({src:'/assets/images/btn_mainNavResources_over.gif'});
			},
			function() { $('div.subLinks', this).css('display', 'none'); 
						$('img.menuBtn', this).attr({src:'/assets/images/btn_mainNavResources.gif'});
	});
			
	/* ------------------------------   Header rollovers  ------------------------ */
	
	swapImages('#header #dealerBtn a','btn_mainNavDealers','gif');
	swapImages('#header #companyBtn a','btn_mainNavCompany','gif');
	
	
	/* ------------------------------   Header Search  ------------------------ */
	
	$('.searchArea .searchInner .searchField').focus(
		    function(){
		        var curr = $(this).val();
		        if(curr == 'Enter Keyword or Product #'){
		            $(this).val('');
		        }
		    }
		);
		
		$('.searchArea .searchInner .searchField').blur(
		    function(){
		        var curr = $(this).val();
		        if(curr == ''){
		            $(this).val('Enter Keyword or Product #');
		        }
		    }
		);
		
	/* -----------------------------   Search Results  ---------------------------- */
	
	swapImagesInput(".refineSubmit input","btn_refineSearch","gif");
	
	$('.searchResults .productBoxInner').hover(
			function() { $(this).css('cursor','pointer');},
			function() { $(this).css('cursor','default');});
	
	$('.searchResults .productBoxInner').click(
			function(){ 
				var prodTarg = $(this).children('.productInfo').children('a.learnMore').attr('href');
				document.location = prodTarg;
			});
	
	/* -----------------------------   display product images  ---------------------------- */			
	$('div.detailLeft div.largeImage').each(function (i){
		var currID = $(this).attr('id');
		var imgSRC = $(this).find('img.mainProdImg').attr('src');
		$('div.detailLeft ul.prodImages').append('<li><a href="#' + currID + '"><img src="' + imgSRC + '" /></a></li>');
	});

	/* -----------------------------   display swatch thumbs  ---------------------------- */	
	$('ul.prodColors li').each(function (j){
		var swtchSRC = $(this).find('img').attr('src');
		$(this).find('div.swatchDetail img').attr({src:swtchSRC});
		$(this).hover(
			function() { $('div.swatchDetail', this).css('display', 'block');},
			function() { $('div.swatchDetail', this).css('display', 'none');});
	});
	
	/* -----------------------------   product wish/own buttons  ---------------------------- */	
	swapImages('.prodRightSide .userBtns .addWish','btn_addToWishList','gif');
	swapImages('.prodRightSide .userBtns .addOwned','btn_addToOwnedProducts','gif');
	swapImages('.prodRightSide .userBtns .removeWish','btn_removeFromWishList','gif');
	swapImages('.prodRightSide .userBtns .removeOwned','btn_removeFromOwnedProducts','gif');


	// -------------- change register boxes on focus ------------//
	$('input.regFirst').focus(
		function(){
			var curr = $(this).val();
			if(curr == 'first name'){
				$(this).val('');
			}
		}
	);
	
	$('input.regFirst').blur(
		function(){
			var curr = $(this).val();
			if(curr == ''){
				$(this).val('first name');
			}
		}
	);
	
	$('input.regLast').focus(
		function(){
			var curr = $(this).val();
			if(curr == 'last name'){
				$(this).val('');
			}
		}
	);
	
	$('input.regLast').blur(
		function(){
			var curr = $(this).val();
			if(curr == ''){
				$(this).val('last name');
			}
		}
	);
	
	$('input.regEml').focus(
		function(){
			var curr = $(this).val();
			if(curr == 'email address'){
				$(this).val('');
			}
		}
	);
	
	$('input.regEml').blur(
		function(){
			var curr = $(this).val();
			if(curr == ''){
				$(this).val('email address');
			}
		}
	);
	
	$('input.regZip').focus(
		function(){
			var curr = $(this).val();
			if(curr == 'zip code'){
				$(this).val('');
			}
		}
	);
	
	$('input.regZip').blur(
		function(){
			var curr = $(this).val();
			if(curr == ''){
				$(this).val('zip code');
			}
		}
	);
	
	$('.loginEmailInput').focus(
		function(){
			if($(this).val() == "email address"){
				$(this).val('');
			}
		}
	);
	
	$('.loginEmailInput').blur(
		function(){
			if($(this).val() == ""){
				$(this).val('email address');
			}
		}
	);
	
	$('.loginPasswordText').css('display','block');
	$('.loginPasswordInput').css('display','none');
	
	$('.loginPasswordText').focus(
		function(){
			if($(this).val() == "password"){
				$(this).hide();
				$('.loginPasswordInput').show();
				$('.loginPasswordInput').val('');
				$('.loginPasswordInput').focus();
			}
		}
	);
	
	$('.loginPasswordInput').blur(
		function(){
			if($(this).val() == ""){
				$(this).hide();
				$('.loginPasswordText').show();
			}
		}
	);
	
/* -----------------------------   login & reg rollover  ---------------------------- */
	swapImagesInput("input.loginFormBtn","profile/btn_login","gif");
	swapImagesInput("input.regFormBtn","profile/btn_register","gif");
	swapImagesInput("input.forgotPwBtn","btn_submit","gif");

/* -----------------------------   lists page image swap  ---------------------------- */
			
	swapImages('.listsPageBtns .userBtns .btnLeft','btn_printList','gif');
	swapImages('.listsPageBtns .userBtns .btnRight','btn_emailList','gif');		
	//swapImages('#rightCol .profileDetails a.viewAllBtn','btn_viewAll','gif');
	swapImages('#rightCol .profileDetails a.viewEditBtn','btn_viewEdit','gif');

/* -----------------------------   lists page categories  ---------------------------- */

	$('.listsPage .profileDetails .listCategories li').hover(
		function() {
			$(this).css('background','#8fc2e8');
			$(this).css('cursor','pointer');
			$(this).css('color','#888');
			$(this).children('a').css('color','#fff');
		},
		function() {
			$(this).css('background','#e4ecf2');
			$(this).css('cursor','default');
			$(this).css('color','#1c1c1c');
			$(this).children('a').css('color','#61a3d5');
		}
	);
	
	$('.listsPage .profileDetails .listCategories li').click(
		function() {
			location.href = $(this).children('a').attr('href');
		});



/* -----------------------------   profile stuff  ---------------------------- */
	
	swapImagesInput(".myProfile .updateBtn","btn_update","gif");
	
	
/* ------------------------------   tech doc search ------------------------ */
	swapImages('.techDocSearchBtn','btn_search_techdocs','gif');
	
	$('#techDocPageForm .techDocSearchBtn').click(
		function() {
			var val = $('#techDocPageForm #techInfoSearchField').val();
			
			if (jQuery.trim(val) != "") {
				$('#techDocPageForm .techDocSearchValidationMsg').css('display','none');
				location.href = "/resources/technicalfiles/default.aspx?sw=" + val;
			} else {
				$('#techDocPageForm .techDocSearchValidationMsg').css('display','block');
			}
		}
	);
	
	$('#techDocPageForm #techInfoSearchField').keypress(
		function(e) {
			if (e.which == 13) {
				var val = $(this).val();
				if (jQuery.trim(val) != "") {
					$('#techDocPageForm .techDocSearchValidationMsg').css('display','none');
					location.href = "/resources/technicalfiles/default.aspx?sw=" + val;
				} else {
					$('#techDocPageForm .techDocSearchValidationMsg').css('display','block');
				}
				return false;
			}
		}
	);
	
	
/* ------------------------------   cross ref search ------------------------ */
	swapImages('.crossRefSearchBtn','btn_search_crossref','gif');
	
	$('#crossRefPageForm .crossRefSearchBtn').click(
		function() {
			var manufacturerVal = $('#crossRefPageForm #ddlManufacturer :selected').val();
			var swVal = $('#crossRefPageForm #txtCrossRefSearch').val();
			
			
			$('#crossRefPageForm .crossRefValidationMsg').css('display','none');
			if ((jQuery.trim(manufacturerVal) != "") && (jQuery.trim(swVal) != "")) {
				location.href = "/resources/crossreference/default.aspx?sw=" + swVal + "&m=" + manufacturerVal;
			} else {
				if (manufacturerVal == "") {
					$('#crossRefPageForm #crossRefValidationManufacturer').css("display","block");
				}
				
				if (swVal == "") {
					$('#crossRefPageForm #crossRefValidationNumber').css("display","block");
				}
			}
		}
	);
	
	$('#crossRefPageForm #txtCrossRefSearch').keypress(
		function(e) {
			if (e.which == 13) {
				var manufacturerVal = $('#crossRefPageForm #ddlManufacturer :selected').val();
				var swVal = $('#crossRefPageForm #txtCrossRefSearch').val();
				
				if ((jQuery.trim(manufacturerVal) != "") && (jQuery.trim(swVal) != "")) {
					$('#crossRefPageForm .crossRefValidationMsg').css('display','none');
					location.href = "/resources/crossreference/default.aspx?sw=" + swVal + "&m=" + manufacturerVal;
				} else {
					if (manufacturerVal == "") {
						$('#crossRefPageForm .crossRefValidationMsg').html('Please select a manufacturer');
					} else {
						if (swVal == "") {
						$('#crossRefPageForm .crossRefValidationMsg').html('Please enter a Product Number or Product Name');
						}
					}
					
					$('#crossRefPageForm .crossRefValidationMsg').css("display","block");
				}
				return false;
			}
		}
	);
	
/* ----------------------------   warranty registration   ---------------------------- */
	
	swapImages('.warRegTable .warRegStartBtn','warranty/btn_warReg_begin','gif');
	
/* -----------------------------   End of Document Ready  ---------------------------- */
});
/* -----------------------------   End of Document Ready  ---------------------------- */


/* --------------------------   Product Detail Tabs and prod images ----------------------- */

$(function () {
    var tabContainers = $('div#prodDetailContent > div');
    
    $('div#prodTabs a').click(function () {
        tabContainers.addClass('displayNone').filter(this.hash).removeClass('displayNone');
        $('div#prodTabs a').removeClass('selectedTab');
        $(this).addClass('selectedTab');
        
        return false;
    }).filter(':first').click();
});

$(function () {
    var imageList = $('div.detailLeft > div.largeImage');
    
    $('div.detailLeft ul.prodImages li a').click(function () {
        imageList.hide().filter(this.hash).show();
        $('div.detailLeft ul.prodImages li a').removeClass('selectedImg');
        $(this).addClass('selectedImg');
        return false;
    }).filter(':first').click();
});


/* -----------------------------   Profile Tabs ---------------------------- */

$(function () {
    var tabContainers = $('div#profileContent > div');
    
    $('div#profileTabs a').click(function () {
        tabContainers.addClass('displayNone').filter(this.hash).removeClass('displayNone');
        $('div#profileTabs a').removeClass('selectedTab');
        $(this).addClass('selectedTab');
        
        return false;
    }).filter(':first').click();
});

/* --------------------------   Dealer Locator Maps ------------------------- */
function handleViewMap(argDealerID, argTargLat, argTargLng, argDealerLocA) {
	//document.getElementById("moreResultsHeader").style.display = "none";
	document.getElementById("dealerMap" + currentDealerID).style.display = "none";
	document.getElementById("dealerLoc" + currentDealerID).className = "";
	document.getElementById("dealerMap" + argDealerID).style.display = "block";
	document.getElementById("dealerLoc" + argDealerID).className = "active";
	displayPreferredMap(("dealerMap" + argDealerID), argTargLat, argTargLng);
	
	var jqID = '#dealerLoc' + currentDealerID + ' div.primaryInfo img.prefStar';
	$(jqID).attr('width', '10');
	$(jqID).attr('height', '9');
	
	jqID = '#dealerLoc' + argDealerID + ' div.primaryInfo img.prefStar';
	$(jqID).attr('width', '15');
	$(jqID).attr('height', '13');
	
	location.href = "#" + argDealerLocA;
	currentDealerID = argDealerID;
}


/****** my profile related ******/

function validateSurvey() {
	var inputArry = document.getElementsByTagName("input");
	for (var inputLoop=0;inputLoop<inputArry.length;inputLoop++) {
		inpObj = document.getElementById(inputArry[inputLoop].id);
		if (inpObj.parentNode.tagName.toLowerCase() == "div" ) {
			if (inpObj.parentNode.style.display == "none"){
				switch (inpObj.type.toLowerCase()) {
					case "radio":
					case "checkbox":
						inpObj.checked = false;
						break; 
					case "text":
						inpObj.value = "";
						break;
					default:
						//alert(inpObj.type.toLowerCase());
				}
			}
		}
	}
	
	inputArry = document.getElementsByTagName("select");
	for (var inputLoop=0;inputLoop<inputArry.length;inputLoop++) {
		inpObj = document.getElementById(inputArry[inputLoop].id);
		if (inpObj.parentNode.tagName.toLowerCase() == "div" ) {
			if (inpObj.parentNode.style.display == "none"){
				inpObj.selectedIndex = 0;
			}
		}
	}
	
	return true;
	//document.surveyForm.submit();
}

function qDDChange(question,answerStr) {
	var currentValue=document.getElementById("QS" + question + "").value
	var answerArray=new Array()
	answerArray = answerStr.split(",")
	for (var anLoop=0;anLoop < answerArray.length;anLoop++) {
		sdStr = "surveyD"+answerArray[anLoop]
		sdObj = document.getElementById(sdStr)
		divStyle="none"
		if (answerArray[anLoop] == currentValue) {
			divStyle="block"
		}
		if (sdObj!=null) {
			sdObj.style.display = divStyle
		}
	}
}

function qRadioCboxChange(eType,question,answerStr) {
	var answerArray=new Array()
	answerArray = answerStr.split(",")
	for (var anLoop=0;anLoop < answerArray.length;anLoop++) {
		if (eType=="R") {
			eleStr = "QR" + answerArray[anLoop] + ""
		}
		if (eType=="C") {
			eleStr = "AC" + answerArray[anLoop] + ""
		}
		eleObj = document.getElementById(eleStr)

		divStr = "surveyD"+answerArray[anLoop]
		divObj = document.getElementById(divStr)

		divStyle="none"
		if (eleObj.checked) {
			divStyle="block"
		}
		if (divObj!=null) {
			divObj.style.display = divStyle
		}
	}
}
