function trim(strinput)
{
    var i;
					 while(strinput.charAt(0)==' '||strinput.charAt(0)=='\t'||strinput.charAt(0)=='\n'||strinput.charAt(0)=='\r')
					{
					strinput= strinput.substring(1);
					}
					i = strinput.length-1;
					while(strinput.charAt(i)==' '||strinput.charAt(i)=='\t'||strinput.charAt(i)=='\n'||strinput.charAt(i)=='\r')
					{
					strinput = strinput.substring(0,i);
					i = i-1;
					}
return strinput;
}

//priya

function issame(lenObj,lenObj1,lenobjMsg)
{
	str=lenObj.value;
	str1=lenObj1.value;
	if(str!=str1)
	{
		alert(lenobjMsg);
		lenObj.focus();
		return false;
	}
	return true;
}
//sree
function ForceEntry(strObject,strMessage)
{
var Charss = " +-_/:,.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
var Chars = " +-()0123456789";
tti = strObject.value;
 if (trim(tti) != '')
 {
	for (var i = 0; i < tti.length; i++)
	{
		if (i == 0)
		{
			if (Charss.indexOf(tti.charAt(i)) == 0)
			{
				alert(strMessage);
				strObject.focus();
				return false;
			}
		}
		if (Charss.indexOf(tti.charAt(i)) == -1)
		{
			alert(strMessage);
				strObject.focus();
			return false;
		}
	}
}
else
{
		alert(strMessage);
		strObject.focus();
  return false;
  }
  return true;
}
//priya

//email
function EmailValid(emailtext,MsgErr)
{

	if (trim(emailtext.value) == "")
	{
		MsgErr=MsgErr+"--Email cannot be blank";
		alert(MsgErr);
		emailtext.focus();
		return false;
	}
	
	emailStr=emailtext.value;

	var emailPat=/^(.+)@(.+)$/

	var specialChars="\\(\\)<>@,;:\\\\\\\"\\.\\[\\]"

	var validChars="\[^\\s" + specialChars + "\]"

	var quotedUser="(\"[^\"]*\")"

	var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/

	var atom=validChars + '+'

	var word="(" + atom + "|" + quotedUser + ")"

	var userPat=new RegExp("^" + word + "(\\." + word + ")*$")

	var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$")

	var matchArray=emailStr.match(emailPat)
		if (matchArray==null) 
	{
	  	MsgErr=MsgErr+"-- Email address seems incorrect (check @ and .'s)";
				alert(MsgErr);
		emailtext.focus();
	return false
	}
	
	var user=matchArray[1]
	var domain=matchArray[2]


	if (user.match(userPat)==null) 
	{

		MsgErr=MsgErr+"--The username in Email doesn't seem to be valid.";
				alert(MsgErr);
		emailtext.focus();
		return false
	}


	var IPArray=domain.match(ipDomainPat)
		if (IPArray!=null) 
	{   
		  for (var i=1;i<=4;i++) 
		  {
			if (IPArray[i]>255) 
			{
				MsgErr=MsgErr+"--Destination IP address is invalid!";
						alert(MsgErr);
				emailtext.focus();
				return false;
			}
		}
			return true;
	
	}

	var domainArray=domain.match(domainPat)
if (domainArray==null) 
	{
		MsgErr=MsgErr+"-- The email doesn't seem to be valid.";
				alert(MsgErr);
		emailtext.focus();
		 return false;
	}

	var atomPat=new RegExp(atom,"g")
	var domArr=domain.match(atomPat)
	var len=domArr.length
	if (domArr[domArr.length-1].length < 2 || 
	 domArr[domArr.length-1].length>3) {
	   
	 MsgErr=MsgErr+"--The address must end in a three-letter domain, or two letter country.";
	 		alert(MsgErr);
	  emailtext.focus();
	  return false;

	}

	if (len<2) {
	   var errStr="This address is missing a hostname!"
	  MsgErr=MsgErr+"--"+errStr;
	  		alert(MsgErr);
			emailtext.focus();
		return false;
	}
		if (domArr[domArr.length-2].length < 2 ) {
		MsgErr=MsgErr+"-- Hostname in the email address should be atleast two";
	 		alert(MsgErr);
	  emailtext.focus();
	  return false;
	}


	return true;
	}
