Merge branch 'master' into develop

isekai-main
Barış Soner Uşaklı 2 years ago
commit 539a4d437c

@ -1,3 +1,29 @@
#### v3.2.2 (2023-07-12)
##### Chores
* up themes (f1170b18)
* up spam-be-gone (eed34d04)
* remove log (509faa5e)
* incrementing version number - v3.2.1 (20145074)
* update changelog for v3.2.1 (c7f8cee9)
* 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
* #11787 (6ae0df4f)
* #11786 fix selector for upgradable plugins (bf114c11)
#### v3.2.1 (2023-07-05)
##### Chores

@ -2,7 +2,7 @@
"name": "nodebb",
"license": "GPL-3.0",
"description": "NodeBB Forum",
"version": "3.2.1",
"version": "3.2.2",
"homepage": "https://www.nodebb.org",
"repository": {
"type": "git",

@ -1,6 +1,6 @@
{
"settings": "Settings",
"guest-settings": "Guest settings",
"guest-settings": "Guest Settings",
"handles.enabled": "Allow guest handles",
"handles.enabled-help": "This option exposes a new field that allows guests to pick a name to associate with each post they make. If disabled, they will simply be called \"Guest\"",
"topic-views.enabled": "Allow guests to increase topic view counts",

@ -13,13 +13,14 @@ define('admin/settings', [
const mainHader = $('[component="settings/main/header"]');
if (headers.length > 1 && tocList.length) {
headers.each(function () {
const header = $(this).text();
const anchor = header.toLowerCase()
.replace(/ /g, '-')
.replace(/&/g, '-')
.trim();
$(this).parent().attr('id', anchor);
headers.each(function (i) {
const $this = $(this);
const header = $this.text();
const anchor = $this.parent().attr('id') || `section${i + 1}`;
// for elements that don't have id use section{index}
if (anchor.startsWith('section')) {
$this.parent().attr('id', anchor);
}
tocList.append(`<a class="btn-ghost-sm text-xs justify-content-start text-decoration-none" href="#${anchor}">${header}</a>`);
});
const offset = mainHader.outerHeight(true);

@ -258,6 +258,7 @@ module.exports = function (middleware) {
latestVersion: getLatestVersion(),
privileges: privileges.admin.get(req.uid),
tags: meta.tags.parse(req, {}, [], []),
languageDirection: translator.translate('[[language:dir]]', res.locals.config.acpLang),
});
const { userData } = results;
@ -294,6 +295,9 @@ module.exports = function (middleware) {
latestVersion: results.latestVersion,
upgradeAvailable: results.latestVersion && semver.gt(results.latestVersion, version),
showManageMenu: results.privileges.superadmin || ['categories', 'privileges', 'users', 'admins-mods', 'groups', 'tags', 'settings'].some(priv => results.privileges[`admin:${priv}`]),
defaultLang: meta.config.defaultLang || 'en-GB',
acpLang: res.locals.config.acpLang,
languageDirection: results.languageDirection,
};
templateValues.template = { name: res.locals.template };

@ -1,5 +1,5 @@
<!DOCTYPE html>
<html>
<html lang="{function.localeToHTML, acpLang, defaultLang}" {{{if languageDirection}}}data-dir="{languageDirection}" style="direction: {languageDirection};"{{{end}}}>
<head>
<title>{title}</title>

@ -3,7 +3,7 @@
<div class="row settings m-0">
<div id="spy-container" class="col-12 col-md-8 px-0 mb-4" tabindex="0">
<div class="mb-4">
<div id="maintenance-mode" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/advanced:maintenance-mode]]</h5>
<div class="form-check form-switch mb-3">
@ -33,7 +33,7 @@
<hr/>
<div class="mb-4">
<div id="headers" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/advanced:headers]]</h5>
<div class="mb-3">
@ -105,7 +105,7 @@
<hr/>
<div class="mb-4">
<div id="strict-transport-security" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/advanced:hsts]]</h5>
<div class="form-check form-switch mb-3">
<input class="form-check-input" type="checkbox" data-field="hsts-enabled" checked>
@ -131,7 +131,7 @@
<hr/>
<div class="mb-4">
<div id="websocket-settings" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/advanced:sockets.settings]]</h5>
<div class="mb-3">
<label class="form-label" for="maxReconnectionAttempts">[[admin/settings/advanced:sockets.max-attempts]]</label>
@ -146,7 +146,7 @@
<hr/>
<div class="mb-4">
<div id="analytics-settings" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/advanced:analytics.settings]]</h5>
<div class="mb-3">
@ -160,7 +160,7 @@
<hr/>
<div class="mb-4">
<div id="compression-settings" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/advanced:compression.settings]]</h5>
<div class="mb-3">
@ -176,7 +176,7 @@
<hr/>
<div class="mb-4">
<div id="traffic-management" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/advanced:traffic-management]]</h5>
<p class="form-text">

