This commit is contained in:
@@ -160,11 +160,11 @@ func (r *Repository) Login(login, password string) (*LoginResponse, error) {
|
||||
func (r *Repository) GetToken(token string) (*Tokens, error) {
|
||||
var t Tokens
|
||||
err := r.DB.QueryRow(
|
||||
`SELECT id, name, last_name, login, token, permission_view, permission_manage_agent, permission_admin
|
||||
`SELECT id, name, last_name, login, token, permission_view, permission_manage_agent, permission_admin, is_active
|
||||
FROM tokens WHERE token = ?`,
|
||||
token,
|
||||
).Scan(&t.ID, &t.Name, &t.LastName, &t.Login, &t.Token,
|
||||
&t.PermissionView, &t.PermissionManage, &t.PermissionAdmin)
|
||||
&t.PermissionView, &t.PermissionManage, &t.PermissionAdmin, &t.IsActive)
|
||||
|
||||
if err != nil {
|
||||
if errors.Is(err, sql.ErrNoRows) {
|
||||
@@ -178,7 +178,7 @@ func (r *Repository) GetToken(token string) (*Tokens, error) {
|
||||
// ListTokens returns all users without password and token.
|
||||
func (r *Repository) ListTokens() ([]Tokens, error) {
|
||||
rows, err := r.DB.Query(
|
||||
`SELECT id, name, last_name, login, permission_view, permission_manage_agent, permission_admin
|
||||
`SELECT id, name, last_name, login, permission_view, permission_manage_agent, permission_admin, is_active
|
||||
FROM tokens`,
|
||||
)
|
||||
if err != nil {
|
||||
@@ -190,7 +190,7 @@ func (r *Repository) ListTokens() ([]Tokens, error) {
|
||||
for rows.Next() {
|
||||
var t Tokens
|
||||
if err := rows.Scan(&t.ID, &t.Name, &t.LastName, &t.Login,
|
||||
&t.PermissionView, &t.PermissionManage, &t.PermissionAdmin); err != nil {
|
||||
&t.PermissionView, &t.PermissionManage, &t.PermissionAdmin, &t.IsActive); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
tokens = append(tokens, t)
|
||||
@@ -344,12 +344,13 @@ func (r *Repository) ActivateUserByLogin(login string) error {
|
||||
login,
|
||||
)
|
||||
if err != nil {
|
||||
return err
|
||||
return fmt.Errorf("activate exec: %w", err)
|
||||
}
|
||||
affected, err := result.RowsAffected()
|
||||
if err != nil {
|
||||
return err
|
||||
return fmt.Errorf("rows affected: %w", err)
|
||||
}
|
||||
log.Printf("[activate] login=%s affected=%d", login, affected)
|
||||
if affected == 0 {
|
||||
return ErrNotFound
|
||||
}
|
||||
|
||||
@@ -3,6 +3,7 @@ package storage
|
||||
import (
|
||||
"database/sql"
|
||||
"fmt"
|
||||
"log"
|
||||
"strings"
|
||||
|
||||
_ "modernc.org/sqlite"
|
||||
@@ -37,7 +38,11 @@ func Open(path string) (*sql.DB, error) {
|
||||
}
|
||||
|
||||
// Migration: add is_active column if it doesn't exist
|
||||
_, _ = db.Exec(AddIsActiveColumn)
|
||||
if _, err := db.Exec(AddIsActiveColumn); err != nil {
|
||||
log.Printf("[sqlite] WARNING: failed to add is_active column: %v", err)
|
||||
} else {
|
||||
log.Println("[sqlite] is_active column migration applied")
|
||||
}
|
||||
|
||||
return db, nil
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user