//email

function EmailValid1(emailtext,MsgErr,EValid)
{

	if(EValid==1){
	if (trim(emailtext.value) == "")
	{
		MsgErr=MsgErr+"--Email cannot be blank";
		alert(MsgErr);
		emailtext.focus();
		return false;
	}
	}
	if(trim(emailtext.value) != ""){
	emailStr=emailtext.value;

	var emailPat=/^(.+)@(.+)$/

	var specialChars="\\(\\)<>@,;:\\\\\\\"\\.\\[\\]"

	var validChars="\[^\\s" + specialChars + "\]"

	var quotedUser="(\"[^\"]*\")"

	var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/

	var atom=validChars + '+'

	var word="(" + atom + "|" + quotedUser + ")"

	var userPat=new RegExp("^" + word + "(\\." + word + ")*$")

	var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$")

	var matchArray=emailStr.match(emailPat)
	
	
	if (matchArray==null) 
	{
		//if(EValid==1){
	  	MsgErr=MsgErr+"-- Email address seems incorrect (check @ and .'s)";
				alert(MsgErr);
		emailtext.focus();
	return false
		//}
	}
	
	var user=matchArray[1]
	var domain=matchArray[2]


	if (user.match(userPat)==null) 
	{

		MsgErr=MsgErr+"--The username in Email doesn't seem to be valid.";
				alert(MsgErr);
		emailtext.focus();
		return false
	}


	var IPArray=domain.match(ipDomainPat)
		if (IPArray!=null) 
	{   
		  for (var i=1;i<=4;i++) 
		  {
			if (IPArray[i]>255) 
			{
				MsgErr=MsgErr+"--Destination IP address is invalid!";
						alert(MsgErr);
				emailtext.focus();
				return false;
			}
		}
	
			return true;
	
	}

	var domainArray=domain.match(domainPat)
if (domainArray==null) 
	{
		MsgErr=MsgErr+"-- The email doesn't seem to be valid.";
				alert(MsgErr);
		emailtext.focus();
		 return false;
	}

	var atomPat=new RegExp(atom,"g")
	var domArr=domain.match(atomPat)
	var len=domArr.length
	if (domArr[domArr.length-1].length < 2 || 
	 domArr[domArr.length-1].length>3) {
	   
	 MsgErr=MsgErr+"--The address must end in a three-letter domain, or two letter country.";
	 		alert(MsgErr);
	  emailtext.focus();
	  return false;

	}

	if (len<2) {
	   var errStr="This address is missing a hostname!"
	  MsgErr=MsgErr+"--"+errStr;
	  		alert(MsgErr);
			emailtext.focus();
		return false;
	}
		if (domArr[domArr.length-2].length < 2 ) {
		MsgErr=MsgErr+"-- Hostname in the email address should be atleast two";
	 		alert(MsgErr);
	  emailtext.focus();
	  return false;
	}
	}

	return true;
	}
//email

function MinLen(lenObj,Msg)
{
	str=lenObj.value;
	if(str.length < 5)
	{
		alert(Msg);
		lenObj.focus();
		return false;
	}
	return true;
}


 function isname(nameObj,nameMsg)
{
	 var i=0
		 names=nameObj.value;
	 for(i;i<names.length;i++)
	 {
	 	var c=names.charAt(i)
//	 	if (!(((c >= "a") && (c <= "z")) || ((c >= "A") && (c <= "Z")) || ((c >= "0") && (c <= "9")) || (c == ".") || (c == "_") || (c == "-"))
		if (!(((c >= "a") && (c <= "z")) || ((c >= "A") && (c <= "Z"))||((c >= "0") && (c <= "9")) ||(c == ".")  || (c == "_") || (c == "-")))
	 	{
	 		alert(nameMsg);
			nameObj.focus();
			return false;
	 	}
	 }
     	 return true;
}
function checkValidDate (DateObject, MonthObject, YearObject,MsgObject,ValidateDate,NullMsg) {
if(ValidateDate==1){ // only if ==1, validates for empty values
		if ((DateObject.value =="") || (MonthObject.value =="") || (YearObject.value ==""))
		{
			alert(NullMsg);
			DateObject.focus();
			return false;
		}
	}
	if((DateObject.value !="") || (MonthObject.value !="") || (YearObject.value !="")) {
	var d = DateObject.value+"-"+MonthObject.value+"-"+YearObject.value
	var re=/^((29-0?2-\d{2}([13579][26]|[02468][048]))|((0?[1-9]|[1-2]\d|3[0-1])-(0?[13578]|10|12)-\d{4})|((0?[1-9]|[1-2]\d|30)-(0?[469]|11)-\d{4})|((0?[1-9]|1\d|2[0-8])-0?2-\d{4}))/g;
	if (d.match(re) ) {
		return true;
	}else {
			alert(MsgObject);
			DateObject.focus();
			return false;
	}

}
return true;
}

