﻿// homepage tabs

function showHomepageTab1(){
	$('#homepage_featured_tab1').show();
	$('#homepage_featured_tab2').hide();

	$("#homepage_featured_tabs").css("background-image", "url('Assets/Images/homepage_tabs_right.gif')");
}

function showHomepageTab2(){
	$('#homepage_featured_tab2').show();
	$('#homepage_featured_tab1').hide();

	$("#homepage_featured_tabs").css("background-image", "url('Assets/Images/homepage_tabs_left.gif')");
	_gaq.push(['_trackPageview', '/NewsTab']);
}


// show & hide product menu

$(function() {
	$(".productsNavigation").hover(showProductsMenu, hideMenuProduct);
	$("#navOverlay").hover(showProductsMenu, hideMenuProduct);
	$("#navOverlay a").click(hideAllElements);

	$(".whereToBuyNavigation").hover(showWhereToBuyMenu, hideMenuWhereToBuy);
	$("#whereBuyOverlay").hover(showWhereToBuyMenu, hideMenuWhereToBuy);
});

 
var closeTimer;
var lastOpenMenu;
var menusOpen = false
var caseMenuInitialized = false;
var tintOpacity = .35;
var tintSpeed = 400;

function showProductsMenu(menu) {
		clearTimeout(closeTimer);
		if (!menusOpen) {
			menusOpen = true;
			//$('#TabOverlay').fadeTo(tintSpeed, tintOpacity);
		}
		if(lastOpenMenu)
			hideLastMenu(lastOpenMenu);
		lastOpenMenu = menu;
		$('#navOverlay').show();
		$('a.productsNavigation').addClass('productsNavigationOn');
}

function showWhereToBuyMenu(menu) {
        if (!(isResidential == 'true')) {
            return;
        }
		clearTimeout(closeTimer);
		if (!menusOpen) {
			menusOpen = true;
			//$('#TabOverlay').fadeTo(tintSpeed, tintOpacity);
		}
		if(lastOpenMenu)
			hideLastMenu(lastOpenMenu);
		lastOpenMenu = menu;
		$('#whereBuyOverlay').show();
		$('a.whereToBuyNavigation').addClass('whereToBuyNavigationOn');
}

function hideMenuWhereToBuy(menu) {
	closeTimer=setTimeout('hideAllElements()',1650);
}

function hideMenuProduct(menu) {
    closeTimer = setTimeout('hideAllElements()', 50);
}

function hideAllElements(menu) {
	menusOpen = false;
	hideLastMenu();
}	

function hideLastMenu() {
	$('#navOverlay').hide();
	$('#whereBuyOverlay').hide();
	$('a.productsNavigation').removeClass('productsNavigationOn');
	$('a.whereToBuyNavigation').removeClass('whereToBuyNavigationOn');
}	




	
function startSearch()
{
	var location = "";
	if(arguments.length > 0)
	{
		location = searchResultsPage + "?Term=" + arguments[0];
	}
	if(arguments.length > 1)
	{
		location = location + "|ResourceType=" + arguments[1];
	}
	
	if(location != "")
	{
		window.location = location;
	}
}

function validateEngineeredContactForm() {
    var msg = "";

    if (document.getElementById('firstname').value == "") {
        msg += "-- First Name\n";
        $('#lblFirstName').css('color', 'red');
    }
    if (document.getElementById('lastname').value == "") {
        msg += "-- Last Name\n";
        $('#lblLastName').css('color', 'red');
    }
    if (ValidateEmail(document.getElementById('email')) == false) {
        msg += "-- Valid E-mail Address\n";
        $('#lblEmail').css('color', 'red');
    }
    if (document.getElementById('city').value == "") {
        msg += "-- City\n";
        $('#lblCity').css('color', 'red');
    }
    var s = document.getElementById('ddlStates_Contact');
    var sVal = s.options[s.selectedIndex].value;
    if (sVal == "") {
        msg += "-- State\n";
        $('#lblState').css('color', 'red');
    }

    // check Zip and Market fields for Aurora
    var z = document.getElementById('zip_contact');
    if (z != null) {
        if (z.value == "") {
            msg += "-- Zip Code\n";
            $('#lblZip').css('color', 'red');
        }
    }
    var m = document.getElementById('ddlMarket_Contact');
    if (m != null) {
        var mVal = m.options[m.selectedIndex].value;
        if (mVal == "0") {
            msg += "-- Market\n";
            $('#lblMarket').css('color', 'red');
        }
    }

    if (msg != ""){
        alert("The following required field(s) are missing:\n\n" + msg + "\nPlease complete the form and resubmit.");        
    }
    else
    {
        var x = getFormElementsXML("formfield", "contactUs");
        var test = "";
        Pentair.GBU.AjaxAPI.GBUAjax.FormSaveEngineered(x, Process_ContactUsForm);    
    }
}

