var GetAllCitiesMarkets = 'GetAllCitiesMarkets';

var GetCity = 'GetCity';
var IsPageLoded = false;
var rdoClick = false;

$(document).ready(function () {
    
    IsPageLoded = true;
    var MapType = $("input[type='radio'][name='rdoMapType']:checked").val();
    var CCityId = "0";
    //    debugger;

    var cval = getCookie("KataCity");

    if (cval != null && cval != "") {
        if (cval.indexOf(",") != -1) {
            var arr = cval.split(',');
            MapType = arr[1];
            CCityId = arr[0];
            if (MapType == "1") {
                $("input[type='radio'][name='rdoMapType'][id='rdoOffice']").attr("checked", true);
            }
            if (MapType == "2") {
                $("input[type='radio'][name='rdoMapType'][id='rdoIndustrial']").attr("checked", true);
            }
        }
    }
    else {
        $("input[type='radio'][name='rdoMapType'][id='rdoOffice']").attr("checked", true);
    }
    FillComboCityOfRegion(MapType);



    $("#chkSetDefault").change(function () {

        if ($(this).attr("checked")) {
            setCookie("KataCity", $("#cbCities").val() + "," + $("input[type='radio'][name='rdoMapType']:checked").val(), 365);
        }
        else {
            DeleteCookie("KataCity");
            //setCookie("KataCity", $("#cbCities > option")[0].value, 365);
        }
    });

    $("#spnIndustrial").click(function () {
        $("#rdoOffice").attr("checked", false);
        $("#rdoIndustrial").attr("checked", true);
        $("input[type='radio'][name='rdoMapType'][id*='rdoIndustrial']").click();
    });
    $("#spnOffice").click(function () {
        $("#rdoOffice").attr("checked", true);
        $("#rdoIndustrial").attr("checked", false);
        $("input[type='radio'][name='rdoMapType'][id*='rdoOffice']").click();
    });

    $("#spnSaveLocation").click(function () {

        if ($("#chkSetDefault").attr("checked")) {
            $("#chkSetDefault").attr("checked", false);
        }
        else {
            $("#chkSetDefault").attr("checked", true);
        }
        $("#chkSetDefault").change();
    });

    $("input[type='radio'][name='rdoMapType'][id*='rdoOffice']").click(function () {
        IsPageLoded = false;
        rdoClick = true;
        var MapType = $(this).val();
        //        alert($("#cbCities option:selected").text());


        $("#hdnCurrentText").val($("#cbCities option:selected").text());
        $("#chkSetDefault").attr("checked", false);
        FillComboCityOfRegion(MapType);
    });

    $("input[type='radio'][name='rdoMapType'][id*='rdoIndustrial']").click(function () {

        IsPageLoded = false;
        rdoClick = true;
        var MapType = $(this).val();
        //        alert($("#cbCities option:selected").text());


        $("#hdnCurrentText").val($("#cbCities option:selected").text());
        $("#chkSetDefault").attr("checked", false);
        FillComboCityOfRegion(MapType);
    });

    $("#cbCities").change(function () {
        IsPageLoded = false;
        rdoClick = false;
        FillCityInfo($(this).val());
        var DefaultCity = getCookie("KataCity");
        if (DefaultCity != null && DefaultCity != "") {
            if (DefaultCity.indexOf(",") != -1) {
                var arr = DefaultCity.split(',');
                MapType = arr[1];
                CCityId = arr[0];
                if (CCityId == $(this).val()) {
                    $("#chkSetDefault").attr("checked", true);
                }
                else {
                    $("#chkSetDefault").attr("checked", false);
                }
            }
        }
        else {
            $("#chkSetDefault").attr("checked", false);
        }
        //        var DefaultCity = getCookie("KataCity");

        //        if (DefaultCity != null && DefaultCity != "") {
        //            if (DefaultCity == $(this).val()) {
        //                $("#chkSetDefault").attr("checked", true);
        //            }
        //            else {
        //                $("#chkSetDefault").attr("checked", false);
        //            }
        //        }
        //        else {
        //            //            alert(DefaultCity);
        //        }
    });

});