function DateValid(DateObject, MonthObject, YearObject,MsgObject,ValidateDate,NullMsg)
{
	
	if(ValidateDate==1){ // only if ==1, validates for empty values
		if ((DateObject.value =="") || (MonthObject.value =="") || (YearObject.value ==""))
		{
			alert(NullMsg);
			DateObject.focus();
			return false;
		}
	}
	if((DateObject.value !="") || (MonthObject.value !="") || (YearObject.value !="")) {
	var dob=new Date(MonthObject.value+"/"+DateObject.value+"/"+YearObject.value);
	var curr_date=new Date();
	if (curr_date.getTime() < dob.getTime())
		{
			alert(MsgObject);
			DateObject.focus();
			return false;
		}

	//return true;
}
return true;
}
	
function isDate(ThisDay,ThisMon,ThisYear)
{
	var ValidDay;
	ThisDay=parseInt(ThisDay);
	ThisMon=parseInt(ThisMon);
	ThisYear=parseInt(ThisYear);
	if(ThisDay>31||ThisMon>12||ThisYear>4000||ThisYear<1||ThisDay<1||ThisMon<1)
		{
		return false;
		}
	switch (ThisMon)
		{
		case 1:
		case 3:
		case 5:
		case 7:
		case 8:
		case 10:
		case 12:
				ValidDay=31;
				break;
		case 2:ValidDay=28;
				if(ThisYear%4==0)
					{
					if(ThisYear%400==0)
						ValidDay=29;
					else
						{
						if(ThisYear%100==0)
							ValidDay=28;
						else
							ValidDay=29;
						}
					}
				break;
		case 4:
		case 6:
		case 9:
		case 11:
				ValidDay=30;
				break;
		default:
				return false;
		}
	if(ValidDay<ThisDay)
		return false;
	else
		return true;
}


function isPost(strObject,strMessage)
{
var Charss = " -_/:,.abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
var Chars = " +-()0123456789";
tti = strObject.value;
 if (trim(tti) != '')
 {
	for (var i = 0; i < tti.length; i++)
	{
		if (i == 0)
		{
			if (Chars.indexOf(tti.charAt(i)) == 0)
			{
				alert(strMessage);
				strObject.focus();
				return false;
			}
		}
		if (Chars.indexOf(tti.charAt(i)) == -1)
		{
			alert(strMessage);
				strObject.focus();
			return false;
		}
	}
}
else
{
		alert(strMessage);
		strObject.focus();
  return false;
  }
  return true;
}

function isdifferent(lenObj,lenObj1,lenobjMsg)
{
	str=lenObj.value;
	str1=lenObj1.value;
	if(str!=str1)
	{
		alert(lenobjMsg);
		lenObj.focus();
		return false;
	}
	return true;
}

function isAlphanumeric(alpObj,alpObjMsg)
{
	alp=alpObj.value;
	alps=alpObj.value.search(/[^a-zA-Z\s]/);
	
	if (alp==null || alp=="" || alps != -1)
	{
		alert(alpObjMsg);
		alpObj.focus();
		return false;
	}
	return true;
}


function FirstChar(strObject,strMessage)
{
var Charss = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
//var Chars = " +-()0123456789";
tti = strObject.value;
 if (trim(tti) != '')
 {
	if (Charss.indexOf(tti.charAt(0)) == -1){
		alert(strMessage);
				strObject.focus();
			return false;
	}
}
 return true;
}

function LastChar(strObject,strMessage)
{
//var Charss = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
var Chars = "_-";
tti = strObject.value;

 if (trim(tti) != '')
 {
	if (Chars.indexOf(tti.charAt((tti.length) -1)) != -1){

		alert(strMessage);
				strObject.focus();
			return false;
	}
}
 return true;
}

