function blank(label,obj)
{
	if (obj.value=='')
	{
		alert("\'"+label+"\' cannot be left blank");
		obj.focus();
                return true;
	}
	else
		return false;
}
function validateTextField(textObj)
{
	if (textObj.value == "")
	{
		alert(fieldLabelName+" cannot be left blank");
		return false;
	}
	if (validate_field(fieldLabelName, textObj) == false) return false;
	return true;
}

function logout()
{
        window.location = "include/logout.jsp";
}

function checkEmailID(str)
{
              	var at="@"
		var dot="."
		var lat=str.indexOf(at)
		var lstr=str.length
		var ldot=str.indexOf(dot)
                var array   =   str.split(".")      ;
                var domainname  =   array[array.length -1]    ;
                var lParenthesis="(";
                var rParenthesis=")";
                if(str.indexOf(lParenthesis)!=-1)
                {                  alert("Invalid E-mail ID");
                  return false;
                }
                if(str.indexOf(rParenthesis)!=-1)
                {
                  alert("Invalid E-mail ID");
                  return false;
                }

                if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr)
                {
		   alert("Invalid E-mail ID");
		   return false;
		}

		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr)
                {
		    alert("Invalid E-mail ID");
		    return false;
		}

		 if (str.indexOf(at,(lat+1))!=-1)
                {
		    alert("Invalid E-mail ID");
		    return false;
		 }

		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot)
                {
		    alert("Invalid E-mail ID");
		    return false;
		 }

		 if (str.indexOf(dot,(lat+2))==-1)
                {
		    alert("Invalid E-mail ID");
		    return false;
		 }
		
		 if (str.indexOf(" ")!=-1)
                {
		    alert("Invalid E-mail ID");
		    return false;
		 }
                 
                    
                if (domainname.length < 2  )
                {
		    alert("Invalid E-mail ID");
		    return false;
		 }

                 if(!isAlphaNumval(domainname))
                 {
                   alert("Invalid E-mail ID");
		    return false;
                 }   
                 
                var beforeAt   =   str.split(at)[0];
                var aferAt   =   str.split(at)[1];
                if (beforeAt.length != 0  )
                {
                   
                    if ( !(beforeAt.search("[`~!#$^&*()+=:;?/><,|}{\\/\"\']") <  0 ) ) {   
                     
                        alert("Invalid E-mail ID");
		    return false;
                }
                if ( (beforeAt.indexOf('[')!= -1) || (beforeAt.indexOf(']')!= -1) ||  (beforeAt.indexOf('\\')!= -1) )  
                {   
                    alert("Invalid E-mail ID");
                    return false;
                }

}
                if (aferAt.length != 0  )
                {

                    if (aferAt.search("[^A-Za-z0-9. ]") > -1 )
                    {
                         alert("Invalid E-mail ID");
                            return false  ;
                    }


 }
            if( array[array.length -2].length==0 )
                {
                     alert("Invalid E-mail ID");
                        return false    ;
                }
         return true;        
}

function validateField(fieldname,fieldObj, allowedCharArray) 
{

	var type4= null;
		if (allowedCharArray!=undefined)
			type4=allowedCharArray
		else
			type4=new Array('_',' ','-');

	var flag=false;
	var  i =0,j=0;
	var ccode=0;
	for(i=0;i< fieldObj.value.length;i++) 
	{
		flag=false;
		ccode=fieldObj.value.charCodeAt(i);

		if(!isaplpha(ccode)) 
		{
			for(j=0;j < type4.length;j++)
			{
				if (i==0 && (fieldObj.value.charAt(i) == '_' || fieldObj.value.charAt(i) == '-'))
				{ 
					alert(fieldname+" -> Special Character \'"+fieldObj.value.charAt(i)+"\' is not allowed at first position.");

					fieldObj.focus();
					return false;
				}
				if( fieldObj.value.charAt(i) == type4[j])
				flag= true;								
			}
			if(!flag)
			{
				var ii=0;
				var splChars='';
				for (ii=0;ii<type4.length ;ii++)
				{
					if (ii!=0)
						splChars+=","
					splChars+="\'"+type4[ii]+"\'";
				}
				alert(fieldname+" -> Special Character \"" + fieldObj.value.charAt(i) + "\" Not Allowed." + '\n' + ' Only '+splChars+' special character(s) are Allowed.');
				fieldObj.focus();
				return false;	
			}
		}
	}
	if (fieldObj.value.length>40)
	{
		alert(fieldname+" -> More than 40 characters are not allowed.");
		fieldObj.focus();
		return false;
	}

return true;
}

