Compare commits

...

2 Commits

Author SHA1 Message Date
DebaucheryLibrarian 798c22c56d 0.23.2 2024-06-04 02:14:53 +02:00
DebaucheryLibrarian 9a9e1da3cf Consent page redirects to original URL. 2024-06-04 02:14:45 +02:00
3 changed files with 8 additions and 5 deletions

4
package-lock.json generated
View File

@ -1,11 +1,11 @@
{
"name": "traxxx-web",
"version": "0.23.1",
"version": "0.23.2",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"version": "0.23.1",
"version": "0.23.2",
"dependencies": {
"@brillout/json-serializer": "^0.5.8",
"@dicebear/collection": "^7.0.5",

View File

@ -77,5 +77,5 @@
"postcss-custom-media": "^10.0.2",
"postcss-nesting": "^12.0.2"
},
"version": "0.23.1"
"version": "0.23.2"
}

View File

@ -1,4 +1,6 @@
export default function consentHandler(req, res, next) {
const redirect = req.headers.referer && new URL(req.headers.referer).searchParams.get('redirect');
if (Object.hasOwn(req.query, 'lgbt')) {
const lgbtFilters = (req.tagFilter || []).filter((tag) => !['gay', 'bisexual', 'transsexual'].includes(tag));
@ -15,13 +17,14 @@ export default function consentHandler(req, res, next) {
if (Object.hasOwn(req.query, 'consent')) {
req.session.hasConsent = true; // eslint-disable-line no-param-reassign
res.redirect(req.path);
res.redirect(redirect || req.path);
return;
}
if (!req.path.includes('/consent') && !req.session?.hasConsent) {
res.redirect('/consent');
res.redirect(`/consent?redirect=${req.originalUrl === '/' ? '' : encodeURIComponent(req.originalUrl) }`);
return;
}