/*
 @Name: $RCSfile: home.js,v $
 @Version: $Revision: 1.11 $
 @Date: $Date: 2009/07/29 17:10:38 $
 
 Copyright (C) 2008 Copart, Inc. All rights reserved.
 */

function setFilterBaseLabel (label)
{
  $('filterBaseLabel').value=label;
  return false;
}


function showUpTo(){
    var selectedValue = $F("location");

    var vis = "visible";
    if (selectedValue != "zip") {
        vis = "hidden";
    }
    
    $("zipPostalCodeSpan").style.visibility = vis;
    updateStateFacilityDropDown('location', 'stateFacility');
}

function homeUpdateModelDropDown(){
    //updateModelDropDown('make', 'model');
	var reqParam = "selectedMake";
    var xmlNodeName = "model";
    var xmlNodeAttribute1 = "code";
    var xmlNodeAttribute2 = "description";
    
    if ($F('make') != "*") {
        updateDropDownWith($F('make'), 'model', xmlNodeName, xmlNodeAttribute1, xmlNodeAttribute2, reqParam, message.modelAjax, message.defaultModelDisplay, message.defaultModelValue);
    }
}

function homeUpdateMakeDropDown(){
    if ($F("vehicleType") == message.validVehicleType) {
        $("model").disabled = false;
        
        updateMakeDropDown('vehicleType', 'make');
		
		// Added to fix bug 8105
		if ($F('make') == "*" || $F('make') == null) {
			$('model').length = 0;
			$('model').options[0] = new Option(message.defaultModelDisplay, message.defaultModelValue);
		}
		else {
			updateModelDropDown('vehicleType', 'model');
		}
    }
    else {
        updateMakeDropDown('vehicleType', 'make');
        makeNotValidModelDropDown();
    }
    //alert("homeUpdateMakeDropDown");
}

function updateFeaturedListings(){
    var selectedType = $("featuredLotType").value;
    getFeaturedListings(selectedType, "featuredCompactList", message.ajaxError)
}

function initFeaturedList(){
    var initialFeaturedSelection = "F|C";
    getFeaturedListings(initialFeaturedSelection, "featuredCompactList", message.ajaxError)
}

function setLanguage(){
    var selectedLanguage = $F("siteLanguage");
    if (selectedLanguage != "*") {
        $("langForm").submit();
    }
}

function viewMoreFeaturedListings(userSelectedValue){
    $("categorySearchType").value = userSelectedValue;
    $("featuredListingsCompactForm").submit();
}

function hideZip(){
    $('zip_box').style.visibility = 'hidden';
    
    // Clear out value if hidden
    // $("enteredZip").value = "";
}

function showZip(){
	/*
    $("enteredZip").value = searchParms.zip;
    
    $('zip_box').style.visibility = 'visible';
    $("enteredZip").focus();
    */
}

function setHGV(){
    // Clears the error message in zip/postal code div If the user clicks on other image.
    clearErrorCode();
    //setSpecialSearchValues("VV", "PICKUP","");
    setSpecialSearchValues("A3", "","");
}

function setLightCommercial(){
    // Clears the error message in zip/postal code div If the user clicks on other image.
    clearErrorCode();
    //setSpecialSearchValues("VV", "4DR WAGON/SPORT UT","");
    setSpecialSearchValues("D9", "","");
}

function setCars(){
    // Clears the error message in zip/postal code div If the user clicks on other image.
    clearErrorCode();
    setSpecialSearchValues("C1", "","");
}

function setMoreCars(){
    // Clears the error message in zip/postal code div If the user clicks on other image.
    clearErrorCode();
    setSpecialSearchValues("A0", "",""); //TODO
}
/*
function setMarine(){
    // Clears the error message in zip/postal code div If the user clicks on other image.
    clearErrorCode();
    setSpecialSearchValues("FG", "","");
}
*/
function setClassics(){
    // Clears the error message in zip/postal code div If the user clicks on other image.
    clearErrorCode();
    setSpecialSearchValues("A9", "","");
}

function setCaravans(){
    // Clears the error message in zip/postal code div If the user clicks on other image.
    clearErrorCode();
    setSpecialSearchValues("A8", "","");
}

function setIndustrialEquipment(){
    // Clears the error message in zip/postal code div If the user clicks on other image.
    clearErrorCode();
    setSpecialSearchValues("C0", "","");
}

function setMotorcycles(){
    // Clears the error message in zip/postal code div If the user clicks on other image.
    clearErrorCode();
    setSpecialSearchValues("A1", "","");
}
/*
function setJetSkis(){
    // Clears the error message in zip/postal code div If the user clicks on other image.
    clearErrorCode();
    setSpecialSearchValues("FF", "","");
}

function setSnowMobiles(){
    // Clears the error message in zip/postal code div If the user clicks on other image.
    clearErrorCode();
    setSpecialSearchValues("FE", "","");
}// Modified for bug 5785 - Invalid zip code returns results by Phani
*/
function validateSpecialSearch(){
    //var isValid = checkAlphaNumeric($("enteredZip"), 0, 0, 1, message.specialSearch_zip_required, "errorSpan");
    //var submitForm = false;
    if (true) {
    	
        //rememberZip($("enteredZip").value);
        //searchParms.zip = 94534;
        //saveSearchParms(searchParms);
        //$("specialZipPostalCode").value = 94534;
        $("errorSpan").innerHTML = "&nbsp;";
        submitForm = true;
    }
    return submitForm;
}

