Merge branch 'develop' into activitypub

This commit is contained in:
Barış Soner Uşaklı
2024-10-18 09:17:53 -04:00
19 changed files with 193 additions and 52 deletions

View File

@@ -1,3 +1,145 @@
#### v3.10.2 (2024-10-18)
##### Chores
* incrementing version number - v3.10.1 (cca3a644)
* update changelog for v3.10.1 (d63a8cca)
* incrementing version number - v3.10.0 (b60a9b4e)
* incrementing version number - v3.9.1 (f120c91c)
* incrementing version number - v3.9.0 (4880f32d)
* incrementing version number - v3.8.4 (4833f9a6)
* incrementing version number - v3.8.3 (97ce2c44)
* incrementing version number - v3.8.2 (72d91251)
* incrementing version number - v3.8.1 (527326f7)
* incrementing version number - v3.8.0 (e228a6eb)
* incrementing version number - v3.7.5 (6882894d)
* incrementing version number - v3.7.4 (6678744c)
* incrementing version number - v3.7.3 (2d62b6f6)
* incrementing version number - v3.7.2 (cc257e7e)
* incrementing version number - v3.7.1 (712365a5)
* incrementing version number - v3.7.0 (9a6153d7)
* incrementing version number - v3.6.7 (86a17e38)
* incrementing version number - v3.6.6 (6604bf37)
* incrementing version number - v3.6.5 (6c653625)
* incrementing version number - v3.6.4 (83d131b4)
* incrementing version number - v3.6.3 (fc7d2bfd)
* incrementing version number - v3.6.2 (0f577a57)
* incrementing version number - v3.6.1 (f1a69468)
* incrementing version number - v3.6.0 (4cdf85f8)
* incrementing version number - v3.5.3 (ed0e8783)
* incrementing version number - v3.5.2 (52fbb2da)
* incrementing version number - v3.5.1 (4c543488)
* incrementing version number - v3.5.0 (d06fb4f0)
* incrementing version number - v3.4.3 (5c984250)
* incrementing version number - v3.4.2 (3f0dac38)
* incrementing version number - v3.4.1 (01e69574)
* incrementing version number - v3.4.0 (fd9247c5)
* incrementing version number - v3.3.9 (5805e770)
* incrementing version number - v3.3.8 (a5603565)
* incrementing version number - v3.3.7 (b26f1744)
* incrementing version number - v3.3.6 (7fb38792)
* incrementing version number - v3.3.4 (a67f84ea)
* incrementing version number - v3.3.3 (f94d239b)
* incrementing version number - v3.3.2 (ec9dac97)
* incrementing version number - v3.3.1 (151cc68f)
* incrementing version number - v3.3.0 (fc1ad70f)
* incrementing version number - v3.2.3 (b06d3e63)
* incrementing version number - v3.2.2 (758ecfcd)
* incrementing version number - v3.2.1 (20145074)
* incrementing version number - v3.2.0 (9ecac38e)
* incrementing version number - v3.1.7 (0b4e81ab)
* incrementing version number - v3.1.6 (b3a3b130)
* incrementing version number - v3.1.5 (ec19343a)
* incrementing version number - v3.1.4 (2452783c)
* incrementing version number - v3.1.3 (3b4e9d3f)
* incrementing version number - v3.1.2 (40fa3489)
* incrementing version number - v3.1.1 (40250733)
* incrementing version number - v3.1.0 (0cb386bd)
* incrementing version number - v3.0.1 (26f6ea49)
* incrementing version number - v3.0.0 (224e08cd)
##### Bug Fixes
* closes #12848, add missing purge class (64779352)
##### Performance Improvements
* make unread faster if there are 60k+ unread topics (f53f1394)
##### Refactors
* single line (120b184e)
* hide modal and show alert on success (a309918e)
* more immediate feedback on category purge (72ccb870)
#### v3.10.1 (2024-10-09)
##### Chores
* up composer (a5f3d097)
* incrementing version number - v3.10.0 (b60a9b4e)
* update changelog for v3.10.0 (a9da495d)
* incrementing version number - v3.9.1 (f120c91c)
* incrementing version number - v3.9.0 (4880f32d)
* incrementing version number - v3.8.4 (4833f9a6)
* incrementing version number - v3.8.3 (97ce2c44)
* incrementing version number - v3.8.2 (72d91251)
* incrementing version number - v3.8.1 (527326f7)
* incrementing version number - v3.8.0 (e228a6eb)
* incrementing version number - v3.7.5 (6882894d)
* incrementing version number - v3.7.4 (6678744c)
* incrementing version number - v3.7.3 (2d62b6f6)
* incrementing version number - v3.7.2 (cc257e7e)
* incrementing version number - v3.7.1 (712365a5)
* incrementing version number - v3.7.0 (9a6153d7)
* incrementing version number - v3.6.7 (86a17e38)
* incrementing version number - v3.6.6 (6604bf37)
* incrementing version number - v3.6.5 (6c653625)
* incrementing version number - v3.6.4 (83d131b4)
* incrementing version number - v3.6.3 (fc7d2bfd)
* incrementing version number - v3.6.2 (0f577a57)
* incrementing version number - v3.6.1 (f1a69468)
* incrementing version number - v3.6.0 (4cdf85f8)
* incrementing version number - v3.5.3 (ed0e8783)
* incrementing version number - v3.5.2 (52fbb2da)
* incrementing version number - v3.5.1 (4c543488)
* incrementing version number - v3.5.0 (d06fb4f0)
* incrementing version number - v3.4.3 (5c984250)
* incrementing version number - v3.4.2 (3f0dac38)
* incrementing version number - v3.4.1 (01e69574)
* incrementing version number - v3.4.0 (fd9247c5)
* incrementing version number - v3.3.9 (5805e770)
* incrementing version number - v3.3.8 (a5603565)
* incrementing version number - v3.3.7 (b26f1744)
* incrementing version number - v3.3.6 (7fb38792)
* incrementing version number - v3.3.4 (a67f84ea)
* incrementing version number - v3.3.3 (f94d239b)
* incrementing version number - v3.3.2 (ec9dac97)
* incrementing version number - v3.3.1 (151cc68f)
* incrementing version number - v3.3.0 (fc1ad70f)
* incrementing version number - v3.2.3 (b06d3e63)
* incrementing version number - v3.2.2 (758ecfcd)
* incrementing version number - v3.2.1 (20145074)
* incrementing version number - v3.2.0 (9ecac38e)
* incrementing version number - v3.1.7 (0b4e81ab)
* incrementing version number - v3.1.6 (b3a3b130)
* incrementing version number - v3.1.5 (ec19343a)
* incrementing version number - v3.1.4 (2452783c)
* incrementing version number - v3.1.3 (3b4e9d3f)
* incrementing version number - v3.1.2 (40fa3489)
* incrementing version number - v3.1.1 (40250733)
* incrementing version number - v3.1.0 (0cb386bd)
* incrementing version number - v3.0.1 (26f6ea49)
* incrementing version number - v3.0.0 (224e08cd)
##### Bug Fixes
* **deps:** bump 2factor (712767f6)
##### Refactors
* don't block ./nodebb upgrade if suggested modules are not loaded (39f57f9e)
#### v3.10.0 (2024-09-25)
##### Chores

