/************************************************************
 * Book Search
 * Author: James B. Gilbert
 * Date: 11/28/2006
 *
 * This code will search the textbook price list and return
 *   results at the top of the table.
 ************************************************************/

var f = 0;
function searchCourses() {
	var crs = document.getElementById( "course" ).value;
	var i;
	
	//Remove old "Your Courses"
	for( i = f; i != 0; i-- )
		document.getElementById( "prices" ).deleteRow( i );
				
	//Validate Input
	if ( crs == "" ) {
		alert( "Please enter a course prefix and number.\n\nFor example:\nACC 101" );
		return;
	}
			
	crs = crs.toUpperCase();
	document.getElementById( "course" ).value = crs;
	
	//Search for listing
	var courses = document.getElementById( "prices" ).rows;
	i = 0;
	f = 0;
			
	//Loop through courses
	while( i < courses.length ) {
		var course = courses[i].cells[0].innerHTML;

		//Exact Match?
		if ( course == crs ) {
			//Add to listing
			i++;
			var newRow = document.getElementById( "prices" ).insertRow(++f);
			for( var j = 0; j < courses[i].cells.length; j++ ) {
				newRow.insertCell( j );
				newRow.cells[j].innerHTML = courses[i].cells[j].innerHTML;
			}
		} else {
			//Course Match?
			if ( course.substr( 0, crs.length ) == crs && ( isNaN( course.substr( crs.length, 1 ) ) || course.substr( crs.length, 1 ) == " " ) ) {
				//Add to listing
				i++;
				var newRow = document.getElementById( "prices" ).insertRow(++f);
				for( var j = 0; j < courses[i].cells.length; j++ ) {
					newRow.insertCell( j );
					newRow.cells[j].innerHTML = courses[i].cells[j].innerHTML;
				}
			}
		}

		i++;
	}
			
	//Add a separator for appearance.
	if ( f != 0 ) {
		var newRow = document.getElementById( "prices" ).insertRow(++f);
		newRow.insertCell( 0 );
		newRow.cells[0].innerHTML = "<hr /><br />&nbsp;";
		newRow.cells[0].colSpan = 6;
		newRow = document.getElementById( "prices" ).insertRow( 1 );
		newRow.insertCell( 0 );
		newRow.cells[0].innerHTML = "<br /><b>Your Course</b>";
		newRow.cells[0].colSpan = 6;
		newRow.cells[0].align = "center";
		f++;
	} else {
		alert( crs + " was not found.\n\nPlease enter a course prefix and number.\n\nFor example:\nACC 101" );
	}
}
		
//If users presses enter, search.
function keyPressed( e ) {
	var keyCode;
	
	if ( window.event )			//IE
		keyCode = e.keyCode;
	else if ( e.which )			//Firefox, Netscape, Opera
		keyCode = e.which;
			
	//Enter key?
	if ( keyCode == 13 )
		searchCourses();

	return true;
}