function setSpecialSearchValues(catId, bodyStyle,filterCode){
	clearForms();
    $("categoryId").value = catId;
    $("bodyStyle").value = bodyStyle;
	$("filterCode").value = filterCode;
    $("eventId").value = "specialSearch";
    searchParms.zip = '';
    searchParms.fullPostalCode = '';
    saveSearchParms(searchParms);    
    $("specialSearchForm").submit();
	
    //showZip();
}

function setHotItemsSearch(){
    setSearchById(2);
}

function setNewListingsSearch(){
    setSearchById(1);
}

function setHighValueItems(){
    setSearchById(3);
}

function setSearchById(searchId){
	clearForms();
    $("eventId").value = "specialSearchById"
    $("categoryId").value = searchId;
    $("specialSearchForm").action = message.searchByIdURL;
    $("specialSearchForm").submit();
}


// This function is used to Clears the error message in zip/postal code div If the user clicks on other image.
function clearErrorCode(){
   // $("errorSpan").innerHTML = "";
}

function clearForms()
{
	//Special Search Form (Car Images)
	$("specialZipPostalCode").value = "";
	$("categoryId").value = "";
	$("bodyStyle").value = "";
}

function submitSearchByType()
{
	$("searchByType").submit();
}



function quickSearchChange(objClicked){
    var rad_val;
    var radioBtns = $("quickradio", "isLotNumberRadio", "isVinNumberRadio");
    for (var i = 0; i < radioBtns.length; i++) {
        if (radioBtns[i] != objClicked) {
            radioBtns[i].checked = false;
        }
        if (radioBtns[i].checked) {
            rad_val = radioBtns[i].value;
            
            if (rad_val == 'predefined') {
                $('lotId').disabled = true;
                $('categorySearchType').disabled = false;
                //$('qsZipPostalCode').disabled = false;
                //$('qsMileageRange').disabled = false;
            }
            else {
                $('categorySearchType').disabled = true;
                //$('qsZipPostalCode').disabled = true;
               // $('qsMileageRange').disabled = true;
                $('lotId').disabled = false;
                if (rad_val == "lotNum") {
                    //$("postalCode").disabled = true;
                    //$("milesAway").disabled = true;
                    $("isLotNumber").value = 1;
                    $("isVinNumber").value = 0;
                    $('lotId').maxLength = 8;
                }
                else {
                    //$("postalCode").disabled = true;
                    //$("milesAway").disabled = true;
                    $("isLotNumber").value = 0;
                    $("isVinNumber").value = 1;
                    $('lotId').maxLength = 25;
                }
            }      
        }
    }
}



Event.observe(window, "load", function(){

    Event.observe('searchCars', 'click', setCars);
    Event.observe('searchMoreCars', 'click', setMoreCars);
    Event.observe('searchClassics', 'click', setClassics);
    Event.observe('searchIndustrialEquipment', 'click', setIndustrialEquipment);
    Event.observe('searchMotorcycles', 'click', setMotorcycles);
    Event.observe('searchLightCommercial', 'click', setLightCommercial);
    //Event.observe('searchMarine', 'click', setMarine);
    Event.observe('searchCaravans', 'click', setCaravans);
    Event.observe('searchHGV', 'click', setHGV);
    
    //Event.observe('searchJetSkis', 'click', setJetSkis);
    
    //Event.observe('searchSnowMobiles', 'click', setSnowMobiles);
    //Event.observe('location', 'click', showUpTo);
    Event.observe('make', 'change', homeUpdateModelDropDown);
    Event.observe('vehicleType', 'change', homeUpdateMakeDropDown);
    //Event.observe('searchHotItems', 'click', setHotItemsSearch);
    //Event.observe('searchNewListings', 'click', setNewListingsSearch);
    //Event.observe('searchHighValueItems', 'click', setHighValueItems);
    //Event.observe('siteLanguage', 'change', setLanguage);   
    //Event.observe('homeHideZipX', 'click', hideZip);
	//Event.observe('specialSearchForm', 'submit', validateSpecialSearch);

	// To show the error message in zip/postal code div.
    if (message.specialSearchServerSideError.length > 0) {
        setSpecialSearchValues(message.specialSearchVehicleType, message.specialSearchBodyStyle,"");
        showZip();
    }
    
    //if ($F("vehicleType") != message.validVehicleType) {
    //    makeNotValidModelDropDown();
    //}
    
    // updateMakeDropDown("vehicleType", "make");
    // updateModelDropDown("make", "model");
    
       
    if(searchParms.location > ""){
		$(searchParms.location).checked = true;
	}
 
    setSelectValue("startYear", searchParms.startYear);
    setSelectValue("endYear", searchParms.endYear);
    setSelectValue("saleTitleType", searchParms.saleTitleType);
    setSelectValue("mileageRange", searchParms.mileageRange);
    
    //$("zipPostalCode").value = searchParms.zip;
    searchParms.fullPostalCode= searchParms.fullPostalCode==undefined?'':searchParms.fullPostalCode;
    $("zipPostalCode").value = searchParms.fullPostalCode;    
    setSelectValue("vehicleType", searchParms.vehicleType)
    updateMakeDropDownWith(searchParms.vehicleType, searchParms.make);
    updateModelDropDownWith(searchParms.make, searchParms.model);
	    
    if(!setSelectValue("stateFacility", searchParms.stateFacility)){
    	updateStateFacilityDropDownWith(searchParms.location, searchParms.stateFacility);
    }

    if (searchParms.location == "zip") {
        //$("zipPostalCodeSpan").style.visibility = "visible";
        $("location-container").style.display = "none";
        $("zip-container").style.display = "block";
    }else{
        //$("zipPostalCodeSpan").style.visibility = "hidden";
        $("location-container").style.display = "block";
        $("zip-container").style.display = "none";
	}
	

});


