function updateSubjects(yeargroup) {
    if (yeargroup == "Primary") {
        var country = document.getElementById('country').value;
        rePopulateSelect(country, "subject")
        rePopulateSelect(country, "subject2")
    } else if (yeargroup == "Secondary") {
        rePopulateSelectDefault("subject");
        rePopulateSelectDefault("subject2");
    } else if (yeargroup == "SEN") {
        var subjects = new Array();
        subjects[0] = "KS1";
        subjects[1] = "KS2";
        subjects[2] = "Accounting";
        subjects[3] = "Art";
        subjects[4] = "Art and Design";
        subjects[5] = "Biology";
        subjects[6] = "Business Studies";
        subjects[7] = "Chemistry";
        subjects[8] = "Citizenship";
        subjects[9] = "Classics";
        subjects[10] = "Design Technology";
        subjects[11] = "Dance";
        subjects[12] = "Drama";
        subjects[13] = "Economics";
        subjects[14] = "English";
        subjects[15] = "Family Studies";
        subjects[16] = "Food Technology";

        subjects[17] = "French";
        subjects[18] = "General Science";
        subjects[19] = "Geography";
        subjects[20] = "German";
        subjects[21] = "Graphics";
        subjects[22] = "Health";
        subjects[23] = "History";
        subjects[24] = "Home Economics";
        subjects[25] = "Human Ecology";
        subjects[26] = "Humanities";
        subjects[27] = "ICT/Computers";
        subjects[28] = "Italian";
        subjects[29] = "Japanese";
        subjects[30] = "Language Arts";
        subjects[31] = "Latin";

        subjects[32] = "Law";
        subjects[33] = "Leisure and Tourism";
        subjects[34] = "Mathematics";
        subjects[35] = "Media Studies";
        subjects[36] = "MFL";
        subjects[37] = "Music";
        subjects[38] = "Photography";
        subjects[39] = "Philosophy";
        subjects[40] = "PHSE";
        subjects[41] = "Physical Education";

        subjects[42] = "Physics";
        subjects[43] = "Politics";
        subjects[44] = "Psychology";
        subjects[45] = "Religious Education";
        subjects[46] = "Russian";
        subjects[47] = "Special Needs";
        subjects[48] = "Social Science";
        subjects[49] = "Social Studies";
        subjects[50] = "Sociology";

        subjects[51] = "Spanish";
        subjects[52] = "Textiles";
        rePopulateSelectFromList(subjects, "subject");
        rePopulateSelectFromList(subjects, "subject2");
    } else if (yeargroup == "TA") {
        var subjects = new Array();
        subjects[0] = "KS1";
        subjects[1] = "KS2";
        subjects[2] = "Mathematics";
        subjects[3] = "Science";
        subjects[4] = "English";
        subjects[5] = "SEN";

        rePopulateSelectFromList(subjects, "subject");
        rePopulateSelectFromList(subjects, "subject2");

    }
}
function updatePassport(visaType) {
    if (visaType < 6 && visaType != 0) {
        hiderow("passportrow", "passport", 1);
    } else {
        hiderow("passportrow", "passport", 0);
    }
}
function updateDegree(country,special) {
    var employeetype = document.getElementById('employeetype').value;

    if (country == "United Kingdom" || employeetype == "TA" || employeetype == "Cover Supervisor" || special==1) {
        var id = "qualifications";

        if (employeetype == "TA") {
            var quals = new Array();
            quals[0] = "University Degree with Additional TA Qualification";
            quals[1] = "TA Experience with no Qualifications";
            quals[2] = "TA Qualifications";
            quals[3] = "No University, No Qualification and No TA Experience";           
            rePopulateSelectFromList(quals, "qualifications");
            hiderow("degreerow", "qualifications", 0);
            /*            hidefield("qualifications_ta", 0);
           hidefield("qualifications", 1);*/
        } else  if (employeetype == "Cover Supervisor") {
            var quals = new Array();
            quals[0] = "No University Qualification";
            quals[1] = "University Qualifications";
            rePopulateSelectFromList(quals, "qualifications");
            hiderow("degreerow", "qualifications", 0);
            /*            hidefield("qualifications_ta", 0);
           hidefield("qualifications", 1);*/
        } else {
            var quals = new Array();
            quals[0] =  "Bachelor of Education";
            quals[1] = "PGCE";
            quals[2] = "Graduate Diploma of Education";
            quals[3] = "Bachelor of Science in Education";
            quals[4] = "Bachelor of Teaching";
            quals[5] = "Masters of Education";
            quals[6] = "Masters of Teaching";
            quals[7] = "Graduate Teachers Programme";
            quals[8] = "No Teaching Qualification";
            rePopulateSelectFromList(quals, "qualifications");
            hiderow("degreerow", "qualifications", 0);
            /* hidefield("qualifications_ta", 1);
           hidefield("qualifications", 0);*/
        }
    } else {
        hiderow("degreerow", "qualifications", 1);        
    }
}
function updateFlightsbooked(country) {
    if (country == "United Kingdom" || country == "Ireland") {
        hiderow("flightsbookedrow", "flightsbooked", 1);
    } else {
        hiderow("flightsbookedrow", "flightsbooked", 0);
    }
}
function hiderow(rowId, fieldID, hide) {
    var row = document.getElementById(rowId);
    if (hide == 1) {
        // Choose the "None" date
        var sel = document.getElementById(fieldID);
        sel.selectedIndex = 0;
        row.style.visibility = "hidden";
        row.style.display = "none";
    } else {
        // Revert the style to the default to show the row
        row.style.visibility = "";
        row.style.display = "";
    }
}
function hidefield(fieldID, hide) {
    var sel = document.getElementById(fieldID);
    if (hide == 1) {
        // Choose the "None" date
        sel.selectedIndex = 0;
        sel.style.visibility = "hidden";
        sel.style.display = "none";
    } else {
        // Revert the style to the default to show the row
        sel.style.visibility = "";
        sel.style.display = "";
    }
}
function emptyDropdown(ID) {
    var sel = document.getElementById(ID);
    // remove all the <option> current in the drop down
    while (sel.hasChildNodes()) {
        sel.removeChild(sel.childNodes[0]);
    }
}

