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) {
|
func (r *Repository) GetToken(token string) (*Tokens, error) {
|
||||||
var t Tokens
|
var t Tokens
|
||||||
err := r.DB.QueryRow(
|
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 = ?`,
|
FROM tokens WHERE token = ?`,
|
||||||
token,
|
token,
|
||||||
).Scan(&t.ID, &t.Name, &t.LastName, &t.Login, &t.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 err != nil {
|
||||||
if errors.Is(err, sql.ErrNoRows) {
|
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.
|
// ListTokens returns all users without password and token.
|
||||||
func (r *Repository) ListTokens() ([]Tokens, error) {
|
func (r *Repository) ListTokens() ([]Tokens, error) {
|
||||||
rows, err := r.DB.Query(
|
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`,
|
FROM tokens`,
|
||||||
)
|
)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@@ -190,7 +190,7 @@ func (r *Repository) ListTokens() ([]Tokens, error) {
|
|||||||
for rows.Next() {
|
for rows.Next() {
|
||||||
var t Tokens
|
var t Tokens
|
||||||
if err := rows.Scan(&t.ID, &t.Name, &t.LastName, &t.Login,
|
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
|
return nil, err
|
||||||
}
|
}
|
||||||
tokens = append(tokens, t)
|
tokens = append(tokens, t)
|
||||||
@@ -344,12 +344,13 @@ func (r *Repository) ActivateUserByLogin(login string) error {
|
|||||||
login,
|
login,
|
||||||
)
|
)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return fmt.Errorf("activate exec: %w", err)
|
||||||
}
|
}
|
||||||
affected, err := result.RowsAffected()
|
affected, err := result.RowsAffected()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return fmt.Errorf("rows affected: %w", err)
|
||||||
}
|
}
|
||||||
|
log.Printf("[activate] login=%s affected=%d", login, affected)
|
||||||
if affected == 0 {
|
if affected == 0 {
|
||||||
return ErrNotFound
|
return ErrNotFound
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ package storage
|
|||||||
import (
|
import (
|
||||||
"database/sql"
|
"database/sql"
|
||||||
"fmt"
|
"fmt"
|
||||||
|
"log"
|
||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
_ "modernc.org/sqlite"
|
_ "modernc.org/sqlite"
|
||||||
@@ -37,7 +38,11 @@ func Open(path string) (*sql.DB, error) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Migration: add is_active column if it doesn't exist
|
// 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
|
return db, nil
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user