function validateContact(){
    if (isEngineered == "true") {
        validateEngineeredContactForm();
        return;
    }
    
    var msg = "";

    if (document.getElementById('firstname').value == "") {
        msg += "-- First Name\n";
        $('#lblFirstName').css('color', 'red');
    }
    if (document.getElementById('lastname').value == "") {
        msg += "-- Last Name\n";
        $('#lblLastName').css('color', 'red');
    }
    if (ValidateEmail(document.getElementById('email')) == false) {
        msg += "-- Valid E-mail Address\n";
        $('#lblEmail').css('color', 'red');
    }
    if (document.getElementById('city').value == "") {
        msg += "-- City\n";
        $('#lblCity').css('color', 'red');
    }
    var s = document.getElementById('ddlStates_Contact');
    var sVal = s.options[s.selectedIndex].value;
    if (sVal == "") {
        msg += "-- State\n";
        $('#lblState').css('color', 'red');
    }

    if (msg != ""){
        alert("The following required field(s) are missing:\n\n" + msg + "\nPlease complete the form and resubmit.");        
    }
    else
    {
        var x = getFormElementsXML("formfield", "contactUs");
        Pentair.GBU.AjaxAPI.GBUAjax.FormSave(x, Process_ContactUsForm);    
    }
}

function validateProductRegistration(){
    var msg = "";

    if (document.getElementById('prFirstname').value == ""){
        msg += "-- First Name\n";
        $('#regFirstName').css('color', 'red');
    }
    if (document.getElementById('prLastname').value == "") {
        msg += "-- Last Name\n";
        $('#regLastName').css('color', 'red');
    }
    if (document.getElementById('prAddress').value == "") {
        msg += "-- Address\n";
        $('#regAddress').css('color', 'red');
    }
    if (document.getElementById('prCity').value == "") {
        msg += "-- City\n";
        $('#regCity').css('color', 'red');
    }

    var s = document.getElementById('ddlStates_Register');
    var sVal = s.options[s.selectedIndex].value;
    if (sVal == "") {
        msg += "-- State\n";
        $('#regState').css('color', 'red');    
    }

    if (document.getElementById('prZip').value == "") {
        msg += "-- Zip\n";
        $('#regZip').css('color', 'red');
    }
    if (ValidateEmail(document.getElementById('prEmail')) == false) {
        msg += "-- Valid E-mail Address\n";
        $('#regEmail').css('color', 'red');
    }

    if (document.getElementById('prModelNumber').value == "") {
        msg += "-- Model Number\n";
        $('#regModelNumber').css('color', 'red');
    }
    if (document.getElementById('prModelDescription').value == "") {
        msg += "-- Model Description\n";
        $('#regModelDescription').css('color', 'red');    
    }
    if (document.getElementById('prDateCode').value == "") {
        msg += "-- Date Code\n";
        $('#regDateCode').css('color', 'red');
    }
    if (document.getElementById('prDatePurchase').value == "") {
        msg += "-- Date of Purchase\n";
        $('#regDatePurchase').css('color', 'red');    
    }
    if (document.getElementById('prPlacePurchase').value == "") {
        msg += "-- Place of Purchase\n";
        $('#regPlacePurchase').css('color', 'red');
    }
    var ddlNewReplace = document.getElementById('prDDLNewReplace');
    if (ddlNewReplace.options[ddlNewReplace.selectedIndex].value == "NoValue") {
        msg += "-- Is this a new or replacement product?\n";
        $('#regNewReplacement').css('color', 'red');
    }
    
    var ddlInstalledBy = document.getElementById('prDDLInstalledBy');
    if (ddlInstalledBy.options[ddlInstalledBy.selectedIndex].value == "NoValue") {
        msg += "-- Who will install this product?\n";
        $('#regWhoWillInstall').css('color', 'red');
    }
    
    if (msg != ""){
        alert("The following required field(s) are missing:\n\n" + msg + "\nPlease complete the form and resubmit.");        
    }
    else
    {
        var x = getFormElementsXML("formfield", "productRegister");
        Pentair.GBU.AjaxAPI.GBUAjax.RegisterProductFormSave(x, Process_ContactUsForm);    
    }
}

