From 7e8730206c5a11a6b8b5a9422ba836b249559110 Mon Sep 17 00:00:00 2001 From: Tim Wundenberg Date: Fri, 27 Sep 2024 11:17:09 +0200 Subject: [PATCH] chore: remove db dependency from handler --- handler/auth.go | 3 +-- service/auth.go | 20 +++++++++++++++++--- 2 files changed, 18 insertions(+), 5 deletions(-) diff --git a/handler/auth.go b/handler/auth.go index e8b3c69..8607f4b 100644 --- a/handler/auth.go +++ b/handler/auth.go @@ -1,7 +1,6 @@ package handler import ( - "me-fit/db" "me-fit/service" "me-fit/utils" "time" @@ -51,7 +50,7 @@ var ( func (handler HandlerAuthImpl) handleSignIn() http.HandlerFunc { return func(w http.ResponseWriter, r *http.Request) { - user, err := utils.WaitMinimumTime(securityWaitDuration, func() (*db.User, error) { + user, err := utils.WaitMinimumTime(securityWaitDuration, func() (*service.User, error) { var email = r.FormValue("email") var password = r.FormValue("password") diff --git a/service/auth.go b/service/auth.go index 4d805ee..fa0eedd 100644 --- a/service/auth.go +++ b/service/auth.go @@ -28,8 +28,22 @@ var ( InvaidEmailOrPassword = errors.New("Invalid email or password") ) +type User struct { + Id uuid.UUID + Email string + EmailVerified bool +} + +func NewUser(user *db.User) *User { + return &User{ + Id: user.Id, + Email: user.Email, + EmailVerified: user.EmailVerified, + } +} + type ServiceAuth interface { - SignIn(email string, password string) (*db.User, error) + SignIn(email string, password string) (*User, error) } type ServiceAuthImpl struct { @@ -42,7 +56,7 @@ func NewServiceAuthImpl(d *sql.DB) *ServiceAuthImpl { } } -func (service ServiceAuthImpl) SignIn(email string, password string) (*db.User, error) { +func (service ServiceAuthImpl) SignIn(email string, password string) (*User, error) { user, err := service.dbAuth.GetUser(email) if err != nil { @@ -59,7 +73,7 @@ func (service ServiceAuthImpl) SignIn(email string, password string) (*db.User, return nil, InvaidEmailOrPassword } - return user, nil + return NewUser(user), nil } func HandleSignInPage(db *sql.DB) http.HandlerFunc {