aboutsummaryrefslogtreecommitdiff
path: root/user
diff options
context:
space:
mode:
Diffstat (limited to 'user')
-rw-r--r--user/user.go2
-rw-r--r--user/validators.go9
2 files changed, 9 insertions, 2 deletions
diff --git a/user/user.go b/user/user.go
index ee36e95..132acb6 100644
--- a/user/user.go
+++ b/user/user.go
@@ -40,7 +40,7 @@ type User struct {
gorm.Model
Username string
Email string
- Password string
+ Password string `json:"-"`
IsVerified bool
}
diff --git a/user/validators.go b/user/validators.go
index 88239c6..647da06 100644
--- a/user/validators.go
+++ b/user/validators.go
@@ -19,6 +19,7 @@ package user
import (
"strings"
+ "net/mail"
e "errors"
"github.com/spf13/viper"
"vidhukant.com/openbills/errors"
@@ -73,9 +74,15 @@ func (u *User) validate() error {
u.IsVerified = false
// TODO: validate username length and stuff
- // TODO: validate if email is valid
var err error
+
+ // validate email
+ _, err = mail.ParseAddress(u.Email)
+ if err != nil {
+ return errors.ErrInvalidEmail
+ }
+
for _, i := range [][]string{{"username", u.Username}, {"email", u.Email}} {
err = validateUserField(i[0], i[1])
if err != nil {