diff options
author | sanine-a <sanine.not@pm.me> | 2023-05-02 14:20:21 -0500 |
---|---|---|
committer | sanine-a <sanine.not@pm.me> | 2023-05-02 14:20:21 -0500 |
commit | ad6a617c12d9b341be1357dcbb6ab58febe32ee8 (patch) | |
tree | 08fb50ad9ddc17c911ae175c2a62a463d67160de | |
parent | e365e8c2fd4e3a595c696849734236008fc67e1f (diff) |
add TouchSession
-rw-r--r-- | db/db.go | 1 | ||||
-rw-r--r-- | db/session.go | 10 |
2 files changed, 10 insertions, 1 deletions
@@ -50,6 +50,7 @@ type Model interface { CreateSession(user User) (Session, error) DeleteSession(session Session) error + TouchSession(session Session) error CheckSession(session Session) (bool, error) CleanSessions(maxIdle time.Duration) error AllSessions() ([]Session, error) diff --git a/db/session.go b/db/session.go index bddedda..b8365ff 100644 --- a/db/session.go +++ b/db/session.go @@ -73,6 +73,14 @@ func extractSession(s Scanner) (Session, error) { } +func (p *Phlox) TouchSession(session Session) error { + now := time.Now().UTC() + nowStr := now.Format(time.RFC3339) + _, err := p.db.Exec("update sessions set modified=? where sessionid=?;", nowStr, session.Id) + return err +} + + func (p *Phlox) CheckSession(session Session) (bool, error) { row := p.db.QueryRow("select * from sessions where sessionid = ?", session.Id) session, err := extractSession(row) @@ -96,7 +104,7 @@ func (p *Phlox) TouchSession(session Session) error { "update sessions set modified = ? where sessionid = ?;", now, session.Id, ) - return err + return err } |