View File

@@ -201,4 +201,4 @@
"url": "https://github.com/barisusakli"
}
]
}
}

View File

@@ -36,8 +36,8 @@
"digest.title.day": "Ditt daglige sammendrag",
"digest.title.week": "Ditt ukentlige sammendrag",
"digest.title.month": "Ditt månedlige sammendrag",
"notif.chat.new-message-from-user": "New message from \"%1\"",
"notif.chat.new-message-from-user-in-room": "New message from %1 in room %2",
"notif.chat.new-message-from-user": "Ny melding fra \"%1\"",
"notif.chat.new-message-from-user-in-room": "Ny melding fra %1 i rom %2",
"notif.chat.cta": "Klikk her for å fortsette samtalen",
"notif.chat.unsub.info": "Denne samtale-varselen ble sendt til deg basert på dine innstillinger for abonnering.",
"notif.post.unsub.info": "Dette innleggsvarselet ble sendt til deg basert på dine innstillinger for abonnering.",

View File

@@ -51,10 +51,10 @@
"account/watched-tags": "%1's overvåkede tagger",
"account/bookmarks": "%1's bokmerkede innlegg",
"account/settings": "Brukerinnstillinger",
"account/settings-of": "Changing settings of %1",
"account/settings-of": "Endre innstillingen på %1",
"account/watched": "Innlegg overvåket av %1",
"account/ignored": "Emner ignorert av %1",
"account/read": "Topics read by %1",
"account/read": "Emner lest av %1",
"account/upvoted": "Innlegg stemt opp av %1",
"account/downvoted": "Innlegg nedstemt av %1",
"account/best": "Beste innlegg skrevet av %1",

View File