function rePopulateSelectDefault(ID) {
    emptyDropdown(ID);
    var sel = document.getElementById(ID);
    sel.options[0] = new Option("", "", false, false);
    sel.options[1] = new Option("Accounting", "Accounting", false, false);
    sel.options[2] = new Option("Art", "Art", false, false);
    sel.options[3] = new Option("Art and Design", "Art and Design", false, false);
    sel.options[4] = new Option("Biology", "Biology", false, false);
    sel.options[5] = new Option("Business Studies", "Business Studies", false, false);
    sel.options[6] = new Option("Chemistry", "Chemistry", false, false);
    sel.options[7] = new Option("Citizenship", "Citizenship", false, false);
    sel.options[8] = new Option("Classics", "Classics", false, false);
    sel.options[9] = new Option("Design Technology", "Design Technology", false, false);
    sel.options[10] = new Option("Dance", "Dance", false, false);
    sel.options[11] = new Option("Drama", "Drama", false, false);
    sel.options[12] = new Option("Economics", "Economics", false, false);
    sel.options[13] = new Option("English", "English", false, false);
    sel.options[14] = new Option("Family Studies", "Family Studies", false, false);
    sel.options[15] = new Option("Food Technology", "Food Technology", false, false);

    sel.options[16] = new Option("French", "French", false, false);
    sel.options[17] = new Option("General Science", "General Science", false, false);
    sel.options[18] = new Option("Geography", "Geography", false, false);
    sel.options[19] = new Option("German", "German", false, false);
    sel.options[20] = new Option("Graphics", "Graphics", false, false);
    sel.options[21] = new Option("Health", "Health", false, false);
    sel.options[22] = new Option("History", "History", false, false);
    sel.options[23] = new Option("Home Economics", "Home Economics", false, false);
    sel.options[24] = new Option("Human Ecology", "Human Ecology", false, false);
    sel.options[25] = new Option("Humanities", "Humanities", false, false);
    sel.options[26] = new Option("ICT/Computers", "ICT/Computers", false, false);
    sel.options[27] = new Option("Italian", "Italian", false, false);
    sel.options[28] = new Option("Japanese", "Japanese", false, false);
    sel.options[29] = new Option("Language Arts", "Language Arts", false, false);
    sel.options[30] = new Option("Latin", "Latin", false, false);

    sel.options[31] = new Option("Law", "Law", false, false);
    sel.options[32] = new Option("Leisure and Tourism", "Leisure and Tourism", false, false);
    sel.options[33] = new Option("Mathematics", "Mathematics", false, false);
    sel.options[34] = new Option("Media Studies", "Media Studies", false, false);
    sel.options[35] = new Option("MFL", "MFL", false, false);
    sel.options[36] = new Option("Music", "Music", false, false);
    sel.options[37] = new Option("Photography", "Photography", false, false);
    sel.options[38] = new Option("Philosophy", "Philosophy", false, false);
    sel.options[39] = new Option("PHSE", "PHSE", false, false);
    sel.options[40] = new Option("Physical Education", "Physical Education", false, false);

    sel.options[41] = new Option("Physics", "Physics", false, false);
    sel.options[42] = new Option("Politics", "Politics", false, false);
    sel.options[43] = new Option("Psychology", "Psychology", false, false);
    sel.options[44] = new Option("Religious Education", "Religious Education", false, false);
    sel.options[45] = new Option("Russian", "Russian", false, false);
    sel.options[46] = new Option("Special Needs", "Special Needs", false, false);
    sel.options[47] = new Option("Social Science", "Social Science", false, false);
    sel.options[48] = new Option("Social Studies", "Social Studies", false, false);
    sel.options[49] = new Option("Sociology", "Sociology", false, false);

    sel.options[50] = new Option("Spanish", "Spanish", false, false);
    sel.options[51] = new Option("Textiles", "Textiles", false, false);
}

