summaryrefslogtreecommitdiff
path: root/router/auth.go
diff options
context:
space:
mode:
Diffstat (limited to 'router/auth.go')
-rw-r--r--router/auth.go13
1 files changed, 11 insertions, 2 deletions
diff --git a/router/auth.go b/router/auth.go
index 728e985..665b84e 100644
--- a/router/auth.go
+++ b/router/auth.go
@@ -3,14 +3,23 @@ package router
import (
"lain/controllers"
"lain/types"
+ "lain/utils/auth"
+ "lain/utils/shortcuts"
"lain/utils/urls"
+
+ "github.com/gofiber/fiber/v2"
)
func init() {
urls.SetNamespace("auth")
- urls.Path(types.GET, "/login", controllers.LoginPage, "login")
- urls.Path(types.GET, "/logout", controllers.Logout, "logout")
+ urls.Path(types.GET, "/login", func(c *fiber.Ctx) error {
+ if auth.IsAuthenticated(c) {
+ return shortcuts.Redirect(c, "mail.inbox")
+ }
+ return controllers.LoginPage(c)
+ }, "login")
+ urls.Path(types.GET, "/logout", controllers.Logout, "logout")
urls.Path(types.POST, "/login", controllers.Login, "login.submit")
}