
function courselisting_init(){
	page_command= new PageAction();
	if(document.getElementById("fTerm")){
		document.getElementById("fTerm").onchange = load_depts;
	}
	$("#TextbookForm").keypress(disableEnterKeypress);
	document.getElementById("course-bookdisplay").style.display="none";
	var term = document.getElementById("fTerm");
	if(term.value != "0|0"){
		load_depts();
	}
	var search_section = document.getElementById("search_section").value;

	if(search_section.length>0){
		load_search_prods(search_section);
	}
	check_action();
	
}



function execute_request(url,command){
	var req = null; 
	var iframe = null;
	var xml_request = document.getElementById("xmlrequest");
	xml_request.innerHTML="";
	xml_request.style.display="none";
	
	if (window.XMLHttpRequest)     
	{
	        req = new XMLHttpRequest();     // Modern browsers
	}
	else
	if (window.ActiveXObject)   
	{
	       req = new ActiveXObject("Microsoft.XMLHTTP");    // Internet Explorer
	}else{
	
		xml_request.innerHTML="<div id=\"flash\" class=\"error\"><p>You must have ActiveX enabled.</p></div>";
		xml_request.style.display="block";
	}

	
	
	if(req!=null){

		
		req.onreadystatechange = function()
		{
		 if(req.readyState == 4)
		 {
		    if(req.status == 200){
			    
				switch(command) {
					case 'load_depts':  
						process_dept(req);
					break;
					case 'load_courses':  
						process_courses(req);
					break;
					case 'load_sections':  
						process_sections(req);
					break;
					case 'load_products':
						process_products(req);
					break;
				}
		     }
		    else{
	
				xml_request.innerHTML="<div id=\"flash\" class=\"error\"><p>There has been an error processing your request.</p></div>";				
				xml_request.style.display="block";
				}
		   }
		};

		if(document.getElementById("debug_xml")){
			xml_request.innerHTML=url;
			xml_request.style.display="block";
		}
		var t = new Date().getTime();
		req.open("GET", url + "&t=" + t, true); 
		req.send(null); 
	}
}




function load_depts(){

	var course = document.getElementById("fCourse");
	var section = document.getElementById("fSection");
	var dept = document.getElementById("fDept");
	
	var term = document.getElementById("fTerm");
	
	var products = document.getElementById("course-bookdisplay");
	products.style.display="none";
	products.innerHTML="";
	/* SET SELECTORS TO EMPTY STATE */
	
	course.disabled=true;
	section.disabled=true;
	dept.disabled=true;
	
	
	course.options.length=0;
	section.options.length=0;
	dept.options.length=0;
	
	dept.options[0]=new Option("Loading...");
	
	/* GENERATE COMMAND */
	
	campusterm_id = term.value;
	pos = campusterm_id.indexOf("|");
	campus_id = campusterm_id.substr(0,pos);
	term_id = campusterm_id.substr(pos+1,campusterm_id.length+1);
	url="textbooks_xml.asp?control=campus&campus="+campus_id+"&term="+term_id
	
	
	/* MAKE AJAX REQUEST */
	
	submit_request(url,"load_depts");

}




function process_dept(req){
	var doc = req.responseXML;   // assign the Xml file to a var
	var elements = doc.getElementsByTagName('department');   // read the first element with a dom's method
	var departments=document.getElementById("fDept");
	//departments.
	departments.options.length=0;
	if(elements.length==0){
		departments.options[0]= new Option("-- Course info not available --","");	
		departments.disabled=true;
	}else{
		for(i=0;i<elements.length;i++){
			var element=elements[i];
			departments.options[i]= new Option(element.getAttribute("abrev")+"-"+element.getAttribute("name"),element.getAttribute("id"));	
		}
	
		departments.disabled=false;
	}

}


function load_courses(){
	var course = document.getElementById("fCourse");
	var section = document.getElementById("fSection");
	var products = document.getElementById("course-bookdisplay");
	products.style.display="none";
	products.innerHTML="";
	/* SET SELECTORS TO EMPTY STATE */
	
	course.disabled=true;
	section.disabled=true;
	
	course.options.length=0;
	section.options.length=0;
	
	course.options[0]=new Option("Loading...");
	
	var dept=document.getElementById("fDept").value;
	
	url="textbooks_xml.asp?control=department&dept="+dept+"&term="+get_term();
	
	submit_request(url,"load_courses");
}

function process_courses(req){
	var doc = req.responseXML;   // assign the Xml file to a var
	var elements = doc.getElementsByTagName('course');   // read the first element with a dom's method
	var courses=document.getElementById("fCourse");
	//departments.
	courses.options.length=0;
	for(i=0;i<elements.length;i++){
		var element=elements[i];
		courses.options[i]= new Option(element.getAttribute("name"),element.getAttribute("id"));
	}
	
	courses.disabled=false;

}

function load_sections(){
	var section = document.getElementById("fSection");
	var products = document.getElementById("course-bookdisplay");
	products.style.display="none";
	products.innerHTML="";
	/* SET SELECTORS TO EMPTY STATE */
	
	section.disabled=true;
	
	section.options.length=0;
	
	section.options[0]=new Option("Loading...");
	
	var course=document.getElementById("fCourse").value;
	
	url="textbooks_xml.asp?control=course&course="+course+"&term="+get_term();
	
	submit_request(url,"load_sections");
}

function process_sections(req){
	var doc = req.responseXML;   // assign the Xml file to a var
	var elements = doc.getElementsByTagName('section');   // read the first element with a dom's method
	var sections=document.getElementById("fSection");
	//departments.
	sections.options.length=0;
	for(i=0;i<elements.length;i++){
		var element=elements[i];
		sections.options[i]= new Option(element.getAttribute("name")+"-"+element.getAttribute("instructor"),element.getAttribute("id"));
	}
	sections.disabled=false;
	if(sections.options.length == 1){
		sections.options.selectedIndex = 0;
		load_products();
	}
}

function load_products(){
	var section=document.getElementById("fSection").value;
	var products = document.getElementById("course-bookdisplay");
	products.style.display="block";
	products.innerHTML="<h3>Loading textbooks...</h3>";
	
	url="textbooks_xml.asp?control=section&section="+section
	
	submit_request(url,"load_products");
}


function process_products(req){
	var doc = req.responseText;   // assign the Xml file to a var
	//var elements = doc.getElementsByTagName('section');   // read the first element with a dom's method
//course-bookdisplay
	document.getElementById("course-bookdisplay").innerHTML=doc;
	isbn_init();
	initProducts();
	initLightbox();
	/*window.scroll(0,300);*/
}
