From bd4314e977b883c1bffe4f593e187a1c62abbfec Mon Sep 17 00:00:00 2001 From: =Corey Hulen Date: Tue, 5 Jan 2016 11:13:25 -0600 Subject: PLT-1558 adding session length to config file --- api/context.go | 9 ++++++++- api/user.go | 8 ++++---- 2 files changed, 12 insertions(+), 5 deletions(-) (limited to 'api') diff --git a/api/context.go b/api/context.go index a6f9bc1e1..b39f03a7d 100644 --- a/api/context.go +++ b/api/context.go @@ -523,6 +523,13 @@ func GetSession(token string) *model.Session { l4g.Error("Invalid session token=" + token + ", err=" + sessionResult.Err.DetailedError) } else { session = sessionResult.Data.(*model.Session) + + if session.IsExpired() { + return nil + } else { + AddSessionToCache(session) + return session + } } } @@ -553,5 +560,5 @@ func FindMultiSessionForTeamId(r *http.Request, teamId string) (int64, *model.Se } func AddSessionToCache(session *model.Session) { - sessionCache.Add(session.Token, session) + sessionCache.AddWithExpiresInSecs(session.Token, session, int64(*utils.Cfg.ServiceSettings.SessionCacheInMinutes*60)) } diff --git a/api/user.go b/api/user.go index 42a65c934..d4c7fcaf5 100644 --- a/api/user.go +++ b/api/user.go @@ -492,11 +492,11 @@ func Login(c *Context, w http.ResponseWriter, r *http.Request, user *model.User, session := &model.Session{UserId: user.Id, TeamId: user.TeamId, Roles: user.Roles, DeviceId: deviceId, IsOAuth: false} - maxAge := model.SESSION_TIME_WEB_IN_SECS + maxAge := *utils.Cfg.ServiceSettings.SessionLengthWebInDays * 60 * 60 * 24 if len(deviceId) > 0 { - session.SetExpireInDays(model.SESSION_TIME_MOBILE_IN_DAYS) - maxAge = model.SESSION_TIME_MOBILE_IN_SECS + session.SetExpireInDays(*utils.Cfg.ServiceSettings.SessionLengthMobileInDays) + maxAge = *utils.Cfg.ServiceSettings.SessionLengthMobileInDays * 60 * 60 * 24 // A special case where we logout of all other sessions with the same Id if result := <-Srv.Store.Session().GetSessions(user.Id); result.Err != nil { @@ -518,7 +518,7 @@ func Login(c *Context, w http.ResponseWriter, r *http.Request, user *model.User, } } else { - session.SetExpireInDays(model.SESSION_TIME_WEB_IN_DAYS) + session.SetExpireInDays(*utils.Cfg.ServiceSettings.SessionLengthWebInDays) } ua := user_agent.New(r.UserAgent()) -- cgit v1.2.3-1-g7c22