var Validator = {

    init:function()
    {
        if(document.getElementById("registerSubmitBtn"))
        {
            var btn = document.getElementById("registerSubmitBtn");
            btn.onclick = Validator.validateRegisterForm;
        }
    }, 
    
    validateRegisterForm:function()
    {
        var emailPattern =  /^[\w]+(\.[\w]+)*@([\w]+\.)+[a-zA-Z]{2,7}$/;
        
        // Formuläret
        var registerForm = document.getElementById("registerForm");
        
        // Inputfält
        var firstName = registerForm.firstName.value;
        var lastName = registerForm.lastName.value;
        var email = registerForm.email.value;
        var password = registerForm.password.value;
        var password2 = registerForm.password2.value;
        var checkBoxes = registerForm.wantToBeMemberIn;
        
        var errMsg = "";
        var errCount = 1;
        
        // Förnamnet
        if(firstName == "")
        {
            errMsg += errCount + ". Förnamnet saknas.\n";
            errCount += 1;
        }
        
        // Efternamnet
        if(lastName == "")
        {
            errMsg += errCount + ". Efternamnet saknas.\n";
            errCount += 1;
        }
        
        // E-posten
        if(!email.match(emailPattern))
        {
            errMsg += errCount + ". E-postadressen är ogiltig. \n";
            errCount += 1;
        }
        
        // Lösenordet
        if(password != password2 || password == "" || password2 == "")
        {
            errMsg += errCount + ". Lösenordet saknas eller så matchar de inte varandra. \n";
            errCount += 1;
        }
        
        // Checkboxarna
        var isAnyCheckBoxChecked = false;
        for(var i = 0; i < checkBoxes.length; i++)
        {
            if(checkBoxes[i].checked)
            {
                isAnyCheckBoxChecked = true;
            }
        }
        
        if(!isAnyCheckBoxChecked)
        {
            errMsg += errCount + ". Välj om du vill bli medlem i forumet eller communityt.";
            errCount += 1;
        }
        
        // Visa slutligen meddelandet för användaren om det inte är tomt
        if(errMsg != "")
        {
            alert(errMsg);
            return false;
        }
        else
        {
            return true;
        }
    }, 
    
    validateEmail:function(input)
    {
        var emailPattern =  /^[\w]+(\.[\w]+)*@([\w]+\.)+[a-zA-Z]{2,7}$/;
        var emailInput = document.getElementById(input);
        var email = emailInput.value;
        if(!email.match(emailPattern))
        {
            alert("Ange en giltig e-postadress.");
            return false;
        }
        else
        {
            return true;
        }
    }
}