@@ -15,7 +15,7 @@
"replies-to-this-post": "%1 Svar",
"one-reply-to-this-post": "1 Svar",
"last-reply-time": "Siste svar",
"reply-options": "Reply options",
"reply-options": "Alternativer for svar",
"reply-as-topic": "Svar som tråd",
"guest-login-reply": "Logg inn for å besvare",
"login-to-view": "🔒 Logg inn for å se",
@@ -28,14 +28,14 @@
"move": "Flytt",
"change-owner": "Bytt eier",
"fork": "Forgren",
"link": "Link",
"link": "Lenk til",
"share": "Del",
"tools": "Verktøy",
"locked": "Låst",
"pinned": "Festet",
"pinned-with-expiry": "Festet til %1",
"scheduled": "Planlagt",
"deleted": "Deleted",
"deleted": "Slettet",
"moved": "Flyttet",
"moved-from": "Flyttet fra %1",
"copy-code": "Kopier kode",
@@ -114,7 +114,7 @@
"thread-tools.purge": "Rensk tråd",
"thread-tools.purge-confirm": "Er du sikker på at du vil renske denne tråden?",
"thread-tools.merge-topics": "Flett emner",
"thread-tools.merge": "Merge Topic",
"thread-tools.merge": "Flett emne",
"topic-move-success": "Denne tråden vil straks bli flyttet til \"%1\". Klikk her for å angre.",
"topic-move-multiple-success": "Disse emnene vil straks bli flyttet til \"%1\". Klikk her for å angre.",
"topic-move-all-success": "Alle emner vil straks bli flyttet til \"%1\". Klikk her for å angre.",

View File

@@ -19,7 +19,7 @@
"registered": "已注册",
"sockets": "接口",
"connection-count": "Connection Count",
"connection-count": "连接数",
"guests": "游客",
"info": "信息"

View File

@@ -9,11 +9,11 @@
"containers.none": "无",
"container.well": "Well",
"container.jumbotron": "超大屏幕",
"container.card": "卡",
"container.card-header": "卡标题",
"container.card-body": "卡内容",
"container.title": "Title",
"container.body": "Body",
"container.card": "卡",
"container.card-header": "卡标题",
"container.card-body": "卡内容",
"container.title": "标题",
"container.body": "内容",
"container.alert": "警报",
"alert.confirm-delete": "确认删除此窗口部件?",

View File

@@ -1,5 +1,5 @@
{
"zero-is-disabled": "Enter 0 to disable this restriction",
"zero-is-disabled": "输入 0 可禁用此限制",
"chat-settings": "聊天设置",
"disable": "禁用聊天",
"disable-editing": "禁止编辑/删除聊天消息",
@@ -7,9 +7,9 @@
"max-length": "聊天信息的最大长度",
"max-chat-room-name-length": "聊天室名称最大长度",
"max-room-size": "聊天室的最多用户数",
"delay": "Time between chat messages (ms)",
"notification-delay": "Notification delay for chat messages",
"notification-delay-help": "Additional messages sent between this time are collated, and the user is notified once per delay period. Set this to 0 to disable the delay.",
"restrictions.seconds-edit-after": "Number of seconds a chat message will remain editable.",
"restrictions.seconds-delete-after": "Number of seconds a chat message will remain deletable."
"delay": "发言频率(毫秒)",
"notification-delay": "聊天信息的通知延迟",
"notification-delay-help": "服务器可能无法承受即时通讯所带来的资源占用,因此在这段时间内发送的其他信息将被整理,并在每个延迟期通知用户一次。设置为 0 则禁用延迟。",
"restrictions.seconds-edit-after": "聊天信息保持可编辑状态的秒数。",
"restrictions.seconds-delete-after": "聊天信息保持可撤回状态的秒数。"
}

View File

@@ -13,7 +13,7 @@
"smtp-transport-help": "您可以从列表中选取一个已知的服务或自定义。",
"smtp-transport.service": "选择服务",
"smtp-transport.service-custom": "自定义",
"smtp-transport.service-help": "Select a service name above in order to use the known information about it. Alternatively, select "Custom Service" and enter the details below.",
"smtp-transport.service-help": "选取一个上方的服务以便使用已知的信息。或选择 " 自定义 " 并在下方输入详细信息。",
"smtp-transport.gmail-warning1": "如果您使用 GMail 作为您的邮件提供商您需要生成一个“App 密码”让 NodeBB 可以正常鉴权。您可以在<a href=\"https://myaccount.google.com/apppasswords\">App 密码<i class=\"fa fa-external-link\"></i></a>页生成一个。",
"smtp-transport.gmail-warning2": "对此替代办法的更多信息,请查阅关于此问题的<a href=\"https://nodemailer.com/usage/using-gmail/\">NodeMailer 文章<i class=\"fa fa-external-link\"></i></a>。一个替代方法可能是使用一种第三方的邮件插件,例如 SendGridMailgun等等。<a href=\"../extend/plugins\">在此浏览可用的插件</a>。",
"smtp-transport.auto-enable-toast": "您似乎在配置一个 SMTP 通信。我们为您启用了 “SMTP 通信” 选项。",

