diff --git a/src/main/java/org/s4s/gui/views/ContactView.java b/src/main/java/org/s4s/gui/views/ContactView.java index 3cd89d986ece2ffd75b33d50f3689248ae221509..8f10ba825e9dd2f0227c9f7a3f07dd2a81544c7a 100644 --- a/src/main/java/org/s4s/gui/views/ContactView.java +++ b/src/main/java/org/s4s/gui/views/ContactView.java @@ -10,6 +10,7 @@ import com.vaadin.ui.Panel; import com.vaadin.ui.TextArea; import com.vaadin.ui.TextField; import com.vaadin.ui.VerticalLayout; +import org.s4s.services.util.EmailValidator; /** * Created by Max-Desktop on 16.05.2017. @@ -25,6 +26,7 @@ public class ContactView extends TemplateView{ setMargin(true); final TextField tfEMail = new TextField("E-Mail"); + tfEMail.addValidator(new EmailValidator()); final TextField tfBetreff = new TextField("Betreff"); final TextArea taNachricht = new TextArea("Ihr Anliegen"); final Button bSenden = new Button("Senden", FontAwesome.SEND); diff --git a/src/main/java/org/s4s/process/control/ContactControl.java b/src/main/java/org/s4s/process/control/ContactControl.java new file mode 100644 index 0000000000000000000000000000000000000000..b53a22b08a9310215d6d30980abdc72ad7b09330 --- /dev/null +++ b/src/main/java/org/s4s/process/control/ContactControl.java @@ -0,0 +1,14 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ +package org.s4s.process.control; + +/** + * + * @author synot + */ +public class ContactControl { + +} diff --git a/src/main/java/org/s4s/services/util/EmailValidator.java b/src/main/java/org/s4s/services/util/EmailValidator.java new file mode 100644 index 0000000000000000000000000000000000000000..921ff34648451068150b4a5b3f9f7ea9041ded2c --- /dev/null +++ b/src/main/java/org/s4s/services/util/EmailValidator.java @@ -0,0 +1,41 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ +package org.s4s.services.util; + +import com.vaadin.data.Validator; + +/** + * + * @author synot + */ +public class EmailValidator implements Validator { + /** + * Tests if the given value is valid + * @param value the value to test + */ + public boolean isValid(Object value) { + try { + validate(value); + } catch (Validator.InvalidValueException ive) { + return false; + } + return true; + } + + /** + * Validates + * @param value the value to test + */ + public void validate(Object value) throws Validator.InvalidValueException { + // Here value is a String containing what *should* be an e-mail address + if (value instanceof String) { + String email = (String)value; + // Match the email string against a (simplistic) regular expression matching e-mail addresses + if (!email.matches("^[_\\w\\.\\-]+@[\\w\\.-]+\\.[a-z]{2,6}$")) + throw new Validator.InvalidValueException("The e-mail address provided is not valid!"); + } + } +} diff --git a/target/classes/README b/target/classes/README deleted file mode 100644 index faabc74ad584efb791e2105479a58e3f06cc33c9..0000000000000000000000000000000000000000 --- a/target/classes/README +++ /dev/null @@ -1 +0,0 @@ -Please add your static resources here