
/*==== returns "true" if a keypress was "enter" key ====*/
function isEnterKey(e){
   var key;        
    if(window.event){
       key = window.event.keyCode; // IE
    }else{
       key = e.which; //Firefox      
    }        
    if(key == 13){                  
      return true;
    }else{
      return false
    }
}

/*==== this function allows the "enter" key to Submit SignUpForDeals in footer ====*/
function SubmitSignUpForDeals(e){    
    if (isEnterKey(e)){            
      SignUpForDeals();
      return false;
    }    
}

/*==== Sign Up For Deals Alerts in a footer form ====*/ 
function SignUpForDeals(){
    if ($('#SignUpFormTextBox') && $('#SignUpFormTextBox').val() != '' && $('#SignUpFormTextBox').val() != 'Enter your email address here'){
        window.location.href = linkSignUpForDeals + '?EmailText=' + escape($('#SignUpFormTextBox').val());
    }    
}  

/*==== this function allows the "enter" key to submit search ====*/
function SubmitSearch(e){    
    if (isEnterKey(e)){            
      Search();
      return false;
    }    
}

/*==== free text search ====*/ 
function Search(){        
    if ($('#SearchTextBox') && $('#SearchTextBox').val() != '' && $('#SearchTextBox').val().length < 50){
        window.location.href = linkSearchResult + '?SearchFreeText=' + escape($('#SearchTextBox').val());      
    }    
}   

function showMyAccountLinks(){
    if(getSession('IsSignedOn') == '1'){
        $('#LeftLink').attr('href',linkAccount);
        $('#LeftLink').text('Welcome back, ' + getSession('FirstName'));
        $('#RightLink').attr('href',linkLogout);
        $('#RightLink').text(linkLogoutText);
    }else{
        $('#LeftLink').attr('href',linkRegistration);
        $('#LeftLink').text(linkRegistrationText);
        $('#RightLink').attr('href',linkLogin);
        $('#RightLink').text(linkLoginText);
    }
}

/*==== top navigation menu links ===*/
function topMenuLinks(){
//    if (getSession('DefaultGeography') == '1'){
//        searchLinksBlocked();
//    }else{
        searchLinks();
//    }
}

/*==== assigns navigate url to search menu links ====*/
function searchLinks(){                
    $('#CarpetSearchLink').attr('href',linkCarpet); // carpet
    $('#HardwoodSearchLink').attr('href',linkHardwood); // hardwood
    $('#LaminateSearchLink').attr('href',linkLaminate); // laminate
    $('#VinylSearchLink').attr('href',linkVinyl); // vinyl
    $('#TileSearchLink').attr('href',linkTile); // tile                   
    selectSearchMenu();
}

/*==== select appropriate search menu ====*/
function selectSearchMenu(){
    var categoryid = queryString("categoryid");                
    var arearugs = queryString("eventid");
    if(categoryid != 'false'){        
        switch(categoryid)
        {
            case '32169':   // carpet                
                $('#CarpetSearchLink').addClass("navigation-menu-selected");
                break;
            case '32173':   // hardwood
                $('#HardwoodSearchLink').addClass("navigation-menu-selected");
                break;                        
            case '32172':   // laminate                
                $('#LaminateSearchLink').addClass("navigation-menu-selected");
                break;
            case '44421':   // vinyl
                $('#VinylSearchLink').addClass("navigation-menu-selected");
                break;
            case '32170':   // tile
                $('#TileSearchLink').addClass("navigation-menu-selected");
                break;           
        }    
    }else{                                         
        switch(window.location.toString().toLowerCase())
        {
            case linkCarpet:
                $('#CarpetSearchLink').addClass("navigation-menu-selected");
                break;
            case linkHardwood:                
                $('#HardwoodSearchLink').addClass("navigation-menu-selected");
                break;
            case linkLaminate:
                $('#LaminateSearchLink').addClass("navigation-menu-selected");
                break;
            case linkVinyl:
                $('#VinylSearchLink').addClass("navigation-menu-selected");
                break;
            case linkTile:
                $('#TileSearchLink').addClass("navigation-menu-selected");            
        }               
    }
}


/*==== start: query string ====*/
function PageQuery(q) {
    if(q.length > 1) this.q = q.substring(1, q.length);
    else this.q = null;
    this.keyValuePairs = new Array();
    if(q) {
        for(var i=0; i < this.q.split("&").length; i++) {
            this.keyValuePairs[i] = this.q.split("&")[i];
        }
    }            
    this.getKeyValuePairs = function() { return this.keyValuePairs; }
    this.getValue = function(s) {
        for(var j=0; j < this.keyValuePairs.length; j++) {
            if(this.keyValuePairs[j].split("=")[0].toLowerCase() == s.toLowerCase())
            return this.keyValuePairs[j].split("=")[1];
        }
        return false;
    }
    this.getParameters = function() {
        var a = new Array(this.getLength());
        for(var j=0; j < this.keyValuePairs.length; j++) {
            a[j] = this.keyValuePairs[j].split("=")[0];
        }
        return a;
    }
    this.getLength = function() { return this.keyValuePairs.length; } 
}


function queryString(key){                
    var page = new PageQuery(window.location.search); 
    return unescape(page.getValue(key)); 
}

function getQueryStringItem(key){
    var s = queryString(key);  
    if(s == 'false') {
        return '';
    }else{
        return s;
    }
} 




/*==== checks is query string has "r" and "pc" parameters after postal has been submitted and raises an error (zipoverlay) in case of error ====*/
function checkPostalCode(){
    if (getQueryStringItem("r") == 'failure' && getQueryStringItem("pc") != ''){
        window.setTimeout("showModalZipOverlay()", 60);                    
        $('#ZipBlocking_ErrorMessage').css('visibility','visible');                                        
    }
}

/*==== displays "change zip" and hides "enter zip" form ====*/
function displayChangeZipForm(){   
    var ziptype = getSession('ZipType');    
    if (ziptype !='' && getSession('DefaultGeography') == '0'){    
        $('#enter-zip-code').css('display','none');                     
        if (ziptype == 'i'){    
            $('#localized-for-zip').css('display', 'inline');                    
            $('#your-location').css('display', 'none');
            $('#zipcode').text(getSession('Zip'));            
        }else if (ziptype == 'u'){            
            $('#zipcode').text(getSession('Zip'));       // zip code    
            $('#your-location').css('display', 'inline');
        }
        $('#zip-code').css('display','none');
        $('#change-zip-code').css('display','inline');
    }
    else{        
        $('#zip-code').css('display','none');
        displayEnterZipForm();        
    }
}

/*==== displays "enter zip" form and hides "change zip" ====*/
function displayEnterZipForm(){  
    $('#change-zip-code').css('display','none');
    $('#enter-zip-code').css('display','inline');    
}

/*==== disabling form ====*/
function DisableZipCodeForm(oTextBox){                        
    if ($('#'+oTextBox) && $('#'+oTextBox).val() != ''){                            
        disableOverlayPostalCodeForm();
        disableHeaderPostalCodeForm();                            
    }                        
}

/*==== this function allows the "enter" key to submit postal code ====*/
function SubmitPostalCode(e, sender){
    if (isEnterKey(e)){             
      DisableZipCodeForm(sender);
      return false;
    }    
}

