gfds
This commit is contained in:
@@ -6724,28 +6724,39 @@ class NotificationSystem {
|
|||||||
// Build filters from URL
|
// Build filters from URL
|
||||||
const url = window.location.pathname;
|
const url = window.location.pathname;
|
||||||
let tag = null, user = null, mime = null, hall = null;
|
let tag = null, user = null, mime = null, hall = null;
|
||||||
|
let userHall = null, userHallOwner = null;
|
||||||
|
let isFav = false;
|
||||||
|
|
||||||
const tagMatch = url.match(/\/tag\/([^/?]+)/);
|
const tagMatch = url.match(/\/tag\/([^/?]+)/);
|
||||||
if (tagMatch) tag = decodeURIComponent(tagMatch[1]);
|
if (tagMatch) tag = decodeURIComponent(tagMatch[1]);
|
||||||
const hallMatch = url.match(/\/h\/([^/?]+)/);
|
const hallMatch = url.match(/\/h\/([^/?]+)/);
|
||||||
if (hallMatch) hall = decodeURIComponent(hallMatch[1]);
|
if (hallMatch) hall = decodeURIComponent(hallMatch[1]);
|
||||||
|
|
||||||
|
// Detect user-hall pages: /user/<owner>/hall/<slug>
|
||||||
|
// Must be checked BEFORE the generic user match so we don't pollute `user`
|
||||||
|
const userHallMatch = url.match(/\/user\/([^/]+)\/hall\/([^/?]+)/);
|
||||||
|
if (userHallMatch) {
|
||||||
|
userHallOwner = decodeURIComponent(userHallMatch[1]);
|
||||||
|
userHall = decodeURIComponent(userHallMatch[2]);
|
||||||
|
} else {
|
||||||
const userMatch = url.match(/\/user\/([^/]+)/);
|
const userMatch = url.match(/\/user\/([^/]+)/);
|
||||||
if (userMatch && !url.match(/\/user\/[^/]+\/(favs|f0cks|comments)/)) user = decodeURIComponent(userMatch[1]);
|
if (userMatch && !url.match(/\/user\/[^/]+\/(favs|f0cks|comments|halls?)/)) user = decodeURIComponent(userMatch[1]);
|
||||||
const favMatch = url.match(/\/user\/([^/]+)\/favs/);
|
const favMatch = url.match(/\/user\/([^/]+)\/favs/);
|
||||||
const f0cksMatch = url.match(/\/user\/([^/]+)\/f0cks/);
|
const f0cksMatch = url.match(/\/user\/([^/]+)\/f0cks/);
|
||||||
let isFav = false;
|
|
||||||
if (favMatch) {
|
if (favMatch) {
|
||||||
user = decodeURIComponent(favMatch[1]);
|
user = decodeURIComponent(favMatch[1]);
|
||||||
isFav = true;
|
isFav = true;
|
||||||
} else if (f0cksMatch) {
|
} else if (f0cksMatch) {
|
||||||
user = decodeURIComponent(f0cksMatch[1]);
|
user = decodeURIComponent(f0cksMatch[1]);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
const mimeMatch = url.match(/\/(image|audio|video)/);
|
const mimeMatch = url.match(/\/(image|audio|video)/);
|
||||||
if (mimeMatch) mime = mimeMatch[1];
|
if (mimeMatch) mime = mimeMatch[1];
|
||||||
|
|
||||||
let ajaxUrl = `/ajax/items/?newer=${maxId}&mode=${window.activeMode}`;
|
let ajaxUrl = `/ajax/items/?newer=${maxId}&mode=${window.activeMode}`;
|
||||||
if (tag) ajaxUrl += `&tag=${encodeURIComponent(tag)}`;
|
if (tag) ajaxUrl += `&tag=${encodeURIComponent(tag)}`;
|
||||||
if (hall) ajaxUrl += `&hall=${encodeURIComponent(hall)}`;
|
if (hall) ajaxUrl += `&hall=${encodeURIComponent(hall)}`;
|
||||||
|
if (userHall) ajaxUrl += `&userHall=${encodeURIComponent(userHall)}&userHallOwner=${encodeURIComponent(userHallOwner)}`;
|
||||||
if (user) ajaxUrl += `&user=${encodeURIComponent(user)}`;
|
if (user) ajaxUrl += `&user=${encodeURIComponent(user)}`;
|
||||||
if (isFav) ajaxUrl += `&fav=true`;
|
if (isFav) ajaxUrl += `&fav=true`;
|
||||||
if (mime) ajaxUrl += `&mime=${encodeURIComponent(mime)}`;
|
if (mime) ajaxUrl += `&mime=${encodeURIComponent(mime)}`;
|
||||||
|
|||||||
@@ -203,6 +203,8 @@ export default (router, tpl) => {
|
|||||||
tag: query.tag || null,
|
tag: query.tag || null,
|
||||||
hall: query.hall || null,
|
hall: query.hall || null,
|
||||||
user: query.user || null,
|
user: query.user || null,
|
||||||
|
userHall: query.userHall || null,
|
||||||
|
userHallOwner: query.userHallOwner || null,
|
||||||
mime: query.mime || (req.cookies.mime || null),
|
mime: query.mime || (req.cookies.mime || null),
|
||||||
mode: query.mode !== undefined ? +query.mode : req.mode,
|
mode: query.mode !== undefined ? +query.mode : req.mode,
|
||||||
ratings: ratingsArr,
|
ratings: ratingsArr,
|
||||||
|
|||||||
Reference in New Issue
Block a user