var ddPropertyType = "#ddPropertyType";
var ddBeds = "#ddBeds";
var ddBaths = "#ddBaths";
var ddCounty = "#ddCounty";
var ddCity = "#ddCity";
var ddMinPrice = "#ddMinPrice";
var ddMaxPrice = "#ddMaxPrice";

function WriteDate() {
    var months = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"];
    var days = ["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"];
    var now = new Date();
    var dayname = days[now.getDay()];
    var monthname = months[now.getMonth()];
    var monthday = now.getDate();
    var year = now.getFullYear();
    var dateString = dayname + ", " + monthname + ' ' + monthday + ", " + year;
    document.write(dateString);
}

function WriteYear() {
    var now = new Date();
    if( now.getFullYear() )
        document.write(now.getFullYear());
}

function onCountyChange() {
    ListWisconsin.MapService.UpdateCities($(ddCounty + " option:selected").val(), updateCities, onFailure);
}

// update city dropdown
function updateCities(newCities) {
    var selectedCity = $(ddCity + " option:selected").val();
    var selectedIndex = 0;

    // clear options except default
    $(ddCity + " option").each(function (i) { if (i > 0) $(ddCity + " option:last").remove(); });
    // add in all valid options
    $(newCities).each(function (i, v) {
        $(ddCity).append('<option value="' + v + '">' + v + '</option>');
    });

    // reset selected max value
    $(ddCity).val(selectedCity);
}

function Print() { window.print(); }

// set search cookes and redirect to search page
function btnSearch_Click() {
    // set cookies
    SetCookies();    
    //redirect to search results
    document.location = "PropertySearch.aspx";
}

// set search cookies
function SetCookies() {
    // set cookies
    var _category = $(ddPropertyType + " option:selected").val();
    var _priceMin = $(ddMinPrice + " option:selected").val();
    var _priceMax = $(ddMaxPrice + " option:selected").val();
    var _beds = $(ddBeds + " option:selected").val();
    var _baths = $(ddBaths + " option:selected").val();
    var _county = $(ddCounty + " option:selected").val();
    var _city = $(ddCity + " optin:selected").val();
    var exp = 7

    // only set cookies if values aren't default
    UpdateCookie("category", _category, 0, exp);
    UpdateCookie("priceMin", _priceMin, 0, exp);
    UpdateCookie("priceMax", _priceMax, 999999999, exp);
    UpdateCookie("beds", _beds, 0, exp);
    UpdateCookie("baths", _baths, 0, exp);
    UpdateCookie("county", _county, "", exp);
    UpdateCookie("city", _city, "", exp);
    
    // clear unused cookies
    ClearCookie("view");
    ClearCookie("mapCenter");
    ClearCookie("mapZoom");
    ClearCookie("units");
    ClearCookie("zip");
    ClearCookie("school");
    ClearCookie("sortOrder");
    ClearCookie("sortDir");
    ClearCookie("firstName");
    ClearCookie("lastName");
    ClearCookie("email");
    ClearCookie("listingStatus");
}

// Set cookie
function SetCookie(name, value, expOffset) {
    var cookieExp = new Date();
    cookieExp.setDate(cookieExp.getDate() + expOffset);
    document.cookie = name + "=" + value + "; expires=" + cookieExp + "path=/";
}

function UpdateCookie(key, val, def, exp) {
    if (val != def)
        SetCookie(key, val, exp);
    else
        ClearCookie(key);
}

// Clear cookie
function ClearCookie(name) {
    var cookieExp = new Date();
    cookieExp.setDate(cookieExp.getDate() - 1);
    document.cookie = name + "=; expires=" + cookieExp + "path=/";
}

function AdvancedSearch() {
    var expired = new Date();
    expired.setDate(expired.getDate()-1);
}

function SignExample() {
    window.open("SignExample.htm","signexample","width=284,height=423,resizable=no,scrollbars=no,toolbar=no,location=no,directories=no,status=no,menubar=no");
}

// handle callback errors - occur when user clicks on a link while server is processing
function onFailure(err) {
    //alert(err.get_message());
}

// handle errors if link is clicked while interacting with server
if (!document.all) {
    window.onbeforeunload = function () {
        Sys.WebForms.PageRequestManager.getInstance().add_endRequest(endRequest);
    }
}

function endRequest(sender, e) {
    err = e.get_error();
    if (err) {
        if (err.name == "Sys.WebForms.PageRequestManagerServerErrorException")
            e.set_errorHandled(true);
    }
}
