Toggle for showing title & description overlay on store page #51 (#130)

* #51 Adds settings page with showTitleDescriptionOnGamePanel

* Removes console.log

* Renames isHidden to system, adds missing system column on Game and fixes nitro plugin on fresh database

* Implements a different way to handle the placeholder image

* Removes system column on Game

* Groups settings keys together

* Removes unused i18n keys

* fix: fix eslints and other small tweaks

---------

Co-authored-by: Francois Ribemont <ribemont.francois@gmail.com>
This commit is contained in:
DecDuck
2025-07-06 13:10:57 +10:00
parent 706f2aac83
commit e4fbc7cd50
18 changed files with 404 additions and 149 deletions

View File

@ -39,6 +39,8 @@ export const userACLDescriptions: ObjectFromList<typeof userACLs> = {
"clients:revoke": "",
"news:read": "Read the server's news articles.",
"settings:read": "Read system settings.",
};
export const systemACLDescriptions: ObjectFromList<typeof systemACLs> = {
@ -87,4 +89,6 @@ export const systemACLDescriptions: ObjectFromList<typeof systemACLs> = {
"maintenance:read":
"Read tasks and maintenance information, like updates available and cleanup.",
"settings:update": "Update system settings.",
};

View File

@ -33,6 +33,8 @@ export const userACLs = [
"clients:revoke",
"news:read",
"settings:read",
] as const;
const userACLPrefix = "user:";
@ -80,6 +82,8 @@ export const systemACLs = [
"task:start",
"maintenance:read",
"settings:update",
] as const;
const systemACLPrefix = "system:";

View File

@ -172,7 +172,9 @@ class LibraryManager {
// Checks are done in least to most expensive order
async checkUnimportedGamePath(libraryId: string, libraryPath: string) {
const hasGame =
(await prisma.game.count({ where: { libraryId, libraryPath } })) > 0;
(await prisma.game.count({
where: { libraryId, libraryPath },
})) > 0;
if (hasGame) return false;
return true;