lishwist/server/rsvp/session.go

56 lines
843 B
Go

package rsvp
import (
"github.com/gorilla/sessions"
)
type Session struct {
inner *sessions.Session
}
func (s *Session) FlashGet() any {
list := s.inner.Flashes()
if len(list) < 1 {
return nil
} else {
return list[0]
}
}
func (s *Session) FlashPeek() any {
flash, ok := s.inner.Values["_flash"]
if !ok {
return nil
}
list := flash.([]any)
if len(list) < 1 {
return nil
} else {
return list[0]
}
}
func (s *Session) FlashSet(value any) {
s.inner.AddFlash(value)
}
func (s *Session) SetID(value string) {
s.inner.ID = value
}
func (s *Session) SetValue(key any, value any) {
s.inner.Values[key] = value
}
func (s *Session) GetValue(key any) any {
return s.inner.Values[key]
}
func (s *Session) ClearValues() {
s.inner.Values = nil
}
func (s *Session) Options() *sessions.Options {
return s.inner.Options
}