function FillComboCityOfRegion(MapType) {

    $.ajax({
        type: "POST",
        url: hostname + ModulePath + MapSvcName + '/' + GetAllCitiesMarkets,
        contentType: 'application/json',
        dataType: 'json',
        data: "{TypeId:'" + parseInt(MapType) + "'}",
        success: function (Cities) {
            
            if (Cities.d.length > 0) {
                $('#dvSearch').show();
                $('#cbCities option').remove();
                $("#cbCities").append($("<option></option>").val("0").html(" -- Select a Market --"));

                $.each(Cities.d, function () {
                    $("#cbCities").append($("<option></option>").val(this['Id']).html(this['Name']));
                });

                if ($("#cbCities").val() != "") {
                    if (IsPageLoded) {
                        SetCitySelected();
                    }
                    if (rdoClick) {
                        SetSameCitySelected();
                    }
                }

                if ($("#cbCities").val() != "") {
                    FillCityInfo($("#cbCities").val());
                }
                else {
                    //                    debugger;
                }
            }
            else {
                $('#dvSearch').hide();
            }
        },
        error: function (err) {
            debugger;
        }
    });

}



function FillCityInfo(CityId) {
    var CityId = $("#cbCities").val();
    $.ajax({
        type: "POST",
        url: hostname + ModulePath + MapSvcName + '/' + GetCity,
        contentType: 'application/json',
        dataType: 'json',
        data: "{ CityId: '" + parseInt(CityId) + "'}",
        success: function (City) {
            if (CityId != '0') {

                $("#tdVrate").html(City.d.VacancyRate.toFixed(1) + "%");
                var NetAbsorptionround = "";
                if (City.d.NetAbsorptionString != "") {
                    if (City.d.NetAbsorptionString.indexOf(".") >= 0) {
                        NetAbsorptionround = City.d.NetAbsorptionString.split(".")[0];
                    }
                    else {
                        NetAbsorptionround = City.d.NetAbsorptionString;
                    }
                }
                $("#tdAbRate").html(NetAbsorptionround);

                var UnderConstructionround = "";
                if (City.d.UnderConstructionString != "") {
                    if (City.d.UnderConstructionString.indexOf(".") >= 0) {
                        UnderConstructionround = City.d.UnderConstructionString.split(".")[0];
                    }
                    else {
                        UnderConstructionround = City.d.UnderConstructionString;
                    }
                }
                $("#tdUCons").html(UnderConstructionround);

                $("#tdRent").html("$" + City.d.AverageRentString);
                if (trim(City.d.URL) != "" && City.d.URL.length > 3) {
                    $("#trlinkMore").show();
                    $("#aDetails").show();
                    $("#aDetails").attr("href", hostname + City.d.URL);
                }
                else {
                    $("#aDetails").hide();
                    $("#trlinkMore").hide();
                }


                if (City.d.VacancyRateChange == "Increase") {
                    $("#imgtdVrate").show();
                    $("#imgtdVrate").attr("src", ModulePath + "Images/arrow-up.png");
                } else if (City.d.VacancyRateChange == "Decrease") {
                    $("#imgtdVrate").show();
                    $("#imgtdVrate").attr("src", ModulePath + "Images/arrow-do.png");
                }
                else {
                    $("#imgtdVrate").show();
                    $("#imgtdVrate").attr("src", ModulePath + "Images/no-change-dash.png");
                }

                if (City.d.NetAbsorptionChange == "Increase") {
                    $("#imgtdAbRate").show();
                    $("#imgtdAbRate").attr("src", ModulePath + "Images/arrow-up.png");
                } else if (City.d.NetAbsorptionChange == "Decrease") {
                    $("#imgtdAbRate").show();
                    $("#imgtdAbRate").attr("src", ModulePath + "Images/arrow-do.png");
                }
                else {
                    $("#imgtdAbRate").show();
                    $("#imgtdAbRate").attr("src", ModulePath + "Images/no-change-dash.png");
                }

                if (City.d.AverageRentChange == "Increase") {
                    $("#imgtdRent").show();
                    $("#imgtdRent").attr("src", ModulePath + "Images/arrow-up.png");
                } else if (City.d.AverageRentChange == "Decrease") {
                    $("#imgtdRent").show();
                    $("#imgtdRent").attr("src", ModulePath + "Images/arrow-do.png");
                }
                else {
                    $("#imgtdRent").show();
                    $("#imgtdRent").attr("src", ModulePath + "Images/no-change-dash.png");
                }

                if (City.d.UnderConstructionChange == "Increase") {
                    $("#imgtdUCons").show();
                    $("#imgtdUCons").attr("src", ModulePath + "Images/arrow-up.png");
                } else if (City.d.UnderConstructionChange == "Decrease") {
                    $("#imgtdUCons").show();
                    $("#imgtdUCons").attr("src", ModulePath + "Images/arrow-do.png");
                }
                else {
                    $("#imgtdUCons").show();
                    $("#imgtdUCons").attr("src", ModulePath + "Images/no-change-dash.png");
                }
                $('#light').show();
            }
            else {
                $("#imgtdVrate").hide();
                $("#imgtdAbRate").hide();
                $("#imgtdRent").hide();
                $("#imgtdUCons").hide();
                $("#aDetails").hide();
                $("#tdVrate").text("");
                $("#tdAbRate").text("");
                $("#tdRent").text("");
                $("#tdUCons").text("");
            }
        },
        error: function (err) {
            debugger;
        }
    });
}


