




var species_data = {

    "species_id_78" : [
        {
            'name'  :  "big",
            'value' :  "big_value"
        },
        {
            'name'  :  "small",
            'value' :  "small_value"
        }
    ]
};

var regiondefs_data = {

    "chothia" : [

    {
        'name' : "32",
        'value' : "H1 chothia"
        // 'value' : "H1 chothia"
    },

    {
        'name' : "33",
        'value' : "H2 chothia"
        // 'value' : "H2 chothia"
    },

    {
        'name' : "34",
        'value' : "H3 chothia"
        // 'value' : "H3 chothia"
    },

    {
        'name' : "39",
        'value' : "HFR1 chothia"
        // 'value' : "HFR1 chothia"
    },

    {
        'name' : "40",
        'value' : "HFR2 chothia"
        // 'value' : "HFR2 chothia"
    },

    {
        'name' : "41",
        'value' : "HFR3 chothia"
        // 'value' : "HFR3 chothia"
    },

    {
        'name' : "42",
        'value' : "HFR4 chothia"
        // 'value' : "HFR4 chothia"
    },

    {
        'name' : "29",
        'value' : "L1 chothia"
        // 'value' : "L1 chothia"
    },

    {
        'name' : "30",
        'value' : "L2 chothia"
        // 'value' : "L2 chothia"
    },

    {
        'name' : "31",
        'value' : "L3 chothia"
        // 'value' : "L3 chothia"
    },

    {
        'name' : "35",
        'value' : "LFR1 chothia"
        // 'value' : "LFR1 chothia"
    },

    {
        'name' : "36",
        'value' : "LFR2 chothia"
        // 'value' : "LFR2 chothia"
    },

    {
        'name' : "37",
        'value' : "LFR3 chothia"
        // 'value' : "LFR3 chothia"
    },

    {
        'name' : "38",
        'value' : "LFR4 chothia"
        // 'value' : "LFR4 chothia"
    },

    ]
    ,

    "kabat" : [

    {
        'name' : "4",
        'value' : "H1 kabat"
    },

    {
        'name' : "5",
        'value' : "H2 kabat"
    },

    {
        'name' : "6",
        'value' : "H3 kabat"
    },

    {
        'name' : "11",
        'value' : "HFR1 kabat"
    },

    {
        'name' : "12",
        'value' : "HFR2 kabat"
    },

    {
        'name' : "13",
        'value' : "HFR3 kabat"
    },

    {
        'name' : "14",
        'value' : "HFR4 kabat"
    },

    {
        'name' : "1",
        'value' : "L1 kabat"
    },

    {
        'name' : "2",
        'value' : "L2 kabat"
    },

    {
        'name' : "3",
        'value' : "L3 kabat"
    },

    {
        'name' : "7",
        'value' : "LFR1 kabat"
    },

    {
        'name' : "8",
        'value' : "LFR2 kabat"
    },

    {
        'name' : "9",
        'value' : "LFR3 kabat"
    },

    {
        'name' : "10",
        'value' : "LFR4 kabat"
    },

    ],

    "abm" : [

    {
        'name' : "18",
        'value' : "H1 abm"
    },

    {
        'name' : "19",
        'value' : "H2 abm"
    },

    {
        'name' : "20",
        'value' : "H3 abm"
    },

    {
        'name' : "25",
        'value' : "HFR1 abm"
    },

    {
        'name' : "26",
        'value' : "HFR2 abm"
    },

    {
        'name' : "27",
        'value' : "HFR3 abm"
    },

    {
        'name' : "28",
        'value' : "HFR4 abm"
    },

    {
        'name' : "15",
        'value' : "L1 abm"
    },

    {
        'name' : "16",
        'value' : "L2 abm"
    },

    {
        'name' : "17",
        'value' : "L3 abm"
    },

    {
        'name' : "21",
        'value' : "LFR1 abm"
    },

    {
        'name' : "22",
        'value' : "LFR2 abm"
    },

    {
        'name' : "23",
        'value' : "LFR3 abm"
    },

    {
        'name' : "24",
        'value' : "LFR4 abm"
    },

    ],

    "contact" : [

    {
        'name' : "46",
        'value' : "H1 contact"
    },

    {
        'name' : "47",
        'value' : "H2 contact"
    },

    {
        'name' : "48",
        'value' : "H3 contact"
    },

    {
        'name' : "53",
        'value' : "HFR1 contact"
    },

    {
        'name' : "54",
        'value' : "HFR2 contact"
    },

    {
        'name' : "55",
        'value' : "HFR3 contact"
    },

    {
        'name' : "56",
        'value' : "HFR4 contact"
    },

    {
        'name' : "43",
        'value' : "L1 contact"
    },

    {
        'name' : "44",
        'value' : "L2 contact"
    },

    {
        'name' : "45",
        'value' : "L3 contact"
    },

    {
        'name' : "49",
        'value' : "LFR1 contact"
    },

    {
        'name' : "50",
        'value' : "LFR2 contact"
    },

    {
        'name' : "51",
        'value' : "LFR3 contact"
    },

    {
        'name' : "52",
        'value' : "LFR4 contact"
    },

    ]
};

