whitespace = "\t \n\r";
function isEmptyString(s)
{
    var i;
	if((s == null) || (s.length == 0)) return true;
	for(i=0;i < s.length;i++)
	{
		var currchar = s.charAt(i);
		if(whitespace.indexOf(currchar) == -1) return false;
	}
	return true;
}
function chksplChar(str)
{	
	
	var spchar, getChar, SpecialChar;	
	spchar="`()(\\~!^&*+\"|%:=,<>#$1234567890";
	getChar='Empty';
	SpecialChar='No';
	var spchars =" ` ( )  \\ ~ ! ^ & * + \" | : =  , < > # $ "; 
	for(var i=0;i <str.length;i++)
	{
		for(var j=0; j<spchar.length; j++)
		{	
			if(str.charAt(i)== spchar.charAt(j))
			{			
				
				SpecialChar='Yes';
				break;
			}
			
		}		
	}
	if (SpecialChar == 'Yes')
	{
	
		return true;
	}
	else
	{
		return false;
	}
}
function isSpcChar(str)
{	
	
	var spchar, getChar, SpecialChar;	
	spchar="`()(\\~!^&*+\"|%=,<>#$abcdefghijklmnoipqrstuvwxyz";
	getChar='Empty';
	SpecialChar='No';
	var spchars =" ` ( )  \\ ~ ! ^ & * + \" | : =  , < > # $ "; 
	for(var i=0;i <str.length;i++)
	{
		for(var j=0; j<spchar.length; j++)
		{	
			if(str.charAt(i)== spchar.charAt(j))
			{			
				
				SpecialChar='Yes';
				break;
			}
			
		}		
	}
	if (SpecialChar == 'Yes')
	{
	
		return true;
	}
	else
	{
		return false;
	}
}



function chkphoneChar(str)
{	
	
	var spchar, getChar, SpecialChar;	
	spchar="`()(\\~!^&*\"|%:=,<>#@$abcdefghijklmnopqrstuvwxyz";
	getChar='Empty';
	SpecialChar='No';
	var spchars =" ` ( )  \\ ~ ! ^ & * + \" | : =  , < > # $ "; 
	for(var i=0;i <str.length;i++)
	{
		for(var j=0; j<spchar.length; j++)
		{	
			if(str.charAt(i)== spchar.charAt(j))
			{			
				
				SpecialChar='Yes';
				break;
			}
			
		}		
	}
	if (SpecialChar == 'Yes')
	{
	
		return true;
	}
	else
	{
		return false;
	}
}
All_numbers = "1234567890";
function isAnyNumber_Check(s)
{
    var i;
	for(i=0;i < s.length;i++)
	{
		var currchar = s.charAt(i);
		if(All_numbers.indexOf(currchar) != -1) return true;
	}
	return false;
}


full_numbers = "1234567890";
function isfullNumber_Check(s)
{
    var i;
	all_n=0;
	for(i=0;i < s.length;i++)
	{
		var currchar = s.charAt(i);
		if(full_numbers.indexOf(currchar) != -1) 
			all_n++;
	}
	if(all_n == s.length)
		return true;
	else
	return false;
}


function isSplChar(str)
{	
	
	var spchar, getChar, SpecialChar;	
	spchar="`()(\\~!^&*+\"|%:=,<>#$ ";
	getChar='Empty';
	SpecialChar='No';
	var spchars =" ` ( )  \\ ~ ! ^ & * + \" | : =  , < > # $ "; 
	for(var i=0;i <str.length;i++)
	{
		for(var j=0; j<spchar.length; j++)
		{	
			if(str.charAt(i)== spchar.charAt(j))
			{			
				
				SpecialChar='Yes';
				break;
			}
			
		}		
	}
	if (SpecialChar == 'Yes')
	{
	
		return true;
	}
	else
	{
		return false;
	}
}

function isNotNumeric(s)
{
	if(isNaN(s))
	{
		return(true);
	}
	return(false);
}


function isEmail(sText)
{
   var ValidChars = "@";
   var Char;
   var j=0;
	
	if(isSplChar(sText))
	{
		return false;
	}
   
//chk for @
   for (i = 0; i < sText.length; i++) 
      { 
      Char = sText.charAt(i); 
	  
      if (ValidChars.indexOf(Char) != -1) 
         {
		 var j=1;
  	     }
         
      }
	  if(j==0)
	  {
		  return false;
	  }
	  j=0;
	  
   for (i = 0; i < sText.length; i++) 
      { 
      Char = sText.charAt(i); 
	  if (ValidChars.indexOf(Char) != -1) 
         {
		    j=j+1;
		 
		  if ( j >1)
			 {
			 
 			 return false;
			}
         }
      }

	var af_at= sText. indexOf('@');

	var dot_st=sText.substring(0,af_at);

	 if(isfullNumber_Check(dot_st))
	 {
		 return false;
	 }


	  
	var af_at= sText. indexOf('@');

	var dot_st=sText.substring(af_at+1);

	
	
	var af_at1= dot_st. indexOf('.');

	var dot_st1=dot_st.substring(0,af_at1);
	 	
	 
	 if(isfullNumber_Check(dot_st1))
	 {
		 return false;
	 }
	  

   ValidChars = ".";
   Char="";
   j=0;
   for (i = 0; i < dot_st.length; i++) 
      { 
      Char = dot_st.charAt(i); 
	  
      if (ValidChars.indexOf(Char) != -1) 
         {
		
		  j=j+1;
		 
		  if ( j >2)
			 {
			  
			return false;
			
			 }
         }
      }
	  if(j==0)
	  {return false;
	  }

  	var af_dot= dot_st.indexOf('.');
	var dot_st=dot_st.substring(af_dot+1);

	if(isfullNumber_Check(dot_st))
	 {
		 return false;
	 }
  
	
	if(dot_st.length < 2)
	return false;
	
	var af_dot= dot_st.indexOf('.');
if(af_dot > 0 )
{
	
	var dot_st5=dot_st.substring(0,af_dot);
	if(isfullNumber_Check(dot_st5))
	 {
		 return false;
	 }

	var af_dot1= dot_st.indexOf('.');
	
	if(af_dot1 > 0)
	{
	 dot_st2=dot_st.substring(af_dot1+1);

	if(isfullNumber_Check(dot_st2))
	 {
		 return false;
	 }
	}

	if(dot_st.length < 2)
	return false;
}
   return true;
}

