summaryrefslogtreecommitdiff
path: root/session/functions.go
diff options
context:
space:
mode:
Diffstat (limited to 'session/functions.go')
-rw-r--r--session/functions.go36
1 files changed, 36 insertions, 0 deletions
diff --git a/session/functions.go b/session/functions.go
new file mode 100644
index 0000000..589091f
--- /dev/null
+++ b/session/functions.go
@@ -0,0 +1,36 @@
+package session
+
+import "github.com/gofiber/fiber/v2"
+
+func CreateSession(context *fiber.Ctx, email string) error {
+ sess, err := Store.Get(context)
+ if err != nil {
+ return err
+ }
+
+ sess.Set("email", email)
+ return sess.Save()
+}
+
+func DestroySession(context *fiber.Ctx) error {
+ sess, err := Store.Get(context)
+ if err != nil {
+ return err
+ }
+
+ return sess.Destroy()
+}
+
+func GetSessionEmail(context *fiber.Ctx) (string, error) {
+ sess, err := Store.Get(context)
+ if err != nil {
+ return "", err
+ }
+
+ email := sess.Get("email")
+ if emailStr, ok := email.(string); ok {
+ return emailStr, nil
+ }
+
+ return "", nil
+}