﻿

function validatePersonalNumber(personalNumberTextId, validatePersonalNumber, personalNumberValidator) {
    if (personalNumberTextId != null) {
        var textBoxCtrl = personalNumberTextId;
        var validatePersonalNumber = validatePersonalNumber.value;
        if (parseInt(validatePersonalNumber) == 0) {

            var validation = personalNumberValidator;
            ValidatorEnable(validation, false);
            textBoxCtrl.disabled = true;
        }
        else {

            var validation2 = personalNumberValidator;
            ValidatorEnable(validation2, true);
            textBoxCtrl.disabled = false;
            
        }
    }
}

function setButtonEnterFocus(objEvent, strElement) {
    if (objEvent.keyCode == 13) {
        oNextObj = document.getElementById(strElement);
        if (oNextObj) {
            oNextObj.focus();
            oNextObj.click();
        } //end if
        return;
    } //end if
} //end function


function clearText(controlid) {
    document.getElementById(controlid).value = "";
}

function resetText(controlid, inputText) {
    if (document.getElementById(controlid).value == "")
        document.getElementById(controlid).value = inputText;
}

function checkEditZoneForm(event, inputstring) {

    var error = "";
    var inputvalue1 = document.getElementById(searchZoneTextId).value.replace(" ", "");

    if (checkInputString(inputvalue1) == false) {
        error = "Postnummer: Otillåtna tecken.\n";
    }

    if (checkCharNumber(inputvalue1) == false) {
        error = "Postnummer: Otillåtna tecken.\n";
    }

    if (inputvalue1.length > 5) {
        error = "Postnummer: 5 siffror.\n";
    }

    if (inputvalue1 == editZoneSearchField1 || inputvalue1.length < 2) {
        error = "Postnummer: 5 siffror.\n";
    }

    if (error == "") {
        document.getElementById('searchZoneErrorContainer').className = "hidden";
        document.getElementById(searchZoneButtonId).disabled = false;
        document.getElementById('mSearchZoneInput').disabled = false;
        loginEnterClick(event, document.getElementById('mSearchZoneInput').id);
    }
    else {
        document.getElementById(searchZoneErrorLabelId).innerHTML = error;
        document.getElementById('searchZoneErrorContainer').className = "searchZoneErrorContainer";
    }
}