function updateSpecies()  {
    var species_selected = $('species_select').getValue();
    //console.debug( "selected : ", species_selected );

    // get element from DOM
    var subclass = $('species_subclass_select');

    // add new options based on what we've selected
    var species_options = species_data[ species_selected ];

    // option_data
    //console.debug( "data: ", species_options );

    var options_html = '';
    $A( species_options ).each( function( option ) {
        options_html += "<option name='" + option.name + "'>" + option.value + "</option>\n";
    } );

    subclass.innerHTML = options_html;

    $('species_subclass_select_container').show();
};
function updateRegion(){
    var region_def_type = $('region_select').getValue();
    // get element from the DOM
    var subclass = $('region_subclass_select');
    // add the new options depending upon the region type selected
    var region_options = regiondefs_data[region_def_type];
    //console.debug("data: ", region_options);
    var options_html = '';
    
    if(Prototype.Browser.IE) {
    for (count =0; count<region_options.length-1;count++){
        optn = document.createElement('OPTION');
        optn.text  = region_options[count].value;
        optn.name  = region_options[count].name;
        optn.value = region_options[count].value;
        subclass.add(optn, count);
    }
    }
    else {
    $A( region_options ).each( function( option ) {
        options_html += "<option name='" + option.name + "'>" + option.value + "</option>\n";
    } );
    subclass.innerHTML = options_html;
    }
    $('region_subclass_select_container').show();
    $('region_subclass_select').show();
};

var scheme_chosen = "chothia";

function updateSchemeVar(){
    var check = $("scheme_type_radio");
    /*scheme_chosen = check.value;*/
    updateSchemeChoice();
}


function updateSchemeChoice(){
    var checked_two = $F("scheme_type_radio_chothia");
    var checked_three = $F("scheme_type_radio_kabat");
    var checked_four = $F("chain_type_radio_heavy");
    var checked_five = $F("chain_type_radio_light");
    var scheme_chosen = "";
    if (checked_two==null){
        scheme_chosen = "kabat";
    }
    else{
        scheme_chosen ="chothia";
    }
    var chain_type_chosen = "";
    if (checked_four==null){
        chain_type_chosen="light";
    }
    else{
        chain_type_chosen="heavy";
    }
    if (chain_type_chosen=="heavy" && scheme_chosen=="chothia"){
        $('chothia_light_select').hide();
        $('chothia_heavy_select').show();
        $('kabat_heavy_select').hide();
        $('kabat_light_select').hide();
    }
    else if (chain_type_chosen=="light" && scheme_chosen=="chothia"){
        $('chothia_light_select').show();
        $('chothia_heavy_select').hide();
        $('kabat_heavy_select').hide();
        $('kabat_light_select').hide();
    }
    else if (chain_type_chosen == "heavy" && scheme_chosen=="kabat"){
        $('chothia_light_select').hide();
        $('chothia_heavy_select').hide();
        $('kabat_heavy_select').show();
        $('kabat_light_select').hide();
    }
    else if (chain_type_chosen == "light" && scheme_chosen=="kabat"){
        $('chothia_light_select').hide();
        $('chothia_heavy_select').hide();
        $('kabat_heavy_select').hide();
        $('kabat_light_select').show();
    }
};