///----------------------Phone number ------------------------
var digits = "0123456789";
// non-digit characters which are allowed in phone numbers
var phoneNumberDelimiters = "()- ";
// characters which are allowed in international phone numbers
// (a leading + is OK)
var validWorldPhoneChars = phoneNumberDelimiters + "+";
// Minimum no of digits in an international phone no.
var minDigitsInIPhoneNumber = 10;

function isInteger(s)
{   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 stripCharsInBag(s, bag)
{   var i;
    var returnString = "";
    // Search through string's characters one by one.
    // If character is not in bag, append to returnString.
    for (i = 0; i < s.length; i++)
    {   
        // Check that current character isn't whitespace.
        var c = s.charAt(i);
        if (bag.indexOf(c) == -1) returnString += c;
    }
    return returnString;
}

function checkInternationalPhone(strPhone){
s=stripCharsInBag(strPhone,validWorldPhoneChars);
return (isInteger(s) && s.length >= minDigitsInIPhoneNumber);
}

///----------------------End Validation------------

function DonloadWindow(my_url)
{ 
	var My_Download_Open = window.open(my_url,"My_Download","toolbar=0,location=0,directories=0,status=0,menubar=1,scrollbars=1,resize=no,copyhistory=0,width=627,height=375")
	My_Download_Open.focus();
	My_Download_Open.moveTo(85,50);
}

function confship()
{
	var fl = 0;
	for(i = 0; i < (document.frm_1.elements.length); i++)
	{
		if((document.frm_1.elements[i].type=="checkbox") && (document.frm_1.elements[i].checked==true))
		{
			fl = 1;
			break;
		}
	}
	if(fl == 1)
	{
		if(confirm("Are you sure you want to Implement?"))
		{
			fl = 1;
		}
		else
		{
			fl = 0;
		}
	}
	else
	{
		alert("Nothing to Implement.");
		fl = 0;
	}
	if(fl == 1)
	{
		return true;
	}
	else
	{
		return false;
	}
}


function confdel()
{
	var fl = 0;
	for(i = 0; i < (document.frm_1.elements.length); i++)
	{
		if((document.frm_1.elements[i].type=="checkbox") && (document.frm_1.elements[i].checked==true))
		{
			fl = 1;
			break;
		}
	}
	if(fl == 1)
	{
		if(confirm("Records related will also get Deleted, Are you sure you want to Delete?"))
		{
			fl = 1;
		}
		else
		{
			fl = 0;
		}
	}
	else
	{
		alert("Nothing to Delete.");
		fl = 0;
	}
	if(fl == 1)
	{
		return true;
	}
	else
	{
		return false;
	}
}


jobfiles = new Array(".doc");
function Allowed_Resume_Files(File_Value)
{
	allowSubmit = false;
	if (!File_Value)
	{
		return true;
	}
	while (File_Value.indexOf("\\") != -1)
	{
		File_Value = File_Value.slice(File_Value.indexOf("\\") + 1);
	}
	ext = File_Value.slice(File_Value.indexOf(".")).toLowerCase();
	for (var i = 0; i < jobfiles.length; i++)
	{
		if (jobfiles[i] == ext)
		{
			allowSubmit = true;
			break;
		}
	}
	if (allowSubmit)
	{
		return true;
	}
	else
	{
		return false;
	}
}


extArray = new Array(".gif",".jpg",".jpeg",".jpe");
function Allowed_Uploaded_Files(File_Value)
{
	allowSubmit = false;
	if (!File_Value)
	{
		return true;
	}
	while (File_Value.indexOf("\\") != -1)
	{
		File_Value = File_Value.slice(File_Value.indexOf("\\") + 1);
	}
	ext = File_Value.slice(File_Value.indexOf(".")).toLowerCase();
	for (var i = 0; i < extArray.length; i++)
	{
		if (extArray[i] == ext)
		{
			allowSubmit = true;
			break;
		}
	}
	if (allowSubmit)
	{
		return true;
	}
	else
	{
		return false;
	}
}
function isDate(dateStr) {
	
var datePat = /^(\d{1,2})(\/|-)(\d{1,2})(\/|-)(\d{4})$/;
var matchArray = dateStr.match(datePat); // is the format ok?


day = matchArray[1]; // p@rse date into variables
month = matchArray[3];
year = matchArray[5];

if (month < 1 || month > 12) { // check month range
alert("Month must be between 1 and 12.");
return false;
}

if (day < 1 || day > 31) {
alert("Day must be between 1 and 31.");
return false;
}

if ((month==4 || month==6 || month==9 || month==11) && day==31) {
alert("Month "+month+" doesn`t have 31 days!");
return false;
}

if (month == 2) { // check for february 29th
var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
if (day > 29 || (day==29 && !isleap)) {
alert("February " + year + " doesn`t have " + day + " days!");
return false;
}
}
return true; // date is valid
}

