// common.js

	function setState()
	{
		document.frm1.Con_Min.value="";
	
	}
	
	function setMin()
	{
		document.frm1.Con_State.value="";
	
	}

	function verify()
	{
		if(document.frm1.subject.value =="" && document.frm1.pub_Place.value ==""  && document.frm1.relevant_State.value=="" && document.frm1.pub_Date.value=="")
		{
			alert("Please Enter one Field To Search ");
				return false;
		}

		if(document.frm1.subject.value !="")
		{
			if(!checkAlpha(document.frm1.subject,1," Subject "))
				return false;
		}		
		if(document.frm1.pub_Place.value !="")
		{
				if(!checkAlpha(document.frm1.pub_Place,1," Place of publication "))
					return false;
		}
		if(document.frm1.relevant_State.value !="")
		{
			if(!checkAlpha1(document.frm1.relevant_State,1," Relevant State "))
				return false;
		}
		
		
		if(document.frm1.pub_Date.value!='' && !checkdate(document.frm1.pub_Date.value)) 
		{
			return false;
		}
		
		
		return true;
	}
	
	function verify1()
	{
		/*
		if (document.frm1.KeyWord.value == "")
		{
			alert("Please fill the Keywords");
			return false;
		}

		*/

		
		if(document.frm1.PUBDATE.value=='')
		{
			alert('Please enter Date of publication ');
			return false;
		}
		if(document.frm1.SUBJECT.value =="")
		{
			alert("Please Enter Subject");
			return false;
		}

		if(document.frm1.PLACEPUB.value =="")
		{
			alert("Please Enter Place of publication");
			return false;
		}
		if(document.frm1.STATE.value =="")
		{
			alert("Please Enter Relevant State");
			return false;
		}
		if(document.frm1.FileName.value =="")
		{
			alert("Please Select Browse to Upload");
			return false;
		}		
		if(document.frm1.SUBJECT.value !="")
		{
			if(!checkAlpha(document.frm1.SUBJECT,1," Subject "))
				return false;
		}		
		if(document.frm1.PLACEPUB.value !="")
		{
				if(!checkAlpha(document.frm1.PLACEPUB,1," Place of publication "))
					return false;
		}
		if(document.frm1.STATE.value !="")
		{
			if(!checkAlpha2(document.frm1.STATE,1," Relevant State "))
				return false;
		}

		
		if(document.frm1.PUBDATE.value!='' && !checkdate(document.frm1.PUBDATE.value)) 
		{
			return false;
		}
		
		
		return true;
	}
	
	
	function isInteger(s)
	{
	
//	alert("Isinteger");
	var i;
    for (i = 0; i < s.length; i++){   
        // Check that current character is number.
        var c = s.charAt(i);
        if (((c < "0") || (c > "9"))) return false;
    }
    // All characters are numbers.
    return true;
}
	
	
	function checkAndPopup1()
	{
		
		//alert("helloooo");
		flagValid = verify1();
		//alert("flag "+flagValid);
		if(flagValid==true)
		{
			return true;
		}
		if(flagValid==false)
		{
			return false;
		}
	}
	
	
	function checkAndPopup()
	{
		
		//alert("helloooo");
		flagValid = verify();
		//alert("flag "+flagValid);
		if(flagValid==true)
		{
			return true;
		}
		if(flagValid==false)
		{
			return false;
		}
	}
	
	function submitForm()
	{
		
		document.frm1.submit();
	}
	
	
	
	// JavaScript Document
	function resetform()
	{
		return(confirm("Are you Sure you want to reset the form values you filled"));
	}
	
		
	function trim(string) {
  		while (string.substring(0,1) == ' ' || string.substring(0,1) == '\r' || string.substring(0,1) == '\n' ) {
    		string = string.substring(1,string.length);
  		}
  		while (string.substring(string.length-1,string.length) == ' ') {
    		string = string.substring(0, string.length-1);
  		}
  
  		while(string.substring(0,1)=='\r')
  			string = string.substring(1,string.length);
  		return string;
	}

function checkUrl(x,i,msg)
{
	
	var alpha="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-:_. /=?&";
	var str=trim(x);
	if(i==1&&(str==""||str==" "))
	{
		alert('Please enter '+msg);
 		
		return false;
	}
	for(j=0;j<str.length;j++)
	{
		ch=str.charAt(j);
		
		if(alpha.indexOf(ch)==-1)
		{
			alert("Please Enter valid "+msg+ch);
			
			return false;
		}
	}		
	return true;
}
function checkAlpha(x,i,msg)
{

	alphabets="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789&-()_#,/.:\t\r\n'&{}()*% [] ";
	var str=trim(x.value);
	if(i==1&&(str==""||str==" "))
	{
		alert("Please enter "+msg);
		return false;
	}

	for(j=0;j<str.length;j++)
	{
	ch=str.charAt(j);
	if(alphabets.indexOf(ch)==-1)
	{
		alert("Please Enter valid "+msg);
		return false;
	}
	}		
	return true;
}

function checkAlpha1(x,i,msg)
{

	alphabets="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789&-()_#,.:'&{}()* [] ";
	var str=trim(x.value);
	if(i==1&&(str==""||str==" "))
	{
		alert("Please enter "+msg);
		return false;
	}

	for(j=0;j<str.length;j++)
	{
	ch=str.charAt(j);
	if(alphabets.indexOf(ch)==-1)
	{
		alert("Please Enter valid "+msg);
		return false;
	}
	}		
	return true;
}