function can_call(){
    alert('you can call functions from this file...');
};

function speciesUpdate(){
    var sp_data = document.search.species.value;
    new Ajax.Request('/abysis/sequences/species.cgi',
     {
        method:'get',
        onSuccess: function(transport){
            if (transport.responseText.length>1){
                $('displayMoreSpecies').show();
                document.getElementById('species_more').innerHTML = transport.responseText;
            }
            else{
                $('displayMoreSpecies').hide();
            }
        },
        onFailure: function(){
            alert("Fail");
        },
        parameters: {species_id: sp_data},
        insertion: Insertion.Bottom
    });
}

function chain_classUpdateAjax(chain_class_data){
    var ajaxResponse = '';
    new Ajax.Request('/abysis/sequences/chain_class.cgi',
    {
        method:'get',
        onSuccess:function(transport){
            ajaxResponse = transport.responseText;
        },
        parameters: {chain_class_id:chain_class_data},
        asynchronous: false
    });
    return ajaxResponse;
}

function chain_classUpdate(select_number){
    var next = select_number + 1;
    var div_in_q = 'displayMoreChainClass_'+String(next);
    var select_in_q = 'chain_class_'+String(next);
    var current_select = 'chain_class_'+select_number;
    var cc_d = document.getElementById(current_select).value;
    obtain = chain_classUpdateAjax(cc_d);
    if (obtain.length > 1){
            document.getElementById(select_in_q).innerHTML = obtain;
            $(div_in_q).show();
    }
    else{
        /** hide all the subsequent divs **/
        for (var count = next; count<5; count++){
            div_in_q = 'displayMoreChainClass_'+String(count);
            $(div_in_q).hide();
        }
    }
}

function chain_classUpdate2(formnumber,select_number){
    var next = select_number + 1;
    var div_in_q = 'displayMoreChainClass_'+formnumber+"_"+String(next);
    var select_in_q = 'chain_class_'+formnumber+"_"+String(next);
    var current_select = 'chain_class_'+formnumber+"_"+select_number;
    var cc_d = document.getElementById(current_select).value;
    obtain = chain_classUpdateAjax(cc_d);
    if (obtain.length > 1){
            document.getElementById(select_in_q).innerHTML = obtain;
            $(div_in_q).show();
    }
    else{
        /** hide all the subsequent divs **/
        for (var count = next; count<4; count++){
            div_in_q = 'displayMoreChainClass_'+formnumber+"_"+String(count);
            $(div_in_q).hide();
        }
    }
}

function toggleLayer(d_in_q){
    if ($(d_in_q).getStyle('display')=='none'){
        $(d_in_q).show();
    }
    else{
        $(d_in_q).hide();
    }
}

function cdr_display(){
    var selected = $("cdr_def_type").value;
    var selected_options = regiondefs_data[selected];
    var decide ="";
    for (count=0;count<selected_options.length-1;count++){
        /*alert(selected_options[count].value);*/
        decide = selected_options[count].value;
        var parts = decide.split(" ");
        /* now we need to carry out regular expression analysis to determine if the region 
        is framework or CDR */
        var first_part = parts[0];
        var pattern = /FR/;
        if (pattern.test(first_part)){
            var div_name = "framework_type_" + first_part.substr(0,1)+first_part.substr(3,1);
        }
        else{
            var div_name = "cdr_type_" + first_part;
        }
        div_name = div_name.toLowerCase();
        /*alert("Set?"+div_name);*/
        var well = document.getElementById(div_name);
        well.value = selected_options[count].name;
        /*$(div_name).value = selected_options[count].name;*/
    } 
    $("displayCDR").show();
}