@ -3,7 +3,7 @@
<div class="row settings m-0">
<div id="spy-container" class="col-12 col-md-8 px-0 mb-4" tabindex="0">
<div class="mb-4">
<div id="chat-settings" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header hidden">[[admin/settings/chat:chat-settings]]</h5>
<div class="mb-3">

@ -3,7 +3,7 @@
<div class="row settings m-0">
<div id="spy-container" class="col-12 col-md-8 px-0 mb-4" tabindex="0">
<div class="mb-4">
<div id="eu-consent" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/cookies:eu-consent]]</h5>
<div class="mb-3">
<div class="form-check form-switch">
@ -40,7 +40,7 @@
<hr/>
<div class="mb-4">
<div id="cookie-settings" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/cookies:settings]]</h5>
<div class="mb-3">
<label class="form-label" for="cookieDomain">[[admin/settings/cookies:cookie-domain]]</label>

@ -3,7 +3,7 @@
<div class="row settings m-0">
<div id="spy-container" class="col-12 col-md-8 px-0 mb-4" tabindex="0">
<div class="mb-4">
<div id="email-settings" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/email:email-settings]]</h5>
<div class="mb-3">
@ -41,7 +41,7 @@
<hr/>
<div class="mb-4">
<div id="confirmation" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/email:confirmation-settings]]</h5>
<div class="row mb-3 align-items-center">
@ -80,7 +80,7 @@
<p class="form-text">[[admin/settings/email:prompt-help]]</p>
</div>
<div class="mb-4">
<div id="email-digests" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/email:subscriptions]]</h5>
<div class="form-check form-switch mb-3">
<input class="form-check-input" type="checkbox" id="disableEmailSubscriptions" data-field="disableEmailSubscriptions" name="disableEmailSubscriptions" />
@ -100,7 +100,7 @@
<hr/>
<div class="mb-4">
<div id="smtp-transport" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/email:smtp-transport]]</h5>
<div class="alert alert-warning">
@ -168,7 +168,7 @@
</div>
</div>
<div class="mb-4">
<div id="email-testing" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/email:testing]]</h5>
<div class="">
@ -189,7 +189,7 @@
<hr/>
<div class="mb-4">
<div id="edit-email-template" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/email:template]]</h5>
<div class="mb-3">

@ -3,7 +3,7 @@
<div class="row settings m-0">
<div id="spy-container" class="col-12 col-md-8 px-0 mb-4" tabindex="0">
<div class="mb-4">
<div id="site-settings" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/general:site-settings]]
</h5>
<form>
@ -83,7 +83,7 @@
<hr/>
<div class="mb-4">
<div id="logo-and-icons" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/general:logo-and-icons]]</h5>
<div class="mb-3">
<label class="form-label" for="logoUrl">[[admin/settings/general:logo.image]]</label>
@ -157,7 +157,7 @@
<hr/>
<div class="mb-4">
<div id="home-page" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/homepage:home-page]]</h5>
<div class="">
@ -195,7 +195,7 @@
<hr/>
<div class="mb-4">
<div id="search-settings" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/general:search]]</h5>
<div class="mb-3 d-flex justify-content-between align-items-center">
@ -241,7 +241,7 @@
<hr/>
<div class="mb-4">
<div id="outgoing-links" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/general:outgoing-links]]</h5>
<form>
@ -260,7 +260,7 @@
<hr/>
<div class="mb-4">
<div id="site-colors" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/general:site-colors]]</h5>
<div class="mb-3">
@ -278,7 +278,7 @@
<hr/>
<div class="mb-4">
<div id="topic-tools" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/general:topic-tools]]</h5>
<div class="mb-3">
@ -292,7 +292,7 @@
<hr/>
<div class="mb-4">
<div id="post-sharing" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/social:post-sharing]]</h5>
<div class="mb-3">
<div class="form-group" id="postSharingNetworks">

