mirror of
https://github.com/khairul169/garage-webui.git
synced 2025-04-28 14:59:31 +07:00
34 lines
652 B
Go
34 lines
652 B
Go
package utils
|
|
|
|
import (
|
|
"net/http"
|
|
"time"
|
|
|
|
"github.com/alexedwards/scs/v2"
|
|
)
|
|
|
|
type SessionManager struct {
|
|
mgr *scs.SessionManager
|
|
}
|
|
|
|
var Session *SessionManager
|
|
|
|
func InitSessionManager() *scs.SessionManager {
|
|
sessMgr := scs.New()
|
|
sessMgr.Lifetime = 24 * time.Hour
|
|
Session = &SessionManager{mgr: sessMgr}
|
|
return sessMgr
|
|
}
|
|
|
|
func (s *SessionManager) Get(r *http.Request, key string) interface{} {
|
|
return s.mgr.Get(r.Context(), key)
|
|
}
|
|
|
|
func (s *SessionManager) Set(r *http.Request, key string, value interface{}) {
|
|
s.mgr.Put(r.Context(), key, value)
|
|
}
|
|
|
|
func (s *SessionManager) Clear(r *http.Request) error {
|
|
return s.mgr.Clear(r.Context())
|
|
}
|