// ################################################## //
// ===============JavaScript Document================ //
// The belo functions validate different input fields //
// ========created by santrooper@gmail.com=========== //
// ################################################## //
function jstrim(s){
	var l=0; var r=s.length -1;
	while(l < s.length && s[l] == ' '){	
		l++; 
	}
	while(r > l && s[r] == ' '){	
		r-=1;	
	}
	return s.substring(l, r+1);
}

function getSelectedValue(defaultVAL,selectID){
	selectObj=document.getElementById(selectID);
	var selvalsarray = new Array();
	if(selectObj.multiple){
		for (var i = 0; i < selectObj.length; i++) {
			if (selectObj.options[i].selected && selectObj.options[i].value!=defaultVAL) {
				selvalsarray[selvalsarray.length] = selectObj.options[i].value;
			}
		}
	}
	else{
		if(selectObj.options[selectObj.selectedIndex].value!=defaultVAL){
			selvalsarray[selvalsarray.length]=selectObj.options[selectObj.selectedIndex].value;
		}
		else{
			selvalsarray[0]='';
		}
	}
	
	if(selvalsarray.length!=0){
		return(selvalsarray);
	}
	else{
		return('');
	}
}

function getSelectedText(defaultVAL,selectID){
	selectObj=document.getElementById(selectID);
	if(selectObj.options[selectObj.selectedIndex].value!=defaultVAL){
		selectedtext=selectObj.options[selectObj.selectedIndex].text;
	}
	else{
		selectedtext='';
	}
	return(selectedtext);
}
function validateEmptyField(fldval){
	if(jstrim(fldval)==''){
		return(false);
	}
	else{
		return(true);
	}
}
function validateEmail(usremail){
	var emailexpr = new RegExp(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/);
	usremail=jstrim(usremail);
	if (emailexpr.test(usremail)) {
		return(true);
	}
	else{
		return(false);
	}
}
function validateURL(usrurl){
	var urlexpr = new RegExp(/^(?:http:\/\/)?(?:[\w-]+\.)+[a-z]{2,6}$/i);
	usrurl=jstrim(usrurl);
	if (urlexpr.test(usrurl)) {
		return(true);
	}
	else{
		return(false);
	}
}
function validateInputValue(checktype,fieldval){
	fieldval=jstrim(fieldval);
	switch(checktype){
		case 'number':
			chrpool=/^[0-9]+$/;
		break;
		case 'character':
			chrpool=/^[A-Za-z]+$/;
		break;
		case 'alphanumeric':
			chrpool=/^[A-Za-z0-9]+$/;
		break;
		default:
			chrpool=/^[A-Za-z0-9]+$/;
		break;
	}
	var trgexpr = new RegExp(chrpool);
	if (trgexpr.test(fieldval)) {
		return(true);
	}
	else{
		return(false);
	}
}
function validateGroupItems(idprfix){
	var inputs = document.getElementsByTagName('input');
	var requiredObjArr=new Array();
	var x=0;
	for(var i=0; i<inputs.length; i++){
		prefixlen=idprfix.length;
		curid=inputs[i].id;
		if(curid.substr(0,prefixlen)==idprfix){
			requiredObjArr[x]=curid;
			x++;
		}
	}
	var ischecked=false;
	if(requiredObjArr.length>0){
		for(p=0;p<requiredObjArr.length;p++){
			if(document.getElementById(requiredObjArr[p]).checked){
				ischecked=true;
				break;
			}
		}
	}
	return(ischecked);
}
function togolShowHideDiv(divId,viewMode){
	divObj=document.getElementById(divId);
	if(viewMode=='show'){
		divObj.style.display="block";
		divObj.style.visibility="visible";
		if(arguments.length==3 && arguments[2]!=''){
			divObj.innerHTML=arguments[2];
		}
	}
	if(viewMode=='hide'){
		divObj.style.display="none";
		divObj.style.visibility="hidden";
		if(arguments.length==3 && arguments[2]==''){
			divObj.innerHTML='';
		}
	}
}
function putHtmlInContainer(containerid,content){
	document.getElementById(containerid).innerHTML=content;
}

function populateSelectList(selectid,keyvalueArr,selectedval){
	selectObj=document.getElementById(selectid);
	//==Clear select list==//
	for(j=0;j<selectObj.length;j++){
		selectObj.remove(j);
	}
	//====================//
	i=0;
	for( var sIndex in keyvalueArr ) {
		if(sIndex==selectedval){
			stats=true;
		}
		else{
			stats=false;
		}
		coursesubcatObj.options[i] = new Option(keyvalueArr[sIndex],sIndex,false,stats);
		i++;
	}
}
