mirror of
				https://github.com/khairul169/garage-webui.git
				synced 2025-10-31 07:09:32 +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())
 | |
| }
 |