// validates that the entry is formatted as an email address
function isEMailAddr(elem) {
    var str = elem;
    var re = /^[\w-]+(\.[\w-]+)*@([\w-]+\.)+[a-zA-Z]{2,7}$/;
    if (!str.match(re)) {
        //alert("Verify the email address format.");
        return false ;
    } else {
        return true;
    }
}

function validateEmail(cemail)
{	
    email = $(cemail).value ; 
    messageid = cemail+'notvalid';
    if(!isEMailAddr(email))
    {		
        $(messageid).show();
        return false ; 
    }else
    {
        $(messageid).hide();
        return true ;
    }
}

// validate all that has required class 
function validateAll(formname)
{	
    var errcounter = 0 ; 
    var x = $(formname).getInputs();
    x.each(function(myelement){
        myvalue = myelement.value ; 
        myname = myelement.name;
        myid  = myelement.id ; 

        if(myelement.classNames() == 'required'){	
            var myerrormessageid = myname+"needed";
//            console.log(myerrormessageid);
            if(myvalue.blank()){				
                $(myerrormessageid).show();
                errcounter++; 				
            }else{
                $(myerrormessageid).hide();
            }
        }
    });

    if(!validateEmail('email'))
    {
        errcounter++ ;
    }

    // validate check box 
    var checked = false; 
    $(formname).getInputs('checkbox','project[]').each(function(x){
    if(x.checked) checked = true ;
    });
    
    if(!checked){
        errcounter += 1 ;
        $('projectneeded').show(); 
    }

    if(errcounter > 0)
        return false;
    else
        return true ; 
}
