aboutsummaryrefslogtreecommitdiffhomepage
path: root/ui/session
diff options
context:
space:
mode:
authorGravatar Frédéric Guillot <fred@miniflux.net>2018-09-03 14:26:40 -0700
committerGravatar Frédéric Guillot <fred@miniflux.net>2018-09-03 14:26:40 -0700
commiteee1f3190355224eef63a4dcdef8c36eb3ca3738 (patch)
tree009b7ca67b96d9be473d8ddf2c8c95f22a6749d1 /ui/session
parent88e81d4d800ff6433518522954197d75203a25c2 (diff)
Refactor HTTP context handling
Diffstat (limited to 'ui/session')
-rw-r--r--ui/session/session.go31
1 files changed, 14 insertions, 17 deletions
diff --git a/ui/session/session.go b/ui/session/session.go
index f6a35c2..2351866 100644
--- a/ui/session/session.go
+++ b/ui/session/session.go
@@ -6,67 +6,64 @@ package session // import "miniflux.app/ui/session"
import (
"miniflux.app/crypto"
- "miniflux.app/http/context"
"miniflux.app/storage"
)
// Session handles session data.
type Session struct {
- store *storage.Storage
- ctx *context.Context
+ store *storage.Storage
+ sessionID string
}
// NewOAuth2State generates a new OAuth2 state and stores the value into the database.
func (s *Session) NewOAuth2State() string {
state := crypto.GenerateRandomString(32)
- s.store.UpdateSessionField(s.ctx.SessionID(), "oauth2_state", state)
+ s.store.UpdateSessionField(s.sessionID, "oauth2_state", state)
return state
}
// NewFlashMessage creates a new flash message.
func (s *Session) NewFlashMessage(message string) {
- s.store.UpdateSessionField(s.ctx.SessionID(), "flash_message", message)
+ s.store.UpdateSessionField(s.sessionID, "flash_message", message)
}
// FlashMessage returns the current flash message if any.
-func (s *Session) FlashMessage() string {
- message := s.ctx.FlashMessage()
+func (s *Session) FlashMessage(message string) string {
if message != "" {
- s.store.UpdateSessionField(s.ctx.SessionID(), "flash_message", "")
+ s.store.UpdateSessionField(s.sessionID, "flash_message", "")
}
return message
}
// NewFlashErrorMessage creates a new flash error message.
func (s *Session) NewFlashErrorMessage(message string) {
- s.store.UpdateSessionField(s.ctx.SessionID(), "flash_error_message", message)
+ s.store.UpdateSessionField(s.sessionID, "flash_error_message", message)
}
// FlashErrorMessage returns the last flash error message if any.
-func (s *Session) FlashErrorMessage() string {
- message := s.ctx.FlashErrorMessage()
+func (s *Session) FlashErrorMessage(message string) string {
if message != "" {
- s.store.UpdateSessionField(s.ctx.SessionID(), "flash_error_message", "")
+ s.store.UpdateSessionField(s.sessionID, "flash_error_message", "")
}
return message
}
// SetLanguage updates the language field in session.
func (s *Session) SetLanguage(language string) {
- s.store.UpdateSessionField(s.ctx.SessionID(), "language", language)
+ s.store.UpdateSessionField(s.sessionID, "language", language)
}
// SetTheme updates the theme field in session.
func (s *Session) SetTheme(theme string) {
- s.store.UpdateSessionField(s.ctx.SessionID(), "theme", theme)
+ s.store.UpdateSessionField(s.sessionID, "theme", theme)
}
// SetPocketRequestToken updates Pocket Request Token.
func (s *Session) SetPocketRequestToken(requestToken string) {
- s.store.UpdateSessionField(s.ctx.SessionID(), "pocket_request_token", requestToken)
+ s.store.UpdateSessionField(s.sessionID, "pocket_request_token", requestToken)
}
// New returns a new session handler.
-func New(store *storage.Storage, ctx *context.Context) *Session {
- return &Session{store, ctx}
+func New(store *storage.Storage, sessionID string) *Session {
+ return &Session{store, sessionID}
}