aboutsummaryrefslogtreecommitdiff
path: root/middleware
diff options
context:
space:
mode:
authorBobby <[email protected]>2026-03-07 14:25:54 +0530
committerBobby <[email protected]>2026-03-07 14:25:54 +0530
commit41926c10ea2e8496ce4b528262f5047ccbe6f155 (patch)
tree67ff5a27bb50faec368cf7ef38a1b1f2866459dd /middleware
parented2a033d7c08e448f5c6fd035e2de8f51431b597 (diff)
downloaddove-41926c10ea2e8496ce4b528262f5047ccbe6f155.tar.xz
dove-41926c10ea2e8496ce4b528262f5047ccbe6f155.zip
Implement authentication system with login/logout functionality and session management
Diffstat (limited to 'middleware')
-rw-r--r--middleware/auth.go17
-rw-r--r--middleware/middleware.go14
2 files changed, 31 insertions, 0 deletions
diff --git a/middleware/auth.go b/middleware/auth.go
new file mode 100644
index 0000000..008aa2c
--- /dev/null
+++ b/middleware/auth.go
@@ -0,0 +1,17 @@
+package middleware
+
+import (
+ "dove/utils/auth"
+ "dove/utils/shortcuts"
+
+ "github.com/gofiber/fiber/v2"
+)
+
+func authentication(context *fiber.Ctx) error {
+ switch auth.IsAuthenticated(context) {
+ case true:
+ return context.Next()
+ default:
+ return shortcuts.Redirect(context, "auth.login")
+ }
+}
diff --git a/middleware/middleware.go b/middleware/middleware.go
new file mode 100644
index 0000000..dffc109
--- /dev/null
+++ b/middleware/middleware.go
@@ -0,0 +1,14 @@
+package middleware
+
+import (
+ "dove/config"
+
+ "github.com/gofiber/fiber/v2"
+)
+
+func Initialize(application *fiber.App) {
+ switch config.AuthEnabled {
+ case true:
+ application.Use(authentication)
+ }
+}