Handle Google OAuth2 error on callback

This commit is contained in:
2024-05-07 20:28:22 +07:00
parent 3e3e95bef4
commit d166628345
7 changed files with 88 additions and 12 deletions

View File

@ -31,6 +31,7 @@ const (
type Database interface {
IsUserRegistered(email string, username string) bool
IsEmailRegistered(email string) bool
CreateUser(user *models.User) error
GetUser(email string) (*models.User, error)
@ -149,6 +150,18 @@ func (db *mySQLdb) IsUserRegistered(email string, username string) bool {
return true
}
func (db *mySQLdb) IsEmailRegistered(email string) bool {
var data models.User
err := db.DB.Table("users").Where("email = ? ", email).First(&data).Error
if err != nil {
if errors.Is(err, gorm.ErrRecordNotFound) {
return false
}
return true
}
return true
}
func (db *mySQLdb) CreateUser(user *models.User) error {
err := db.DB.Create(user).Error
if err != nil {
@ -240,6 +253,18 @@ func (db *postgresDB) IsUserRegistered(email string, username string) bool {
return true
}
func (db *postgresDB) IsEmailRegistered(email string) bool {
var data models.User
err := db.DB.Table("users").Where("email = $1 ", email).First(&data).Error
if err != nil {
if errors.Is(err, gorm.ErrRecordNotFound) {
return false
}
return true
}
return true
}
func (db *postgresDB) CreateUser(user *models.User) error {
err := db.DB.Create(user).Error
if err != nil {