﻿var CURRENT_CRITERIA;

function SubmitTo(listUrl, whereClauseElement){
    var whereClause = document.getElementById(whereClauseElement).value;
   
    document.location = listUrl + "?" + whereClause;
}

function SaveSelection(selectedCriteriaName, criteriaMetadataControlId, savedCriteriaFieldId,Control_Id){
    var strValues = "";
    var aryInfo = document.getElementById(criteriaMetadataControlId).value.split("{");
    
    var aryCurrent;
    var isAfterSelected = false;
    for(var i = 0; i<aryInfo.length; i++){
        aryCurrent = aryInfo[i].split("|");
        var name = aryCurrent[0];
        var elementLower = document.getElementById(aryCurrent[1]);
        var elementUpper = document.getElementById(aryCurrent[2]);
       
        var strSelected = "|";
        if(elementLower != null){
            if(elementLower.selectedIndex > 0){
                strSelected = elementLower[elementLower.selectedIndex].value + "|";
            }
            
            //if this is a range field and upper range was selected, add to selected string
            if(elementUpper != null && elementUpper.selectedIndex > 0)
            {
                strSelected += elementUpper[elementUpper.selectedIndex].value; 
            }
           
            var strCurrentValues = "";
            
            
            if(!isAfterSelected){
                          
                if (name == "Price")
                {
                    //Hidden
                    var hdnList =   document.getElementsByName("lstHdnPriceList_range"); //dynamic
                      strCurrentValues = _GetValues(hdnList);
                }
                else
                {
                    strCurrentValues = _GetValues(elementLower);
                }
                        
            }
            
            //format is make}SeaRay|}Sea Ray|Bayliner{Year}2005|2006}1970|1980|{....
            strValues += "{" + name + "}" + HtmlEncode(strSelected) + "}" + HtmlEncode(strCurrentValues);
             
            if(name == selectedCriteriaName){
                isAfterSelected = true;
            }
        }
    }
    //removing last separator
    if(strValues.length > 0){
        strValues = strValues.substr(1, strValues.length -1);
    }
    
    document.getElementById(savedCriteriaFieldId).value = strValues;   
}

 function Submit(lbPostback_UniqueID, criteria_Name, hidCriteriaMetadata_ClientID, hidSavedCriteria_ClientID,Control_Id)
 {
   if (criteria_Name == "Price")
   {
        var LowerId = Control_Id + "_CriteriaItem";
        var UpperId = Control_Id + "_CriteriaItemRange";
        
        
        var elementLower = document.getElementById(LowerId);
        var elementUpper = document.getElementById(UpperId);
        var intLowerValue;
        var intUpperValue;
        
        if (elementLower[elementLower.selectedIndex].value != "No Limit" && elementUpper[elementUpper.selectedIndex].value != "No Limit")
        {
            intLowerValue = parseInt(elementLower[elementLower.selectedIndex].value.substring(1).replace(',',''));
            intUpperValue = parseInt(elementUpper[elementUpper.selectedIndex].value.substring(1).replace(',',''));
                        
            if (intLowerValue > intUpperValue)
            {
                alert("Please make sure to select upper price value greater than the lower price value");
            }
            else
            {
                SaveSelection(criteria_Name,hidCriteriaMetadata_ClientID,hidSavedCriteria_ClientID);
                Wait('Search');
                __doPostBack(lbPostback_UniqueID, '');
            }
        }
   }
   else
   {
       SaveSelection(criteria_Name,hidCriteriaMetadata_ClientID,hidSavedCriteria_ClientID,Control_Id2);
       Wait('Search');
        __doPostBack(lbPostback_UniqueID, '');
   }
      
 }


function HtmlEncode(str){
   
    var prev = "";
    var i =0;
    while (prev != str){
        i ++;
        prev = str;
        str = str.replace("®", "&reg;").replace("™", "&trade;").replace("©", "&copy;");
    }
   
    return str;
}

function NavigateParentToList(bvdid, indid, listPageUrl, metadataControlId){
    var strValues = "";
    var aryInfo = document.getElementById(metadataControlId).value.split("{");
    
    var aryCurrent;
    var isAfterSelected = false;
    var strQueryString = "";
    var strCriteriaQuery;
    for(var i = 0; i<aryInfo.length; i++){
        strCriteriaQuery = "";
        aryCurrent = aryInfo[i].split("|");
        var name = aryCurrent[0];
        var elementLower = document.getElementById(aryCurrent[1]);
        var elementUpper = document.getElementById(aryCurrent[2]);

        if(elementLower != null){
            if(elementLower.selectedIndex > 0){
                strCriteriaQuery = elementLower[elementLower.selectedIndex].value;
            }
            
            if(elementUpper != null && (elementUpper.selectedIndex > 0 || elementLower.selectedIndex > 0)){
                strCriteriaQuery += "|";
            }
            
            //if this is a range field and upper range was selected, add to selected string
            if(elementUpper != null && elementUpper.selectedIndex > 0)
            {
                strCriteriaQuery += elementUpper[elementUpper.selectedIndex].value; 
            }
           
            if(strCriteriaQuery.length > 0){
                strQueryString += "&" + name + "=" + strCriteriaQuery.replace("&","%26");
            }
        }
    }
    if(strQueryString.length >0){
        strQueryString = strQueryString.substr(1, strQueryString.length -1);
    }
    
    var strUrl = listPageUrl + "?bvdid=" + bvdid + "&indid=" + indid + "&" + strQueryString;
    
    window.top.document.location = strUrl;
}

function _GetValues(element){

    var strCurrentValues = "";
    for(var i=0; i<element.length; i++){
        strCurrentValues += element[i].value + "|";
    }

    if(strCurrentValues.length > 0){
        strCurrentValues = strCurrentValues.substr(0, strCurrentValues.length -1);
    }    

    return strCurrentValues;
}

function Wait(name){
    var scrollTop = 0;
    if(document.body.scrollTop){
        scrollTop = parseInt(document.body.scrollTop);
    }
    else if(window.pageYOffset){
        scrollTop = parseInt(window.pageYOffset);
    }
    
    var clientHeight = 0;
    if(document.body.clientHeight){
        clientHeight = parseInt(document.body.clientHeight);
    }
    else if(window.innerHeight){
        clientHeight = parseInt(window.innerHeight);
    }
    
    var clientWidth = 0;
    if(document.body.clientWidth){
        clientWidth = parseInt(document.body.clientWidth);
    }
    else if(window.innerWidth){
        clientWidth = parseInt(window.innerWidth);
    }
    
    var panel = document.getElementById(name + "WaitPanel");
    panel.style.top = clientHeight/2 + scrollTop - 50;
     
    panel.style.left = "230";
    panel.style.display = "block";
   
    var fraBase = document.getElementById(name + "WaitBase");
    fraBase.style.display = 'block';
    fraBase.style.height = clientHeight + scrollTop;
    fraBase.style.width = clientWidth;
	
}

 
//  document.getElementById('Container_InventorySearch_lstHdnPriceList').style.display = "none";

