var tab_selected = $("#tab_selected").val();
if (tab_selected == '') tab_selected = 0; //default
$("#tab_selected").val(tab_selected);
$("#pageName").val(get_page_name(tab_selected));
tab_init();
$tabs = $('#container-8 > ul').tabs({ //init tabs
    fx: { opacity: 'toggle' },
    selected: parseInt(tab_selected),
    show: function(ui) {
        $("#tab_selected").val(get_selected_tab());
        $("#pageName").val(get_page_name(get_selected_tab()));
        tab_init();
        if ($('#potential_revenue').length) {
            $('#calc_form2').submit(); //forse to click on 'calculate again' button
        }
    }
    });
$('#container-8').show(); //tabs are hidden by default 

function set_page_titles() {
    var p_name = $("#pageName").val();
    $("#table_page_title").html(contentPrefixes_array[p_name]['pageTitle']);
    $("#program_content_title").html("<b>"+contentPrefixes_array[p_name]['columnTitle']+"</b>");
    $("#stop_calc_title").html("Please see <b>"+contentPrefixes_array[p_name]['columnTitle']+"</b> below");
}

function get_selected_tab () {
    var selected_tab = $tabs.data('selected.tabs');
    return selected_tab;
};

function get_page_name (t_sel) {
    var p_name = 'energy-market';
    if (t_sel == 0) { 
        p_name = 'emergency-market';
        //p_name = 'energy-market';
    }
    else if (t_sel == 1) {
        p_name = 'emergency-market';
    }
    else if (t_sel == 2) {
        p_name = 'emergency-market';
        //p_name = 'standby-reserve';
    }
    else if (t_sel == 3) {
        p_name = 'emergency-market';
        //p_name = 'standby-reserve';
    }
    return p_name;
};


function tab_init () {
    set_page_titles();
    fill_states_options();
    $('#calc_table_state').show();
    $('#calc_table_utility').hide();
    $('#stop_calc').hide();
    $('#calc_table_peakdemand').hide();
    $('#calc_table_curtailment_capability').hide();
    $('#calc_table_reduction_capability').hide();
    $('#calculate_button').hide();
    $('#program_main').hide();
    $('#program_content').hide();
    $('#no_program_content').hide();
}
// ----------------

function fill_states_options() {
    var p_name = $("#pageName").val();
    $("#states").addOption(states_array[p_name], false);
}

function onchange_states() {
    $('#calc_table_utility').show();
    var selected_state_value = $('#states').selectedValues();
    if (selected_state_value != "") {
        var utility_options = get_utility_options(selected_state_value);
        if (utility_options.length > 0) {
            $("#utilities").removeOption(/./);
            var util_hash = new Array();
            for (i=0; i<utility_options.length; i++) util_hash[utility_options[i]]=utility_options[i];
            $("#utilities").addOption(util_hash,false);
            return;
        }
    }
    $("#utilities").removeOption(/./);
    $('#calc_table_utility').hide();
}

//Get List of Utilites for selected state
function get_utility_options(state_value) {
    var util_options = new Array();
    var p_name = $("#pageName").val();
    for (i=0; i<utilityoptions[p_name].length; i++) {
        if (utilityoptions[p_name][i].state == state_value) {
            util_options.push(utilityoptions[p_name][i].utility);
        }
    }
    return util_options;
}


function onchange_utilities() {
    var selected_state_value = $('#states').selectedValues();
    var selected_util_value= $('#utilities').selectedValues();
    if (selected_util_value != "" && selected_state_value != "") {
        get_curtrate(selected_state_value,selected_util_value);
    }
}
//Get curtailment rates for selected state and utility
function get_curtrate (state_value,util_value) {
    var continuecalc = false;
    var p_name = $('#pageName').val();
    for (i=0; i<utilityoptions[p_name].length; i++) {
        if (utilityoptions[p_name][i].state == state_value && (utilityoptions[p_name][i].utility== util_value)) {
            $("#program").val(utilityoptions[p_name][i].program);
            if (p_name == 'energy-market'){
                $("#inflexible").val(utilityoptions[p_name][i].inflexible); //3
                $("#generally_inflexible").val(utilityoptions[p_name][i].generally_inflexible); //4
                $("#somewhat_flexible").val(utilityoptions[p_name][i].somewhat_flexible); //5
                $("#flexible").val(utilityoptions[p_name][i].flexible); //6
                var sum = parseFloat($("#inflexible").val()) +  parseFloat($("#generally_inflexible").val()) + parseFloat($("#somewhat_flexible").val()) +  parseFloat($("#flexible").val());
                if (sum >= 1 ) {
                    continuecalc = true;
                }
            }
            if (p_name == 'emergency-market' && utilityoptions[p_name][i].rate >= 1){
                $("#utilprice").val(utilityoptions[p_name][i].rate);
                continuecalc = true;
            }
            if (p_name == 'standby-reserve' && utilityoptions[p_name][i].$_kw_year >= 1){
                $("#utilprice").val(utilityoptions[p_name][i].$_kw_year);
                continuecalc = true;
            }
        }
    }
    if ($("#program").val() != "") {
        var program = $("#program").val();
        if ($("#program").val() == "Other" ||  continuecalc == false) {
            $('#stop_calc').show();
            if (programs_array[p_name][program] != undefined) {
                $("#program_content").load(programs_array[p_name][program]);
            }
            else {
                $("#program_content").html('<div align=center>There is no content text for this program.</div>');
            }
            $('#program_main').show();
            $('#program_content').show();
            $('#calc_table_peakdemand').hide();
            $('#calc_table_curtailment_capability').hide();
            $('#calc_table_reduction_capability').hide();
            $('#calculate_button').hide();
        }
        else {
            $('#stop_calc').hide();
            $('#program_main').hide();
            $('#program_content').hide();
            if (p_name == 'energy-market'){
                $('#calc_table_peakdemand').show();
                $("#reduction_capability").removeOption(/./);
                $("#curtailment_capability").removeOption(/./);
                $("#curtailment_capability").addOption(curtailment_capability_array,false);
                $('#calc_table_curtailment_capability').show();
                $("#utilprice").val('undefined');
            }
            else if (p_name == 'emergency-market') {
                $('#peakdemand').val('undefined');
                $("#curtailment_capability").removeOption(/./);
                $("#reduction_capability").removeOption(/./);
                $("#reduction_capability").addOption(reduction_capability_array,false);
                $('#calc_table_reduction_capability').show();
            }
            else if (p_name == 'standby-reserve') {
                $('#peakdemand').val('undefined');
                $("#curtailment_capability").removeOption(/./);
                $("#reduction_capability").removeOption(/./);
                $("#reduction_capability").addOption(reduction_capability_array,false);
                $('#calc_table_reduction_capability').show();
            }
            $('#calculate_button').show();
        }
    }
}
