﻿function StateEditControlFindControls(ctrlid) {
    var ctrl = new Object();

    ctrl.mlStateInfoId = null;
    ctrl.ddlState = null;
    ctrl.tbState = null;
    ctrl.hiStateId = null;

    if (ctrlid == "" || ctrlid == null) return ctrl;

    var ctrls = eval(ctrlid + "_ctrls");

    var ctrl = new Object();

    ctrl.mlStateInfoId = ctrls[0];
    ctrl.ddlState = findObj(ctrls[1]);
    ctrl.tbState = findObj(ctrls[2]);
    ctrl.hiStateId = findObj(ctrls[3]);

    return ctrl;
}

function StateEditControlOnChangeState(ctrlid) {
    var ctrl = StateEditControlFindControls(ctrlid);

    if (ctrl.hiStateId == null) return;

    ctrl.hiStateId.value = ctrl.ddlState.value;
}

function StateEditControlOnChangeCountry(ctrlid, id, ziplenght, phonemask, countryindex) {
    var ctrl = StateEditControlFindControls(ctrlid);

    if (ctrl.mlStateInfoId == null) return;

    var arr = countryindex != -1 ? eval(ctrlid + "_country_states_" + id) : null;

    layerIndex = arr != null ? arr[0] : 0;

    changeLayer(ctrl.mlStateInfoId, parseInt(layerIndex));

    if (layerIndex != '1')//-LookUpLayer
    {
        ctrl.hiStateId.value = 0;
    }
    else {
        StateEditControlFillLookupList(ctrl.ddlState, arr, ctrl.hiStateId)
    }
}

function StateEditControlFillLookupList(lookup, arr, hiStateId) {
    //lookup.options.length = 0;
    while (lookup.length > 0) lookup.remove(0);

    index = 0;

    for (k = 1; k < arr.length; k += 2) {
        if (k == 1) hiStateId.value = arr[k];

        lookup.options[index] = new Option(arr[k + 1], arr[k], false, false);

        index++;
    }
}

function StateEditControlGetStateInfo(ctrlid) {
    var ctrl = StateEditControlFindControls(ctrlid);

    var stateInfo = new Object();

    stateInfo.StateName = '';
    stateInfo.StateId = 0;

    if (ctrl.mlStateInfoId == null) return stateInfo;

    var selectedLayerIndex = MultiLayerGetSelectedLayerIndex(ctrl.mlStateInfoId);

    if (selectedLayerIndex == 0) {
        stateInfo.StateName = ctrl.tbState.value;
    }
    else {
        stateInfo.StateId = ctrl.ddlState.value;
    }

    return stateInfo;
}

function StateEditControlSetStateInfo(ctrlid, stateName, stateId) {
    var ctrl = StateEditControlFindControls(ctrlid);

    if (ctrl.mlStateInfoId == null) return;

    var initArr = eval(ctrlid + "_init");
    var useStateList = initArr[0];

    ctrl.hiStateId.value = 0;

    var selectedLayerIndex = MultiLayerGetSelectedLayerIndex(ctrl.mlStateInfoId);

    if (selectedLayerIndex == 0) {
        StateEditControlSetValue(ctrl.tbState, stateName);
    }
    else {
        ctrl.hiStateId.value = stateId;
        ctrl.ddlState.value = stateId;

        if (stateId == '0' || stateId == 0) {
            StateEditControlLookupByName(ctrl, stateName);
        }
    }

    //if( useStateList ) 
}

function StateEditControlLookupByName(ctrl, stateName) {
    for (var i = 0; i < ctrl.ddlState.length; i++) {
        if (ctrl.ddlState.options[i].text == stateName) {
            ctrl.ddlState.selectedIndex = i;
            ctrl.hiStateId.value = ctrl.ddlState.value;

            break;
        }
    }
}

function StateEditControlSetValue(ctrl, value) {
    if (ctrl != null) ctrl.value = value;
}

function StateEditControlChangeEnabled(ctrl, enabled) {
    if (ctrl == null) return;

    if (enabled) {
        ctrl.disabled = null;
    }
    else {
        ctrl.disabled = "disabled";
    }
}

function StateEditChangeEnabled(ctrlid, enabled) {
    var ctrl = StateEditControlFindControls(ctrlid);

    if (ctrl.tbState == null) return;

    StateEditControlChangeEnabled(ctrl.tbState, enabled);
    StateEditControlChangeEnabled(ctrl.ddlState, enabled);
}
