From 9f6aac08a8e9a0685a21fbe4ee292cb514485f22 Mon Sep 17 00:00:00 2001 From: Bobby Date: Sun, 15 Jun 2025 00:05:43 +0530 Subject: setting up the imageboard --- session/session.go | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 session/session.go (limited to 'session') diff --git a/session/session.go b/session/session.go new file mode 100644 index 0000000..ed89c5a --- /dev/null +++ b/session/session.go @@ -0,0 +1,37 @@ +package session + +import ( + "imageboard/config" + "log" + + "github.com/gofiber/fiber/v2/middleware/session" + "github.com/gofiber/storage/postgres/v2" +) + +var Store *session.Store + +func init() { + storage := postgres.New(postgres.Config{ + Host: config.Database.Host, + Port: config.Database.Port, + Username: config.Database.Username, + Password: config.Database.Password, + Database: config.Database.DatabaseName, + Table: "sessions", + SSLMode: config.Database.SSLMode, + }) + + Store = session.New(session.Config{ + Storage: storage, + Expiration: config.Session.Expiration, + KeyLookup: "cookie:" + config.Session.CookieName, + CookieName: config.Session.CookieName, + CookieDomain: config.Session.CookieDomain, + CookiePath: config.Session.CookiePath, + CookieSecure: config.Session.CookieSecure, + CookieSameSite: config.Session.CookieSameSite, + CookieHTTPOnly: true, + }) + + log.Println("Session store initialized successfully") +} -- cgit v1.2.3