summaryrefslogtreecommitdiff
path: root/router
diff options
context:
space:
mode:
authorBobby <[email protected]>2025-12-23 10:57:04 +0530
committerBobby <[email protected]>2025-12-23 10:57:04 +0530
commit3036abbc4af1e85e3f3d473c9facdeefb94916c7 (patch)
tree149363c254b9a52b85854cb2d32eb95c8cefa542 /router
parentecce99fde86b01efffd1825688ee950f7e7f6b33 (diff)
downloadlain-3036abbc4af1e85e3f3d473c9facdeefb94916c7.tar.xz
lain-3036abbc4af1e85e3f3d473c9facdeefb94916c7.zip
email templates, routes and utils
Diffstat (limited to 'router')
-rw-r--r--router/auth.go13
-rw-r--r--router/base.go10
-rw-r--r--router/mail.go10
3 files changed, 23 insertions, 10 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")
}
diff --git a/router/base.go b/router/base.go
index a5e8e96..ece2df6 100644
--- a/router/base.go
+++ b/router/base.go
@@ -2,12 +2,20 @@ package router
import (
"lain/types"
+ "lain/utils/auth"
"lain/utils/shortcuts"
"lain/utils/urls"
+
+ "github.com/gofiber/fiber/v2"
)
func init() {
urls.SetNamespace("")
- urls.Path(types.GET, "/", shortcuts.RedirectTo("auth.login"), "home")
+ urls.Path(types.GET, "/", func(c *fiber.Ctx) error {
+ if auth.IsAuthenticated(c) {
+ return shortcuts.Redirect(c, "mail.inbox")
+ }
+ return shortcuts.Redirect(c, "auth.login")
+ }, "home")
}
diff --git a/router/mail.go b/router/mail.go
index 8584f05..9076d97 100644
--- a/router/mail.go
+++ b/router/mail.go
@@ -1,19 +1,15 @@
package router
import (
- "lain/session"
+ "lain/controllers"
"lain/types"
"lain/utils/auth"
"lain/utils/urls"
-
- "github.com/gofiber/fiber/v2"
)
func init() {
urls.SetNamespace("mail")
- urls.Path(types.GET, "/inbox", auth.RequireAuthentication(func(c *fiber.Ctx) error {
- email, _ := session.GetSessionEmail(c)
- return c.SendString("Inbox for " + email)
- }), "inbox")
+ urls.Path(types.GET, "/inbox", auth.RequireAuthentication(controllers.Mailbox), "inbox")
+ urls.Path(types.GET, "/*", auth.RequireAuthentication(controllers.Mailbox), "folder")
}