function Process_ContactUsForm(res){
    if (res.error){
        alert("An error occurred.\nYour inquiry could not be processed.  " + res.error.Message)
    }
    else
    {
        $('.ProductRegistrationForm').css('display', 'none');
        $('.ContactUsForm').css('display', 'none');
        $('#Confirmation').css('display', 'block');
    }
}

function ValidateEmail(obj)
{
    var str = obj.value;
    if (str == "")
        return false;
        
    var at="@";
    var dot=".";
    var lat=str.indexOf(at);
    var lstr=str.length;
    var ldot=str.indexOf(dot);
    if (str.indexOf(at)==-1){
       return false;
    }

    if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
       return false;
    }

    if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
        return false;
    }

     if (str.indexOf(at,(lat+1))!=-1){
        return false;
     }

     if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
        return false;
     }

     if (str.indexOf(dot,(lat+2))==-1){
        return false;
     }

     if (str.indexOf(" ")!=-1){
        return false;
     }

     return true;
}

function getFormElementsXML(strAttributeName, strAttributeValue){

    var arrElements = document.body;
    if (!arrElements.all)	
    {
        arrElements = arrElements.getElementsByTagName('*');
    }
    else
    {
       arrElements = arrElements.all;
    }
	
    var arrRetEl = new Array();
    var oAttribVal = (typeof strAttributeValue != "undefined")? new RegExp("(^|\\s)" + strAttributeValue + "(\\s|$)") : null;
    var oCurrent;
    var oAttribute;
    var sReturn='';
	
    var aReturn =new Array();
    aReturn.push('<root>');
    
    for(var i=0; i<arrElements.length; i++){
	    oCurrent = arrElements[i];
	    oAttribute = oCurrent.getAttribute && oCurrent.getAttribute(strAttributeName);
	    
	    if(typeof oAttribute == "string" && oAttribute.length > 0){
		    if(typeof strAttributeValue == "undefined" || (oAttribVal && oAttribVal.test(oAttribute))){
		        if(oCurrent.type=="checkbox"){
		            aReturn.push('<' + oCurrent.name + ' id=\"' + oCurrent.id + '\">' + oCurrent.checked + '</' + oCurrent.name + '>');
		        }else{
                    aReturn.push('<' + oCurrent.id + '>' + oCurrent.value.replace('&', '&amp;') + '</' + oCurrent.id + '>'); 
		        }
		    }
	    }
    }
    aReturn.push('</root>');
    sReturn = aReturn.join('');

    return sReturn;
}

$(document).ready(function() {
    $('.applicationListItem').hover(function() {
        $(this).css('z-index', '2000');
        var pos = ($(this).find('a').first().width() + $(this).find('span').first().width() + 8);
        $(this).find('.hoverBox').css('left', pos).show();
    }, 
    function() {
        $(this).css('z-index', '200');
        $(this).find('.hoverBox').hide();
    });
});

$(document).ready(function() {
    $('.productTypesTitle').hover(function() {
        $(this).css('z-index', '2000');
        var pos = ($(this).find('strong').first().width() + $(this).find('span').first().width() + 8);
        $(this).find('.hoverBox').css('left', pos).show();
    }, 
    function() {
        $(this).css('z-index', '200');
        $(this).find('.hoverBox').hide();
    });
});

function recordOutboundLink(link, category, action) {
    _gat._getTrackerByName()._trackEvent(category, action);
    setTimeout('document.location = "' + link + '"', 100);
}

function recordOutboundLinkNewTab(link, category, action) {
    _gat._getTrackerByName()._trackEvent(category, action);
    //setTimeout('document.location = "' + link + '"', 100);
}
