var skillsNames = {}
var activity_id;
var activity_name;

function loaded(){
    //process activities
    var activities = $A(form.getElementsByTagName('input'));
    activities.each(function(activity){
       //enable event listener on the activities checkbox
        new Form.Element.EventObserver(activity, checkBoxClickHandler );
        
        //create the activity_id - activity_name correspondence
        activity_id = activity.getAttribute('activity_id');
        activity_name = activity.nextSibling.nodeValue;
        skillsNames[activity_id] = activity_name;

        //create skill rows for selected activities
        if (activity.checked){
            var skill = activity.getAttribute('skill');
            var row_html = composeActivitySkillChoiceRow(activity_id,skill);
            new Insertion.Bottom(table,row_html);
        }
    });
}


//callback function called when the activity checkbox is selected/unselected
function checkBoxClickHandler(e){ 
    var activity_id = e.getAttribute('activity_id');
    if (this.getValue()){
        new Insertion.Bottom(table,composeActivitySkillChoiceRow(activity_id));
    }else if ($(activity_id)){
        $(activity_id).remove();
    }
}

//compose the table row for the given activity with the radio elements to choose the skill
function composeActivitySkillChoiceRow(skill_id,level){
    levels = {beginner: '',intermediate:'', advanced: '',expert:''};
    var skill_name = skillsNames[skill_id];
    if (!level){
        level='intermediate';
    }
    levels[level] = 'checked';
    var row = "<tr id="+skill_id+ " class=\"skills_row\" >"+
        "<td>"+skill_name+"</td><td>"+
        "<input type=\"radio\" name=\"skills["+skill_id+"]\" id='"+skill_id+"_beginner' value=\"beginner\" "+levels.beginner+">"+
        "</td><td>"+
        "<input type=\"radio\" name=\"skills["+skill_id+"]\" id='"+skill_id+"_intermediate' value=\"intermediate\" "+levels.intermediate+">"+
        "</td><td>"+
        "<input type=\"radio\" name=\"skills["+skill_id+"]\" id='"+skill_id+"_advanced' value=\"advanced\" "+levels.advanced+">"+
        "</td><td>"+
        "<input type=\"radio\" name=\"skills["+skill_id+"]\" id='"+skill_id+"_expert' value=\"expert\" "+levels.expert+">"+
        "</td></tr>";
    return row;
}

function inputCheck(){
   flag = 1;
   for (i=0; i<obl_fields.length; i++){
       if (!_form[(obl_fields[i])].value){
           flag = 0;
       }
   }
   if (!_form.agree.checked){
       flag = 0;
   }
   if (flag){
       _form.submit.disabled = false;
   }else{
       _form.submit.disabled = true;
   }
}