Fix alternative infobox toggle
This commit is contained in:
@@ -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);
|
||||
|
||||
@@ -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');
|
||||
|
||||
Reference in New Issue
Block a user