/****** COOKIES ***/
function createCookie(name,value,days) {
	if (days) {
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*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);
}




/***** FORM VALIDATION ******/

//check that all fields with classname 'required' are filled in
function validateForm(formname){
var elems=eval("document."+formname+".elements"); 
var valid=true;
for(var i=0;i<elems.length;i++){
	if(elems[i].className=='required'){
	switch(elems[i].type) {
			case "text" :
				if(elems[i].name=='email_address'){
					valid=isEmail(elems[i].value);
				}
			case "password" :
				if(elems[i].value==""){
					valid=false;
					alert("Please fill in all required fields");
				}
				break;
			case "radio" :
				valid = isSelected(formname, elems[i].name);
				break;
		}
		if(!valid){
			return valid;
		}
	}
}
return true;
}

function submitForm(formname){
eval("document."+formname+".submit()");
}

/** isChecked
 * returns true if at least one of a group of checkboxes is checked
 **/
function isChecked(formname, checkboxname){
	var isChecked = false;
	var chkbx=eval('document.'+formname+'.'+checkboxname);
	for (var i = 0; i < chkbx.length; i++) {
  	 	if (chkbx[i].checked) {
   	   	isChecked = true;
   		}
	}
	if(!isChecked)
		alert("Please tick all required checkboxes");
	return isChecked;
}

/** isSelected()
 * Returns true if one of a group of radio buttons is selected
 **/
function isSelected(formname, radioname){
	var isChecked = false;
	var chkbx=eval('document.'+formname+'.'+radioname);
	if(!chkbx.length){
		if(chkbx.checked)
			isChecked=true;
	}
	else{
		for (var i = 0; i < chkbx.length; i++) {
			if (chkbx[i].checked) {
			isChecked = true;
			}
		}
	}
	if(!isChecked)
		alert("Please tick all required Radio buttons");
	return isChecked;
}


function isEmail(str){
	if((str.indexOf('@')==-1)||(str.indexOf('.')==-1)){
		alert("Invalid email address");
		return false;
	}
	else
		return true;
}




/**************** AJAX STUFF **************/

/*** Updating subtopic when topic selected **/

function handleUpdateSubSectionMenu() {
  if (http.readyState == 4) {
    // Split the comma delimited response into an array
    results = http.responseText;
    document.getElementById('subsection_menu').innerHTML = results;

  }
  
}
function updateSubSectionMenu(root_dir, type) {
	document.getElementById('subsection_menu').innerHTML = 'Updating......';
 	var a_f = document.getElementById('section').value;
	var url=root_dir+'ajax/subsectionMenu.php?check=suscms&type='+type+'&section='+a_f+'';
	http.open("GET", url, true);
	http.onreadystatechange = handleUpdateSubSectionMenu;
	http.send(null);

}

function setSectionID(value){
	document.getElementByID('section_id').value=value;
}

function getHTTPObject() {
  var xmlhttp;
  /*@cc_on
  @if (@_jscript_version >= 5)
    try {
      xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
    } catch (e) {
      try {
        xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
      } catch (E) {
        xmlhttp = false;
      }
    }
  @else
  xmlhttp = false;
  @end @*/
  if (!xmlhttp && typeof XMLHttpRequest != 'undefined') {
    try {
      xmlhttp = new XMLHttpRequest();
    } catch (e) {
      xmlhttp = false;
    }
  }
  return xmlhttp;
}
var http = getHTTPObject(); // We create the HTTP Object