@ -3,7 +3,7 @@
<div class="row settings m-0">
<div id="spy-container" class="col-12 col-md-8 px-0 mb-4" tabindex="0">
<div class="mb-4">
<div id="general" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/group:general]]</h5>
<div class="form-check form-switch mb-3">
<input class="form-check-input" type="checkbox" data-field="allowPrivateGroups">
@ -32,7 +32,7 @@
<hr/>
<div class="mb-4">
<div id="group-cover-image" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/group:cover-image]]</h5>
<label class="form-label" for="groups:defaultCovers"><strong>[[admin/settings/group:default-cover]]</strong></label>

@ -3,7 +3,7 @@
<div class="row settings m-0">
<div id="spy-container" class="col-12 col-md-8 px-0 mb-4" tabindex="0">
<div class="mb-4">
<div id="notifications" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header hidden">[[admin/settings/notifications:notifications]]</h5>
<div class="mb-3">
<label class="form-label">[[admin/settings/notifications:welcome-notification]]</label>

@ -3,7 +3,7 @@
<div class="row settings m-0">
<div id="spy-container" class="col-12 col-md-8 px-0 mb-4" tabindex="0">
<div class="mb-4">
<div id="pagination" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header hidden">[[admin/settings/pagination:pagination]]</h5>
<div class="form-check form-switch mb-3">
<input class="form-check-input" type="checkbox" data-field="usePagination">

@ -4,7 +4,7 @@
<div class="row settings m-0">
<div id="spy-container" class="col-12 col-md-8 px-0 mb-4" tabindex="0">
<!-- general settings -->
<div class="mb-4">
<div id="general" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/post:general]]</h5>
<div class="mb-3">
@ -57,7 +57,7 @@
<hr/>
<!-- posting restrictions -->
<div class="mb-4">
<div id="posting-restrictions" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/post:restrictions]]</h5>
<div class="mb-3 d-flex justify-content-between align-items-center gap-2">
@ -121,7 +121,7 @@
<hr/>
<!-- new user restrictions -->
<div class="mb-4">
<div id="new-user-restrictions" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/post:restrictions-new]]</h5>
<div class="mb-3">
@ -148,7 +148,7 @@
<hr/>
<!-- post queue settings -->
<div class="mb-4">
<div id="post-queue" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/post:post-queue]]</h5>
<div class="mb-3">
<div class="form-check form-switch mb-3">
@ -178,7 +178,7 @@
<hr/>
<!-- timestamp settings -->
<div class="mb-4">
<div id="timestamp" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/post:timestamp]]</h5>
<div class="mb-3">
<label class="form-label" for="timeagoCutoff">[[admin/settings/post:timestamp.cut-off]]</label>
@ -206,7 +206,7 @@
<hr/>
<!-- unread & recent settings-->
<div class="mb-4">
<div id="unread-recent-settings" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/post:unread-and-recent]]</h5>
<div class="mb-3">
@ -231,7 +231,7 @@
<hr/>
<!-- signature settings -->
<div class="mb-4">
<div id="signature-settings" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/post:signature]]</h5>
<div class="form-check form-switch mb-3">
<input class="form-check-input" type="checkbox" data-field="disableSignatures">
@ -258,7 +258,7 @@
<hr/>
<!-- composer settings -->
<div class="mb-4">
<div id="composer-settings" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/post:composer]]</h5>
<p>

@ -3,7 +3,7 @@
<div class="row settings m-0">
<div id="spy-container" class="col-12 col-md-8 px-0 mb-4" tabindex="0">
<div class="mb-4">
<div id="reputation-settings" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/reputation:reputation]]</h5>
<div class="form-check form-switch mb-3">
@ -22,7 +22,7 @@
<hr/>
<div class="mb-4">
<div id="activity-thresholds" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/reputation:thresholds]]</h5>
<div class="mb-3">
<label class="form-label" for="min:rep:chat">[[admin/settings/reputation:min-rep-chat]]</label>
@ -81,7 +81,7 @@
<hr/>
<div class="mb-4">
<div id="flag-settings" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/reputation:flags]]</h5>
<div class="mb-3">
<label class="form-label" for="flags:limitPerTarget">[[admin/settings/reputation:flags.limit-per-target]]</label>