function validate_field(fieldname,fieldObj, isBlankAllowed) 
{
	var type4=new Array('_','-');
	var flag=false;
	var  i =0,j=0;
	var ccode=0;
	for(i=0;i< fieldObj.value.length;i++) 
	{
		flag=false;
		ccode=fieldObj.value.charCodeAt(i);

		if (isBlankAllowed == undefined)
		{
			if (ccode == 32)
			{
				alert(fieldname+' -> Blank character is not allowed.');
				fieldObj.focus();
				return false;
			}
		}

		if(!isaplpha(ccode)) 
		{
			for(j=0;j < type4.length;j++)
			{
				if (i==0 && (fieldObj.value.charAt(i) == '_' || fieldObj.value.charAt(i) == '-'))
				{ 
					alert(fieldname+" -> Special Character \'"+fieldObj.value.charAt(i)+"\' is not allowed at first position.");

					fieldObj.focus();
					return false;
				}
				if( fieldObj.value.charAt(i) == type4[j])
				flag= true;								
			}
			if(!flag)
			{
				var ii=0;
				var splChars='';
				for (ii=0;ii<type4.length ;ii++)
				{
					if (ii!=0)
						splChars+=","
					splChars+="\'"+type4[ii]+"\'";
				}
				alert(fieldname+" -> Special Character \"" + fieldObj.value.charAt(i) + "\" Not Allowed" + '\n' + ' Only '+splChars+' special characters are Allowed.');
				fieldObj.focus();
				return false;	
			}
		}
	}
	if (fieldObj.value.length>40)
	{
		alert(fieldname+" -> More than 40 characters are not allowed.");
		fieldObj.focus();
		return false;
	}

return true;
}

// Function To check Alpha Numeric 
function isaplpha(ccode) 
{
	var retVal=false;
	if ((ccode >=65 ) && (ccode <= 90) )
			retVal=true;		
	if((ccode >=48 ) && (ccode <= 57))
		retVal= true;
	if((ccode >=97 ) && (ccode <= 122))
		retVal= true;
	return retVal;
}

//Function To check Alpha Numeric for the Objects 
function isAlphaNum(objValue,fieldName) {
              var charpos = objValue.value.search("[^A-Za-z0-9]"); 
              var strError;
              if(objValue.value.length > 0 &&  charpos >= 0) 
              { 
                  strError = "Only alpha-numeric characters allowed in " + fieldName + " field"; 
                alert(strError); 
                objValue.focus();
                objValue.select();
                return false; 
               }
return true;
}

//  Version of Alpha Numeric for Value

//Function To check Alpha Numeric for the Objects 
function isAlphaNumval(str) {
              var charpos = str.search("[^A-Za-z0-9]"); 
              var strError;
              if(str.length > 0 &&  charpos >= 0) 
              { 
                return false; 
               }
return true;
}

function isAlpha(objValue,fieldName) {
            var charpos = objValue.value.search("[^A-Za-z. ]"); 
            var strError;
              if(objValue.value.length > 0 &&  charpos >= 0) 
              { 
                  strError = "Only alphabetic characters allowed in " + fieldName + " field"; 
                  alert(strError); 
                  objValue.focus();
                objValue.select();
                return false; 
              }
return true;
}

function getInnerDivObj(obj)
{
	return obj.childNodes[0];
}