function doQuickSearch()
{
	var frm = document.Search;
		if(frm.title.value == '' && frm.author.value == '' && frm.isbn.value == '')
		{
			alert("Please enter any one field");
			frm.title.focus();
			return false;
		}
		frm.action = "/search_result.php";
		frm.submit();	
}


function ImageShow(ImgUrl){
	var x=window.open(ImgUrl,"WebImage", "status=0,menubar=0,height=400,width=300");
	x.focus();
}
			function CompanionSite(val)
			{
				if(val.indexOf('companion_website.php')  == -1)
				{
					window.open(val);
				}
				else
				{
					location.href=val;
				}
			}
//TO Check password
function Checkpwd(strObject,strMessage)
{
var Charss = "!@#$%^&*()_+-=?><abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
var Chars = "+-()0123456789";
tti = strObject.value;
 if (trim(tti) != '')
 {
	for (var i = 0; i < tti.length; i++)
	{
		if (i == 0)
		{
			if (Charss.indexOf(tti.charAt(i)) == 0)
			{
				alert(strMessage);
				strObject.focus();
				return false;
			}
		}
		if (Charss.indexOf(tti.charAt(i)) == -1)
		{
			alert(strMessage);
				strObject.focus();
			return false;
		}
	}
}
else
{
		alert(strMessage);
		strObject.focus();
  return false;
  }
  return true;
}


//added for instructor form validation on 13th aug 2007....
function validate_instructor()
{
  var cansubmit=true;
  form=document.instructor_form;
        if(cansubmit){
        if (form.user_title.selectedIndex == 0)
        {
        alert('Please select the title ');
        form.user_title.focus();
        cansubmit=false;
        }

//        if (cansubmit) cansubmit=ForceEntry(form.user_fname, "First Name accepts only Alphabets,Numbers,Space and Dot");
        if(cansubmit) cansubmit =FirstChar(form.user_fname,"First Character in First Name should be an alphabet");
        if (cansubmit) cansubmit=ForceEntry(form.user_fname, "First Name accepts only Alphabets,Numbers,Space and Dot");
        if(cansubmit) cansubmit =LastChar(form.user_fname,"Invalid Last Character First Name");

        if (cansubmit) cansubmit=ForceEntry(form.user_lname, "Last Name accepts only Alphabets,Numbers,Space and Dot");
        if(cansubmit) cansubmit =FirstChar(form.user_lname,"First Character in Last Name should be an alphabet");
        if(cansubmit) cansubmit =LastChar(form.user_lname,"Invalid Last Character in Last Name");

//        if (cansubmit) cansubmit=ForceEntry(form.user_position, "Postition accepts only Alphabets,Numbers,Space and Dot");
/*        if(cansubmit) cansubmit =FirstChar(form.user_position,"First Character in Position should be an alphabet");
        if (cansubmit) cansubmit=ForceEntry(form.user_position, "Postition accepts only Alphabets,Numbers,Space and Dot");
        if(cansubmit) cansubmit =LastChar(form.user_position,"Invalid Last Character in Position");*/

        if(cansubmit){
        if (form.user_position.selectedIndex == 0)
        {
        alert('Please select the Position');
        form.user_position.focus();
        cansubmit=false;
        }
        }

//        if (cansubmit) cansubmit=ForceEntry(form.user_institution, "Institution accepts only Alphabets,Numbers,Space and Dot");
        if(cansubmit) cansubmit =FirstChar(form.user_institution,"First Character in Institution should be an alphabet");
        if (cansubmit) cansubmit=ForceEntry(form.user_institution, "Institution accepts only Alphabets,Numbers,Space and Dot");
        if(cansubmit) cansubmit =LastChar(form.user_institution,"Invalid Last Character in Institution");

        if(cansubmit){
        if ((form.user_dept.selectedIndex == 0) && (form.user_deptname.value==''))
        {
        alert('Please select or enter the Department');
        form.user_dept.focus();
        cansubmit=false;
        }
        }

        if(cansubmit){
         var selval=form.user_dept.selectedIndex;
         if ((form.user_dept.options[selval].value==00) && (form.user_deptname.value==''))
          {
            alert('Please fill the Department Name in Textbox');
            form.user_deptname.focus();
            cansubmit=false;
          }
        }
        
        if(cansubmit){
        if (form.user_deptname.value.match("[!@#$%^&*()]"))
        {
        alert('Department Name should not contain Special Characters');
        form.user_deptname.focus();
        cansubmit=false;
        }
        }

//        if (cansubmit) cansubmit=ForceEntry(form.user_course, "Course accepts only Alphabets,Numbers,Space and Dot");
        if(cansubmit) cansubmit =FirstChar(form.user_course,"First Character in Course should be an alphabet");
        if (cansubmit) cansubmit=ForceEntry(form.user_course, "Course accepts only Alphabets,Numbers,Space and Dot");
        if(cansubmit) cansubmit =LastChar(form.user_course,"Invalid Last Character in Course");

        if(cansubmit){
        if (form.user_yearsemester.value.match("[!@#$%^&*()]"))
        {
        alert('Year Semester should not contain Special Characters');
        form.user_yearsemester.focus();
        cansubmit=false;
        }
        }

        if(cansubmit){
        if((form.user_offno.value) && (form.user_offno.value.match("[^0-9 +()]")))
        {
                alert("Office Number accepts only Numbers,() and +");
                form.user_offno.focus();
                cansubmit=false;
        }
        }
        if(cansubmit){
        if((form.user_resino.value) && (form.user_resino.value.match("[^0-9 +()]")))
        {
                alert("Residence Number accepts only Numbers,() and +");
                form.user_resino.focus();
                cansubmit=false;
        }
        }
        if(cansubmit){
        if((form.user_mobile.value) && (form.user_mobile.value.match("[^0-9 +()]")))
        {
                alert("Mobile Number accepts only Numbers,() and +");
                form.user_mobile.focus();
                cansubmit=false;
        }
        }

        if(cansubmit){
        if (form.user_address.value.match("[<>]"))
        {
        alert('Address should not contain < and >');
        form.user_address.focus();
        cansubmit=false;
        }
        }
        if(cansubmit){
        if ((form.user_address.value) && (form.user_address.value.length >150))
        {
        alert("No of characters exceeds 150 for Address");
        form.user_address.focus();
        cansubmit=false;
        }
        }
        if(cansubmit){
        if(!(EmailValid(form.user_email,"Please enter a valid Email")))
                {
                        cansubmit=false;
                }
        }

        if(cansubmit){
        var bookauthor1 = trim(form.bookauthor1.value);
        if(bookauthor1 == '')
        {
                alert('Author should not be empty');
                form.bookauthor1.focus();
                cansubmit=false;
        }
        }

        if(cansubmit) cansubmit =FirstChar(form.bookauthor1,"First Character in Author should be an alphabet");

        if(cansubmit){
        if (form.bookauthor1.value.match("[!@#$%^&*()]"))
        {
        alert('Author should not contain Special Characters');
        form.bookauthor1.focus();
        cansubmit=false;
        }
        }

        if(cansubmit){
        var booktitle1 = trim(form.booktitle1.value);
        if(booktitle1 == '')
        {
                alert('Title should not be empty');
                form.booktitle1.focus();
                cansubmit=false;
        }
        }
        
        if(cansubmit) cansubmit =FirstChar(form.booktitle1,"First Character in Title should be an alphabet");

        if(cansubmit){
        if (form.booktitle1.value.match("[!@#$%^&*()]"))
        {
        alert('Title should not contain Special Characters');
        form.booktitle1.focus();
        cansubmit=false;
        }
        }

        if(cansubmit){
         var selhowknow=form.howknow.selectedIndex;
         if ((form.howknow.options[selhowknow].value=='00') && (form.howknowtext.value==''))
          {
            alert('Please fill How you know in Textbox');
            form.howknowtext.focus();
            cansubmit=false;
          }
        }

       if(cansubmit){
        if (form.howknowtext.value.match("[!@#$%^&*()]"))
        {
        alert('How know text should not contain Special Characters');
        form.howknowtext.focus();
        cansubmit=false;
        }
        }

       if(cansubmit){
                form.form_action.value='update';
                alert('Thank you for the registration we will get back to you shortly.');
                form.submit();
                return true;
        }
    }
         return cansubmit;
}

