/* JS Document */
/* LSAT MODIFIED DATE : 1/4/2010 
   MODIFIED BY : krishna munugoti
*/

var MAX_MESSAGE_CHARACTERS = 800;
        var chkDot = true;
		var usEmail = true;
		function checkFields() {
		   if (!isValidEmail(document.emailAFriend.toemail.value)) {
			   document.emailAFriend.toemail.focus();
                return false;
          }					 
          if (!isValidEmail(document.emailAFriend.fromemail.value)) {
              document.emailAFriend.fromemail.focus();
              return false;
          }
		  if (document.emailAFriend.bccemail.value != "") {
            if (!isValidEmail(document.emailAFriend.bccemail.value)) {
              document.emailAFriend.bccemail.focus();
              return false;
            }
          }		
          if (document.emailAFriend.message.value.length > MAX_MESSAGE_CHARACTERS) {
            alert("Please limit your message to 800 characters or less");
            document.emailAFriend.message.focus();
            return false;
           }	
          if (document.emailAFriend.message.value != "") {
             if(scriptCheck(document.emailAFriend.message.value)==false) {
			   document.emailAFriend.message.focus();
               return false;
			 }
          }	
          if (document.emailAFriend.subject.disabled == true) {
              document.emailAFriend.subject.disabled = false;
             }
        }
        function isValidEmail(eAddr) {
          var result    = false;
          if ((eAddr=="")) {
             alert("Please enter a valid EMAIL ADDRESS then re-submit this form.Example: yourname@yourisp.com");
             return result; 
          }   
          if ((eAddr !="")) {
		    if(scriptCheck(eAddr)==false) {
		      return false;
		    }
           }  		         
          for (var i=0;i<eAddr.length;i++) {
            if ((eAddr.charAt(i)==" ") || (eAddr.charAt(i)=="\t")) {
              alert("You have space or a tab character in Email Address. The format is 'u@d.s'");
              return result;         
             }
           } 
           var  eAddr2 =  eAddr;
		   var arrayOfStrings = eAddr2.split(",");
		   if (arrayOfStrings.length > 1) {
			for (var i=0; i < arrayOfStrings.length; i++) 
			{     
				result = validEmail(arrayOfStrings[i]);
				if (!result) return result; 
			  }
			} else {
			 result = validEmail(eAddr);
			}		
			return result; 
        }
  	function validEmail(eAddr)  { 
      var lenSuffix = (usEmail) ? 2 : 1;
      var result = false;
      var ndxAt = ndxDot = 0;
      if ((eAddr.indexOf('@') == -1) || (eAddr.indexOf('.') == -1))  {
   		alert("Please enter a valid EMAIL ADDRESS then re-submit this form.Example: yourname@yourisp.com");
		return result;
        }
    	var ati = 0;     
        for(var i=0;i<eAddr.length;i++) {
            if ((eAddr.charAt(i)=="@")) {
            ati = ati + 1;
            if (ati == 2) {
              alert("Please use only one @ in Email Address. The format is 'u@d.s'");
              return result; 
              }          
            }
           } 
        ndxAt  = eAddr.indexOf("@");
        ndxDot = eAddr.indexOf(".") ;
        ndxDot = eAddr.lastIndexOf(".") ;
        if (ndxAt <= 0)
      	  alert("You have less than 1 character as a user name. The format is 'u@d.s'");      	
        else if ((ndxDot < 0) || (ndxAt < 0))
          alert("Your email address lacks '.' or '@'. The format is 'you@d.s'"); 
        else if (chkDot && (ndxDot < ndxAt) )
          alert("You did not enter a 'dot' after the '@'.The format is 'you@d.s'");
        else if ( (ndxDot - 1) <= ndxAt)
          alert("You have less than 1 character as a domain name. The format is 'you@d.s'");
        else if (eAddr.length < ndxDot + lenSuffix) 
          alert("You have less than 1 character as a domain suffix. The format is 'you@d.s'");
        else 
          result=true; 
       return result; 
    }
    function resetFormFields() {
        var fldsToReset = new Array("toemail", "bccemail", "fromemail", "message");
         document.emailAFriend.toemail.value   = "";
         document.emailAFriend.bccemail.value  = "";
         document.emailAFriend.fromemail.value = "";
         document.emailAFriend.message.value   = "";
         document.emailAFriend.copyme.checked  = false;
      }

    function updateWordCount() {
          var curlen      = document.emailAFriend.message.value.length;
          var characters  = curlen + " " + (curlen > 1 ? "characters" : "character");
          document.getElementById("currCnt").style.fontWeight = "bold";
          document.getElementById("currCnt").innerHTML = characters;
        }
	function scriptCheck(strval) {
	  var result = false;
	  if(strval.match(/<script/gi)) alert('No scripting allowed.');
	 	else if(strval.match(/<a[^>]*javascript\w*.*>/gi)) alert('No scripting allowed.');
	 else 
          result=true; 
	 return result;
	 }