function setTopDivBoundry()
{
	var obj=top.frames[4].document.getElementById("topDiv");
	
	minMolWidth=0;
	minMolHeight=0;
	minMolLeft=obj.style.pixelWidth;
	minMolTop=obj.style.pixelHeight;

	calculateMinWidthAndHeight(obj);
	if (minMolWidth==20 && minMolHeight==20) return;

	obj.style.pixelWidth=minMolWidth-minMolLeft;
	obj.style.pixelHeight=minMolHeight-minMolTop;
	minWidth=obj.style.pixelWidth+marginValue*2;
	minHeight=obj.style.pixelHeight+marginValue*2;

	
	decreaseParams(obj,minMolLeft,minMolTop);
	
	var completeWidth=maxWidth+115*2;
	var completeHeight=maxHeight+25*2;
	
	obj.style.pixelLeft=(completeWidth-obj.style.pixelWidth)/2-marginValue;
	obj.style.pixelTop=(completeHeight-obj.style.pixelHeight)/2;
	obj.style.pixelWidth+=marginValue;
	obj.style.pixelHeight+=marginValue;
	if (doesAtomExist(top.frames[4].document.getElementById("topDiv"),'Title') && obj.style.pixelHeight<40)
		obj.style.pixelHeight=45;

	if (doesAtomExist(top.frames[4].document.getElementById("topDiv"),'Image') && obj.style.pixelHeight<60)
		obj.style.pixelHeight=70;

}

function insertRow(obj)
{
	var row = obj.insertRow(obj.rows.length);
	var cell = row.insertCell(row.cells.length);

	var obj1 = document.getElementById("_"+obj.id);
	cell.className = "ECtext";
	cell.innerHTML = obj1.innerHTML;
	obj.flag='y';
}

function removeRow(obj)
{
	var row = obj.deleteRow(1);
	obj.flag='n';
}

function validateTextFields()
{
	var objArray = document.forms[0].elements;
	var ii=0;
	for (ii=0; ii<objArray.length; ii++)
	{
		if (objArray[ii].type == "text")
		{
			if ( objArray[ii].value == "")
			{
				alert(document.forms[0].atomName.value+" Atom name cannot be left blank.");
				objArray[ii].focus();
				return false;
			}
			if ( objArray[ii].value.charAt(0) == " ")
			{
				alert(document.forms[0].atomName.value+" Atom name cannot start with blank character.");
				objArray[ii].focus();
				return false;
			}
			if (checkChars(objArray[ii],"Atom name")== false)	return false;
			//if ( false == validate_field(document.forms[0].atomName.value+" Atom name", objArray[ii])) return false;
		}	
	}
}

function setFocusOnFirstText()
{
	var textObj = getFirstTextObj();
	textObj.focus();
}
function getFirstTextObj()
{
	var objArray = document.forms[0].elements;
	var ii=0;
	for (ii=0; ii<objArray.length; ii++)
	{
		if (objArray[ii].type == "text")
		{
			return objArray[ii];
		}
	}
}
function isFound(objArray)
{
	var ii=0;
	var length = objArray.length;
	if (length <2 ) return false;

	for (ii=0; ii<length-1;ii++)
	{
		var jj=0;
		for (jj=ii+1; jj<length;jj++ )
		{
			if (objArray[ii] == objArray[jj])
			{
				return true;
			}
		}
	}
	return false;
}
function isBlank(fieldName, label)
{
	if (document.forms[0].all[fieldName].value=='')	
	{
		alert("\'"+label+"\' field cannot be left blank." )
		document.forms[0].all[fieldName].focus();
		return true;
	}
	else	return false;

}

function checkDateArray(dateArry)
{
	if (dateArry.length>0)
	{
		var count=0;
		for (count=0; count<dateArry.length; count++)
		{
			if(isBlank(dateArry[count], "Date"))	return false;
			if (false == isValidDate(document.forms[0].all[dateArry[count]]))
			{
				alert('Please enter date in MM/DD/YY format only');
				document.forms[0].all[dateArry[count]].focus();
				return false;
			}
		}
	}
	return true;
}