function rePopulateSelectFromList(Subjects, ID) {
    emptyDropdown(ID);
    var sel = document.getElementById(ID);
    sel.options[0] = new Option("", "", false, false);
    for (var i = 0; i < Subjects.length; i++) {
        sel.options[i + 1] = new Option(Subjects[i], Subjects[i], false, false);
    }


}

function rePopulateSelect(country, ID) {
    emptyDropdown(ID);
    var sel = document.getElementById(ID);


    if (country == "Canada" || country == "USA") {
        sel.options[0] = new Option("", "", false, false);
        sel.options[1] = new Option("Kindergarten", "Reception", false, false);
        sel.options[2] = new Option("Infant", "KS1", false, false);
        sel.options[3] = new Option("Junior", "KS2", false, false);
        sel.options[4] = new Option("Grade 1", "Year 1", false, false);
        sel.options[5] = new Option("Grade 2", "Year 2", false, false);
        sel.options[6] = new Option("Grade 3", "Year 3", false, false);
        sel.options[7] = new Option("Grade 4", "Year 4", false, false);
        sel.options[8] = new Option("Grade 5", "Year 5", false, false);
        sel.options[9] = new Option("Grade 6", "Year 6", false, false);
    } else if (country == "Australia" || country == "New Zealand") {
        sel.options[0] = new Option("", "", false, false);
        sel.options[1] = new Option("Year 1", "Year 1", false, false);
        sel.options[2] = new Option("Year 2", "Year 2", false, false);
        sel.options[3] = new Option("Year 3", "Year 3", false, false);
        sel.options[4] = new Option("Year 4", "Year 4", false, false);
        sel.options[5] = new Option("Year 5", "Year 5", false, false);
        sel.options[6] = new Option("Year 6", "Year 6", false, false);
        sel.options[7] = new Option("Nursery", "Nursery", false, false);
        sel.options[8] = new Option("Reception", "Reception", false, false);
        sel.options[9] = new Option("KS1", "KS1", false, false);
        sel.options[10] = new Option("KS2", "KS2", false, false);
        sel.options[11] = new Option("Physical Education", "Physical Education", false, false);
        sel.options[12] = new Option("Music", "Music", false, false);
        sel.options[13] = new Option("SEN", "SEN", false, false);
    } else {
        sel.options[0] = new Option("", "", false, false);
        sel.options[1] = new Option("Nursery", "Nursery", false, false);
        sel.options[2] = new Option("Reception", "Reception", false, false);
        sel.options[3] = new Option("KS1", "KS1", false, false);
        sel.options[4] = new Option("KS2", "KS2", false, false);
        sel.options[5] = new Option("Physical Education", "Physical Education", false, false);
        sel.options[6] = new Option("Music", "Music", false, false);
        sel.options[7] = new Option("SEN", "SEN", false, false);
    }

}
function disable(ID) {
    if (document.getElementById(ID))
    {
        document.getElementById(ID).disabled = true;
    }
}
function enable(ID) {
    if (document.getElementById(ID))
    {
        document.getElementById(ID).disabled = false;
    }
}
function selectOption(option, ID) {
    var sel = document.getElementById(ID);
    for (i = 0; i < sel.options.length; i++) {
        if (sel.options[i].value == option) {
            sel.selectedIndex = i;
        }
    }


}
function updateOptions(type) {
    var sel = document.getElementById("teachoption");
    emptyDropdown("teachoption");

    if (type == 2) {
        sel.options[0] = new Option("Please Select", "", false, false);
        sel.options[1] = new Option("Main Option", "MAININUK", false, false);
        sel.options[2] = new Option("Enquiry", "ENQUIRY", false, false);
    } else if (type == 3) {
        sel.options[0] = new Option("Please Select", "", false, false);
        sel.options[1] = new Option("My Main Option – Flights Booked", "MAINFLIGHTS", false, false);
        sel.options[2] = new Option("My Main Option – Flights Not Booked Yet", "MAINNOFLIGHTS", false, false);
        sel.options[3] = new Option("A Basic Enquiry", "ENQUIRY", false, false);
    }


}
function updateForm(country) {

    if (country == "Ireland" || country == "United Kingdom" || country == "EU") {
        updateOptions(2);
    } else {
        updateOptions(3);

    }
    updateSubjects(document.getElementById('yeargroup').value);


}
var selectedOptions = [];
function countSelected(select,maxNumber){
	for(var i=0; i<select.options.length; i++){
		if(select.options[i].selected && !new RegExp(i,'g').test(selectedOptions.toString())){
			selectedOptions.push(i);
		}

		if(!select.options[i].selected && new RegExp(i,'g').test(selectedOptions.toString())){
			selectedOptions = selectedOptions.sort(function(a,b){return a-b});
			for(var j=0; j<selectedOptions.length; j++){
				if(selectedOptions[j] == i){
					selectedOptions.splice(j,1);
				}
			}
		}

		if(selectedOptions.length > maxNumber){
			alert('You may only choose '+maxNumber+' options!!');
			select.options[i].selected = false;
			selectedOptions.pop();
			document.body.focus();
		}
	}
}