Fix admin permissions table name and seed default permissions

Corrects the table name from 'apiAdministrators_permissions' to 'apiAdministratorsPermissions' in adminRepository.js for consistency with the database schema. Also seeds default permissions into 'apiAdministratorsPermissionsList' during database setup.
This commit is contained in:
Gilles Lazures 2026-01-18 18:55:22 +01:00
parent f1a482c58f
commit 617e60cf75
2 changed files with 8 additions and 5 deletions

View File

@ -360,7 +360,10 @@ async function setupDatabase() {
)
`)
logger.log(`${"apiAdministratorsPermissionsList".bold} table ready`, ["MariaDB", "yellow"])
await conn.query(`INSERT IGNORE INTO apiAdministratorsPermissionsList(permissionKey) VALUES ("RESET_PLAYER_SKIN"), ("GRANT_PLAYER_CAPE"), ("REMOVE_PLAYER_CAPE"), ("CHANGE_PLAYER_USERNAME"), ("CHANGE_PLAYER_PASSWORD"), ("UPLOAD_CAPE"), ("DELETE_CAPES"), ("PLAYER_BAN"), ("PLAYER_BAN_HISTORY"), ("PLAYER_BAN_STATUS"), ("PLAYER_ACTIONS_LIST"), ("PLAYER_UNBAN"), ("REGISTER_USER")`)
logger.log(`${"apiAdministratorsPermissionsList".bold} permissions ready`, ["MariaDB", "yellow"])
await conn.query(`
CREATE TABLE IF NOT EXISTS apiAdministratorsPermissions (
administratorId INTEGER NOT NULL,

View File

@ -34,7 +34,7 @@ async function hasPermission(adminId, permissionKey) {
try {
const sql = `
SELECT COUNT(*) as count
FROM apiAdministrators_permissions
FROM apiAdministratorsPermissions
WHERE administrator_id = ? AND permission_key = ?
`
const rows = await database.query(sql, [adminId, permissionKey])
@ -46,7 +46,7 @@ async function hasPermission(adminId, permissionKey) {
async function assignPermission(adminId, permissionKey) {
try {
const sql = "INSERT INTO apiAdministrators_permissions (administrator_id, permission_key) VALUES (?, ?)"
const sql = "INSERT INTO apiAdministratorsPermissions (administrator_id, permission_key) VALUES (?, ?)"
const result = await database.query(sql, [adminId, permissionKey])
return result.affectedRows > 0
@ -58,7 +58,7 @@ async function assignPermission(adminId, permissionKey) {
async function revokePermission(adminId, permissionKey) {
try {
const sql = "DELETE FROM apiAdministrators_permissions WHERE administrator_id = ? AND permission_key = ?"
const sql = "DELETE FROM apiAdministratorsPermissions WHERE administrator_id = ? AND permission_key = ?"
const result = await database.query(sql, [adminId, permissionKey])
return result.affectedRows > 0
@ -71,7 +71,7 @@ async function getAdminPermissions(adminId) {
try {
const sql = `
SELECT permission_key
FROM apiAdministrators_permissions
FROM apiAdministratorsPermissions
WHERE administrator_id = ?
`
const rows = await database.query(sql, [adminId])