View File

@@ -2,14 +2,14 @@
"reputation": "声望设置",
"disable": "禁用声望系统",
"disable-down-voting": "禁用 踩",
"upvote-visibility": "Up Vote visibility",
"upvote-visibility-all": "Everyone can see up votes",
"upvote-visibility-loggedin": "Only logged in users can see up votes",
"upvote-visibility-privileged": "Only privileged users like admins & moderators can see up votes",
"downvote-visibility": "Down Vote visibility",
"downvote-visibility-all": "Everyone can see down votes",
"downvote-visibility-loggedin": "Only logged in users can see down votes",
"downvote-visibility-privileged": "Only privileged users like admins & moderators can see down votes",
"upvote-visibility": "顶 投票数量可见性",
"upvote-visibility-all": "所有人可见",
"upvote-visibility-loggedin": "仅登录用户可见",
"upvote-visibility-privileged": "仅管理员和版主等特权用户可见",
"downvote-visibility": "踩 投票数量可见性",
"downvote-visibility-all": "所有人可见",
"downvote-visibility-loggedin": "仅登录用户可见",
"downvote-visibility-privileged": "仅管理员和版主等特权用户可见",
"thresholds": "操作限制",
"min-rep-upvote": "顶帖子 需要的最低声望",
"upvotes-per-day": "每天顶的次数设置为0则表示无限制",

View File

@@ -153,7 +153,7 @@
"about-me-too-long": "抱歉,您的关于我不能超过 %1 个字符。",
"cant-chat-with-yourself": "您不能和自己聊天!",
"chat-restricted": "此用户限制了他的聊天消息。必须他先关注您,您才能和他聊天。",
"chat-user-blocked": "You have been blocked by this user.",
"chat-user-blocked": "您已被该用户屏蔽。",
"chat-disabled": "聊天系统已关闭",
"too-many-messages": "您发送了太多消息,请稍等片刻。",
"invalid-chat-message": "无效的聊天信息",

View File

