(ctx context.Context, userId primitive.ObjectID)
| 160 | } |
| 161 | |
| 162 | func (s *UsersService) createSession(ctx context.Context, userId primitive.ObjectID) (Tokens, error) { |
| 163 | var ( |
| 164 | res Tokens |
| 165 | err error |
| 166 | ) |
| 167 | |
| 168 | res.AccessToken, err = s.tokenManager.NewJWT(userId.Hex(), s.accessTokenTTL) |
| 169 | if err != nil { |
| 170 | return res, err |
| 171 | } |
| 172 | |
| 173 | res.RefreshToken, err = s.tokenManager.NewRefreshToken() |
| 174 | if err != nil { |
| 175 | return res, err |
| 176 | } |
| 177 | |
| 178 | session := domain.Session{ |
| 179 | RefreshToken: res.RefreshToken, |
| 180 | ExpiresAt: time.Now().Add(s.refreshTokenTTL), |
| 181 | } |
| 182 | |
| 183 | err = s.repo.SetSession(ctx, userId, session) |
| 184 | |
| 185 | return res, err |
| 186 | } |
| 187 | |
| 188 | func (s *UsersService) generateSchoolDomain(subdomain string) string { |
| 189 | return fmt.Sprintf("%s.%s", subdomain, s.domain) |
no test coverage detected