function checkInputString(inputString) {
    var illegalChars = /[\(\)\<\>\,\;\:\\\/\"\[\]]/
    ///\W/; // allow only letters, numbers, and underscores

    if (illegalChars.test(inputString)) {
        return false;
    }
    else
        return true;
}

function checkCharNumber(inputstring) {
    var legalChars = "0123456789 ";
    var thisChar;
    var counter = 0;
    for (var i = 0; i < inputstring.length; i++) {
        thisChar = inputstring.substring(i, i + 1);
        if (legalChars.indexOf(thisChar) >= 0) {
            counter++;
        }
    }
    if (counter == (inputstring.length)) {
        return true;
    }
    else {
        return false;
    }
}

function areaOnFocus(fieldid, inputtext, forminputname) {
    if (inputtext == forminputname) {
        document.getElementById(fieldid).value = '';
    }
}


function areaOnBlur(fieldid, inputtext, forminputname) {
    if (inputtext == '') {
        document.getElementById(fieldid).value = forminputname;
    }
}

function setdefaultinput(fieldid, inputtext, forminputname) {
    if (inputtext == '')
        document.getElementById(fieldid).value = forminputname;
}



var searchZoneResultText;
function DisplaySearchResultContainer() {
    if (searchZoneResultText != null) {
        if (document.getElementById(searchZoneResultText) != null && document.getElementById('mSearchResultContainer') != null
    && document.getElementById(searchZoneResultText).innerHTML == "")
        { document.getElementById('mSearchResultContainer').className = "hidden"; }
        else {
            document.getElementById('mSearchResultContainer').className = "searchResultContainer";
        }
    }
}

function SearchPriceArea() {
    var zipCode = document.getElementById(searchZoneTextId).value.replace(" ", "");
    if (zipCode != "") {
        GetZipCodeAjax(zipCode); // GetPriceAreaServerSide(zipCode);
    }
}

//<![CDATA[

//function GetPriceAreaServerSide(inputZipCode) {
//    return PageMethods.GetZipCode(inputZipCode, GetZipCodeSucess, Add_Error, Add_Timeout);
//}

//]]>            

function GetZipCodeSucess(area) {
    if (arguments.length > 0) {

        //var area = arguments[0].toString();
        if (area == null || area == "" || area == "0") {
            document.getElementById(searchZoneResultText).innerHTML = "Svar:Postkoden kunde ej hittas.";
            document.getElementById(confirmEditZone).disabled = true;
            document.getElementById('mSearchResultConfirmContainer').className = "hidden";
            $("#map-areas").css("background-position", "166px 0px");
        }
        else if (area != null && area.length > 1) {
            document.getElementById(searchZoneResultText).innerHTML = "Svar: Tillhör både elområde " + area.substring(0, 1) + " och " +
            area.substring(1, 2) + " var god välj elområde på kartan istället!";
            document.getElementById('mSearchResultConfirmContainer').className = "hidden";
            document.getElementById(confirmEditZone).disabled = true;
            $("#map-areas").css("background-position", "166px 0px");
        }
        else {
            document.getElementById(searchZoneResultText).innerHTML = "Svar: Du bor i elområde " + area + "!";
            document.getElementById(confirmEditZone).disabled = false;
            document.getElementById('mSearchResultConfirmContainer').className = "searchResultConfirmContainer";
            $("#map-areas").css("background-position", -(4 - area) * 166 + "px 0px");
            document.getElementById(selectedZoneId).value = area;
        }

        document.getElementById('mSearchResultContainer').className = "searchResultContainer";

    }
    else
    { return 'length: ' + arguments.length; }
    //$get('RSSItem') $("result").innerText = 
}

function Add_Timeout() {
    return 'timeout';
}

function Add_Error(result, response) {
    return 'error';
}

function showPriceDialog() {
    $('#priceZoneDialog').dialog('open');
    replaceSIFR();
}

function deparam(params) {
    var o = {};
    if (!params) return o;
    var a = params.toString().split('&');
    for (var i = 0; i < a.length; i++) {
        var pair = a[i].split('=');
        o[decodeURIComponent(pair[0])] = decodeURIComponent(pair[1]);
    }
    return o;
}

//jQuery
$(document).ready(function () {

    //global popup dialog
    $('#priceZoneDialog').dialog({ bgiframe: true, title: '', show: 'slide', autoOpen: false, width: 610, height: 506, dialogClass: 'jqueryEditPriceZoneDialog', modal: true, resizable: false, draggable: true, position: 'top',
        open: function () {
            $(this).dialog("widget").appendTo("#PopupDialogs");
            $(".ui-widget-overlay").appendTo("#PopupDialogs");
        }
    });

    var dinElCookie = deparam($.cookie('DinEl'));
    var priceArea = dinElCookie.priceArea;
    if (!priceArea) {
        showPriceDialog();
    }

    if ($.cookie('DinEl') != "") {
        var cookie = deparam($.cookie('DinEl'));
        var area = cookie.priceArea;
        if (area > 0) {
            if (document.getElementById('closeButton') != null)
            { document.getElementById('closeButton').className = "closeButton"; }
        }
        else {
            document.getElementById('closeButton').className = "closeButtonHidden";
        }
        if (area == "" || area == "0") {
            document.getElementById(searchZoneResultText).innerHTML = "Postkoden kunde ej hittas.";
            document.getElementById(confirmEditZone).disabled = true;
            document.getElementById('mSearchResultConfirmContainer').className = "hidden";
        }
        else if (area == null) {
            document.getElementById(confirmEditZone).disabled = true;
            document.getElementById('mSearchResultConfirmContainer').className = "hidden";
        }
        else {
            if (searchZoneResultText != null) {
                document.getElementById(searchZoneResultText).innerHTML = "Svar: Du bor i elområde " + area;
                document.getElementById(confirmEditZone).disabled = false;
                document.getElementById('mSearchResultConfirmContainer').className = "searchResultConfirmContainer";
                $("#map-areas").css("background-position", -(4 - area) * 166 + "px 0px");
            }
        }
        if (document.getElementById(searchZoneResultText) != null && document.getElementById('mSearchResultContainer') != null && document.getElementById(searchZoneResultText).innerHTML == "")
            document.getElementById('mSearchResultContainer').className = "searchResultContainer";
    }


    $("#mSearchZoneButton").click(function () {
        document.getElementById(selectedZoneId).value = selectedZone;
        $("#map-areas").css("background-position", -(4 - selectedZone) * 166 + "px 0px");
    });

    $("#mClosePriceZoneDialogInput").click(function () {

        $('#priceZoneDialog').dialog("close");
    });

    $("#mConfirmEditZone").click(function () {

        $('#priceZoneDialog').dialog("close");
    });

    $("#mSearchZoneButton").click(function () {

        $('#priceZoneDialog').dialog("open");

    });

    $('#document.getElementById(searchZoneResultText)').change(DisplaySearchResultContainer());

    $("#map area").mouseover(function (e) {
        var area = parseInt($(this).attr('class').replace(/^.*area_(\d*).*$/, "$1"));
        $("#map-areas").css("background-position", -(4 - area) * 166 + "px 0px");
    });
    $("#map area").mouseout(function (e) {
        // $("#map-areas").css("background-position", "166px 0px");
    });

    $("#map area").click(function (e) {
        e.preventDefault();
        var area = parseInt($(this).attr('class').replace(/^.*area_(\d*).*$/, "$1"));

        document.getElementById(searchZoneResultText).innerHTML = "Svar: Du bor i elområde " + area;
        document.getElementById(selectedZoneId).value = area;
        document.getElementById('mSearchResultContainer').className = "searchResultContainer";
        document.getElementById(confirmEditZone).disabled = false;
        document.getElementById('mSearchResultConfirmContainer').className = "searchResultConfirmContainer";
        document.getElementById(searchZoneTextId).value = "Postnummer";
        $("#map-areas").css("background-position", -(4 - area) * 166 + "px 0px");
    });

    $('.navPriceZone').click(function () {
        showPriceDialog();
    });
});


