
var http_request = false;
function makePOSTRequest(url, parameters) {
  http_request = false;
  if (window.XMLHttpRequest) { // Mozilla, Safari,...
	 http_request = new XMLHttpRequest();
	 if (http_request.overrideMimeType) {

		http_request.overrideMimeType('text/html');
	 }
  } else if (window.ActiveXObject) { // IE
	 try {
		http_request = new ActiveXObject("Msxml2.XMLHTTP");
	 } catch (e) {
		try {
		   http_request = new ActiveXObject("Microsoft.XMLHTTP");
		} catch (e) {}
	 }
  }
  if (!http_request) {
	 alert('Cannot create XMLHTTP instance');
	 return false;
  }
  
  http_request.onreadystatechange = alertContents;
  http_request.open('POST', url, true);
  http_request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
  http_request.setRequestHeader("Content-length", parameters.length);
  http_request.setRequestHeader("Connection", "close");
  http_request.send(parameters);
}

function alertContents() {
  if (http_request.readyState == 4) {
	 if (http_request.status == 200) {
		result = http_request.responseText;

		document.getElementById('search_results').innerHTML = result;
	 } else {
		alert('There was a problem with the request. (' + http_request.status + ')');
	 }
  }
}

function act_search(text,instructor) {

	if(instructor == true) {
		do {
		
			orgtext = text;
			text = text.replace(" ","-");
		} while(text == orgtext);
		
		document.location.href = "/instructor/" + text;
	}
	else {
		goFilter("","",text);
	}
}

function goFilter(type,id,text) {

	document.getElementById("formSearchField").value = text.replace(/\\/g, '');;
	
	go_search('form');

}

var http_request2 = false;
function didYouMeanAjax() {
	var url = '/managerpublic/didyoumeaninc.php';
	var parameters = "ajax=true&formSearch=" + encodeURI( document.getElementById("formSearchField").value );
	
  http_request2 = false;
  if (window.XMLHttpRequest) { // Mozilla, Safari,...
	 http_request2 = new XMLHttpRequest();
	 if (http_request2.overrideMimeType) {

		http_request2.overrideMimeType('text/html');
	 }
  } else if (window.ActiveXObject) { // IE
	 try {
		http_request2 = new ActiveXObject("Msxml2.XMLHTTP");
	 } catch (e) {
		try {
		   http_request2 = new ActiveXObject("Microsoft.XMLHTTP");
		} catch (e) {}
	 }
  }
  if (!http_request2) {
	 alert('Cannot create XMLHTTP instance');
	 return false;
  }

  http_request2.onreadystatechange = function () {
	if(http_request2.responseText != "") {
		document.getElementById("didYouMeanBox").innerHTML = http_request2.responseText;
	}
}
  http_request2.open('POST', url, true);
  http_request2.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
  http_request2.setRequestHeader("Content-length", parameters.length);
  http_request2.setRequestHeader("Connection", "close");
  http_request2.send(parameters);
}



function changeTab(what) {
	if(what == "search") {
		document.getElementById("searchtab").style.display = "block";
		document.getElementById("bookmarkstab").style.display = "none";
		
		document.getElementById("tabmenusearch").className = "tab selected";
		document.getElementById("tabmenubookmarks").className = "tab";
		
		dynamicAjax("/managerpublic/changetabsession.php", "tab=search");
		
	}else{
		document.getElementById("searchtab").style.display = "none";
		document.getElementById("bookmarkstab").style.display = "block";
		
		document.getElementById("tabmenusearch").className = "tab";
		document.getElementById("tabmenubookmarks").className = "tab selected";
		
		dynamicAjax("/managerpublic/changetabsession.php", "tab=bookmarks");
	}
	
	return false;
}

var ajax;

function testAjax() {
	alert(ajax.status);
}

function dynamicAjax(url, parameters, target) {
  ajax = false;
  if (window.XMLHttpRequest) { // Mozilla, Safari,...
	 ajax = new XMLHttpRequest();
	 if (ajax.overrideMimeType) {

		ajax.overrideMimeType('text/html');
	 }
  } else if (window.ActiveXObject) { // IE
	 try {
		ajax = new ActiveXObject("Msxml2.XMLHTTP");
	 } catch (e) {
		try {
		   ajax = new ActiveXObject("Microsoft.XMLHTTP");
		} catch (e) {}
	 }
  }
  if (!ajax) {
	 alert('Cannot create XMLHTTP instance');
	 return false;
  }
  ajax.onreadystatechange = function () {
	if(ajax.readyState == 4 && ajax.responseText != "" && target != "") {
		document.getElementById(target).innerHTML = ajax.responseText;
	}
  }

  ajax.open("POST", url, true);
  ajax.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
  ajax.send(parameters);
}



function changeOrder(by, desc) {

	var queryString = "";
	if(document.URL.indexOf('?') >= 0){
		queryString = document.URL.substr(document.URL.indexOf('?')+1, document.URL.length);
	}
	
	
	if(queryString.indexOf('#') >= 0){
		queryString = queryString.substr(0, queryString.indexOf('#'));
	}
	queryString = queryString.replace("#", "");
		
	var qa = queryString.split("&");
	var found = false;
	var ascFound = false;
	for(var i = 0; i < qa.length; i++){
	
		var tmp = qa[i].split("=");
		if(tmp[0] == "order"){
		
			qa[i] = "order=" + by;
			found = true;
		}

		if(qa[i] == "asc=true"){
			ascFound = true;
			if(desc){
				delete qa[i];
			}
		}	
		
	}
	
	if(!found){
		qa[qa.length] = "order=" + by;
	}
	
	if(!desc && !ascFound){
		qa[qa.length] = "asc=true";
	}
		
	var tqa = new Array();
	for(var i = 0; i < qa.length; i++){
		if(qa[i] != "" && qa[i] != undefined){
			tqa[tqa.length] = qa[i];
		}
	}
	
	qa = tqa;
	queryString = qa.join("&");

	var url = window.location + "";
	
	if(url.indexOf("?") >= 0){
		url = url.substr(0, url.indexOf("?"));
	}
	
	if(url.indexOf("#") >= 0){
		url = url.substr(0, url.indexOf("#"));
	}

	url = url + "?" + queryString;

	if(url.indexOf("/instructor/") >= 0){
		url += "#lessons";
	}
		
	window.location = url;

}

