Fix alternative infobox toggle

This commit is contained in:
2026-04-27 06:43:53 +02:00
parent 7815072d1e
commit 5b4f44207c
3 changed files with 25 additions and 11 deletions

View File

@@ -597,10 +597,13 @@ export default router => {
group.put(/\/alternative_infobox/, lib.loggedin, async (req, res) => {
const use_alternative_infobox = req.post.use_alternative_infobox === true || req.post.use_alternative_infobox === 'true';
try {
const mode = req.session.mode || 0;
const theme = req.session.theme || cfg.websrv.theme || 'amoled';
await db`
update user_options
set use_alternative_infobox = ${use_alternative_infobox}
where user_id = ${+req.session.id}
insert into user_options (user_id, use_alternative_infobox, mode, theme)
values (${+req.session.id}, ${use_alternative_infobox}, ${mode}, ${theme})
on conflict (user_id) do update set
use_alternative_infobox = excluded.use_alternative_infobox
`;
if (req.session) req.session.use_alternative_infobox = use_alternative_infobox;
return res.json({ success: true, use_alternative_infobox }, 200);

View File

@@ -346,8 +346,6 @@ export default (router, tpl) => {
data.current_hall_slug = (data.tmp && data.tmp.hall && typeof data.tmp.hall === 'object') ? data.tmp.hall.slug : (data.tmp && data.tmp.hall ? data.tmp.hall : '');
data.current_user_hall_slug = (data.tmp && data.tmp.userHall && typeof data.tmp.userHall === 'object') ? data.tmp.userHall.slug : (data.tmp && data.tmp.userHall ? data.tmp.userHall : '');
data.current_user_hall_owner = (data.tmp && data.tmp.userHallOwner) ? data.tmp.userHallOwner : '';
// Per-user alternative infobox preference overrides the site-wide config default
if (session) data.user_alternative_infobox = !!session.use_alternative_infobox;
}
res.setHeader('Cache-Control', 'no-store, no-cache, must-revalidate, proxy-revalidate');