// Kollar emailadressen är riktig

function isEmailNotValid(address, bAllowEmpty) {
   var temp; 
   var i=0;
   var iAntalSnabelA=0;
   var iAntalW=0;
   var iKontrollAvSnabelA=0;
   var iKontrollAvPunkt=0;
   var sEmail=address;
   var emailFailed  = false;
   var atSym    = address.value.indexOf('@');
   var period   = address.value.lastIndexOf('.');   
   var space    = address.value.indexOf(' ');
   var colon    = address.value.indexOf(':');
   var dubbelPunkt    = address.value.indexOf('..');
   var scansign1 = address.value.indexOf(unescape('%E5'));  //å
   var scansign2 = address.value.indexOf(unescape('%E4'));  //ä
   var scansign3 = address.value.indexOf(unescape('%F6'));  //ö
   var scansign4 = address.value.indexOf(unescape('%C5'));  //Å
   var scansign5 = address.value.indexOf(unescape('%C4'));  //Ä
   var scansign6 = address.value.indexOf(unescape('%D6'));  //Ö
   var scansign7 = address.value.indexOf(unescape('%E6'));  //æ	
   var scansign8 = address.value.indexOf(unescape('%C6'));  //
   var comma    = address.value.indexOf(',');
   var scolon   = address.value.indexOf(';');
   var length   = address.value.length - 1;   // Array is from 0 to length-1
        
   //Kollar att det inte finns mer än en email adress och kollar att den inte börjar på www och att det finns en punkt efter @ tecknet
        for (i=0;i < sEmail.value.length;i++){
            temp=sEmail.value.charAt(i);            
            if(temp=='@'){
                iKontrollAvSnabelA=i;
                iAntalSnabelA++;
            }
            if(temp=='w' && i<3){
                iAntalW++;           
            } 

	    if(temp=='.'){
                iKontrollAvPunkt=i;
            } 	 
        }

        if(iAntalSnabelA>1 || iAntalW>=3 || iKontrollAvPunkt<iKontrollAvSnabelA){
            emailFailed = true;
         }
        
	
   if ((atSym < 1) ||                     // '@' cannot be in first position
       (period <= atSym+1) ||             // Must be atleast one valid char btwn '@' and '.'
       (period == length ) ||             // Must be atleast one valid char after '.'  
       (colon  != -1)      || 
       (scansign1 != -1)   ||
       (scansign2 != -1)   ||
       (scansign3 != -1)   ||
       (scansign4 != -1)   ||
       (scansign5 != -1)   ||
       (scansign6 != -1)   || 
       (scansign7 != -1)   ||
       (scansign8 != -1)   ||
	   (dubbelPunkt != -1)   ||
       (scolon != -1)     ||  
       (comma  != -1)     ||        
       (space  != -1))                    // No empty spaces permitted
   {        
      emailFailed = true;
   }

   if (bAllowEmpty==1)
   {
	   if (address.value.length == 0)	  // Vi tillåter att email är tomt
		{	
		emailFailed = false;
		}
   }
   return emailFailed;
}