function checkNumArray(numArray, label)
{
	if (numArray.length>0)
	{
		var count=0;
		for (count=0; count<numArray.length; count++)
		{
			if(isBlank(numArray[count],label))	return false;
			if (isNaN(document.forms[0].all[numArray[count]].value) || parseFloat(document.forms[0].all[numArray[count]].value)<0)
			{
				alert("\'"+label+"\' field should be a positive number only");
				document.forms[0].all[numArray[count]].focus();
				return false;
			}
		}
	}
	return true;
}

function checkChars(obj, fieldName)
{
	var notAllowedChars = new Array('\'','\"','<','>','\\')
	var ii=0;
	var msg='';
	var length=obj.value.length;
	for (ii=0; ii<length; ii++)
	{
		var jj=0;
		for (jj=0; jj<notAllowedChars.length; jj++)
		{
			if (notAllowedChars[jj] == obj.value.charAt(ii))
			{
//				alert(fieldName+" cannot contain "+notAllowedChars[jj]+" character")	
				alert(fieldName+" cannot contain \' \" \','\<\','\>\',\'\\'\ characters")	
				return false;
			}
		}
	}
	return true;
}


// Function to Trim the Value 

    function Trim(TRIM_VALUE){
    if(TRIM_VALUE.length < 1){
        return"";
    }
    TRIM_VALUE = RTrim(TRIM_VALUE);
    TRIM_VALUE = LTrim(TRIM_VALUE);
    if(TRIM_VALUE==""){
        return "";
    }
    else{
    return TRIM_VALUE;
    }
    } //End Function
    // To Remove the Trailing blank spaces
    function RTrim(VALUE){
    var w_space = String.fromCharCode(32);
    var v_length = VALUE.length;
    var strTemp = "";
    if(v_length < 0){
    return"";
    }
    var iTemp = v_length -1;

    while(iTemp > -1){
    if(VALUE.charAt(iTemp) == w_space){
    }
    else{
    strTemp = VALUE.substring(0,iTemp +1);
    break;
    }
    iTemp = iTemp-1;

    } //End While
    return strTemp;

    } //End Function

    //To Remove The Leading Blank spaces
    function LTrim(VALUE){
    var w_space = String.fromCharCode(32);
    if(v_length < 1){
    return"";
    }
    var v_length = VALUE.length;
    var strTemp = "";

    var iTemp = 0;

    while(iTemp < v_length){
    if(VALUE.charAt(iTemp) == w_space){
    }
    else{
    strTemp = VALUE.substring(iTemp,v_length);
    break;
    }
    iTemp = iTemp + 1;
    } //End While
    return strTemp;
    } //End Function

// Function for special Charecter

function isSpecialChar(CHECK_VALUE)
{
    var iChars = "!@#$%^&*()+=-[]\\\';,./{}|\":<>?";
    for (var i = 0; i < CHECK_VALUE.length; i++) {
  	if (iChars.indexOf(CHECK_VALUE.value.charAt(i)) != -1) {
  	alert ("Your username has special characters. \nThese are not allowed.\n Please remove them and try again.");
  	return false;
  	}
  }
  return true   ;
}

function isSpecialChars(CHECK_VALUE,labelname)
{
    var iChars = "!@#$%^&*()+=-[]\\\';,./{}|\":<>?";
    for (var i = 0; i < CHECK_VALUE.value.length; i++) {
        if (iChars.indexOf(CHECK_VALUE.value.charAt(i)) != -1) {
  	alert (labelname + " field has special characters. \nThese are not allowed.\n Please remove them and try again.");
  	return false;
  	}
  }
  return true   ;
}


/**
 * DHTML phone number validation script. 
 */

    // Declaring required variables
    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 = 5;

    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 checkPhone(strPhone){
s=stripCharsInBag(strPhone,validWorldPhoneChars);
return (isInteger(s) && s.length >= minDigitsInIPhoneNumber);
}


