From 26e10a9399bd6185741d0912ffa54c807ffef671 Mon Sep 17 00:00:00 2001 From: Julien Dessaux Date: Mon, 27 Jan 2025 22:00:51 +0100 Subject: feat(webui): implement state versions list --- pkg/database/accounts.go | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) (limited to 'pkg/database/accounts.go') diff --git a/pkg/database/accounts.go b/pkg/database/accounts.go index 377ca80..9adb32d 100644 --- a/pkg/database/accounts.go +++ b/pkg/database/accounts.go @@ -47,6 +47,31 @@ func (db *DB) InitAdminAccount() error { }) } +func (db *DB) LoadAccountUsernames() (map[int]string, error) { + rows, err := db.Query( + `SELECT id, username FROM accounts;`) + if err != nil { + return nil, fmt.Errorf("failed to load accounts from database: %w", err) + } + defer rows.Close() + accounts := make(map[int]string) + for rows.Next() { + var ( + id int + username string + ) + err = rows.Scan(&id, &username) + if err != nil { + return nil, fmt.Errorf("failed to load account from row: %w", err) + } + accounts[id] = username + } + if err := rows.Err(); err != nil { + return nil, fmt.Errorf("failed to load accounts from rows: %w", err) + } + return accounts, nil +} + func (db *DB) LoadAccountById(id int) (*model.Account, error) { account := model.Account{ Id: id, -- cgit v1.2.3