@ -1,19 +0,0 @@
<!-- IMPORT admin/partials/settings/header.tpl -->
<div class="row">
<div class="col-sm-2 col-12 settings-header">[[admin/settings/sockets:reconnection]]</div>
<div class="col-sm-10 col-12">
<form>
<div class="form-group">
<label for="maxReconnectionAttempts">[[admin/settings/sockets:max-attempts]]</label>
<input class="form-control" id="maxReconnectionAttempts" type="text" value="5" placeholder="[[admin/settings/sockets:default-placeholder, 5]]" data-field="maxReconnectionAttempts" />
</div>
<div class="form-group">
<label for="reconnectionDelay">[[admin/settings/sockets:delay]]</label>
<input class="form-control" id="reconnectionDelay" type="text" value="1500" placeholder="[[admin/settings/sockets:default-placeholder, 1500]]" data-field="reconnectionDelay" />
</div>
</form>
</div>
</div>
<!-- IMPORT admin/partials/settings/footer.tpl -->

@ -3,7 +3,7 @@
<div class="row settings m-0">
<div id="spy-container" class="col-12 col-md-8 px-0 mb-4" tabindex="0">
<div class="mb-4">
<div id="tag-settings" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/tags:tag]]</h5>
<div class="mb-3">
<label class="form-label" for="systemTags">[[admin/settings/tags:system-tags]]</label>
@ -33,7 +33,7 @@
<hr/>
<div class="mb-4">
<div id="related-topics" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/tags:related-topics]]</h5>
<div class="mb-3">
<label class="form-label" for="maximumRelatedTopics">[[admin/settings/tags:max-related-topics]]</label>

@ -3,7 +3,7 @@
<div class="row settings m-0">
<div id="spy-container" class="col-12 col-md-8 px-0 mb-4" tabindex="0">
<div class="mb-4">
<div id="posts" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/uploads:posts]]</h5>
<div class="form-check form-switch mb-3">
@ -116,7 +116,7 @@
<hr/>
<div class="mb-4">
<div id="orphaned-files" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/uploads:orphans]]</h5>
<div class="form-check form-switch mb-3">
<input class="form-check-input" type="checkbox" data-field="preserveOrphanedUploads">
@ -135,7 +135,7 @@
<hr/>
<div class="mb-4">
<div id="profile-avatars" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/uploads:profile-avatars]]</h5>
<div class="form-check form-switch mb-3">
@ -189,7 +189,7 @@
<hr/>
<div class="mb-4">
<div id="profile-covers" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/uploads:profile-covers]]</h5>
<label class="form-label" for="profile:defaultCovers"><strong>[[admin/settings/uploads:default-covers]]</strong></label>
<p class="form-text">

@ -3,7 +3,7 @@
<div class="row settings m-0">
<div id="spy-container" class="col-12 col-md-8 px-0 mb-4" tabindex="0">
<div class="mb-4">
<div id="account-settings" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/user:account-settings]]</h5>
<div class="mb-3">
<label class="form-label" for="allowLoginWith">[[admin/settings/user:allow-login-with]]</label>
@ -54,7 +54,7 @@
<hr/>
<div class="mb-4">
<div id="account-protection" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/user:account-protection]]</h5>
<div class="mb-3">
<label class="form-label" for="adminReloginDuration">[[admin/settings/user:admin-relogin-duration]]</label>
@ -82,7 +82,7 @@
<hr/>
<div class="mb-4">
<div id="session-time" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/user:session-time]]</h5>
<div class="row">
<div class="col-sm-6">
@ -121,7 +121,7 @@
<hr/>
<div class="mb-4">
<div id="user-registration" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/user:registration]]</h5>
<div class="mb-3">
<label class="form-label" for="registrationType">[[admin/settings/user:registration-type]]</label>
@ -213,7 +213,7 @@
<hr/>
<div class="mb-4">
<div id="guest-settings" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/guest:guest-settings]]</h5>
<div class="mb-3">
@ -241,7 +241,7 @@
<hr/>
<div class="mb-4">
<div id="default-user-settings" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/user:default-user-settings]]</h5>
<div class="form-check form-switch mb-3">
<input class="form-check-input" type="checkbox" data-field="showemail">

@ -3,7 +3,7 @@
<div class="row settings m-0">
<div id="spy-container" class="col-12 col-md-8 px-0 mb-4" tabindex="0">
<div class="mb-4">
<div id="crawlability-settings" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/web-crawler:crawlability-settings]]</h5>
<div>
<label class="form-label">[[admin/settings/web-crawler:robots-txt]]</label>
@ -13,7 +13,7 @@
<hr/>
<div class="mb-4">
<div id="sitemap-feed-settings" class="mb-4">
<h5 class="fw-bold tracking-tight settings-header">[[admin/settings/web-crawler:sitemap-feed-settings]]</h5>
<div class="form-check form-switch mb-3">
<input class="form-check-input" type="checkbox" data-field="feeds:disableRSS">

Loading…
Cancel
Save