support redirecting to print outs
parent
804e9f54d2
commit
f9c4c411b8
2
app.js
2
app.js
|
|
@ -97,7 +97,7 @@ const sessionChecker = (request, response, next) => {
|
|||
return next();
|
||||
}
|
||||
const redirectUrl = getSafeRedirectURL(request.originalUrl);
|
||||
return response.redirect(`${urlPrefix}/login?redirect=${redirectUrl}`);
|
||||
return response.redirect(`${urlPrefix}/login?redirect=${encodeURIComponent(redirectUrl)}`);
|
||||
};
|
||||
app.use((request, response, next) => {
|
||||
response.locals.buildNumber = version;
|
||||
|
|
|
|||
2
app.ts
2
app.ts
|
|
@ -180,7 +180,7 @@ const sessionChecker = (
|
|||
|
||||
const redirectUrl = getSafeRedirectURL(request.originalUrl);
|
||||
|
||||
return response.redirect(`${urlPrefix}/login?redirect=${redirectUrl}`);
|
||||
return response.redirect(`${urlPrefix}/login?redirect=${encodeURIComponent(redirectUrl)}`);
|
||||
};
|
||||
|
||||
/*
|
||||
|
|
|
|||
|
|
@ -46,12 +46,14 @@ export const getSafeRedirectURL = (possibleRedirectURL = "") => {
|
|||
if (typeof possibleRedirectURL === "string") {
|
||||
const urlToCheck = (possibleRedirectURL.startsWith(urlPrefix)
|
||||
? possibleRedirectURL.slice(urlPrefix.length)
|
||||
: possibleRedirectURL).toLowerCase();
|
||||
if (safeRedirects.has(urlToCheck) ||
|
||||
/^(\/maps\/)\d+(\/edit)?$/.test(urlToCheck) ||
|
||||
/^(\/lots\/)\d+(\/edit)?$/.test(urlToCheck) ||
|
||||
/^(\/lotoccupancies\/)\d+(\/edit)?$/.test(urlToCheck) ||
|
||||
/^(\/workorders\/)\d+(\/edit)?$/.test(urlToCheck)) {
|
||||
: possibleRedirectURL);
|
||||
const urlToCheckLowerCase = urlToCheck.toLowerCase();
|
||||
if (safeRedirects.has(urlToCheckLowerCase) ||
|
||||
/^(\/maps\/)\d+(\/edit)?$/.test(urlToCheckLowerCase) ||
|
||||
/^(\/lots\/)\d+(\/edit)?$/.test(urlToCheckLowerCase) ||
|
||||
/^(\/lotoccupancies\/)\d+(\/edit)?$/.test(urlToCheckLowerCase) ||
|
||||
/^(\/workorders\/)\d+(\/edit)?$/.test(urlToCheckLowerCase) ||
|
||||
/^\/print\/(pdf|screen)\/[\d/=?A-Za-z-]+$/.test(urlToCheck)) {
|
||||
return urlPrefix + urlToCheck;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -69,14 +69,17 @@ export const getSafeRedirectURL = (possibleRedirectURL = "") => {
|
|||
possibleRedirectURL.startsWith(urlPrefix)
|
||||
? possibleRedirectURL.slice(urlPrefix.length)
|
||||
: possibleRedirectURL
|
||||
).toLowerCase();
|
||||
);
|
||||
|
||||
const urlToCheckLowerCase = urlToCheck.toLowerCase();
|
||||
|
||||
if (
|
||||
safeRedirects.has(urlToCheck) ||
|
||||
/^(\/maps\/)\d+(\/edit)?$/.test(urlToCheck) ||
|
||||
/^(\/lots\/)\d+(\/edit)?$/.test(urlToCheck) ||
|
||||
/^(\/lotoccupancies\/)\d+(\/edit)?$/.test(urlToCheck) ||
|
||||
/^(\/workorders\/)\d+(\/edit)?$/.test(urlToCheck)
|
||||
safeRedirects.has(urlToCheckLowerCase) ||
|
||||
/^(\/maps\/)\d+(\/edit)?$/.test(urlToCheckLowerCase) ||
|
||||
/^(\/lots\/)\d+(\/edit)?$/.test(urlToCheckLowerCase) ||
|
||||
/^(\/lotoccupancies\/)\d+(\/edit)?$/.test(urlToCheckLowerCase) ||
|
||||
/^(\/workorders\/)\d+(\/edit)?$/.test(urlToCheckLowerCase) ||
|
||||
/^\/print\/(pdf|screen)\/[\d/=?A-Za-z-]+$/.test(urlToCheck)
|
||||
) {
|
||||
return urlPrefix + urlToCheck;
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue