// Use .ready to run functions prior to image load
$(document).ready(function(){	
	
	
	// show/hide advanced options
	$("#advance-options").hide().after('<label id="show-hide" class="clickable">Show Advanced Options</label>');
	$("#show-hide").hover(function(){
			$(this).addClass("over");
	},	function(){
			$(this).removeClass("over");
	}).toggle( function(){
			$("#advance-options").slideDown();	
			$("#show-hide").html("Hide Advanced Options").addClass("open");
					
	}, function(){
			$("#advance-options").slideUp();	
			$("#show-hide").html("Show Advanced Options").removeClass("open");
	});
	

   
	// hash used to set searchtype - pull items out of advanced section
	if(hash = window.location.hash){
		createCookie("pccsearch",hash.substr(1),20); // use hash to set searchtype
		eraseCookie("pccsearchval"); // clear old value
	}
	if( searhType = readCookie("pccsearch")){ // values can be dltype, coursetype
		//$("#advance-options").before( $("label:has(select[name='"+searhType+"'])") );
		$("#keywords").before( $("label:has(select[name='"+searhType+"'])") );
		

		
		// set serachVal
		if( searchVal = readCookie("pccsearchval"));
		else{
			switch(searhType){
				case "dltype":
					searchVal = "dl-all";
					break;
				case "coursetype":
					searchVal = "ced";
					break;
			}
			createCookie("pccsearchval",searchVal);
		}
		$("select[name='"+searhType+"'] option[value='"+searchVal+"']").attr("selected","selected");
		$("select[name='"+searhType+"']").change( function (){
			createCookie("pccsearchval",$(this).val(),20); 	
		});

	}
	
	// change sidebar for noncredit
	if( readCookie("pccsearchval") == "ced" || readCookie("pccsearchval") == "typeZ"){
		$("#snav li.credit").css('display','none');
		$("#snav li.non").css('display','block');
	}
	
	// show/save term
	if( searhTerm = readCookie("pccterm")){
		$("input[name='thisTerm'][value='"+searhTerm+"']").attr("checked","checked");
	}
	$("input[name='thisTerm']").click( function (){
		createCookie("pccterm",$(this).val(),20); 								 
	});
	
	// show/save keywords
	if( searchQuery = readCookie("pccquery")){
		$("input[name='queryText']").val(searchQuery);
	}
	//$("input[name='queryText']").blur( function (){
	//	createCookie("pccquery",$(this).val(),20);								 
	//});
	$("#queryForm").submit( function (){		
		createCookie("pccquery",$("input[name='queryText']").val(),20);								 
	});
   
});



/* === cookie code === */
function createCookie(name,value,minutes) {
	if (minutes) {
		var date = new Date();
		date.setTime(date.getTime()+(minutes*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = name+"="+value+expires+"; path=/";
}

function readCookie(name) {
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' '){ c = c.substring(1,c.length);}
		if (c.indexOf(nameEQ) == 0){ return c.substring(nameEQ.length,c.length); }
	}
	return null;
}

function eraseCookie(name) {
	createCookie(name,"",-1);
}

/*=== JavaScript to ensure query entry in at least one form field ===*/
function query_Validator(theForm) {
	var query = jQuery.trim( $("input[name='queryText']").val() );
	var subject = $("select[name='SubjectCode']").val();
	var location = $("select[name='Site']").val();
	var type = $("select[name='coursetype']").val();
	var method = $("select[name='dltype']").val();
	var instructor = jQuery.trim( $("input[name='Instructor']").val() );
	
	if(	query=="" && subject=="*" && location=="ALL" && type=="ALL" && method=="NONE" && instructor=="" ){				
  			alert('Oh no! \nThat search would bring up too many results and could slow the system for everyone.\n\nPlease enter a Keyword, Subject, Location, Class Type, Delivery Method, or Instructor. ');
			$("input[name='queryText']").focus();
  			return false;
	}
	/*
	if (theForm.queryText.value == "" && theForm.queryTextType.value =="*") {
		alert("Please enter a keyword, or select a specific program subject.");
		theForm.queryText.focus();
		return false;
	}
	*/
	return true;
}
function query_courseVal(theForm) {
	if (theForm.queryTextType.value == "") {
		alert("Please enter Course Number.");
		theForm.queryTextType.focus();
		return false;
	}
	return true;
}
