mirror of
https://github.com/NodeBB/NodeBB.git
synced 2025-10-26 16:46:12 +01:00
feat: allow % in tags, #10135
This commit is contained in:
@@ -140,7 +140,7 @@ ajaxify = window.ajaxify || {};
|
|||||||
|
|
||||||
if (data) {
|
if (data) {
|
||||||
let status = parseInt(data.status, 10);
|
let status = parseInt(data.status, 10);
|
||||||
if (status === 403 || status === 404 || status === 500 || status === 502 || status === 503) {
|
if ([400, 403, 404, 500, 502, 504].includes(status)) {
|
||||||
if (status === 502 && retry) {
|
if (status === 502 && retry) {
|
||||||
retry = false;
|
retry = false;
|
||||||
ajaxifyTimer = undefined;
|
ajaxifyTimer = undefined;
|
||||||
|
|||||||
@@ -334,7 +334,7 @@
|
|||||||
tag = tag.trim().toLowerCase();
|
tag = tag.trim().toLowerCase();
|
||||||
// see https://github.com/NodeBB/NodeBB/issues/4378
|
// see https://github.com/NodeBB/NodeBB/issues/4378
|
||||||
tag = tag.replace(/\u202E/gi, '');
|
tag = tag.replace(/\u202E/gi, '');
|
||||||
tag = tag.replace(/[,/#!$%^*;:{}=_`<>'"~()?|]/g, '');
|
tag = tag.replace(/[,/#!$^*;:{}=_`<>'"~()?|]/g, '');
|
||||||
tag = tag.substr(0, maxLength || 15).trim();
|
tag = tag.substr(0, maxLength || 15).trim();
|
||||||
const matches = tag.match(/^[.-]*(.+?)[.-]*$/);
|
const matches = tag.match(/^[.-]*(.+?)[.-]*$/);
|
||||||
if (matches && matches.length > 1) {
|
if (matches && matches.length > 1) {
|
||||||
|
|||||||
@@ -134,6 +134,7 @@ function modifyTopic(topic, fields) {
|
|||||||
return {
|
return {
|
||||||
value: tag,
|
value: tag,
|
||||||
valueEscaped: escaped,
|
valueEscaped: escaped,
|
||||||
|
valueEncoded: encodeURIComponent(escaped),
|
||||||
class: escaped.replace(/\s/g, '-'),
|
class: escaped.replace(/\s/g, '-'),
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -285,6 +285,7 @@ module.exports = function (Topics) {
|
|||||||
}
|
}
|
||||||
tags.forEach((tag) => {
|
tags.forEach((tag) => {
|
||||||
tag.valueEscaped = validator.escape(String(tag.value));
|
tag.valueEscaped = validator.escape(String(tag.value));
|
||||||
|
tag.valueEncoded = encodeURIComponent(tag.valueEscaped);
|
||||||
tag.class = tag.valueEscaped.replace(/\s/g, '-');
|
tag.class = tag.valueEscaped.replace(/\s/g, '-');
|
||||||
});
|
});
|
||||||
return tags;
|
return tags;
|
||||||
|
|||||||
Reference in New Issue
Block a user