function filterSearchKeyPress(e) {

	var keynum;
	if(window.event) {
		keynum = e.keyCode;
	}else if(e.which) {
		keynum = e.which;
	}

	if(keynum == 13) {
		changeOrder('relevance', 'desc');
	}
}

function filterSearch(page) {


	var fields = new Array("formSearch", "instructor", "lessonType","musicCategory");
	var param = "";
	
	for(var i = 0; i < fields.length; i++) {
		if(getById(fields[i]).value != "")
			param += "&" + fields[i] + "=" + escape(getById(fields[i]).value);
	}
	
	

	if((getById("formSearch").value == "" && getById("order").value != "Date") || (getById("formSearch").value != "" && getById("order").value != "relevance")){
		param += "&order="+getById("order").value;
	}
			
	if(getById("difficultyLevelMax").value != "10"){
		param += "&difficultyLevelMax=" + getById("difficultyLevelMax").value;
	}
	
	if(getById("difficultyLevelMin").value != "1"){
		param += "&difficultyLevelMin=" + getById("difficultyLevelMin").value;
	}
	
	if(document.getElementById("view2").checked == true) {
		param += "&view=list";
	}
	
	if(document.getElementById("desc").checked != true) {
		param += "&asc=true";
	}
		
	if(document.getElementById("spokenVideo").checked == true)
		param += "&spokenVideo=1";
		
	if(page != undefined){
		param += "&page="+page;
	}
	
	param = param.substr(1, param.length-1);
	
	if(document.getElementById("imgLoading"))
		document.getElementById("imgLoading").style.display = "block";

	var url = "/search_results.php";
	if(param != "")
		url += "?" + param;
	
	window.location = url;
	return false;
	
}

function resetSearchFormFilter() {
	window.location = "/search_results.php";
}

function toggleListRow(id, lid) {
	
	if(getById("listInfoRow"+id).innerHTML == ""){
		dynamicAjax("/managerpublic/listdetailsrow.php", "id="+lid, "listInfoRow"+id);
	}
	
	if(getById("listInfoRow"+id).style.display == "" || getById("listInfoRow"+id).style.display == "none")
		getById("listInfoRow"+id).style.display = "block";
	else
		getById("listInfoRow"+id).style.display = "none";
}

function getById(id) {
	return document.getElementById(id);
}


/***************************************
*           D R O P D O W N            *
****************************************/

var dd_active = -1;



function dd_drop(ref) {
	
	var id = dd_get_id(ref.id.substr(3));

	var target = getById("dd_"+id+"_pane");
	
	if(target.style.display == "block") {
		dd_hideAll();
	}else{
		dd_hideAll();
		dd_active = dd_get_id(ref.id.substr(3));

		
		if(target.style.display == "" || target.style.display == "none") {
			target.style.display = "block";
		}
	}
}

function dd_hideAll(e, sender) {
	
	if(sender == "body"){
		var targ;
		if (!e) var e = window.event;
		if (e.target) targ = e.target;
		else if (e.srcElement) targ = e.srcElement;
	}
	
	if(sender != "body" || targ.className.substr(0,3) != "dd_"){
		for(var i = 0; i < document.getElementsByTagName("div").length; i++){
			if(document.getElementsByTagName("div")[i].className == "dd"){
				target = document.getElementsByTagName("div")[i];
				getById(target.id + "_pane").style.display = "none";
			}
		}
	}
}

function dd_get_id(source) {
	var id = "";
	for(var i = 0; source.substr(i,1) != "_" || i > source.length; i++) {
		id += source.substr(i,1);
	}
	return id;
}

function dd_pane_item_click(ref) {
	dd_hideAll();
	
	var id = dd_get_id(ref.id.substr(3));
	var itemid = dd_get_id(ref.id.substr(14+id.length));

	var parent = "dd_"+id;
	var value = getById(parent+"_pane_item_"+itemid+"_value").innerHTML;
	var title = getById(parent+"_pane_item_"+itemid+"_capt").innerHTML;

	dd_set_value(id, title, value);
	
}

function dd_pane_item_hover(ref, state) {
	if(state == 1) {
		ref.style.background = "#d88";
	}else{
		ref.style.background = "#fff";
	}
}

function dd_get_value(id) {
	return getById(id).value;
}

function dd_set_value(id, title, value) {
	getById(id).value = value;
	getById("dd_"+id+"_capt").innerHTML = title;
}

function terms_check() {
	if(document.getElementById('terms_cb').checked) {
	
		return check_form_2();
	}
	else {
		alert("You need to agree to the Terms for Sign Up");
		return false;
	}
}

function terms_check_only() {
	if(document.getElementById('terms_cb').checked) {
		return true;
	}
	else {
		alert("You need to agree to the Terms for Sign Up");
		return false;
	}
}