@@ -1,9 +1,9 @@
{
"chat.room-id": "房间 %1",
"chat.chatting-with": "与<span id=\"chat-with-name\"></span>聊天",
"chat.placeholder": "Type chat message here, drag & drop images",
"chat.placeholder.mobile": "Type chat message",
"chat.placeholder.message-room": "Message #%1",
"chat.placeholder": "在此处输入聊天信息,拖放图片",
"chat.placeholder.mobile": "输入聊天信息",
"chat.placeholder.message-room": "消息 #%1",
"chat.scroll-up-alert": "转到最近的信息",
"chat.usernames-and-x-others": "%1 和 %2 其他人",
"chat.chat-with-usernames": "与<span id=\"chat-with-name\"></span>聊天",

View File

@@ -75,7 +75,7 @@
"email-confirmed": "电子邮箱已确认",
"email-confirmed-message": "感谢您验证您的电子邮箱。您的帐户现已完全激活。",
"email-confirm-error-message": "验证的您电子邮箱地址时出现了问题。可能是因为验证码无效或已过期。",
"email-confirm-error-message-already-validated": "Your email address was already validated.",
"email-confirm-error-message-already-validated": "您的电子邮件地址已通过验证。",
"email-confirm-sent": "确认邮件已发送。",
"none": "无",
"notification-only": "用通知提醒我",

View File

@@ -7,8 +7,8 @@
"login-register-to-search": "登录或注册以进行搜索。",
"settings.title": "主题设置",
"settings.enableQuickReply": "启用快速回复",
"settings.enableBreadcrumbs": "Show breadcrumbs in Category and Topic pages",
"settings.enableBreadcrumbs.why": "Breadcrumbs are visible in most pages for ease-of-navigation. The base design of the category and topic pages has alternative means to link back to parent pages, but the breadcrumb can be toggled off to reduce clutter.",
"settings.enableBreadcrumbs": "在版块和主题页面中显示面包屑导航",
"settings.enableBreadcrumbs.why": "为了方便浏览,大多数页面都具有面包屑导航。不过版块和主题页面里也有回到上级页面的替代链接,因此您也可以选择关闭面包屑导航来减少页面杂乱感。",
"settings.centerHeaderElements": "标题元素居中",
"settings.mobileTopicTeasers": "在移动设备显示话题预告",
"settings.stickyToolbar": "附着工具条",

View File

@@ -39,7 +39,7 @@
"reputation": "声望",
"bookmarks": "书签",
"watched-categories": "已关注的版块",
"watched-tags": "Watched tags",
"watched-tags": "已关注的标签",
"change-all": "更改全部",
"watched": "已关注",
"ignored": "忽略",
@@ -66,7 +66,7 @@
"change-picture": "更改头像",
"change-username": "更改用户名",
"change-email": "更改电子邮箱",
"email-updated": "Email Updated",
"email-updated": "电子邮箱已更新",
"email-same-as-password": "请输入您当前的密码以继续 &ndash;您已经再次输入了您的新电子邮箱",
"edit": "编辑",
"edit-profile": "编辑资料",
@@ -79,7 +79,7 @@
"change-password": "更改密码",
"change-password-error": "无效的密码!",
"change-password-error-wrong-current": "您的当前密码不正确!",
"change-password-error-same-password": "Your new password matches your current password, please use a new password.",
"change-password-error-same-password": "新密码不能与当前密码一致,请输入一个新密码",
"change-password-error-match": "两次输入的密码必须相同!",
"change-password-error-privileges": "您无权更改此密码。",
"change-password-success": "您的密码已更新!",
@@ -115,7 +115,7 @@
"has-no-topics": "此用户还未发布任何主题。",
"has-no-watched-topics": "此用户还未关注任何主题。",
"has-no-ignored-topics": "此用户尚未忽略任何主题。",
"has-no-read-topics": "This user hasn't read any topics yet.",
"has-no-read-topics": "该用户尚未阅读过任何主题。",
"has-no-upvoted-posts": "此用户还未顶过任何帖子。",
"has-no-downvoted-posts": "此用户还未踩过任何帖子。",
"has-no-controversial-posts": "此用户没有任何踩过的帖子。",

View File

@@ -131,14 +131,14 @@ define('admin/manage/category', [
}, 1000);
api.del('/categories/' + ajaxify.data.category.cid).then(() => {
if (intervalId) {
clearInterval(intervalId);
}
modal.modal('hide');
alerts.success('[[admin/manage/categories:alert.purge-success]]');
setTimeout(() => {
if (intervalId) {
clearInterval(intervalId);
}
modal.modal('hide');
alerts.success('[[admin/manage/categories:alert.purge-success]]');
ajaxify.go('admin/manage/categories');
}, 5000);
}, 2500);
}).catch(alerts.error);
return false;

View File

@@ -170,8 +170,7 @@ module.exports = function (Topics) {
Topics.reply = async function (data) {
data = await plugins.hooks.fire('filter:topic.reply', data);
const { tid } = data;
const { uid } = data;
const { tid, uid } = data;
const [topicData, isAdmin] = await Promise.all([
Topics.getTopicData(tid),

View File

@@ -199,7 +199,7 @@ module.exports = function (Topics) {
}
const cids = params.cid || await getWatchedTrackedCids(params.uid);
const keys = cids.map(cid => `cid:${cid}:tids:lastposttime`);
return await db.getSortedSetRevRangeByScoreWithScores(keys, 0, -1, '+inf', params.cutoff);
return await db.getSortedSetRevRangeByScoreWithScores(keys, 0, 200, '+inf', params.cutoff);
}
async function getWatchedTrackedCids(uid) {
@@ -218,7 +218,7 @@ module.exports = function (Topics) {
params.cid.map(cid => `cid:${cid}:tids:lastposttime`) :
'topics:recent';
const recentTopicData = await db.getSortedSetRevRangeByScoreWithScores(keys, 0, -1, '+inf', params.cutoff);
const recentTopicData = await db.getSortedSetRevRangeByScoreWithScores(keys, 0, 200, '+inf', params.cutoff);
const isFollowed = await db.isSortedSetMembers(`uid:${params.uid}:followed_tids`, recentTopicData.map(t => t.tid));
return recentTopicData.filter((t, i) => isFollowed[i]);
}

View File

@@ -210,7 +210,7 @@
{{{ end }}}
</button>
<button class="btn btn-ghost btn-sm d-flex gap-2 align-items-center">
<button class="btn btn-ghost btn-sm d-flex gap-2 align-items-center purge">
<i class="fa fa-fw fa-trash text-danger"></i> [[admin/manage/categories:purge]]
</button>