Cleanup mailbox routing

This commit is contained in:
djmaze 2021-12-07 17:22:56 +01:00
parent c41adf35f5
commit 5fdc38a40d
2 changed files with 5 additions and 5 deletions

View file

@ -119,19 +119,18 @@ export const
* @returns {string}
*/
mailBox = (folder, page, search, threadUid) => {
page = pInt(page, 1);
search = pString(search);
let result = [HASH_PREFIX + 'mailbox'];
if (folder) {
result.push(folder + (threadUid ? '~' + threadUid : ''));
}
page = pInt(page, 1);
if (1 < page) {
result.push('p' + page);
}
search = pString(search);
if (search) {
result.push(encodeURI(search));
}

View file

@ -126,11 +126,12 @@ export class MailBoxUserScreen extends AbstractScreen {
}
/**
* Parse link as generated by mailBox()
* @returns {Array}
*/
routes() {
const
folder = (request, vals) => request ? decodeURI(pString(vals[0])) : getFolderInboxName(),
folder = (request, vals) => request ? pString(vals[0]) : getFolderInboxName(),
fNormS = (request, vals) => [folder(request, vals), request ? pInt(vals[1]) : 1, decodeURI(pString(vals[2]))];
return [
@ -141,7 +142,7 @@ export class MailBoxUserScreen extends AbstractScreen {
[folder(request, vals), 1, decodeURI(pString(vals[1]))]
}],
// Page: {folder}/p{int}(/{search})?
[/^([a-zA-Z0-9.~_-]+)\/p([1-9][0-9]*)(?:\/(.+)\/?)?$/, { normalize_: fNormS }]
[/^([a-zA-Z0-9.~_-]+)\/p([1-9][0-9]*)(?:\/(.+))?$/, { normalize_: fNormS }]
];
}
}