function checkAlpha2(x,i,msg)
{

	alphabets="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
	var str=trim(x.value);
	if(i==1&&(str==""||str==" "))
	{
		alert("Please enter "+msg);
		return false;
	}

	for(j=0;j<str.length;j++)
	{
	ch=str.charAt(j);
	if(alphabets.indexOf(ch)==-1)
	{
		alert("Please Enter valid "+msg);
		return false;
	}
	}		
	return true;
}
	
function checkdate(dt)			
{
		dateStr=dt;
    // dateStr must be of format month day year with either slashes or dashes separating the parts
    var slash1 = dateStr.indexOf("/");
    if (slash1 == -1) { slash1 = dateStr.indexOf("-"); }
    // if no slashes or dashes, invalid date
    if (slash1 == -1) { alert ("Enter a valid date in DD-MM-YYYY format"); return false; }
    var dateDay = dateStr.substring(0, slash1)
    var dateMonthAndYear = dateStr.substring(slash1+1, dateStr.length);
    var slash2 = dateMonthAndYear.indexOf("/");
    if (slash2 == -1) { slash2 = dateMonthAndYear.indexOf("-"); }
    // if not a second slash or dash, invalid date
    if (slash2 == -1) {  alert ("Enter a valid date in DD-MM-YYYY format"); return false; }
    var dateMonth = dateMonthAndYear.substring(0, slash2);
    var dateYear = dateMonthAndYear.substring(slash2+1, dateMonthAndYear.length);
    if ( (dateMonth == "") || (dateDay == "") || (dateYear == "") ) { alert ("Enter a valid date in DD-MM-YYYY format"); return false; }
    // if any non-digits in the month, invalid date
    for (var x=0; x < dateMonth.length; x++) {
        var digit = dateMonth.substring(x, x+1);
        if ((digit < "0") || (digit > "9")) { alert ("Enter a valid date in DD-MM-YYYY format  Month"); return false; }
    }
    // convert the text month to a number
    var numMonth = 0;
    for (var x=0; x < dateMonth.length; x++) {
        digit = dateMonth.substring(x, x+1);
        numMonth *= 10;
        numMonth += parseInt(digit);
    }
    if ((numMonth <= 0) || (numMonth > 12)) { alert ("Enter a valid date in DD-MM-YYYY format  month "+numMonth); return false; }
    // if any non-digits in the day, invalid date
    for (var x=0; x < dateDay.length; x++) {
        digit = dateDay.substring(x, x+1);
        if ((digit < "0") || (digit > "9")) { alert ("Enter a valid date in DD-MM-YYYY format"); return false; }
    }

    // convert the text day to a number
    var numDay = 0;
    for (var x=0; x < dateDay.length; x++) {
        digit = dateDay.substring(x, x+1);
        numDay *= 10;
        numDay += parseInt(digit);
    }
    if ((numDay <= 0) || (numDay > 31)) { alert ("Enter a valid date in DD-MM-YYYY format Day"); return false; }
    // February can't be greater than 29 (leap year calculation comes later)
    if ((numMonth == 2) && (numDay > 29)) { alert ("Enter a valid date in DD-MM-YYYY format Day "); return false; }
    // check for months with only 30 days
    if ((numMonth == 4) || (numMonth == 6) || (numMonth == 9) || (numMonth == 11)) { 
        if (numDay > 30) { alert ("Enter a valid date in DD-MM-YYYY format Day "); return false; } 
    }
    // if any non-digits in the year, invalid date
    for (var x=0; x < dateYear.length; x++) {
        digit = dateYear.substring(x, x+1);
        if ((digit < "0") || (digit > "9")) {alert ("Enter a valid date in DD-MM-YYYY format year"); return false; }
    }
    // convert the text year to a number
    var numYear = 0;
    for (var x=0; x < dateYear.length; x++) {
        digit = dateYear.substring(x, x+1);
        numYear *= 10;
        numYear += parseInt(digit);
    }
    // Year must be a 2-digit year or a 4-digit year
    if ( (dateYear.length != 2) && (dateYear.length != 4) ) {alert ("Enter a valid date in DD-MM-YYYY format year Length"); return false; }
    // if 2-digit year, use 50 as a pivot date
    if ( (numYear < 50) && (dateYear.length == 2) ) { numYear += 2000; }
    if ( (numYear < 100) && (dateYear.length == 2) ) { numYear += 1900; }
    if ((numYear <= 0) || (numYear > 9999)) {alert ("Enter a valid date in DD-MM-YYYY format Year "); return false; }
    // check for leap year if the month and day is Feb 29
    if ((numMonth == 2) && (numDay == 29)) {
        var div4 = numYear % 4;
        var div100 = numYear % 100;
        var div400 = numYear % 400;
        // if not divisible by 4, then not a leap year so Feb 29 is invalid
        if (div4 != 0) {alert ("Enter a valid date in DD-MM-YYYY format Year"); return false; }
        // at this point, year is divisible by 4. So if year is divisible by
        // 100 and not 400, then it's not a leap year so Feb 29 is invalid
        if ((div100 == 0) && (div400 != 0)) {alert ("Enter a valid date in DD-MM-YYYY format"); return false; }
    }
    // date is valid
    return true;
}	

	