var arr_region;
var arr_specialty;
var arr_grade; 
function initLists() { 
    
    //region
    if(document.EditView.region || document.EditView.country) { 
    	var region = document.EditView.region.options;
    	arr_region = new Array; 
    	for(i=0; i<region.length; i++) { 
            arr_region.push(region[i].value, region[i].text); 
        } 
    } 

    //specialty
    if(document.EditView.specialty || document.EditView.category) { 
    	var specialty = document.EditView.specialty.options;
    	arr_specialty = new Array; 
    	for(i=0; i<specialty.length; i++) { 
            arr_specialty.push(specialty[i].value, specialty[i].text); 
        } 
    } 
    
    //grade
    if(document.EditView.grade || document.EditView.category) { 
    	var grade = document.EditView.grade.options;
    	arr_grade = new Array; 
    	for(i=0; i<grade.length; i++) { 
            arr_grade.push(grade[i].value, grade[i].text); 
        } 
    } 
    
    //run first time      
    updateListRegions(); 
    updateListQualifications(); 
} 

function updateListRegions() { 

	// Region List

	var current_p = document.EditView.country; 
	var code_p = current_p.value; 
    
    var current_v = document.EditView.region;
	var code_v = current_v.value; 
	var code_v_idx = 0; 
 
	var select_ticket = document.EditView.region.options;
	select_ticket.length=0; 
	var l = 0; 
	for(k=0; k<arr_region.length; k+=2) { 
        if(arr_region[k].substr(0,3) == code_p || arr_region[k] == '') { 
            select_ticket.length++; 
            select_ticket[select_ticket.length-1].value = arr_region[k]; 
            select_ticket[select_ticket.length-1].text = arr_region[k+1]; 
        if(code_v == arr_region[k]){ 
         code_v_idx = l; 
        } 
        l++; 
        } 
	} 
	if(code_p == ''){ 
        select_ticket[select_ticket.length-1].value = ''; 
        select_ticket[select_ticket.length-1].text = 'All';
        document.getElementById('cascrow-region').style.display = 'none';
	} else {
        document.getElementById('cascrow-region').style.display = '';
    }
	document.EditView.region.selectedIndex = code_v_idx;

}

function updateListQualifications() { 
 
	// specialty List

	var current_p = document.EditView.category; 
	var code_p = current_p.value; 
    
    var current_v = document.EditView.specialty;
	var code_v = current_v.value; 
	var code_v_idx = 0; 
 
	var select_ticket = document.EditView.specialty.options;
	select_ticket.length=0; 
	var l = 0; 
	for(k=0; k<arr_specialty.length; k+=2) { 
        if(arr_specialty[k].substr(0,3) == code_p || arr_specialty[k] == '') { 
            select_ticket.length++; 
            select_ticket[select_ticket.length-1].value = arr_specialty[k]; 
            select_ticket[select_ticket.length-1].text = arr_specialty[k+1]; 
        if(code_v == arr_specialty[k]){ 
         code_v_idx = l; 
        } 
        l++; 
        } 
	} 
	if(code_p == ''){ 
        select_ticket[select_ticket.length-1].value = ''; 
        select_ticket[select_ticket.length-1].text = 'All';
        document.getElementById('cascrow-specialty').style.display = 'none';
	} else {
	    if (code_p == 'NRS') {
            current_v.options[0] = null;
            current_v.options.selectedIndex = 0; 
            document.getElementById('cascrow-specialty').style.display = 'none';
        } else {
            document.getElementById('cascrow-specialty').style.display = '';
        }
        if (code_p == 'NRS' || code_p == 'ALH') {
            document.getElementById('cascrow-grade').style.display = 'none';
        } else {
            document.getElementById('cascrow-grade').style.display = '';
        }
    }
	document.EditView.specialty.selectedIndex = code_v_idx;

	// Grade List
	
	var current2_p = document.EditView.category; 
	var code2_p = current2_p.value; 	
    
    var current2_v = document.EditView.grade;
	var code2_v = current2_v.value; 
	var code2_v_idx = 0; 
 
	var select_grade = document.EditView.grade.options;
	select_grade.length=0; 
	l = 0; 
	for(k=0; k<arr_grade.length; k+=2) { 
        if(arr_grade[k].substr(0,3) == code2_p || arr_grade[k] == '') { 
            select_grade.length++; 
            select_grade[select_grade.length-1].value = arr_grade[k]; 
            select_grade[select_grade.length-1].text = arr_grade[k+1]; 
        if(code2_v == arr_grade[k]){ 
         code2_v_idx = l; 
        } 
        l++; 
        } 
	} 
	if(code2_p == ''){ 
        select_grade[select_grade.length-1].value = ''; 
        select_grade[select_grade.length-1].text = '... select a category ...'; 
	} 
	document.EditView.grade.selectedIndex = code2_v_idx;	
	
} 
 
if (window.addEventListener) { 
    window.addEventListener("load", initLists, false);
} else if (window.attachEvent) {
    window.attachEvent("onload", initLists); 
} else if (document.getElementById) {
    window.onload = initLists;
}
