From 41926c10ea2e8496ce4b528262f5047ccbe6f155 Mon Sep 17 00:00:00 2001 From: Bobby Date: Sat, 7 Mar 2026 14:25:54 +0530 Subject: Implement authentication system with login/logout functionality and session management --- middleware/auth.go | 17 +++++++++++++++++ middleware/middleware.go | 14 ++++++++++++++ 2 files changed, 31 insertions(+) create mode 100644 middleware/auth.go create mode 100644 middleware/middleware.go (limited to 'middleware') 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) + } +} -- cgit v1.2.3