
function GenerateSemesterList() {
	
	// check selected year
	var year_select = document.getElementById('year');
	
	if (year_select != null) {
	
		var year = year_select.options[year_select.selectedIndex].value;
		
		// check selected semester
		var semester_select = document.getElementById('semester');
		semester_select.innerHTML = '';
			
		var course_select = document.getElementById('course_no');	
		course_select.innerHTML = '';
			
		var data = document.getElementById('course_data');
		var options = data.getElementsByTagName('option');
		
		var hasSemester = false;			
					
		for (i=0; i<options.length; i++) {
			
			if (options[i].getAttribute('type') == 'semester' && options[i].getAttribute('year') == year) {
				
				hasSemester = true;
										
				var option = document.createElement('option');
				semester_select.appendChild(option);
				
				option.setAttribute('value', options[i].getAttribute('value'));
				option.setAttribute('onchange', 'GenerateCourseList();');
				option.innerHTML = options[i].getAttribute('value');
			}
		}
		
		if (hasSemester) {
			GenerateCourseList();
		} else {
			// disable the select button
			var go_button = document.getElementById('GO_button');
			go_button.style.display = 'none';
		}
	}
}

function GenerateCourseList() {
		
	// check selected year
	var year_select = document.getElementById('year');
	var year = year_select.options[year_select.selectedIndex].value;
	
	// check selected semester
	var semester_select = document.getElementById('semester');
	var semester = semester_select.options[semester_select.selectedIndex].value;
		
	var course_select = document.getElementById('course_no');
	course_select.innerHTML = '';
	
	var data = document.getElementById('course_data');
	var options = data.getElementsByTagName('option');
	
	var hasCourse = false;
	
	for (i=0; i<options.length; i++) {
		
		if (options[i].getAttribute('type') == 'course' && options[i].getAttribute('year') == year && options[i].getAttribute('semester') == semester ) {
			hasCourse = true;
						
			var option = document.createElement('option');
			course_select.appendChild(option);
			
			option.setAttribute('value', options[i].getAttribute('value'));
			option.innerHTML = options[i].getAttribute('value');
		}
	}
	
	if (hasCourse) {
		// enable the select button
		var go_button = document.getElementById('GO_button');
		go_button.style.display = 'block';
	} else {
		// disable the select button
		var go_button = document.getElementById('GO_button');
		go_button.style.display = 'none';
	}
	
}