Raw
 1package storage
 2
 3import (
 4	"context"
 5	"time"
 6)
 7
 8func (s *Store) RecordLogin(ctx context.Context, userID string, at time.Time) error {
 9	const operation = "record login"
10	if err := s.checkOpen(operation); err != nil {
11		return err
12	}
13	result, err := s.sql.ExecContext(ctx, `UPDATE users SET last_login_at = ? WHERE id = ?`, timeToInt(at), userID)
14	if err != nil {
15		return classify(operation, err)
16	}
17	return requireChanged(operation, result)
18}