function isMaxLength(object,maxchar,label)
{
       object.value=Trim(object.value);
       if (object.value.length > maxchar  )
        {
         alert('The ' + label + ' can not be more than '+ maxchar+' characters')  ;
          object.focus();
          object.select();
          return false  ;
        }
       else
       {
         return true;
       } 

 }
function isNumeric(objValue,fieldName)
 { 
              var charpos = objValue.value.search("[^0-9]"); 
              var strError;
              if(objValue.value.length > 0 &&  charpos >= 0) 
              { 
                 strError = "Only numbers are allowed in " + fieldName + " field"; 
                
                alert(strError );
                //+ "\n [Error character position " + eval(charpos+1)+"]"); 
                objValue.focus();
                objValue.select();
                return false; 
                 }
return true;
}
function disAllowingSingleQuotes(object,label)

{
   object.value=Trim(object.value);
   var lLength=object.value.length;
   var checkString=object.value;
   var iChar="'";
   for(var i=0;i<lLength;i++) 
   { 
     if(iChar.indexOf(checkString.charAt(i))!=(-1))
    {
     alert('Sinle Quotes are not allowed in '+label+'');
     object.focus();
     return false;
    }
    else
    {
    return true;
     } 

   }
  
   
}

function checkEmpty(object,label)
 {
   object.value=Trim(object.value);
   if(object.value.length==0)
   {
    alert(''+label+' field is blank');
    object.focus();
    return false ;
   }
 else

{
  return true;
}
 }

/*
 *  Function For the Showing the tooltip.
*/
function showtip(current,e,msg)
{
  if (document.layers) // Netscape 4.0+
  {
      theString="<DIV CLASS='ttip'>"+msg+"</DIV>"
       document.tooltip.document.write(theString)
       document.tooltip.document.close()
        document.tooltip.left=e.pageX+14
        document.tooltip.top=e.pageY+2
        document.tooltip.visibility="show"
   }
   else
   {
      if(document.getElementById) // Netscape 6.0+ and Internet Explorer 5.0+
  	{
          elm=document.getElementById("tooltip")
          elml=current
          elm.innerHTML=msg
          elm.style.height=elml.style.height
          elm.style.top=parseInt(e.clientY-30) ;
          elm.style.left=parseInt(e.clientX+15)
          elm.style.visibility = "visible"
       }
  }
}

function hidetip()
{
    if (document.layers) // Netscape 4.0+
    {
        document.tooltip.visibility="hidden"
    }else{
    if(document.getElementById) // Netscape 6.0+ and Internet Explorer 5.0+
    {
      elm.style.visibility="hidden"
  }
} 
}

/*********************************************************************************/
 function goElsewhere()
    {
       window.close();
       window.opener.location.replace("./include/sessionexpired.jsp");
    }


/*****************************************************************************/
    function redirect()
    {
        self.setTimeout('goElsewhere()', 60000)
    }


 function checkQuotes(object,label)
  {
    object.value=Trim(object.value);
    var k=object.value;
    var single="'";
    if(k.indexOf(single)!=-1)
      {
           alert("Single Quotes are not allowed in "+label);
           object.focus();
           return false;
      }
     else
      {
           return true;
      }
   
  }
/*
    * This function will replace the all occurence of oldstring with the new String 
*/


function ReplaceString(input,oldstr,newstr) {
// Replace String 
var output = input  ;
while(output.indexOf(oldstr)!=-1){
 output =   output.replace(oldstr,newstr);
}
return output;
}


function ConvertReturn(input) {
// Converts carriage returns 
var output = "";
for (var i = 0; i < input.length; i++) {
if ((input.charCodeAt(i) == 13) && (input.charCodeAt(i + 1) == 10)) {
i++;
output += " ";
} else {
output += input.charAt(i);
   }
}
return output;
}