function trim(s) {
    var l = 0; var r = s.length - 1;
    while (l < s.length && s[l] == ' ') {
        l++;
    }
    while (r > l && s[r] == ' ') {
        r -= l;
    }
    return s.substring(l, r + 1);
}

function SetCitySelected() {

    var DefaultCity = getCookie("KataCity");
    if (DefaultCity != null && DefaultCity != "") {
        if (DefaultCity.indexOf(",") != -1) {
            var arr = DefaultCity.split(',');
            MapType = arr[1];
            CCityId = arr[0];
            //            alert($("input[type='radio'][name='rdoMapType']:checked").val());
            if ($("input[type='radio'][name='rdoMapType']:checked").val() == MapType) {
                $("#cbCities").val(CCityId);
                $("#chkSetDefault").attr("checked", true);
            }
        }
    }
    else {
//        debugger;
        $("#cbCities option:contains('United States')").attr("selected", true);
        //        $("#cbCities").val("0");
        $("#chkSetDefault").attr("checked", false);
    }
}

function SetSameCitySelected() {
    $("#cbCities option:contains('" + $("#hdnCurrentText").val() + "')").attr("selected", true);
}

function getCookie(c_name) {
    var i, x, y, ARRcookies = document.cookie.split(";");
    for (i = 0; i < ARRcookies.length; i++) {
        x = ARRcookies[i].substr(0, ARRcookies[i].indexOf("="));
        y = ARRcookies[i].substr(ARRcookies[i].indexOf("=") + 1);
        x = x.replace(/^\s+|\s+$/g, "");
        if (x == c_name) {
            return unescape(y);
        }
    }
}

function setCookie(c_name, value, exdays) {
    var exdate = new Date();
    exdate.setDate(exdate.getDate() + exdays);
    var c_value = escape(value) + ((exdays == null) ? "" : "; expires=" + exdate.toUTCString());
    document.cookie = c_name + "=" + c_value;
}

function DeleteCookie(name) {
    var dttody = new Date();
    document.cookie = name + '=; expires=' + dttody + ';';
}

function checkCookie() {
    var username = getCookie("KataCity");
    if (username != null && username != "") {
        alert("Welcome again " + username);
    }
    else {
        username = prompt("Please enter your name:", "");
        if (username != null && username != "") {
            setCookie("KataCity", username, 365);
        }
    }
}


