changed checkuser logic
parent
0418ad4466
commit
918f05b649
|
|
@ -178,30 +178,59 @@ func GetUserByEmail(c *fiber.Ctx) error {
|
||||||
|
|
||||||
func Checkuser(c *fiber.Ctx) error {
|
func Checkuser(c *fiber.Ctx) error {
|
||||||
|
|
||||||
|
type Checkuser struct {
|
||||||
|
Email string `json:"email"`
|
||||||
|
Type string `json:"type"`
|
||||||
|
}
|
||||||
|
|
||||||
var user models.User
|
var user models.User
|
||||||
|
var usertest models.UserTest
|
||||||
|
var response Checkuser
|
||||||
|
|
||||||
email := c.Params("email")
|
email := c.Params("email")
|
||||||
|
|
||||||
|
response.Email = email
|
||||||
|
|
||||||
|
// Check if user exists
|
||||||
database.DB.Where("email = ?", email).First(&user)
|
database.DB.Where("email = ?", email).First(&user)
|
||||||
|
|
||||||
// if user.ID == 0 {
|
if user.ID == 0 {
|
||||||
// return fiber.ErrNotFound
|
// The user is not found; let's check if it's a test user
|
||||||
// }
|
|
||||||
|
|
||||||
return c.JSON(user)
|
|
||||||
}
|
|
||||||
|
|
||||||
func Checkusertest(c *fiber.Ctx) error {
|
|
||||||
|
|
||||||
var usertest models.UserTest
|
|
||||||
|
|
||||||
email := c.Params("email")
|
|
||||||
|
|
||||||
database.DB.Where("email = ?", email).First(&usertest)
|
database.DB.Where("email = ?", email).First(&usertest)
|
||||||
|
|
||||||
// if user.ID == 0 {
|
if usertest.ID == 0 {
|
||||||
// return fiber.ErrNotFound
|
// The user is not found for eligible tester; let's signalize this
|
||||||
// }
|
response.Type = "T"
|
||||||
|
} else {
|
||||||
|
// The user is found for eligible tester; but let's check if it's test already done
|
||||||
|
response.Type = "ET" // Eligible tester but the test was not done already
|
||||||
|
|
||||||
return c.JSON(usertest)
|
if usertest.Status == "TR" {
|
||||||
|
// The user is found for eligible tester; and the test is done
|
||||||
|
response.Type = "ETR"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
// The user is found; let's signalize this
|
||||||
|
response.Type = "U" // At first sight it's a user
|
||||||
|
|
||||||
|
if user.Channel == "" {
|
||||||
|
// User needs to complete the registration
|
||||||
|
response.Type = "RU"
|
||||||
|
}
|
||||||
|
|
||||||
|
if user.Blocked == "S" {
|
||||||
|
// User is blocked
|
||||||
|
response.Type = "UB"
|
||||||
|
}
|
||||||
|
|
||||||
|
if user.Cancelled == "S" {
|
||||||
|
// User is cancelled
|
||||||
|
response.Type = "UC"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// TODO: Should we insert the user in the database, if it's a tester?
|
||||||
|
|
||||||
|
return c.JSON(response)
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -20,7 +20,6 @@ func Setup(app *fiber.App) {
|
||||||
app.Post("/register", controllers.AddUser)
|
app.Post("/register", controllers.AddUser)
|
||||||
|
|
||||||
app.Get("/checkuser/:email", controllers.Checkuser)
|
app.Get("/checkuser/:email", controllers.Checkuser)
|
||||||
app.Get("/checktsertest/:name", controllers.Checkusertest)
|
|
||||||
|
|
||||||
// Webhooks
|
// Webhooks
|
||||||
app.Post("/on_server_start", controllers.ServerStart)
|
app.Post("/on_server_start", controllers.ServerStart)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue