From 77382e3b7ba5ac97e65fa2c41f49d36cca525fa8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Thu, 28 Nov 2024 10:12:00 -0500 Subject: [PATCH 01/82] feat: add visibility option to, closes #12942 --- .../en-GB/admin/manage/user-custom-fields.json | 6 +++++- public/src/admin/manage/users/custom-fields.js | 1 + src/controllers/accounts/edit.js | 2 +- src/controllers/accounts/helpers.js | 17 +++++++++++++++-- src/controllers/accounts/profile.js | 2 +- src/controllers/admin/users.js | 1 + src/views/admin/manage/users/custom-fields.tpl | 6 +++++- .../manage-custom-user-fields-modal.tpl | 9 +++++++++ src/views/admin/settings/reputation.tpl | 4 ++-- 9 files changed, 40 insertions(+), 8 deletions(-) diff --git a/public/language/en-GB/admin/manage/user-custom-fields.json b/public/language/en-GB/admin/manage/user-custom-fields.json index 2471e2e8f1..dab10670d2 100644 --- a/public/language/en-GB/admin/manage/user-custom-fields.json +++ b/public/language/en-GB/admin/manage/user-custom-fields.json @@ -20,5 +20,9 @@ "minimum-reputation": "Minimum reputation", "minimum-reputation-help": "If a user has less than this value they won't be able to use this field", "delete-field-confirm-x": "Do you really want to delete custom field \"%1\"?", - "custom-fields-saved": "Custom fields saved" + "custom-fields-saved": "Custom fields saved", + "visibility": "Visibility", + "visibility-all": "Everyone can see the field", + "visibility-loggedin": "Only logged in users can see the field", + "visibility-privileged": "Only privileged users like admins & moderators can see the field" } \ No newline at end of file diff --git a/public/src/admin/manage/users/custom-fields.js b/public/src/admin/manage/users/custom-fields.js index 631f06ea63..a7b0b65ca2 100644 --- a/public/src/admin/manage/users/custom-fields.js +++ b/public/src/admin/manage/users/custom-fields.js @@ -51,6 +51,7 @@ define('admin/manage/user/custom-fields', [ icon: el.attr('data-icon'), type: el.attr('data-type'), 'select-options': el.attr('data-select-options'), + visibility: el.attr('data-visibility'), 'min:rep': el.attr('data-min-rep'), }; } diff --git a/src/controllers/accounts/edit.js b/src/controllers/accounts/edit.js index 2326361fdc..61a13399a0 100644 --- a/src/controllers/accounts/edit.js +++ b/src/controllers/accounts/edit.js @@ -29,7 +29,7 @@ editController.get = async function (req, res, next) { const [canUseSignature, canManageUsers, customUserFields] = await Promise.all([ privileges.global.can('signature', req.uid), privileges.admin.can('admin:users', req.uid), - accountHelpers.getCustomUserFields(userData), + accountHelpers.getCustomUserFields(req.uid, userData), ]); userData.customUserFields = customUserFields; diff --git a/src/controllers/accounts/helpers.js b/src/controllers/accounts/helpers.js index 72ef70b9bd..2bf00215ae 100644 --- a/src/controllers/accounts/helpers.js +++ b/src/controllers/accounts/helpers.js @@ -129,13 +129,26 @@ helpers.getUserDataByUserSlug = async function (userslug, callerUID, query = {}) return hookData.userData; }; -helpers.getCustomUserFields = async function (userData) { +helpers.getCustomUserFields = async function (callerUID, userData) { const keys = await db.getSortedSetRange('user-custom-fields', 0, -1); const allFields = (await db.getObjects(keys.map(k => `user-custom-field:${k}`))).filter(Boolean); + const isSelf = String(callerUID) === String(userData.uid); + const [isAdmin, isModOfAny] = await Promise.all([ + privileges.users.isAdministrator(callerUID), + user.isModeratorOfAnyCategory(callerUID), + ]); + const fields = allFields.filter((field) => { + const visibilityCheck = isAdmin || isModOfAny || isSelf || field.visibility === 'all' || + ( + field.visibility === 'loggedin' && + String(callerUID) !== '0' && + String(callerUID) !== '-1' + ); const minRep = field['min:rep'] || 0; - return userData.reputation >= minRep || meta.config['reputation:disabled']; + const repCheck = userData.reputation >= minRep || meta.config['reputation:disabled']; + return visibilityCheck && repCheck; }); fields.forEach((f) => { diff --git a/src/controllers/accounts/profile.js b/src/controllers/accounts/profile.js index f99b1f9fcd..e24415794d 100644 --- a/src/controllers/accounts/profile.js +++ b/src/controllers/accounts/profile.js @@ -25,7 +25,7 @@ profileController.get = async function (req, res, next) { const [latestPosts, bestPosts, customUserFields] = await Promise.all([ getLatestPosts(req.uid, userData), getBestPosts(req.uid, userData), - accountHelpers.getCustomUserFields(userData), + accountHelpers.getCustomUserFields(req.uid, userData), posts.parseSignature(userData, req.uid), ]); userData.customUserFields = customUserFields; diff --git a/src/controllers/admin/users.js b/src/controllers/admin/users.js index db1be70157..4ea3ebb9e5 100644 --- a/src/controllers/admin/users.js +++ b/src/controllers/admin/users.js @@ -310,6 +310,7 @@ usersController.customFields = async function (req, res) { field.selectOptionsFormatted = field['select-options'].trim().split('\n').join(', '); } field['min:rep'] = field['min:rep'] || 0; + field.visibility = field.visibility || 'all'; }); res.render('admin/manage/users/custom-fields', { fields: fields }); }; diff --git a/src/views/admin/manage/users/custom-fields.tpl b/src/views/admin/manage/users/custom-fields.tpl index f3eb010987..b16a0bd754 100644 --- a/src/views/admin/manage/users/custom-fields.tpl +++ b/src/views/admin/manage/users/custom-fields.tpl @@ -21,13 +21,14 @@ [[admin/manage/user-custom-fields:key]] [[admin/manage/user-custom-fields:name]] [[admin/manage/user-custom-fields:type]] + [[admin/manage/user-custom-fields:visibility]] [[admin/manage/user-custom-fields:min-rep]] {{{ each fields }}} - + @@ -41,6 +42,9 @@ {{{ end }}} + + {./visibility} + {./min:rep} diff --git a/src/views/admin/partials/manage-custom-user-fields-modal.tpl b/src/views/admin/partials/manage-custom-user-fields-modal.tpl index 27b631a80d..327c5296e1 100644 --- a/src/views/admin/partials/manage-custom-user-fields-modal.tpl +++ b/src/views/admin/partials/manage-custom-user-fields-modal.tpl @@ -29,6 +29,15 @@ +
+ + +
+
diff --git a/src/views/admin/settings/reputation.tpl b/src/views/admin/settings/reputation.tpl index 10e72b6f47..49fa95d1e6 100644 --- a/src/views/admin/settings/reputation.tpl +++ b/src/views/admin/settings/reputation.tpl @@ -15,7 +15,7 @@
- +
- + + +
+
diff --git a/test/uploads.js b/test/uploads.js index ff59c4c1f2..a8e48afac5 100644 --- a/test/uploads.js +++ b/test/uploads.js @@ -164,6 +164,24 @@ describe('Upload Controllers', () => { meta.config.resizeImageWidthThreshold = 2000; }); + it('should resize and upload an image to a post and replace original', async () => { + const oldValue = meta.config.resizeImageWidth; + const keepOldValue = meta.config.resizeImageKeepOriginal; + meta.config.resizeImageWidth = 10; + meta.config.resizeImageWidthThreshold = 10; + meta.config.resizeImageKeepOriginal = 0; + const { response, body } = await helpers.uploadFile(`${nconf.get('url')}/api/post/upload`, path.join(__dirname, '../test/files/test.png'), {}, jar, csrf_token); + + assert.equal(response.statusCode, 200); + assert(body && body.status && body.response && body.response.images); + assert(Array.isArray(body.response.images)); + assert(body.response.images[0].url); + assert(body.response.images[0].url.match(/\/assets\/uploads\/files\/\d+-test.png/)); + meta.config.resizeImageWidth = oldValue; + meta.config.resizeImageWidthThreshold = 2000; + meta.config.resizeImageKeepOriginal = keepOldValue; + }); + it('should upload a file to a post', async () => { const oldValue = meta.config.allowedFileExtensions; meta.config.allowedFileExtensions = 'png,jpg,bmp,html'; From 0c6653425bbe423ef409195b078902b900676118 Mon Sep 17 00:00:00 2001 From: Misty Release Bot Date: Mon, 2 Dec 2024 15:09:16 +0000 Subject: [PATCH 10/82] chore(i18n): fallback strings for new resources: nodebb.admin-settings-uploads --- public/language/ar/admin/settings/uploads.json | 1 + public/language/bg/admin/settings/uploads.json | 1 + public/language/bn/admin/settings/uploads.json | 1 + public/language/cs/admin/settings/uploads.json | 1 + public/language/da/admin/settings/uploads.json | 1 + public/language/de/admin/settings/uploads.json | 1 + public/language/el/admin/settings/uploads.json | 1 + public/language/en-US/admin/settings/uploads.json | 1 + public/language/en-x-pirate/admin/settings/uploads.json | 1 + public/language/es/admin/settings/uploads.json | 1 + public/language/et/admin/settings/uploads.json | 1 + public/language/fa-IR/admin/settings/uploads.json | 1 + public/language/fi/admin/settings/uploads.json | 1 + public/language/fr/admin/settings/uploads.json | 1 + public/language/gl/admin/settings/uploads.json | 1 + public/language/he/admin/settings/uploads.json | 1 + public/language/hr/admin/settings/uploads.json | 1 + public/language/hu/admin/settings/uploads.json | 1 + public/language/hy/admin/settings/uploads.json | 1 + public/language/id/admin/settings/uploads.json | 1 + public/language/it/admin/settings/uploads.json | 1 + public/language/ja/admin/settings/uploads.json | 1 + public/language/ko/admin/settings/uploads.json | 1 + public/language/lt/admin/settings/uploads.json | 1 + public/language/lv/admin/settings/uploads.json | 1 + public/language/ms/admin/settings/uploads.json | 1 + public/language/nb/admin/settings/uploads.json | 1 + public/language/nl/admin/settings/uploads.json | 1 + public/language/nn-NO/admin/settings/uploads.json | 1 + public/language/pl/admin/settings/uploads.json | 1 + public/language/pt-BR/admin/settings/uploads.json | 1 + public/language/pt-PT/admin/settings/uploads.json | 1 + public/language/ro/admin/settings/uploads.json | 1 + public/language/ru/admin/settings/uploads.json | 1 + public/language/rw/admin/settings/uploads.json | 1 + public/language/sc/admin/settings/uploads.json | 1 + public/language/sk/admin/settings/uploads.json | 1 + public/language/sl/admin/settings/uploads.json | 1 + public/language/sq-AL/admin/settings/uploads.json | 1 + public/language/sr/admin/settings/uploads.json | 1 + public/language/sv/admin/settings/uploads.json | 1 + public/language/th/admin/settings/uploads.json | 1 + public/language/tr/admin/settings/uploads.json | 1 + public/language/uk/admin/settings/uploads.json | 1 + public/language/vi/admin/settings/uploads.json | 1 + public/language/zh-CN/admin/settings/uploads.json | 1 + public/language/zh-TW/admin/settings/uploads.json | 1 + 47 files changed, 47 insertions(+) diff --git a/public/language/ar/admin/settings/uploads.json b/public/language/ar/admin/settings/uploads.json index ea99a9c7e3..b8d85be443 100644 --- a/public/language/ar/admin/settings/uploads.json +++ b/public/language/ar/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "الحد الأقصى لحجم الملف (بالكيبيبايت)", diff --git a/public/language/bg/admin/settings/uploads.json b/public/language/bg/admin/settings/uploads.json index fb73ca7818..e2520d85dc 100644 --- a/public/language/bg/admin/settings/uploads.json +++ b/public/language/bg/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(в пиксели; по подразбиране: 2000 пиксела. 0 = изключено)", "resize-image-width": "Намаляване на размера на изображенията до определена ширина", "resize-image-width-help": "(в пиксели; по подразбиране: 760 пиксела. 0 = изключено)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Качество при преоразмеряване на изображенията", "resize-image-quality-help": "Използване на по-ниско качество за намаляване на размера на файловете за преоразмерените изображения.", "max-file-size": "Максимален размер на файловете (в КиБ)", diff --git a/public/language/bn/admin/settings/uploads.json b/public/language/bn/admin/settings/uploads.json index f99528e4d0..22046915d9 100644 --- a/public/language/bn/admin/settings/uploads.json +++ b/public/language/bn/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "Maximum File Size (in KiB)", diff --git a/public/language/cs/admin/settings/uploads.json b/public/language/cs/admin/settings/uploads.json index 0206a61f2c..dea6aa44df 100644 --- a/public/language/cs/admin/settings/uploads.json +++ b/public/language/cs/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Změnit velikost obrázků na určenou šířku", "resize-image-width-help": "(v pixelech, výchozí: 760 pixelů, pro zakázání - nastavte 0)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Kvalita při změně velikosti obrázků", "resize-image-quality-help": "Pro snížení velikosti zmenšených obrázků použijte nižší nastavení kvality.", "max-file-size": "Maximální velikost souboru (v KiB)", diff --git a/public/language/da/admin/settings/uploads.json b/public/language/da/admin/settings/uploads.json index f99528e4d0..22046915d9 100644 --- a/public/language/da/admin/settings/uploads.json +++ b/public/language/da/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "Maximum File Size (in KiB)", diff --git a/public/language/de/admin/settings/uploads.json b/public/language/de/admin/settings/uploads.json index 97fe1727df..269bfb8178 100644 --- a/public/language/de/admin/settings/uploads.json +++ b/public/language/de/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Bilder zu einer bestimmten Breite runterskalieren", "resize-image-width-help": "(in Pixeln, standardmäßig 760 Pixel, auf 0 setzen um zu deaktivieren)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Zu benutzende Qualität beim verändern von Bildauflösungen", "resize-image-quality-help": "Benutze eine niedrigere Qualitätseinstellung um die Dateigröße der gespeicherten Bilder zu minimieren.", "max-file-size": "Maximale Dateigröße (in KiB)", diff --git a/public/language/el/admin/settings/uploads.json b/public/language/el/admin/settings/uploads.json index f99528e4d0..22046915d9 100644 --- a/public/language/el/admin/settings/uploads.json +++ b/public/language/el/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "Maximum File Size (in KiB)", diff --git a/public/language/en-US/admin/settings/uploads.json b/public/language/en-US/admin/settings/uploads.json index f99528e4d0..22046915d9 100644 --- a/public/language/en-US/admin/settings/uploads.json +++ b/public/language/en-US/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "Maximum File Size (in KiB)", diff --git a/public/language/en-x-pirate/admin/settings/uploads.json b/public/language/en-x-pirate/admin/settings/uploads.json index f99528e4d0..22046915d9 100644 --- a/public/language/en-x-pirate/admin/settings/uploads.json +++ b/public/language/en-x-pirate/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "Maximum File Size (in KiB)", diff --git a/public/language/es/admin/settings/uploads.json b/public/language/es/admin/settings/uploads.json index 0b4f97f015..60273aa8ac 100644 --- a/public/language/es/admin/settings/uploads.json +++ b/public/language/es/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Cambiar el tamaño de las imágenes hasta el ancho especificado", "resize-image-width-help": "(En píxeles, predeterminado: 760 píxeles, configúrelo 0 para desactivar)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Calidad a utlizar cuando se redimensionen imágenes", "resize-image-quality-help": "Usar una calidad inferior para reducir el tamaño de archivo de las imágenes redimensionadas.", "max-file-size": "Tamaño Máximo de Archivo (en KiB)", diff --git a/public/language/et/admin/settings/uploads.json b/public/language/et/admin/settings/uploads.json index f99528e4d0..22046915d9 100644 --- a/public/language/et/admin/settings/uploads.json +++ b/public/language/et/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "Maximum File Size (in KiB)", diff --git a/public/language/fa-IR/admin/settings/uploads.json b/public/language/fa-IR/admin/settings/uploads.json index e256e20996..baf90ba0e4 100644 --- a/public/language/fa-IR/admin/settings/uploads.json +++ b/public/language/fa-IR/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "Maximum File Size (in KiB)", diff --git a/public/language/fi/admin/settings/uploads.json b/public/language/fi/admin/settings/uploads.json index 4d0acbbced..a1412b0ed2 100644 --- a/public/language/fi/admin/settings/uploads.json +++ b/public/language/fi/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(kuvapisteinä, oletus on 760, poista käytöstä arvolla 0)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "Suurin sallittu tiedostokoko (kibitavuina)", diff --git a/public/language/fr/admin/settings/uploads.json b/public/language/fr/admin/settings/uploads.json index 53254a2c82..453b6be283 100644 --- a/public/language/fr/admin/settings/uploads.json +++ b/public/language/fr/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Redimensionner les images à la largeur spécifiée", "resize-image-width-help": "(en pixels, valeur par défaut : 760 pixels, mettez 0 pour désactiver)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Qualité des images redimensionnées", "resize-image-quality-help": "Diminuer la qualité des images redimensionnées pour réduire leur taille.", "max-file-size": "Taille maximale d'un fichier (en Kio)", diff --git a/public/language/gl/admin/settings/uploads.json b/public/language/gl/admin/settings/uploads.json index f99528e4d0..22046915d9 100644 --- a/public/language/gl/admin/settings/uploads.json +++ b/public/language/gl/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "Maximum File Size (in KiB)", diff --git a/public/language/he/admin/settings/uploads.json b/public/language/he/admin/settings/uploads.json index 176da54b20..61403d3df5 100644 --- a/public/language/he/admin/settings/uploads.json +++ b/public/language/he/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(בפיקסלים, ברירת מחדל: 2000 פיקסלים, הגדירו 0 כדי להשבית)", "resize-image-width": "שינוי גודל תמונות לגודל המוגדר", "resize-image-width-help": "(בפיקסלים, ברירת מחדל: 760 פיקסלים, הגדירו 0 כדי להשבית)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "באיזה איכות להשתמש כאשר משנים תמונה", "resize-image-quality-help": "השתמשו ברזולוציה נמוכה כדי להקטין את גודל התמונה הממוזערת", "max-file-size": "גודל קובץ מירבית (בKiB)", diff --git a/public/language/hr/admin/settings/uploads.json b/public/language/hr/admin/settings/uploads.json index feba9685d8..1efba861e4 100644 --- a/public/language/hr/admin/settings/uploads.json +++ b/public/language/hr/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "Maksimalna veličina datoteka (in KiB)", diff --git a/public/language/hu/admin/settings/uploads.json b/public/language/hu/admin/settings/uploads.json index fc687bde02..fb103aea58 100644 --- a/public/language/hu/admin/settings/uploads.json +++ b/public/language/hu/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Kép átméretezése megadott szélességre", "resize-image-width-help": "(pixelben, alapértelmezett: 760 pixel, állítsd 0-ra a kikapcsoláshoz)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Használandó minőség képek átméretezésekor", "resize-image-quality-help": "Alacsonyabb minőség beállítás használata az átméretezett képek fájlméretének csökkentésére.", "max-file-size": "Maximum fájlméret (KB-ban)", diff --git a/public/language/hy/admin/settings/uploads.json b/public/language/hy/admin/settings/uploads.json index 100ab63c39..6fa6f789fa 100644 --- a/public/language/hy/admin/settings/uploads.json +++ b/public/language/hy/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Չափափոխել պատկերները մինչև նշված լայնությունը", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Նկարների չափափոխման ժամանակ օգտագործելու որակ", "resize-image-quality-help": "Օգտագործեք ավելի ցածր որակի կարգավորում՝ չափափոխված պատկերների ֆայլի չափը նվազեցնելու համար:", "max-file-size": "Ֆայլի առավելագույն չափը (կիբ-ով)", diff --git a/public/language/id/admin/settings/uploads.json b/public/language/id/admin/settings/uploads.json index f99528e4d0..22046915d9 100644 --- a/public/language/id/admin/settings/uploads.json +++ b/public/language/id/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "Maximum File Size (in KiB)", diff --git a/public/language/it/admin/settings/uploads.json b/public/language/it/admin/settings/uploads.json index e3ae903b13..76231c5bba 100644 --- a/public/language/it/admin/settings/uploads.json +++ b/public/language/it/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixel, predefinito: 2000 pixel, impostare su 0 per disabilitare)", "resize-image-width": "Ridimensiona le immagini sotto specificando la larghezza", "resize-image-width-help": "(in pixel, predefinito: 760 pixel, imposta 0 per disabilitare)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Qualità da utilizzare nel ridimensionamento delle immagini", "resize-image-quality-help": "Utilizzare un'impostazione di qualità inferiore per ridurre la dimensione dei file delle immagini ridimensionate.", "max-file-size": "Dimensione File Massima (in KiB)", diff --git a/public/language/ja/admin/settings/uploads.json b/public/language/ja/admin/settings/uploads.json index 116321ef45..84b216ba93 100644 --- a/public/language/ja/admin/settings/uploads.json +++ b/public/language/ja/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "最大ファイルサイズ(KB)", diff --git a/public/language/ko/admin/settings/uploads.json b/public/language/ko/admin/settings/uploads.json index b2d1758ef2..f222e5fe80 100644 --- a/public/language/ko/admin/settings/uploads.json +++ b/public/language/ko/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "지정된 너비까지 이미지 크기 조정", "resize-image-width-help": "(픽셀 단위, 기본값: 760픽셀, 비활성화하려면 0으로 설정)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "이미지 크기 조정 시 사용할 품질", "resize-image-quality-help": "이미지의 파일 크기를 줄이기 위해 낮은 품질 설정을 사용합니다.", "max-file-size": "최대 파일 크기(키비바이트 단위)", diff --git a/public/language/lt/admin/settings/uploads.json b/public/language/lt/admin/settings/uploads.json index f99528e4d0..22046915d9 100644 --- a/public/language/lt/admin/settings/uploads.json +++ b/public/language/lt/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "Maximum File Size (in KiB)", diff --git a/public/language/lv/admin/settings/uploads.json b/public/language/lv/admin/settings/uploads.json index 1b7b1987c4..0b79f6bb9a 100644 --- a/public/language/lv/admin/settings/uploads.json +++ b/public/language/lv/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Samazināt blides izmērus līdz noteiktajam platumam", "resize-image-width-help": "(pikseļos, pēc noklusējuma: 760 pikseļi, iestatīt 0, lai atspējotu)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Kvalitāte, ko izmantot, pārveidojot bildes", "resize-image-quality-help": "Izmantot zemākas kvalitātes iestatījumu, lai samazinātu mainīto bildes faila lielumu.", "max-file-size": "Maksimālais faila lielums (KiB)", diff --git a/public/language/ms/admin/settings/uploads.json b/public/language/ms/admin/settings/uploads.json index f99528e4d0..22046915d9 100644 --- a/public/language/ms/admin/settings/uploads.json +++ b/public/language/ms/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "Maximum File Size (in KiB)", diff --git a/public/language/nb/admin/settings/uploads.json b/public/language/nb/admin/settings/uploads.json index 40b69bc367..ff5386fedb 100644 --- a/public/language/nb/admin/settings/uploads.json +++ b/public/language/nb/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(i piksler, standard: 2000 piksler, sett til 0 for å deaktivere)", "resize-image-width": "Endre størrelse på bilder til spesifisert bredde", "resize-image-width-help": "(i piksler, standard: 760 piksler, sett til 0 for å deaktivere)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Kvalitet ved endring av størrelse på bilder", "resize-image-quality-help": "Bruk en lavere kvalitet for å redusere filstørrelsen på bilder med endret størrelse.", "max-file-size": "Maksimal filstørrelse (i KiB)", diff --git a/public/language/nl/admin/settings/uploads.json b/public/language/nl/admin/settings/uploads.json index f99528e4d0..22046915d9 100644 --- a/public/language/nl/admin/settings/uploads.json +++ b/public/language/nl/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "Maximum File Size (in KiB)", diff --git a/public/language/nn-NO/admin/settings/uploads.json b/public/language/nn-NO/admin/settings/uploads.json index 75bdfd08f4..4986849ef3 100644 --- a/public/language/nn-NO/admin/settings/uploads.json +++ b/public/language/nn-NO/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "( i pixels, standard er 2000 pixler, angi 0 for å avvise) ", "resize-image-width": "Endre bilete breidde", "resize-image-width-help": "Angi ny breidde for bilete som vert endra ved opplasting.", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Biletekvalitet ved endring", "resize-image-quality-help": "Angi kvaliteten for bilete som vert endra ved opplasting.", "max-file-size": "Maks filstorleik", diff --git a/public/language/pl/admin/settings/uploads.json b/public/language/pl/admin/settings/uploads.json index 5103f805df..51ca09ce3e 100644 --- a/public/language/pl/admin/settings/uploads.json +++ b/public/language/pl/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(w pikselach; domyślnie 2000 pikseli; ustaw 0 aby wyłączyć)", "resize-image-width": "Zmień rozmiar obrazów na określoną szerokość", "resize-image-width-help": "(w pikselach, domyślnie: 760 pixeli, ustaw 0, aby wyłączyć)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Poziom jakości użyty przy zmianie rozmiaru", "resize-image-quality-help": "Użyj niższych ustawień jakości aby zredukować rozmiar pliku zmienionego obrazu.", "max-file-size": "Maksymalny rozmiar plików (w KiB)", diff --git a/public/language/pt-BR/admin/settings/uploads.json b/public/language/pt-BR/admin/settings/uploads.json index c8164fcdb8..c203d2cd23 100644 --- a/public/language/pt-BR/admin/settings/uploads.json +++ b/public/language/pt-BR/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Redimensionar imagens para a largura especificada", "resize-image-width-help": "(em pixels, padrão: 760 pixels, defina como 0 para desativar)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Qualidade para usar ao redimensionar imagens", "resize-image-quality-help": "Use uma configuração de qualidade mais baixa para reduzir o tamanho do arquivo de imagens redimensionadas.", "max-file-size": "Tamanho Máximo de Arquivo (em KiB)", diff --git a/public/language/pt-PT/admin/settings/uploads.json b/public/language/pt-PT/admin/settings/uploads.json index 0478d0f3c1..91c89d7a46 100644 --- a/public/language/pt-PT/admin/settings/uploads.json +++ b/public/language/pt-PT/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(em pixeis, predefinido: 760 pixeis, definir 0 para desativar)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Qualidade a utilizar quando redimensionar imagens", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "Maximum File Size (in KiB)", diff --git a/public/language/ro/admin/settings/uploads.json b/public/language/ro/admin/settings/uploads.json index f99528e4d0..22046915d9 100644 --- a/public/language/ro/admin/settings/uploads.json +++ b/public/language/ro/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "Maximum File Size (in KiB)", diff --git a/public/language/ru/admin/settings/uploads.json b/public/language/ru/admin/settings/uploads.json index fb2fadbd1f..8725c70db8 100644 --- a/public/language/ru/admin/settings/uploads.json +++ b/public/language/ru/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Уменьшать изображения до", "resize-image-width-help": "(в пикс., стандартная настройка: 760, укажите 0, чтобы отключить)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Качество уменьшаемых изображений", "resize-image-quality-help": "Чем ниже качество, тем меньше размер файла.", "max-file-size": "Макс. размер файла (в КиБ)", diff --git a/public/language/rw/admin/settings/uploads.json b/public/language/rw/admin/settings/uploads.json index f99528e4d0..22046915d9 100644 --- a/public/language/rw/admin/settings/uploads.json +++ b/public/language/rw/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "Maximum File Size (in KiB)", diff --git a/public/language/sc/admin/settings/uploads.json b/public/language/sc/admin/settings/uploads.json index f99528e4d0..22046915d9 100644 --- a/public/language/sc/admin/settings/uploads.json +++ b/public/language/sc/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "Maximum File Size (in KiB)", diff --git a/public/language/sk/admin/settings/uploads.json b/public/language/sk/admin/settings/uploads.json index c279445335..f9a18dcb4c 100644 --- a/public/language/sk/admin/settings/uploads.json +++ b/public/language/sk/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Kvalita pri zmene veľkosti obrázkov", "resize-image-quality-help": "Pre zníženie veľkosti zmenšených obrázkov použite nižšie nastavenia kvality.", "max-file-size": "Maximálna veľkosť súboru (v KiB)", diff --git a/public/language/sl/admin/settings/uploads.json b/public/language/sl/admin/settings/uploads.json index d590c65f79..fc43ca3793 100644 --- a/public/language/sl/admin/settings/uploads.json +++ b/public/language/sl/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "Maximum File Size (in KiB)", diff --git a/public/language/sq-AL/admin/settings/uploads.json b/public/language/sq-AL/admin/settings/uploads.json index f99528e4d0..22046915d9 100644 --- a/public/language/sq-AL/admin/settings/uploads.json +++ b/public/language/sq-AL/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "Maximum File Size (in KiB)", diff --git a/public/language/sr/admin/settings/uploads.json b/public/language/sr/admin/settings/uploads.json index f99528e4d0..22046915d9 100644 --- a/public/language/sr/admin/settings/uploads.json +++ b/public/language/sr/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "Maximum File Size (in KiB)", diff --git a/public/language/sv/admin/settings/uploads.json b/public/language/sv/admin/settings/uploads.json index f99528e4d0..22046915d9 100644 --- a/public/language/sv/admin/settings/uploads.json +++ b/public/language/sv/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "Maximum File Size (in KiB)", diff --git a/public/language/th/admin/settings/uploads.json b/public/language/th/admin/settings/uploads.json index f99528e4d0..22046915d9 100644 --- a/public/language/th/admin/settings/uploads.json +++ b/public/language/th/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Quality to use when resizing images", "resize-image-quality-help": "Use a lower quality setting to reduce the file size of resized images.", "max-file-size": "Maximum File Size (in KiB)", diff --git a/public/language/tr/admin/settings/uploads.json b/public/language/tr/admin/settings/uploads.json index e24325ae53..f9b369f66a 100644 --- a/public/language/tr/admin/settings/uploads.json +++ b/public/language/tr/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Görüntüleri belirtilen genişliğe yeniden boyutlandır", "resize-image-width-help": "(piksel olarak, varsayılan: 760 piksel, devre dışı bırakmak için 0 yazın.)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Resimleri yeniden boyutlandırırken kullanılacak kalite", "resize-image-quality-help": "Yeniden boyutlandırılan görüntülerin dosya boyutunu azaltmak için daha düşük bir kalite ayarı kullan.", "max-file-size": "Maksimum Dosya Boyutu (KiB)", diff --git a/public/language/uk/admin/settings/uploads.json b/public/language/uk/admin/settings/uploads.json index c96711241b..f54640cb29 100644 --- a/public/language/uk/admin/settings/uploads.json +++ b/public/language/uk/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "Resize images down to specified width", "resize-image-width-help": "(in pixels, default: 760 pixels, set to 0 to disable)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Якість зображення при зміні розміру", "resize-image-quality-help": "Використовувати нижчу якість зображення для зменшення розміру файла при зміні розміру зображення.", "max-file-size": "Максимальний розмір файлу (в КіБ)", diff --git a/public/language/vi/admin/settings/uploads.json b/public/language/vi/admin/settings/uploads.json index b03f8230f3..de6c056e17 100644 --- a/public/language/vi/admin/settings/uploads.json +++ b/public/language/vi/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(tính bằng pixel, mặc định: 2000 pixel, đặt thành 0 để tắt)", "resize-image-width": "Giảm kích cỡ ảnh xuống đến chiều rộng đã đặt", "resize-image-width-help": "(tính bằng pixel, mặc định: 760 pixel, đặt thành 0 để tắt)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "Chất lượng để sử dụng khi thay đổi kích thước hình ảnh", "resize-image-quality-help": "Dùng cài đặt chất lượng thấp hơn để giảm kích cỡ tệp ảnh đã thay đổi kích cỡ.", "max-file-size": "Kích Cỡ Tệp Tối Đa (KiB)", diff --git a/public/language/zh-CN/admin/settings/uploads.json b/public/language/zh-CN/admin/settings/uploads.json index 75d1b95090..8778274e58 100644 --- a/public/language/zh-CN/admin/settings/uploads.json +++ b/public/language/zh-CN/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "缩小图片到指定宽度", "resize-image-width-help": "(像素单位,默认 760 px,设置为0以禁用)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "调整图像大小时使用的质量", "resize-image-quality-help": "使用较低质量的设置来减小调整过大小的图像的文件大小", "max-file-size": "最大文件尺寸(单位 KiB)", diff --git a/public/language/zh-TW/admin/settings/uploads.json b/public/language/zh-TW/admin/settings/uploads.json index 3b82fa1ce4..fc3bddd9ca 100644 --- a/public/language/zh-TW/admin/settings/uploads.json +++ b/public/language/zh-TW/admin/settings/uploads.json @@ -12,6 +12,7 @@ "resize-image-width-threshold-help": "(in pixels, default: 2000 pixels, set to 0 to disable)", "resize-image-width": "縮小圖片到指定寬度", "resize-image-width-help": "(像素單位,預設 760 px,設定為0以停用)", + "resize-image-keep-original": "Keep original image after resize", "resize-image-quality": "調整圖片大小時使用的品質", "resize-image-quality-help": "使用較低品質的設定來減小調整過大小的圖片的檔案大小", "max-file-size": "最大檔案大小(單位 KiB)", From 69a08c0f6c01813f2f68ffc478ecdf55722506ea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Mon, 2 Dec 2024 10:38:21 -0500 Subject: [PATCH 11/82] feat: use displayname in chat teasers/userlist, in digest email #12945 --- public/src/client/chats/messages.js | 2 +- src/messaging/index.js | 4 ++-- src/views/emails/digest.tpl | 8 ++++---- src/views/partials/chats/message.tpl | 2 +- src/views/partials/chats/room-teaser.tpl | 2 +- src/views/partials/chats/user-list.tpl | 2 +- 6 files changed, 10 insertions(+), 10 deletions(-) diff --git a/public/src/client/chats/messages.js b/public/src/client/chats/messages.js index f1339c7562..8726f78914 100644 --- a/public/src/client/chats/messages.js +++ b/public/src/client/chats/messages.js @@ -181,7 +181,7 @@ define('forum/chats/messages', [ const replyToEl = composerEl.find('[component="chat/composer/replying-to"]'); replyToEl.attr('data-tomid', mid) .find('[component="chat/composer/replying-to-text"]') - .translateText(`[[modules:chat.replying-to, ${msgEl.attr('data-username')}]]`); + .translateText(`[[modules:chat.replying-to, ${msgEl.attr('data-displayname')}]]`); replyToEl.removeClass('hidden'); replyToEl.find('[component="chat/composer/replying-to-cancel"]').off('click') .on('click', () => { diff --git a/src/messaging/index.js b/src/messaging/index.js index eda2bd4ac0..5bcda1c25a 100644 --- a/src/messaging/index.js +++ b/src/messaging/index.js @@ -233,7 +233,7 @@ Messaging.getRecentChats = async (callerUid, uid, start, stop) => { Messaging.generateUsernames = function (room, excludeUid) { const users = room.users.filter(u => u && parseInt(u.uid, 10) !== excludeUid); - const usernames = users.map(u => u.username); + const usernames = users.map(u => u.displayname); if (users.length > 3) { return translator.compile( 'modules:chat.usernames-and-x-others', @@ -246,7 +246,7 @@ Messaging.generateUsernames = function (room, excludeUid) { Messaging.generateChatWithMessage = async function (room, callerUid, userLang) { const users = room.users.filter(u => u && parseInt(u.uid, 10) !== callerUid); - const usernames = users.map(u => `${u.username}`); + const usernames = users.map(u => `${u.displayname}`); let compiled = ''; if (!users.length) { return '[[modules:chat.no-users-in-room]]'; diff --git a/src/views/emails/digest.tpl b/src/views/emails/digest.tpl index 849c112b7e..3cc21af00a 100644 --- a/src/views/emails/digest.tpl +++ b/src/views/emails/digest.tpl @@ -9,7 +9,7 @@ @@ -75,7 +75,7 @@ @@ -110,7 +110,7 @@ @@ -145,7 +145,7 @@ diff --git a/src/views/partials/chats/message.tpl b/src/views/partials/chats/message.tpl index 527a055f17..3d2e0ce122 100644 --- a/src/views/partials/chats/message.tpl +++ b/src/views/partials/chats/message.tpl @@ -1,4 +1,4 @@ -
  • +
  • {{{ if messages.parent }}} diff --git a/src/views/partials/chats/room-teaser.tpl b/src/views/partials/chats/room-teaser.tpl index ae7f53f251..ee5aa856d8 100644 --- a/src/views/partials/chats/room-teaser.tpl +++ b/src/views/partials/chats/room-teaser.tpl @@ -2,7 +2,7 @@ {{{ if ./teaser }}}
    {buildAvatar(./teaser.user, "14px", true, "align-middle")} - {./teaser.user.username}: + {./teaser.user.displayname}: {./teaser.content}
    {{{ if ./teaser.timeagoLong }}}{./teaser.timeagoLong}{{{ else }}}{{{ end }}}
    diff --git a/src/views/partials/chats/user-list.tpl b/src/views/partials/chats/user-list.tpl index 306a625290..5825ab7874 100644 --- a/src/views/partials/chats/user-list.tpl +++ b/src/views/partials/chats/user-list.tpl @@ -3,7 +3,7 @@
    {buildAvatar(users, "24px", true)}
    - {./username} + {./displayname} {{{ if ./isOwner }}}{{{ end }}}
    From 4db5a5b63798371f27fb40792e8479a7a45c7292 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Mon, 2 Dec 2024 11:03:58 -0500 Subject: [PATCH 12/82] chore: up mentions --- install/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/package.json b/install/package.json index 560b3fc1a5..41e1281b89 100644 --- a/install/package.json +++ b/install/package.json @@ -103,7 +103,7 @@ "nodebb-plugin-emoji": "5.1.15", "nodebb-plugin-emoji-android": "4.0.0", "nodebb-plugin-markdown": "12.2.8", - "nodebb-plugin-mentions": "4.4.3", + "nodebb-plugin-mentions": "4.4.5", "nodebb-plugin-ntfy": "1.7.7", "nodebb-plugin-spam-be-gone": "2.2.2", "nodebb-rewards-essentials": "1.0.0", From a4a752bba4e79df5cea2dad2f853b8048368b478 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Mon, 2 Dec 2024 17:36:27 -0500 Subject: [PATCH 13/82] chore: up themes --- install/package.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/install/package.json b/install/package.json index 41e1281b89..d898af5f32 100644 --- a/install/package.json +++ b/install/package.json @@ -109,8 +109,8 @@ "nodebb-rewards-essentials": "1.0.0", "nodebb-theme-harmony": "1.2.88", "nodebb-theme-lavender": "7.1.16", - "nodebb-theme-peace": "2.2.22", - "nodebb-theme-persona": "13.3.54", + "nodebb-theme-peace": "2.2.23", + "nodebb-theme-persona": "13.3.56", "nodebb-widget-essentials": "7.0.31", "nodemailer": "6.9.16", "nprogress": "0.2.0", From b9ed78606716f008bde5ac863509427e239e54ef Mon Sep 17 00:00:00 2001 From: Misty Release Bot Date: Tue, 3 Dec 2024 09:19:53 +0000 Subject: [PATCH 14/82] Latest translations and fallbacks --- .../language/bg/admin/settings/uploads.json | 2 +- .../language/it/admin/settings/uploads.json | 2 +- public/language/nb/admin/admin.json | 2 +- public/language/nb/admin/advanced/cache.json | 12 +- public/language/nb/admin/advanced/errors.json | 26 +-- .../nb/admin/appearance/customise.json | 28 +-- .../language/nb/admin/appearance/skins.json | 32 ++-- .../language/nb/admin/appearance/themes.json | 6 +- .../language/nb/admin/development/info.json | 20 +- .../language/nb/admin/development/logger.json | 18 +- .../language/nb/admin/manage/categories.json | 180 +++++++++--------- public/language/nb/admin/menu.json | 112 +++++------ public/language/nb/admin/settings/api.json | 44 ++--- public/language/nb/admin/settings/chat.json | 26 +-- .../language/nb/admin/settings/general.json | 100 +++++----- .../nb/admin/settings/navigation.json | 6 +- .../nb/admin/settings/reputation.json | 2 +- public/language/nb/admin/settings/user.json | 8 +- public/language/nb/aria.json | 2 +- public/language/nb/category.json | 6 +- public/language/nb/email.json | 10 +- public/language/nb/error.json | 22 +-- public/language/nb/global.json | 2 +- public/language/nb/groups.json | 12 +- public/language/nb/modules.json | 12 +- public/language/nb/notifications.json | 24 +-- public/language/nb/pages.json | 22 +-- public/language/nb/recent.json | 2 +- public/language/nb/rewards.json | 6 +- public/language/nb/search.json | 82 ++++---- public/language/nb/tags.json | 8 +- public/language/nb/topic.json | 20 +- public/language/nb/unread.json | 2 +- public/language/nb/users.json | 4 +- .../language/pl/admin/settings/uploads.json | 2 +- public/language/zh-CN/tags.json | 12 +- 36 files changed, 438 insertions(+), 438 deletions(-) diff --git a/public/language/bg/admin/settings/uploads.json b/public/language/bg/admin/settings/uploads.json index e2520d85dc..4820730824 100644 --- a/public/language/bg/admin/settings/uploads.json +++ b/public/language/bg/admin/settings/uploads.json @@ -12,7 +12,7 @@ "resize-image-width-threshold-help": "(в пиксели; по подразбиране: 2000 пиксела. 0 = изключено)", "resize-image-width": "Намаляване на размера на изображенията до определена ширина", "resize-image-width-help": "(в пиксели; по подразбиране: 760 пиксела. 0 = изключено)", - "resize-image-keep-original": "Keep original image after resize", + "resize-image-keep-original": "Запазване на оригиналното изображение след преоразмеряване", "resize-image-quality": "Качество при преоразмеряване на изображенията", "resize-image-quality-help": "Използване на по-ниско качество за намаляване на размера на файловете за преоразмерените изображения.", "max-file-size": "Максимален размер на файловете (в КиБ)", diff --git a/public/language/it/admin/settings/uploads.json b/public/language/it/admin/settings/uploads.json index 76231c5bba..a2ba8602e9 100644 --- a/public/language/it/admin/settings/uploads.json +++ b/public/language/it/admin/settings/uploads.json @@ -12,7 +12,7 @@ "resize-image-width-threshold-help": "(in pixel, predefinito: 2000 pixel, impostare su 0 per disabilitare)", "resize-image-width": "Ridimensiona le immagini sotto specificando la larghezza", "resize-image-width-help": "(in pixel, predefinito: 760 pixel, imposta 0 per disabilitare)", - "resize-image-keep-original": "Keep original image after resize", + "resize-image-keep-original": "Conserva l'immagine originale dopo il ridimensionamento", "resize-image-quality": "Qualità da utilizzare nel ridimensionamento delle immagini", "resize-image-quality-help": "Utilizzare un'impostazione di qualità inferiore per ridurre la dimensione dei file delle immagini ridimensionate.", "max-file-size": "Dimensione File Massima (in KiB)", diff --git a/public/language/nb/admin/admin.json b/public/language/nb/admin/admin.json index 860cfa3888..0a1e227cff 100644 --- a/public/language/nb/admin/admin.json +++ b/public/language/nb/admin/admin.json @@ -10,7 +10,7 @@ "changes-not-saved-message": "NodeBB støtte på et problem ved lagring av endringer. (%1)", "save-changes": "Lagre endringer", "min": "Min:", - "max": "Max:", + "max": "Maks:", "view": "Se", "edit": "Rediger", "add": "Legg til", diff --git a/public/language/nb/admin/advanced/cache.json b/public/language/nb/admin/advanced/cache.json index e5204f7d4c..fcfc1f1b03 100644 --- a/public/language/nb/admin/advanced/cache.json +++ b/public/language/nb/admin/advanced/cache.json @@ -1,10 +1,10 @@ { "cache": "Cache", - "post-cache": "Post-buffer", - "group-cache": "Group Cache", - "local-cache": "Local Cache", - "object-cache": "Object Cache", - "percent-full": "%1%full ", - "post-cache-size": "Post-buffer størrelse", + "post-cache": "Innleggsbuffer", + "group-cache": "Gruppebuffer", + "local-cache": "Lokalbuffer", + "object-cache": "Objektbuffer", + "percent-full": "%1% fullt", + "post-cache-size": "Størrelse på innleggsbuffer", "items-in-cache": "Element i buffer" } \ No newline at end of file diff --git a/public/language/nb/admin/advanced/errors.json b/public/language/nb/admin/advanced/errors.json index fad54e99eb..f8fd66d122 100644 --- a/public/language/nb/admin/advanced/errors.json +++ b/public/language/nb/admin/advanced/errors.json @@ -1,15 +1,15 @@ { - "errors": "Errors", - "figure-x": "Figure %1", - "error-events-per-day": "%1 events per day", - "error.404": "404 Not Found", - "error.503": "503 Service Unavailable", - "manage-error-log": "Manage Error Log", - "export-error-log": "Export Error Log (CSV)", - "clear-error-log": "Clear Error Log", - "route": "Route", - "count": "Count", - "no-routes-not-found": "Hooray! No 404 errors!", - "clear404-confirm": "Are you sure you wish to clear the 404 error logs?", - "clear404-success": "\"404 Not Found\" errors cleared" + "errors": "Feil", + "figure-x": "Figur %1", + "error-events-per-day": "%1 hendelser per dag", + "error.404": "404 Ikke funnet", + "error.503": "503 Tjeneste utilgjengelig", + "manage-error-log": "Administrer feillogg", + "export-error-log": "Eksporter feillogg (CSV)", + "clear-error-log": "Tøm feillogg", + "route": "Rute", + "count": "Antall", + "no-routes-not-found": "Hurra! Ingen 404-feil!", + "clear404-confirm": "Er du sikker på at du vil tømme loggen for 404-feil?", + "clear404-success": "\"404 Ikke funnet\"-feil ble tømt" } \ No newline at end of file diff --git a/public/language/nb/admin/appearance/customise.json b/public/language/nb/admin/appearance/customise.json index 147ef37bb4..7afc59fdda 100644 --- a/public/language/nb/admin/appearance/customise.json +++ b/public/language/nb/admin/appearance/customise.json @@ -1,20 +1,20 @@ { - "customise": "Customise", - "custom-css": "Custom CSS/SASS", - "custom-css.description": "Enter your own CSS/SASS declarations here, which will be applied after all other styles.", - "custom-css.enable": "Enable Custom CSS/SASS", + "customise": "Tilpass", + "custom-css": "Egendefinert CSS/SASS", + "custom-css.description": "Skriv inn dine egne CSS/SASS-erklæringer her, som vil bli brukt etter alle andre stiler.", + "custom-css.enable": "Aktiver egendefinert CSS/SASS", - "custom-js": "Custom Javascript", - "custom-js.description": "Enter your own javascript here. It will be executed after the page is loaded completely.", - "custom-js.enable": "Enable Custom Javascript", + "custom-js": "Egendefinert Javascript", + "custom-js.description": "Skriv inn din egen Javascript-kode her. Den vil bli kjørt etter at siden er fullstendig lastet.", + "custom-js.enable": "Aktiver egendefinert Javascript", - "custom-header": "Custom Header", - "custom-header.description": "Enter custom HTML here (ex. Meta Tags, etc.), which will be appended to the <head> section of your forum's markup. Script tags are allowed, but are discouraged, as the Custom Javascript tab is available.", - "custom-header.enable": "Enable Custom Header", + "custom-header": "Egendefinert header", + "custom-header.description": "Skriv inn egendefinert HTML her (f.eks. metakoder, osv.), som vil bli lagt til i <head>-delen av forumets markering. Skript-tagger er tillatt, men anbefales ikke, siden Egendefinert Javascript-fanen er tilgjengelig.", + "custom-header.enable": "Aktiver egendefinert header", - "custom-css.livereload": "Enable Live Reload", - "custom-css.livereload.description": "Enable this to force all sessions on every device under your account to refresh whenever you click save", + "custom-css.livereload": "Aktiver Live Reload", + "custom-css.livereload.description": "Aktiver dette for å tvinge alle økter på alle enheter under kontoen din til å oppdatere hver gang du klikker lagre.", "bsvariables": "_variables.scss", - "bsvariables.description": "Override bootstrap variables here. You can also use a tool like bootstrap.build and paste the output here.
    Changes require a rebuild & restart.", - "bsvariables.enable": "Enable _variables.scss" + "bsvariables.description": "Overstyr bootstrap-variabler her. Du kan også bruke et verktøy som bootstrap.build og lime inn resultatet her.
    Endringer krever ombygging og omstart.", + "bsvariables.enable": "Aktiver _variables.scss" } \ No newline at end of file diff --git a/public/language/nb/admin/appearance/skins.json b/public/language/nb/admin/appearance/skins.json index c98482f27b..319305deba 100644 --- a/public/language/nb/admin/appearance/skins.json +++ b/public/language/nb/admin/appearance/skins.json @@ -1,18 +1,18 @@ { - "skins": "Skins", - "bootswatch-skins": "Bootswatch Skins", - "custom-skins": "Custom Skins", - "add-skin": "Add Skin", - "save-custom-skins": "Save Custom Skins", - "save-custom-skins-success": "Custom skins saved successfully", - "custom-skin-name": "Custom Skin Name", - "custom-skin-variables": "Custom Skin Variables", - "loading": "Loading Skins...", - "homepage": "Homepage", - "select-skin": "Select Skin", - "revert-skin": "Revert Skin", - "current-skin": "Current Skin", - "skin-updated": "Skin Updated", - "applied-success": "%1 skin was succesfully applied", - "revert-success": "Skin reverted to base colours" + "skins": "Temaer", + "bootswatch-skins": "Bootswatch-temaer", + "custom-skins": "Egendefinerte temaer", + "add-skin": "Legg til tema", + "save-custom-skins": "Lagre egendefinerte temaer", + "save-custom-skins-success": "Egendefinerte temaer ble lagret", + "custom-skin-name": "Navn på egendefinert tema", + "custom-skin-variables": "Variabler for egendefinert tema", + "loading": "Laster temaer...", + "homepage": "Hjemmeside", + "select-skin": "Velg tema", + "revert-skin": "Tilbakestill tema", + "current-skin": "Nåværende tema", + "skin-updated": "Tema oppdatert", + "applied-success": "%1 tema ble vellykket brukt", + "revert-success": "Temaet ble tilbakestilt til standardfarger" } \ No newline at end of file diff --git a/public/language/nb/admin/appearance/themes.json b/public/language/nb/admin/appearance/themes.json index 957dc89eee..33a2d719a9 100644 --- a/public/language/nb/admin/appearance/themes.json +++ b/public/language/nb/admin/appearance/themes.json @@ -1,9 +1,9 @@ { - "themes": "Themes", - "checking-for-installed": "Checking for installed themes...", + "themes": "Temaer", + "checking-for-installed": "Sjekker etter installerte temaer...", "homepage": "Hjemmeside", "select-theme": "Velg tema", - "revert-theme": "Revert Theme", + "revert-theme": "Tilbakestill tema", "current-theme": "Nåværende tema", "no-themes": "Ingen installerte temaer funnet", "revert-confirm": "Er du sikker på at du vil gjenopprette standard NodeBB-tema?", diff --git a/public/language/nb/admin/development/info.json b/public/language/nb/admin/development/info.json index 8b981845c9..deb1975761 100644 --- a/public/language/nb/admin/development/info.json +++ b/public/language/nb/admin/development/info.json @@ -2,20 +2,20 @@ "you-are-on": "Du er på %1:%2", "ip": "IP %1", "nodes-responded": "%1 noder svarte innen %2ms!", - "host": "vert", - "primary": "primær", - "pid": "prosess-ID", - "nodejs": "nodejs", - "online": "pålogget", - "git": "git", - "process-memory": "prosessminne", - "system-memory": "systemminne", + "host": "Vert", + "primary": "Primær", + "pid": "Prosess-ID", + "nodejs": "Node.js", + "online": "Pålogget", + "git": "Git", + "process-memory": "Prosessminne", + "system-memory": "Systemminne", "used-memory-process": "Brukt minne av prosess", "used-memory-os": "Brukt systemminne", "total-memory-os": "Totalt systemminne", - "load": "systembelastning", + "load": "Systembelastning", "cpu-usage": "CPU-bruk", - "uptime": "oppetid", + "uptime": "Oppetid", "registered": "Registrert", "sockets": "Kontakter", diff --git a/public/language/nb/admin/development/logger.json b/public/language/nb/admin/development/logger.json index 8cc83b9775..2fa8e41c85 100644 --- a/public/language/nb/admin/development/logger.json +++ b/public/language/nb/admin/development/logger.json @@ -1,13 +1,13 @@ { "logger": "Logger", - "logger-settings": "Logger Settings", - "description": "By enabling the check boxes, you will receive logs to your terminal. If you specify a path, logs will then be saved to a file instead. HTTP logging is useful for collecting statistics about who, when, and what people access on your forum. In addition to logging HTTP requests, we can also log socket.io events. Socket.io logging, in combination with redis-cli monitor, can be very helpful for learning NodeBB's internals.", - "explanation": "Simply check/uncheck the logging settings to enable or disable logging on the fly. No restart needed.", - "enable-http": "Enable HTTP logging", - "enable-socket": "Enable socket.io event logging", - "file-path": "Path to log file", - "file-path-placeholder": "/path/to/log/file.log ::: leave blank to log to your terminal", + "logger-settings": "Logger-innstillinger", + "description": "Ved å aktivere avmerkingsboksene vil du motta logger i terminalen din. Hvis du spesifiserer en sti, blir loggene i stedet lagret i en fil. HTTP-logging er nyttig for å samle statistikk om hvem, når og hva folk besøker på forumet ditt. I tillegg til HTTP-forespørsler kan vi også logge socket.io-hendelser. Socket.io-logging, kombinert med redis-cli monitor, kan være svært nyttig for å lære mer om NodeBBs interne funksjoner.", + "explanation": "Merk av/på for loggingsinnstillingene for å aktivere eller deaktivere logging umiddelbart. Ingen omstart nødvendig.", + "enable-http": "Aktiver HTTP-logging", + "enable-socket": "Aktiver socket.io-hendelseslogging", + "file-path": "Sti til loggfil", + "file-path-placeholder": "/sti/til/logg/fil.log ::: la stå tomt for å logge til terminalen din", - "control-panel": "Logger Control Panel", - "update-settings": "Update Logger Settings" + "control-panel": "Logger Kontrollpanel", + "update-settings": "Oppdater logger-innstillinger" } \ No newline at end of file diff --git a/public/language/nb/admin/manage/categories.json b/public/language/nb/admin/manage/categories.json index 98339a3cc5..582fb23c28 100644 --- a/public/language/nb/admin/manage/categories.json +++ b/public/language/nb/admin/manage/categories.json @@ -1,99 +1,99 @@ { - "manage-categories": "Manage Categories", - "add-category": "Add category", - "jump-to": "Jump to...", - "settings": "Category Settings", - "edit-category": "Edit Category", - "privileges": "Privileges", - "back-to-categories": "Back to categories", - "name": "Category Name", - "description": "Category Description", - "bg-color": "Background Colour", - "text-color": "Text Colour", - "bg-image-size": "Background Image Size", - "custom-class": "Custom Class", - "num-recent-replies": "# of Recent Replies", - "ext-link": "External Link", - "subcategories-per-page": "Subcategories per page", - "is-section": "Treat this category as a section", - "post-queue": "Post queue", - "tag-whitelist": "Tag Whitelist", - "upload-image": "Upload Image", - "upload": "Upload", - "delete-image": "Remove", - "category-image": "Category Image", - "image-and-icon": "Image & Icon", - "parent-category": "Parent Category", - "optional-parent-category": "(Optional) Parent Category", - "top-level": "Top Level", - "parent-category-none": "(None)", - "copy-parent": "Copy Parent", - "copy-settings": "Copy Settings From", - "optional-clone-settings": "(Optional) Clone Settings From Category", - "clone-children": "Clone Children Categories And Settings", - "purge": "Purge Category", + "manage-categories": "Administrer kategorier", + "add-category": "Legg til kategori", + "jump-to": "Hopp til...", + "settings": "Kategoriinnstillinger", + "edit-category": "Rediger kategori", + "privileges": "Rettigheter", + "back-to-categories": "Tilbake til kategorier", + "name": "Kategorinavn", + "description": "Kategoribeskrivelse", + "bg-color": "Bakgrunnsfarge", + "text-color": "Tekstfarge", + "bg-image-size": "Størrelse på bakgrunnsbilde", + "custom-class": "Egendefinert klasse", + "num-recent-replies": "Antall nylige svar", + "ext-link": "Ekstern lenke", + "subcategories-per-page": "Underkategorier per side", + "is-section": "Behandle denne kategorien som en seksjon", + "post-queue": "Innleggskø", + "tag-whitelist": "Hviteliste for emneord", + "upload-image": "Last opp bilde", + "upload": "Last opp", + "delete-image": "Fjern", + "category-image": "Kategori bilde", + "image-and-icon": "Bilde og ikon", + "parent-category": "Overkategori", + "optional-parent-category": "(Valgfritt) Overkategori", + "top-level": "Hovednivå", + "parent-category-none": "(Ingen)", + "copy-parent": "Kopier fra overkategori", + "copy-settings": "Kopier innstillinger fra", + "optional-clone-settings": "(Valgfritt) Klon innstillinger fra kategori", + "clone-children": "Klon underkategorier og innstillinger", + "purge": "Rensk kategori", - "enable": "Enable", - "disable": "Disable", - "edit": "Edit", - "analytics": "Analytics", + "enable": "Aktiver", + "disable": "Deaktiver", + "edit": "Rediger", + "analytics": "Analyser", - "view-category": "View category", - "set-order": "Set order", - "set-order-help": "Setting the order of the category will move this category to that order and update the order of other categories as necessary. Minimum order is 1 which puts the category at the top.", + "view-category": "Vis kategori", + "set-order": "Sett rekkefølge", + "set-order-help": "Ved å sette rekkefølgen på kategorien flytter du den til den valgte plasseringen, og oppdaterer rekkefølgen for andre kategorier etter behov. Minimumsrekkefølge er 1, som plasserer kategorien øverst.", - "select-category": "Select Category", - "set-parent-category": "Set Parent Category", + "select-category": "Velg kategori", + "set-parent-category": "Angi overkategori", - "privileges.description": "You can configure the access control privileges for portions of the site in this section. Privileges can be granted on a per-user or a per-group basis. Select the domain of effect from the dropdown below.", - "privileges.category-selector": "Configuring privileges for ", - "privileges.warning": "Note: Privilege settings take effect immediately. It is not necessary to save the category after adjusting these settings.", - "privileges.section-viewing": "Viewing Privileges", - "privileges.section-posting": "Posting Privileges", - "privileges.section-moderation": "Moderation Privileges", - "privileges.section-other": "Other", - "privileges.section-user": "User", - "privileges.search-user": "Add User", - "privileges.no-users": "No user-specific privileges in this category.", - "privileges.section-group": "Group", - "privileges.group-private": "This group is private", - "privileges.inheritance-exception": "This group does not inherit privileges from registered-users group", - "privileges.banned-user-inheritance": "Banned users inherit privileges from banned-users group", - "privileges.search-group": "Add Group", - "privileges.copy-to-children": "Copy to Children", - "privileges.copy-from-category": "Copy from Category", - "privileges.copy-privileges-to-all-categories": "Copy to All Categories", - "privileges.copy-group-privileges-to-children": "Copy this group's privileges to the children of this category.", - "privileges.copy-group-privileges-to-all-categories": "Copy this group's privileges to all categories.", - "privileges.copy-group-privileges-from": "Copy this group's privileges from another category.", - "privileges.inherit": "If the registered-users group is granted a specific privilege, all other groups receive an implicit privilege, even if they are not explicitly defined/checked. This implicit privilege is shown to you because all users are part of the registered-users user group, and so, privileges for additional groups need not be explicitly granted.", - "privileges.copy-success": "Privileges copied!", + "privileges.description": "Her kan du konfigurere tilgangskontrollrettigheter for deler av nettstedet. Rettigheter kan gis per bruker eller per gruppe. Velg området for effekten fra rullegardinmenyen nedenfor.", + "privileges.category-selector": "Konfigurerer rettigheter for", + "privileges.warning": "Merk: Rettighetsinnstillinger trer i kraft umiddelbart. Det er ikke nødvendig å lagre kategorien etter å ha justert disse innstillingene.", + "privileges.section-viewing": "Visningsrettigheter", + "privileges.section-posting": "Innleggelsesrettigheter", + "privileges.section-moderation": "Modereringsrettigheter", + "privileges.section-other": "Annet", + "privileges.section-user": "Bruker", + "privileges.search-user": "Legg til bruker", + "privileges.no-users": "Ingen brukerspesifikke rettigheter i denne kategorien.", + "privileges.section-group": "Gruppe", + "privileges.group-private": "Denne gruppen er privat", + "privileges.inheritance-exception": "Denne gruppen arver ikke rettigheter fra registrerte brukere-gruppen", + "privileges.banned-user-inheritance": "Utestengte brukere arver rettigheter fra utestengte brukere-gruppen", + "privileges.search-group": "Legg til gruppe", + "privileges.copy-to-children": "Kopier til underkategorier", + "privileges.copy-from-category": "Kopier fra kategori", + "privileges.copy-privileges-to-all-categories": "Kopier til alle kategorier", + "privileges.copy-group-privileges-to-children": "Kopier denne gruppens rettigheter til underkategoriene til denne kategorien.", + "privileges.copy-group-privileges-to-all-categories": "Kopier denne gruppens rettigheter til alle kategorier.", + "privileges.copy-group-privileges-from": "Kopier denne gruppens rettigheter fra en annen kategori.", + "privileges.inherit": "Hvis gruppen registrerte brukere har en spesifikk rettighet, får alle andre grupper en implisitt rettighet, selv om de ikke er eksplisitt definert/merket av. Denne implisitte rettigheten vises fordi alle brukere er en del av registrerte brukere-gruppen, og rettigheter for ekstra grupper trenger ikke eksplisitt tildeles.", + "privileges.copy-success": "Rettigheter kopiert!", - "analytics.back": "Back to Categories List", - "analytics.title": "Analytics for \"%1\" category", - "analytics.pageviews-hourly": "Figure 1 – Hourly page views for this category", - "analytics.pageviews-daily": "Figure 2 – Daily page views for this category", - "analytics.topics-daily": "Figur 3 – Daglige tråder publisert i denne kategorien", - "analytics.posts-daily": "Figure 4 – Daily posts made in this category", + "analytics.back": "Tilbake til kategorilisten", + "analytics.title": "Analyser for kategorien \"%1\"", + "analytics.pageviews-hourly": "Figur 1 – Timevise sidevisninger for denne kategorien", + "analytics.pageviews-daily": "Figur 2 – Daglige sidevisninger for denne kategorien", + "analytics.topics-daily": "Figur 3 – Daglige tråder publisert i denne kategorien", + "analytics.posts-daily": "Figur 4 – Daglige innlegg i denne kategorien", - "alert.created": "Created", - "alert.create-success": "Category successfully created!", - "alert.none-active": "You have no active categories.", - "alert.create": "Create a Category", + "alert.created": "Opprettet", + "alert.create-success": "Kategori opprettet!", + "alert.none-active": "Du har ingen aktive kategorier.", + "alert.create": "Opprett en kategori", "alert.confirm-purge": "

    Vil du virkelig renske kategorien \"%1\"?

    Advarsel! Alle tråder og innlegg i denne kategorien vil bli rensket!

    Rensking av en kategori vil fjerne alle tråder og innlegg, og slette kategorien fra databasen. Hvis du vil fjerne en kategori midlertidig, vil du \"deaktivere\" kategorien i stedet.

    ", - "alert.purge-success": "Category purged!", - "alert.copy-success": "Settings Copied!", - "alert.set-parent-category": "Set Parent Category", - "alert.updated": "Updated Categories", - "alert.updated-success": "Category IDs %1 successfully updated.", - "alert.upload-image": "Upload category image", - "alert.find-user": "Find a User", - "alert.user-search": "Search for a user here...", - "alert.find-group": "Find a Group", - "alert.group-search": "Search for a group here...", - "alert.not-enough-whitelisted-tags": "Whitelisted tags are less than minimum tags, you need to create more whitelisted tags!", - "collapse-all": "Collapse All", - "expand-all": "Expand All", - "disable-on-create": "Disable on create", - "no-matches": "No matches" + "alert.purge-success": "Kategori renset!", + "alert.copy-success": "Innstillinger kopiert!", + "alert.set-parent-category": "Angi overkategori", + "alert.updated": "Kategorier oppdatert", + "alert.updated-success": "Kategori-ID-er %1 oppdatert.", + "alert.upload-image": "Last opp kategoribilde", + "alert.find-user": "Finn en bruker", + "alert.user-search": "Søk etter en bruker her...", + "alert.find-group": "Finn en gruppe", + "alert.group-search": "Søk etter en gruppe her...", + "alert.not-enough-whitelisted-tags": "Antall hvitelistede emneord er færre enn minimum, du må opprette flere hvitelistede emneord!", + "collapse-all": "Skjul alle", + "expand-all": "Utvid alle", + "disable-on-create": "Deaktiver ved opprettelse", + "no-matches": "Ingen treff" } \ No newline at end of file diff --git a/public/language/nb/admin/menu.json b/public/language/nb/admin/menu.json index 8d057028a4..c93faaafb9 100644 --- a/public/language/nb/admin/menu.json +++ b/public/language/nb/admin/menu.json @@ -1,92 +1,92 @@ { - "section-dashboard": "Dashboards", - "dashboard/overview": "Overview", - "dashboard/logins": "Logins", - "dashboard/users": "Users", - "dashboard/topics": "Topics", - "dashboard/searches": "Searches", + "section-dashboard": "Dashbord", + "dashboard/overview": "Oversikt", + "dashboard/logins": "Innlogginger", + "dashboard/users": "Brukere", + "dashboard/topics": "Tråder", + "dashboard/searches": "Søk", "section-general": "Generelt", - "section-manage": "Manage", - "manage/categories": "Categories", - "manage/privileges": "Privileges", - "manage/tags": "Tags", + "section-manage": "Administrer", + "manage/categories": "Kategorier", + "manage/privileges": "Rettigheter", + "manage/tags": "Emneord", "manage/users": "Brukere", - "manage/admins-mods": "Admins & Mods", - "manage/registration": "Registration Queue", - "manage/flagged-content": "Flagged Content", - "manage/post-queue": "Post Queue", + "manage/admins-mods": "Administratorer og moderatorer", + "manage/registration": "Registreringskø", + "manage/flagged-content": "Flagget innhold", + "manage/post-queue": "Innleggskø", "manage/groups": "Grupper", - "manage/ip-blacklist": "IP Blacklist", - "manage/uploads": "Uploads", - "manage/digest": "Digests", + "manage/ip-blacklist": "IP-svarteliste", + "manage/uploads": "Opplastinger", + "manage/digest": "Sammendrag", - "section-settings": "Settings", - "settings/general": "General", - "settings/homepage": "Home Page", - "settings/navigation": "Navigation", - "settings/reputation": "Reputation & Flags", + "section-settings": "Innstillinger", + "settings/general": "Generelt", + "settings/homepage": "Hjemmeside", + "settings/navigation": "Navigasjon", + "settings/reputation": "Omdømme og flagg", "settings/email": "E-post", "settings/user": "Brukere", - "settings/group": "Groups", - "settings/guest": "Guests", - "settings/uploads": "Uploads", - "settings/languages": "Languages", + "settings/group": "Grupper", + "settings/guest": "Gjester", + "settings/uploads": "Opplastinger", + "settings/languages": "Språk", "settings/post": "Innlegg", - "settings/chat": "Chats", - "settings/pagination": "Pagination", - "settings/tags": "Tagger", + "settings/chat": "Chatter", + "settings/pagination": "Sidetelling", + "settings/tags": "Emneord", "settings/notifications": "Varsler", - "settings/api": "API Access", - "settings/sounds": "Sounds", - "settings/social": "Social", - "settings/cookies": "Cookies", - "settings/web-crawler": "Web Crawler", + "settings/api": "API-tilgang", + "settings/sounds": "Lyder", + "settings/social": "Sosialt", + "settings/cookies": "Informasjonskapsler", + "settings/web-crawler": "Nettleser", "settings/sockets": "Sockets", - "settings/advanced": "Advanced", + "settings/advanced": "Avansert", - "settings.page-title": "%1 Settings", + "settings.page-title": "%1 Innstillinger", - "section-appearance": "Appearance", - "appearance/themes": "Tema", + "section-appearance": "Utseende", + "appearance/themes": "Temaer", "appearance/skins": "Drakter", - "appearance/customise": "Custom Content (HTML/JS/CSS)", + "appearance/customise": "Tilpasset innhold (HTML/JS/CSS)", - "section-extend": "Extend", + "section-extend": "Utvidelser", "extend/plugins": "Tillegg", "extend/widgets": "Widgets", - "extend/rewards": "Rewards", + "extend/rewards": "Belønninger", - "section-social-auth": "Social Authentication", + "section-social-auth": "Sosial autentisering", "section-plugins": "Plugins", - "extend/plugins.install": "Install Plugins", + "extend/plugins.install": "Installer plugins", "section-advanced": "Avansert", "advanced/database": "Database", - "advanced/events": "Events", - "advanced/hooks": "Hooks", + "advanced/events": "Hendelser", + "advanced/hooks": "Kroker", "advanced/logs": "Logger", - "advanced/errors": "Errors", - "advanced/cache": "Cache", + "advanced/errors": "Feil", + "advanced/cache": "Buffer", "development/logger": "Logger", "development/info": "Info", - "rebuild-and-restart-forum": "Rebuild & Restart Forum", - "rebuild-and-restart": "Rebuild & Restart", + "rebuild-and-restart-forum": "Gjenoppbygg og restart forum", + "rebuild-and-restart": "Gjenoppbygg og restart", "restart-forum": "Restart forum", "restart": "Restart", "logout": "Logg ut", "view-forum": "Vis forum", - "search.placeholder": "Søkeinnstillinger", + "search.placeholder": "Søk i innstillinger", "search.no-results": "Ingen resultater", - "search.search-forum": "Search the forum for ", - "search.keep-typing": "Type more to see results...", - "search.start-typing": "Start typing to see results...", + "search.search-forum": "Søk i forumet etter ", + "search.keep-typing": "Skriv mer for å se resultater...", + "search.start-typing": "Begynn å skrive for å se resultater...", - "connection-lost": "Connection to %1 has been lost, attempting to reconnect...", + "connection-lost": "Tilkoblingen til %1 er brutt, prøver å koble til på nytt...", - "alerts.version": "Running NodeBB v%1", - "alerts.upgrade": "Upgrade to v%1" + "alerts.version": "Kjører NodeBB v%1", + "alerts.upgrade": "Oppgrader til v%1" } \ No newline at end of file diff --git a/public/language/nb/admin/settings/api.json b/public/language/nb/admin/settings/api.json index 671e5eeb90..3bc2513294 100644 --- a/public/language/nb/admin/settings/api.json +++ b/public/language/nb/admin/settings/api.json @@ -1,29 +1,29 @@ { "tokens": "Tokens", - "settings": "Settings", - "lead-text": "From this page you can configure access to the Write API in NodeBB.", - "intro": "By default, the Write API authenticates users based on their session cookie, but NodeBB also supports Bearer authentication via tokens generated via this page.", - "warning": "Be advised — treat tokens like passwords. If they are leaked, your account should be considered compromised.", - "docs": "Click here to access the full API specification", + "settings": "Innstillinger", + "lead-text": "Fra denne siden kan du konfigurere tilgang til Write API i NodeBB.", + "intro": "Som standard autentiserer Write API brukere basert på deres øktinformasjonskapsel, men NodeBB støtter også Bearer-autentisering via tokens generert fra denne siden.", + "warning": "Vær oppmerksom — behandle tokens som passord. Hvis de lekker, bør kontoen din anses som kompromittert.", + "docs": "Klikk her for å få tilgang til den fullstendige API-spesifikasjonen", - "require-https": "Require API usage via HTTPS only", - "require-https-caveat": "Note: Some installations involving load balancers may proxy their requests to NodeBB using HTTP, in which case this option should remain disabled.", + "require-https": "Krev API-bruk kun via HTTPS", + "require-https-caveat": "Merk: Noen installasjoner med lastbalanserere kan videresende forespørslene sine til NodeBB via HTTP, i så fall bør dette alternativet forbli deaktivert.", - "uid": "User ID", + "uid": "Bruker-ID", "token": "Token", - "uid-help-text": "Specify a User ID to associate with this token. If the user ID is 0, it will be considered a master token, which can assume the identity of other users based on the _uid parameter", - "description": "Description", - "last-seen": "Last seen", - "created": "Created", - "create-token": "Create Token", - "update-token": "Update Token", - "master-token": "Master token", - "last-seen-never": "This key has never been used.", - "no-description": "No description specified.", - "actions": "Actions", - "edit": "Edit", - "roll": "Roll", + "uid-help-text": "Angi en bruker-ID som skal knyttes til dette tokenet. Hvis bruker-ID-en er 0, vil den bli betraktet som et master-token, som kan anta identiteten til andre brukere basert på _uid-parameteren.", + "description": "Beskrivelse", + "last-seen": "Sist sett", + "created": "Opprettet", + "create-token": "Opprett token", + "update-token": "Oppdater token", + "master-token": "Master-token", + "last-seen-never": "Denne nøkkelen har aldri blitt brukt.", + "no-description": "Ingen beskrivelse spesifisert.", + "actions": "Handlinger", + "edit": "Rediger", + "roll": "Regenerer", - "delete-confirm": "Are you sure you wish to delete this token? It will not be recoverable.", - "roll-confirm": "Are you sure you wish to regenerate this token? The old token will be immediately revoked and will not be recoverable." + "delete-confirm": "Er du sikker på at du vil slette dette tokenet? Det vil ikke kunne gjenopprettes.", + "roll-confirm": "Er du sikker på at du vil regenerere dette tokenet? Det gamle tokenet vil umiddelbart bli tilbakekalt og kan ikke gjenopprettes." } \ No newline at end of file diff --git a/public/language/nb/admin/settings/chat.json b/public/language/nb/admin/settings/chat.json index a5412d1095..0b3cf594a0 100644 --- a/public/language/nb/admin/settings/chat.json +++ b/public/language/nb/admin/settings/chat.json @@ -1,15 +1,15 @@ { - "zero-is-disabled": "Enter 0 to disable this restriction", - "chat-settings": "Chat Settings", - "disable": "Disable chat", - "disable-editing": "Disable chat message editing/deletion", - "disable-editing-help": "Administrators and global moderators are exempt from this restriction", - "max-length": "Maximum length of chat messages", - "max-chat-room-name-length": "Maximum length of chat room names", - "max-room-size": "Maximum number of users in chat rooms", - "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." + "zero-is-disabled": "Skriv inn 0 for å deaktivere denne begrensningen", + "chat-settings": "Innstillinger for chat", + "disable": "Deaktiver chat", + "disable-editing": "Deaktiver redigering/sletting av chatmeldinger", + "disable-editing-help": "Administratorer og globale moderatorer er unntatt fra denne begrensningen", + "max-length": "Maksimal lengde på chatmeldinger", + "max-chat-room-name-length": "Maksimal lengde på navn på chatrom", + "max-room-size": "Maksimalt antall brukere i chatrom", + "delay": "Tid mellom chatmeldinger (ms)", + "notification-delay": "Varslingsforsinkelse for chatmeldinger", + "notification-delay-help": "Ytterligere meldinger sendt innen denne tiden blir samlet, og brukeren varsles én gang per forsinkelsesperiode. Sett denne til 0 for å deaktivere forsinkelsen.", + "restrictions.seconds-edit-after": "Antall sekunder en chatmelding forblir redigerbar.", + "restrictions.seconds-delete-after": "Antall sekunder en chatmelding forblir slettbar." } \ No newline at end of file diff --git a/public/language/nb/admin/settings/general.json b/public/language/nb/admin/settings/general.json index 7d5e13572e..c8960ad53a 100644 --- a/public/language/nb/admin/settings/general.json +++ b/public/language/nb/admin/settings/general.json @@ -1,54 +1,54 @@ { - "general-settings": "General Settings", - "on-this-page": "On this page:", - "site-settings": "Site Settings", - "title": "Site Title", - "title.short": "Short Title", - "title.short-placeholder": "If no short title is specified, the site title will be used", - "title.url": "Title Link URL", - "title.url-placeholder": "The URL of the site title", - "title.url-help": "When the title is clicked, send users to this address. If left blank, user will be sent to the forum index. Note: This is not the external URL used in emails, etc. That is set by the url property in config.json", - "title.name": "Your Community Name", - "title.show-in-header": "Show Site Title in Header", - "browser-title": "Browser Title", - "browser-title-help": "If no browser title is specified, the site title will be used", - "title-layout": "Title Layout", - "title-layout-help": "Define how the browser title will be structured ie. {pageTitle} | {browserTitle}", - "description.placeholder": "A short description about your community", + "general-settings": "Generelle innstillinger", + "on-this-page": "På denne siden:", + "site-settings": "Nettstedsinnstillinger", + "title": "Nettstedstittel", + "title.short": "Kort tittel", + "title.short-placeholder": "Hvis ingen kort tittel er spesifisert, brukes nettstedstittelen", + "title.url": "Tittellink-URL", + "title.url-placeholder": "URL-en til nettstedstittelen", + "title.url-help": "Når tittelen klikkes, send brukere til denne adressen. Hvis den er tom, sendes brukerne til forumets indeks. Merk: Dette er ikke den eksterne URL-en brukt i e-poster osv. Dette settes i url i config.json", + "title.name": "Navnet på fellesskapet ditt", + "title.show-in-header": "Vis nettstedstittel i topptekst", + "browser-title": "Tittel i nettleseren", + "browser-title-help": "Hvis ingen nettlesertittel er spesifisert, brukes nettstedstittelen", + "title-layout": "Tittellayout", + "title-layout-help": "Definer hvordan nettlesertittelen skal struktureres, f.eks. {pageTitle} | {browserTitle}", + "description.placeholder": "En kort beskrivelse av fellesskapet ditt", "description": "Velg hvilken side som vises når brukere navigerer til rot-URL-en for forumet ditt.", - "keywords": "Site Keywords", - "keywords-placeholder": "Keywords describing your community, comma-separated", - "logo-and-icons": "Site Logo & Icons", - "logo.image": "Image", - "logo.image-placeholder": "Path to a logo to display on forum header", - "logo.upload": "Upload", - "logo.url": "Logo Link URL", - "logo.url-placeholder": "The URL of the site logo", - "logo.url-help": "When the logo is clicked, send users to this address. If left blank, user will be sent to the forum index.
    Note: This is not the external URL used in emails, etc. That is set by the url property in config.json", - "logo.alt-text": "Alt Text", - "log.alt-text-placeholder": "Alternative text for accessibility", + "keywords": "Nøkkelord for nettstedet", + "keywords-placeholder": "Nøkkelord som beskriver fellesskapet ditt, kommaseparert", + "logo-and-icons": "Logo og ikoner for nettstedet", + "logo.image": "Bilde", + "logo.image-placeholder": "Sti til et logo som vises i forumets topptekst", + "logo.upload": "Last opp", + "logo.url": "Logolink-URL", + "logo.url-placeholder": "URL-en til nettstedets logo", + "logo.url-help": "Når logoen klikkes, send brukere til denne adressen. Hvis den er tom, sendes brukerne til forumets indeks.
    Merk: Dette er ikke den eksterne URL-en brukt i e-poster osv. Dette settes i url i config.json", + "logo.alt-text": "Alternativ tekst", + "log.alt-text-placeholder": "Alternativ tekst for tilgjengelighet", "favicon": "Favicon", - "favicon.upload": "Upload", + "favicon.upload": "Last opp", "pwa": "Progressive Web App", - "touch-icon": "Touch Icon", - "touch-icon.upload": "Upload", - "touch-icon.help": "Recommended size and format: 512x512, PNG format only. If no touch icon is specified, NodeBB will fall back to using the favicon.", - "maskable-icon": "Maskable (Homescreen) Icon", - "maskable-icon.help": "Recommended size and format: 512x512, PNG format only. If no maskable icon is specified, NodeBB will fall back to the Touch Icon.", - "outgoing-links": "Outgoing Links", - "outgoing-links.warning-page": "Use Outgoing Links Warning Page", - "search": "Search", - "search-default-in": "Search In", - "search-default-in-quick": "Quick Search In", - "search-default-sort-by": "Sort by", - "outgoing-links.whitelist": "Domains to whitelist for bypassing the warning page", - "site-colors": "Site Color Metadata", - "theme-color": "Theme Color", - "background-color": "Background Color", - "background-color-help": "Color used for splash screen background when website is installed as a PWA", - "undo-timeout": "Undo Timeout", - "undo-timeout-help": "Some operations such as moving topics will allow for the moderator to undo their action within a certain timeframe. Set to 0 to disable undo completely.", - "topic-tools": "Topic Tools", + "touch-icon": "Berøringsikon", + "touch-icon.upload": "Last opp", + "touch-icon.help": "Anbefalt størrelse og format: 512x512, kun PNG-format. Hvis ingen berøringsikon er spesifisert, brukes favicon som reserve.", + "maskable-icon": "Maskerbart (Hjem-skjerm) ikon", + "maskable-icon.help": "Anbefalt størrelse og format: 512x512, kun PNG-format. Hvis ingen maskerbart ikon er spesifisert, brukes berøringsikon som reserve.", + "outgoing-links": "Utgående lenker", + "outgoing-links.warning-page": "Bruk varslingsside for utgående lenker", + "search": "Søk", + "search-default-in": "Søk i", + "search-default-in-quick": "Hurtigsøk i", + "search-default-sort-by": "Sorter etter", + "outgoing-links.whitelist": "Domener som skal hvitelistes for å omgå varslingssiden", + "site-colors": "Metadata for nettstedets farger", + "theme-color": "Temaets farge", + "background-color": "Bakgrunnsfarge", + "background-color-help": "Farge brukt for bakgrunnen til splash-skjermen når nettstedet installeres som en PWA", + "undo-timeout": "Angre tidsavbrudd", + "undo-timeout-help": "Visse handlinger som å flytte emner gir moderatorer en tidsbegrensning for å angre handlingen. Sett til 0 for å deaktivere angre helt.", + "topic-tools": "Verktøy for emner", "home-page": "Hjemmeside", "home-page-route": "Rute for hjemmeside", "custom-route": "Egendefinert rute", @@ -56,7 +56,7 @@ "home-page-title": "Tittel på hjemmesiden (standard: \"Hjem\")", "default-language": "Standardspråk", "auto-detect": "Oppdag automatisk språkinnstilling for gjester", - "default-language-help": "Det prevalgte språket avgjør språkinnstillingene for alle brukere som besøker forumet ditt.
    Indiviuelle brukere kan overstyre det prevalgte språket inne på deres kontoinnstillinger.", - "post-sharing": "Post Sharing", - "info-plugins-additional": "Plugins can add additional networks for sharing posts." + "default-language-help": "Standardspråket avgjør språkinnstillingene for alle brukere som besøker forumet ditt.
    Individuelle brukere kan overstyre standardspråket i kontoinnstillingene sine.", + "post-sharing": "Deling av innlegg", + "info-plugins-additional": "Plugins kan legge til flere nettverk for deling av innlegg." } \ No newline at end of file diff --git a/public/language/nb/admin/settings/navigation.json b/public/language/nb/admin/settings/navigation.json index 4282790be4..ad232173ca 100644 --- a/public/language/nb/admin/settings/navigation.json +++ b/public/language/nb/admin/settings/navigation.json @@ -1,7 +1,7 @@ { "navigation": "Navigasjon", "icon": "Ikon:", - "change-icon": "endre", + "change-icon": "Endre", "route": "Rute:", "tooltip": "Verktøytips:", "text": "Tekst:", @@ -21,6 +21,6 @@ "available-menu-items": "Tilgjengelige menyelementer", "custom-route": "Tilpasset rute", - "core": "kjerne", - "plugin": "plugin" + "core": "Kjerne", + "plugin": "Plugin" } diff --git a/public/language/nb/admin/settings/reputation.json b/public/language/nb/admin/settings/reputation.json index 8a41c0750d..b3f8a553b8 100644 --- a/public/language/nb/admin/settings/reputation.json +++ b/public/language/nb/admin/settings/reputation.json @@ -28,7 +28,7 @@ "flags": "Flagginnstillinger", "flags.limit-per-target": "Maksimalt antall ganger noe kan flagges", "flags.limit-per-target-placeholder": "Standard: 0", - "flags.limit-per-target-help": "Når et innlegg eller en bruker blir flagget flere ganger, regnes hvert ekstra flagg som en "rapport" og legges til det opprinnelige flagget. Sett dette alternativet til et tall større enn null for å begrense antall rapporter et element kan motta.", + "flags.limit-per-target-help": "Når et innlegg eller en bruker blir flagget flere ganger, regnes hvert ekstra flagg som en \"rapport\" og legges til det opprinnelige flagget. Sett dette alternativet til et tall større enn null for å begrense antall rapporter et element kan motta.", "flags.limit-post-flags-per-day": "Maksimalt antall innlegg som kan flagges per dag", "flags.limit-post-flags-per-day-help": "Angi antall innlegg som kan flagges av en bruker innen en dag.", "flags.limit-user-flags-per-day": "Maksimalt antall brukere som kan flagges per dag", diff --git a/public/language/nb/admin/settings/user.json b/public/language/nb/admin/settings/user.json index 7806e875e9..9d30d7988a 100644 --- a/public/language/nb/admin/settings/user.json +++ b/public/language/nb/admin/settings/user.json @@ -89,9 +89,9 @@ "restrictions.seconds-edit-after-new": "Antall sekunder en ny bruker kan redigere et innlegg", "restrictions.milliseconds-between-messages": "Millisekunder mellom meldinger", "restrictions.groups-exempt-from-new-user-restrictions": "Grupper unntatt fra nye brukerrestriksjoner", - "guest-settings": "Guest Settings", - "handles.enabled": "Allow guest handles", - "handles.enabled-help": "Dette alternativet viser et nytt felt som lar gjestene velge et navn som kan knyttes til hvert innlegg de lager. Hvis de er deaktivert, vil de bare bli kalt \"Gjest\"", + "guest-settings": "Innstillinger for gjester", + "handles.enabled": "Tillat gjestenavn", + "handles.enabled-help": "Dette alternativet viser et nytt felt som lar gjestene velge et navn for innleggene sine. Hvis deaktivert, vil de kun bli kalt \"Gjest\".", "topic-views.enabled": "La gjestene øke antall visninger av emner", - "reply-notifications.enabled": "La gjestene generere varsler på svar" + "reply-notifications.enabled": "Tillat gjestene å generere svarvarsler" } \ No newline at end of file diff --git a/public/language/nb/aria.json b/public/language/nb/aria.json index b82ac92764..7f14f92216 100644 --- a/public/language/nb/aria.json +++ b/public/language/nb/aria.json @@ -2,7 +2,7 @@ "post-sort-option": "Valg for innleggssortering, %1", "topic-sort-option": "Valg for emnesortering, %1", "user-avatar-for": "Brukeravatar for %1", - "user-watched-tags": "Stikkord fulgt av bruker", + "user-watched-tags": "Emneord fulgt av bruker", "delete-upload-button": "Slett opplastingsknapp", "group-page-link-for": "Gruppesidelink for %1" } \ No newline at end of file diff --git a/public/language/nb/category.json b/public/language/nb/category.json index 3faf29068c..7e97b6945a 100644 --- a/public/language/nb/category.json +++ b/public/language/nb/category.json @@ -9,12 +9,12 @@ "no-new-posts": "Ingen nye innlegg.", "watch": "Overvåk", "ignore": "Ignorer", - "watching": "Følger", - "tracking": "Sporing", + "watching": "Varsle", + "tracking": "Følg", "not-watching": "Følger ikke", "ignoring": "Ignorerer", "watching.description": "Varsle meg om nye emner.
    Vis emner i ulest og nylig", - "tracking.description": "Vis emner i ulest og nylig", + "tracking.description": "Følg emner i ulest og nylig", "not-watching.description": "Ikke vis emner i ulest, vis i nylig", "ignoring.description": "Ikke vis emner i ulest & nylig", "watching.message": "Du ser nå på oppdateringer fra denne kategorien og alle underkategorier", diff --git a/public/language/nb/email.json b/public/language/nb/email.json index 7c9610590d..46356f2b36 100644 --- a/public/language/nb/email.json +++ b/public/language/nb/email.json @@ -22,8 +22,8 @@ "reset.notify.subject": "Passordet ble endret", "reset.notify.text1": "Vi gjør deg oppmerksom på at du endret passordet ditt den %1.", "reset.notify.text2": "Hvis det ikke var deg som autoriserte dette, vennligst gi beskjed til en administrator umiddelbart.", - "digest.unread-rooms": "Unread rooms", - "digest.room-name-unreadcount": "%1 (%2 unread)", + "digest.unread-rooms": "Uleste rom", + "digest.room-name-unreadcount": "%1 (%2 uleste)", "digest.latest-topics": "Siste emner fra %1", "digest.top-topics": "Toppemner fra %1", "digest.popular-topics": "Populære emner fra %1", @@ -43,13 +43,13 @@ "notif.post.unsub.info": "Dette innleggsvarselet ble sendt til deg basert på dine innstillinger for abonnering.", "notif.post.unsub.one-click": "Alternativt kan du avslutte abonnementet på fremtidige e-poster som dette, ved å klikke", "notif.cta": "Til forum", - "notif.cta-new-reply": "Vis post", - "notif.cta-new-chat": "Vis chatt", + "notif.cta-new-reply": "Vis innlegg", + "notif.cta-new-chat": "Vis chat", "notif.test.short": "Testing av varsler", "notif.test.long": "Dette er en test av e-postmeldingen for varsler. Send hjelp!", "test.text1": "Dette er en test e-post for å verifisere at e-postsystemet i NodeBB fungerer som det skal.", "unsub.cta": "Klikk her for å endre disse innstillingene", - "unsubscribe": "Avfølg", + "unsubscribe": "Avslutt abonnement", "unsub.success": "Du vil ikke lenger motta e-poster fra %1 utsendelseslisten", "unsub.failure.title": "Kan ikke avslutte abonnementet", "unsub.failure.message": "Dessverre kunne vi ikke melde deg av e-postlisten, da det var et problem med lenken. Du kan imidlertid endre preferansene for e-post ved å gå tilinnstillinger.

    (feil:1%):", diff --git a/public/language/nb/error.json b/public/language/nb/error.json index a4e614db84..a5c14d25ac 100644 --- a/public/language/nb/error.json +++ b/public/language/nb/error.json @@ -139,7 +139,7 @@ "group-already-requested": "Forespørsel om medlemskap er allerede innsendt", "group-join-disabled": "Du kan ikke bli med i denne gruppen på dette tidspunktet", "group-leave-disabled": "Du kan ikke forlate denne gruppen på dette tidspunktet", - "group-user-not-pending": "User does not have a pending request to join this group.", + "group-user-not-pending": "Brukeren har ingen ventende forespørsel om å bli med i denne gruppen.", "gorup-user-not-invited": "User has not been invited to join this group.", "post-already-deleted": "Dette innlegget har blitt slettet", "post-already-restored": "Dette innlegget har allerede blitt gjenopprettet", @@ -165,13 +165,13 @@ "chat-deleted-already": "Denne meldingen har allerede blitt slettet.", "chat-restored-already": "Denne meldingen har allerede blitt gjenopprettet.", "chat-room-does-not-exist": "Dette chatterommet finnes ikke.", - "cant-add-users-to-chat-room": "Can't add users to chat room.", - "cant-remove-users-from-chat-room": "Can't remove users from chat room.", - "chat-room-name-too-long": "Chat room name too long. Names can't be longer than %1 characters.", + "cant-add-users-to-chat-room": "Kan ikke legge til brukere i chatterom.", + "cant-remove-users-from-chat-room": "Kan ikke fjerne brukere fra chatterom.", + "chat-room-name-too-long": "Navnet på chatterommet er for langt. Navn kan ikke være lengre enn %1 tegn.", "already-voting-for-this-post": "Du har allerede stemt på dette innlegget", "reputation-system-disabled": "Omdømmesystemet er deaktivert.", "downvoting-disabled": "Nedstemming er deaktivert", - "not-enough-reputation-to-chat": "You need %1 reputation to chat", + "not-enough-reputation-to-chat": "Du trenger %1 omdømme for å chatte", "not-enough-reputation-to-upvote": "Du trenger %1 omdømme for å stemme opp.", "not-enough-reputation-to-downvote": "Du trenger %1 omdømme for å stemme ned.", "not-enough-reputation-to-post-links": "Du trenger %1 omdømme for å poste lenker", @@ -181,7 +181,7 @@ "not-enough-reputation-min-rep-signature": "Du trenger %1 omdømme for å legge til signatur", "not-enough-reputation-min-rep-profile-picture": "Du trenger %1 omdømme for å legge til profilbilde", "not-enough-reputation-min-rep-cover-picture": "Du trenger %1 omdømme for å legge til omslagsbilde", - "not-enough-reputation-custom-field": " Du trenger %1 omdømme for %2", + "not-enough-reputation-custom-field": "Du trenger %1 omdømme for %2", "custom-user-field-value-too-long": "Egendefinert feltverdi er for lang, %1", "custom-user-field-select-value-invalid": "Valgt alternativ for egendefinert felt er ugyldig, %1", "custom-user-field-invalid-text": "Tekst for egendefinert felt er ugyldig, %1", @@ -214,11 +214,11 @@ "not-in-room": "Bruker ikke i rom", "cant-kick-self": "Du kan ikke utestenge deg selv fra gruppen", "no-users-selected": "Ingen bruker(e) valgt", - "no-groups-selected": "No group(s) selected", + "no-groups-selected": "Ingen grupper valgt", "invalid-home-page-route": "Ugyldig hjemmesidelenke", "invalid-session": "Ugyldig økt", "invalid-session-text": "Det ser ut til at din innloggingssesjon ikke lenger er aktiv. Last inn denne siden på nytt.", - "session-mismatch": "Mismatch på sesjon", + "session-mismatch": "Uoverensstemmelse i sesjon", "session-mismatch-text": "Det ser ut til at din innloggingssesjon ikke lenger matcher med serveren. Last inn denne siden på nytt.", "no-topics-selected": "Ingen tråder valgt!", "cant-move-to-same-topic": "Du kan ikke flytte innlegg til samme tråd!", @@ -232,8 +232,8 @@ "socket-reconnect-failed": "Får ikke tilgang til serveren for øyeblikket. Klikk her for å prøve igjen, eller prøv igjen senere", "invalid-plugin-id": "Ugyldig innstikk-ID", "plugin-not-whitelisted": "Ute av stand til å installere tillegget – bare tillegg som er hvitelistet av NodeBB sin pakkebehandler kan bli installert via administratorkontrollpanelet", - "plugins-set-in-configuration": "You are not allowed to change plugin state as they are defined at runtime (config.json, environmental variables or terminal arguments), please modify the configuration instead.", - "theme-not-set-in-configuration": "When defining active plugins in configuration, changing themes requires adding the new theme to the list of active plugins before updating it in the ACP", + "plugins-set-in-configuration": "Du har ikke tillatelse til å endre plugin-status da de er definert under kjøring (config.json, miljøvariabler eller terminalargumenter)Vennligst endre konfigurasjonen i stedet.", + "theme-not-set-in-configuration": "Når aktive plugins er definert i konfigurasjonen, krever endring av tema at det nye temaet legges til i listen over aktive plugins før det oppdateres i ACP.", "topic-event-unrecognized": "Trådhendelse '%1' er ukjent", "cant-set-child-as-parent": "Kan ikke sette underkategori til hovedkategori", "cant-set-self-as-parent": "Kan ikke sette denne som hovedkategori", @@ -247,5 +247,5 @@ "api.500": "En uventet feil oppstod mens vi prøvde å betjene forespørsel din.", "api.501": "Ruten du prøver å kalle er ikke implementert enda. Prøv igjen i morgen", "api.503": "Ruten du prøver å kalle er for øyeblikket ikke tilgjengelig grunnet innstilling på serveren", - "api.reauth-required": "The resource you are trying to access requires (re-)authentication." + "api.reauth-required": "Ressursen du prøver å få tilgang til krever (re-)autentisering." } \ No newline at end of file diff --git a/public/language/nb/global.json b/public/language/nb/global.json index 3eff607cae..54ee53976c 100644 --- a/public/language/nb/global.json +++ b/public/language/nb/global.json @@ -69,7 +69,7 @@ "posts": "Innlegg", "x-posts": "%1 innlegg", "x-topics": "%1 emner", - "x-reputation": "%1 rykte", + "x-reputation": "%1 omdømme", "best": "Best", "controversial": "Kontroversiell", "votes": "Stemmer", diff --git a/public/language/nb/groups.json b/public/language/nb/groups.json index 4327b3e8e7..e06dbfce31 100644 --- a/public/language/nb/groups.json +++ b/public/language/nb/groups.json @@ -1,7 +1,7 @@ { - "all-groups": "All groups", + "all-groups": "Alle grupper", "groups": "Grupper", - "members": "Members", + "members": "Medlemmer", "view-group": "Vis gruppe", "owner": "Gruppeeier", "new-group": "Opprett ny gruppe", @@ -37,14 +37,14 @@ "details.member-count": "Antall medlemmer", "details.creation-date": "Opprettelsesdato", "details.description": "Beskrivelse", - "details.member-post-cids": "Category IDs to display posts from", + "details.member-post-cids": "Kategori-ID-er for å vise innlegg fra", "details.badge-preview": "Forhåndsvisning av skilt", "details.change-icon": "Endre ikon", "details.change-label-colour": "Endre fargen på etiketten", "details.change-text-colour": "Endre farge på tekst", - "details.badge-text": "Skilt-tekst", + "details.badge-text": "Skilttekst", "details.userTitleEnabled": "Vis skilt", - "details.private-help": "Hvis aktivert, vil medlemskap i grupper kreve godkjennelse fra en gruppeeier", + "details.private-help": "Hvis aktivert, vil medlemskap i grupper kreve godkjenning fra en gruppeeier", "details.hidden": "Skjult", "details.hidden-help": "Hvis aktivert, vil ikke denne gruppen bli funnet i gruppelisten, og brukere må inviteres manuelt", "details.delete-group": "Slett gruppe", @@ -59,7 +59,7 @@ "membership.leave.notification-title": "%1 har forlatt gruppen %2", "membership.reject": "Avslå", "new-group.group-name": "Gruppenavn:", - "upload-group-cover": "Last opp et deksel for gruppen", + "upload-group-cover": "Last opp et omslagsbilde for gruppen", "bulk-invite-instructions": "Skriv inn en liste over kommaseparerte brukernavn for å invitere til denne gruppen", "bulk-invite": "Inviter i bulk", "remove-group-cover-confirm": "Er du sikker på at du vil fjerne omslagsbildet?" diff --git a/public/language/nb/modules.json b/public/language/nb/modules.json index 3eeb9aa60e..c522e0b191 100644 --- a/public/language/nb/modules.json +++ b/public/language/nb/modules.json @@ -89,12 +89,12 @@ "composer.formatting.bold": "Uthevet", "composer.formatting.italic": "Kursiv", "composer.formatting.heading": "Overskrift", - "composer.formatting.heading1": "Heading 1", - "composer.formatting.heading2": "Heading 2", - "composer.formatting.heading3": "Heading 3", - "composer.formatting.heading4": "Heading 4", - "composer.formatting.heading5": "Heading 5", - "composer.formatting.heading6": "Heading 6", + "composer.formatting.heading1": "Overskrift 1", + "composer.formatting.heading2": "Overskrift 2", + "composer.formatting.heading3": "Overskrift 3", + "composer.formatting.heading4": "Overskrift 4", + "composer.formatting.heading5": "Overskrift 5", + "composer.formatting.heading6": "Overskrift 6", "composer.formatting.list": "Liste", "composer.formatting.strikethrough": "Gjennomstreking", "composer.formatting.code": "Kode", diff --git a/public/language/nb/notifications.json b/public/language/nb/notifications.json index 328a58cfca..215be2d3bb 100644 --- a/public/language/nb/notifications.json +++ b/public/language/nb/notifications.json @@ -1,10 +1,10 @@ { "title": "Varsler", "no-notifs": "Du har ingen nye varsler", - "see-all": "Alle varslinger", + "see-all": "Alle varsler", "mark-all-read": "Marker alle som lest", "back-to-home": "Tilbake til %1", - "outgoing-link": "Utgående link", + "outgoing-link": "Utgående lenke", "outgoing-link-message": "Du forlater nå %1", "continue-to": "Fortsett til %1", "return-to": "Gå tilbake til %1", @@ -12,17 +12,17 @@ "you-have-unread-notifications": "Du har uleste varsler.", "all": "Alle", "topics": "Emner", - "tags": "Tags", + "tags": "Emneord", "categories": "Kategorier", "replies": "Svar", "chat": "Samtaler", "group-chat": "Gruppesamtaler", - "public-chat": "Public Chats", + "public-chat": "Offentlige samtaler", "follows": "Følger", "upvote": "Oppstemmer", "awards": "Tildelninger", "new-flags": "Nye flagg", - "my-flags": "Flagg som er tildelt til meg", + "my-flags": "Flagg som er tildelt meg", "bans": "Forbud", "new-message-from": "Ny melding fra %1", "new-messages-from": "%1 nye meldinger fra %2", @@ -33,7 +33,7 @@ "user-posted-in-public-room-triple": "%1, %2 og %3 skrev i %5", "user-posted-in-public-room-multiple": "%1, %2 og %3 andre skrev i %5", "upvoted-your-post-in": "%1 har stemt opp innlegget ditt i %2.", - "upvoted-your-post-in-dual": "%1 og 2% har stemt opp innlegget ditt i %3.", + "upvoted-your-post-in-dual": "%1 og %2 har stemt opp innlegget ditt i %3.", "upvoted-your-post-in-triple": "%1, %2 og %3 har stemt opp innlegget ditt i %4.", "upvoted-your-post-in-multiple": "%1, %2 og %3 andre har stemt opp innlegget ditt i %4.", "moved-your-post": "%1 har flyttet innlegget ditt til %2.", @@ -43,15 +43,15 @@ "user-flagged-post-in-triple": "%1, %2 og %3 flagget et innlegg i %4", "user-flagged-post-in-multiple": "%1, %2 og %3 andre flagget et innlegg i %4", "user-flagged-user": "%1 flagget en brukerprofil (%2)", - "user-flagged-user-dual": "%1 og 2% har flagget en brukerprofil (%3)", + "user-flagged-user-dual": "%1 og %2 har flagget en brukerprofil (%3)", "user-flagged-user-triple": "%1, %2 og %3 har flagget en brukerprofil (%4)", "user-flagged-user-multiple": "%1, %2 og %3 andre har flagget en brukerprofil (%4)", "user-posted-to": "%1 har skrevet et svar til: %2", - "user-posted-to-dual": "%1 og 2% har svart på innlegget ditt i %3.", - "user-posted-to-triple": "%1, %2 og %3 har postet svar til: %4", - "user-posted-to-multiple": "%1, %2 og %3 andre har postet svar til: %4", + "user-posted-to-dual": "%1 og %2 har svart på innlegget ditt i %3", + "user-posted-to-triple": "%1, %2 og %3 har svart til: %4", + "user-posted-to-multiple": "%1, %2 og %3 andre har svart til: %4", "user-posted-topic": "%1 har skrevet en ny tråd: %2", - "user-edited-post": "%1 har redigert ett innlegg i %2", + "user-edited-post": "%1 har redigert et innlegg i %2", "user-posted-topic-with-tag": "%1 har publisert %2 (merket %3)", "user-posted-topic-with-tag-dual": "%1 har publisert %2 (merket %3 og %4)", "user-posted-topic-with-tag-triple": "%1 har publisert %2 (merket %3, %4 og %5)", @@ -82,7 +82,7 @@ "email-only": "Kun e-post", "notification-and-email": "Notifikasjon og e-post", "notificationType-upvote": "Når noen stemmer opp innlegget ditt", - "notificationType-new-topic": "Når noen du følger følger legger ut et emne", + "notificationType-new-topic": "Når noen du følger legger ut et emne", "notificationType-new-topic-with-tag": "Når et emne publiseres med et stikkord du følger", "notificationType-new-topic-in-category": "Når et emne er lagt ut i en kategori du ser på", "notificationType-new-reply": "Når et nytt svar er lagt ut i et emne du overvåker", diff --git a/public/language/nb/pages.json b/public/language/nb/pages.json index c216bc868d..0b99a4d6e5 100644 --- a/public/language/nb/pages.json +++ b/public/language/nb/pages.json @@ -6,15 +6,15 @@ "popular-month": "Populære emner denne måneden", "popular-alltime": "Mest populære emner for all tid", "recent": "Nylige emner", - "top-day": "Dagens emne med fleste stemmer", + "top-day": "Dagens emne med flest stemmer", "top-week": "Emne med flest stemmer denne uken", - "top-month": "Emne med flest stemme denne måneden", + "top-month": "Emne med flest stemmer denne måneden", "top-alltime": "Emner med flest stemmer", "moderator-tools": "Moderatorverktøy", "flagged-content": "Flagget innhold", - "ip-blacklist": "IP Svarteliste", + "ip-blacklist": "IP-svarteliste", "post-queue": "Innleggskø", - "registration-queue": "Registration Queue", + "registration-queue": "Registreringskø", "users/online": "Påloggede Brukere", "users/latest": "Nyeste Brukere", "users/sort-posts": "Brukere med flest innlegg", @@ -24,7 +24,7 @@ "users/search": "Brukersøk", "notifications": "Varsler", "tags": "Emneord", - "tag": "Tråder tagget under "%1"", + "tag": "Tråder tagget under \"%1\"", "register": "Registrer en konto", "registration-complete": "Registrering er fullført", "login": "Logg inn på kontoen din", @@ -35,7 +35,7 @@ "chats": "Samtaler", "chat": "Samtale med %1", "flags": "Flagg", - "flag-details": "Flagg %1 Detaljer", + "flag-details": "Flagg %1 detaljer", "account/edit": "Endrer \"%1\"", "account/edit/password": "Redigeringspassord for \"%1\"", "account/edit/username": "Rediger brukernavnet til \"%1\"", @@ -47,11 +47,11 @@ "account/latest-posts": "Seneste innlegg skrevet av %1", "account/topics": "Emner opprettet av %1", "account/groups": "%1 sine grupper", - "account/watched-categories": "%1's overvåkede kategorier", - "account/watched-tags": "%1's overvåkede tagger", - "account/bookmarks": "%1's bokmerkede innlegg", + "account/watched-categories": "%1 sine overvåkede kategorier", + "account/watched-tags": "%1 sine overvåkede emneord", + "account/bookmarks": "%1 sine bokmerkede innlegg", "account/settings": "Brukerinnstillinger", - "account/settings-of": "Endre innstillingen på %1", + "account/settings-of": "Endre innstillingene til %1", "account/watched": "Innlegg overvåket av %1", "account/ignored": "Emner ignorert av %1", "account/read": "Emner lest av %1", @@ -59,7 +59,7 @@ "account/downvoted": "Innlegg nedstemt av %1", "account/best": "Beste innlegg skrevet av %1", "account/controversial": "Kontroversielle innlegg skrevet av %1", - "account/blocks": "Blokkerte brukere for %1", + "account/blocks": "Brukere blokkert av %1", "account/uploads": "Opplastninger av %1", "account/sessions": "Påloggingsøkter", "confirm": "E-post bekreftet", diff --git a/public/language/nb/recent.json b/public/language/nb/recent.json index f9446f5087..e17bf94e4d 100644 --- a/public/language/nb/recent.json +++ b/public/language/nb/recent.json @@ -7,5 +7,5 @@ "alltime": "All tid", "no-recent-topics": "Det er ingen nye emner.", "no-popular-topics": "Det er ingen populære emner.", - "load-new-posts": "Load new posts" + "load-new-posts": "Last inn nye innlegg" } \ No newline at end of file diff --git a/public/language/nb/rewards.json b/public/language/nb/rewards.json index 6a61146596..e7de839b89 100644 --- a/public/language/nb/rewards.json +++ b/public/language/nb/rewards.json @@ -1,8 +1,8 @@ { - "awarded-x-reputation": "Du har blitt tildelt 1% rykte", - "awarded-group-membership": "Du har blitt lag til i gruppen 1%", + "awarded-x-reputation": "Du har blitt tildelt %1 omdømme", + "awarded-group-membership": "Du har blitt lagt til i gruppen %1", - "essentials/user.reputation-conditional-value": "(Rykte %1 %2)", + "essentials/user.reputation-conditional-value": "(Omdømme %1 %2)", "essentials/user.postcount-conditional-value": "(Antall innlegg %1 %2)", "essentials/user.lastonline-conditional-value": "(Sist pålogget %1 %2)", "essentials/user.joindate-conditional-value": "(Innmeldingsdato %1 %2)", diff --git a/public/language/nb/search.json b/public/language/nb/search.json index b497570d93..498ab1f9a5 100644 --- a/public/language/nb/search.json +++ b/public/language/nb/search.json @@ -1,11 +1,11 @@ { "type-to-search": "Skriv for å søke", "results-matching": "%1 resultat(er) samsvarer med \"%2\", (%3 sekunder)", - "no-matches": "Ingen matcher funnet", + "no-matches": "Ingen treff funnet", "advanced-search": "Avansert søk", "in": "I", "in-titles": "I titler", - "in-titles-posts": "I tiler og innlegg", + "in-titles-posts": "I titler og innlegg", "in-posts": "I innlegg", "in-bookmarks": "I bokmerker", "in-categories": "I kategorier", @@ -14,7 +14,7 @@ "categories": "Kategorier", "all-categories": "Alle kategorier", "categories-x": "Kategorier: %1", - "categories-watched-categories": "Kategorier: Overvåkede kategorier", + "categories-watched-categories": "Kategorier: Følgede kategorier", "type-a-category": "Skriv inn en kategori", "tags": "Emneord", "tags-x": "Emneord: %1", @@ -24,23 +24,23 @@ "match-any-word": "Match hvilket som helst ord", "all": "Alle", "any": "Hvilken som helst", - "posted-by": "Skapt av", + "posted-by": "Opprettet av", "posted-by-usernames": "Publisert av: %1", "type-a-username": "Skriv inn et brukernavn", - "search-child-categories": "Søk underkategorier", + "search-child-categories": "Søk i underkategorier", "has-tags": "Har emneord", - "reply-count": "Mengde svar", - "replies": "Svarer", + "reply-count": "Antall svar", + "replies": "Svar", "replies-atleast-count": "Svar: Minst %1", "replies-atmost-count": "Svar: På det meste %1", "at-least": "Minst", - "at-most": "Maks", + "at-most": "Maksimalt", "relevance": "Relevanse", "time": "Tid", - "post-time": "Tidspunkt for innlegg", + "post-time": "Innleggstid", "votes": "Stemmer", "newer-than": "Nyere enn", - "older-than": "Eldre en", + "older-than": "Eldre enn", "any-date": "Alle datoer", "yesterday": "I går", "one-week": "En uke", @@ -53,7 +53,7 @@ "time-older-than-86400": "Tid: Eldre enn i går", "time-newer-than-604800": "Tid: Nyere enn en uke", "time-older-than-604800": "Tid: Eldre enn en uke", - "time-newer-than-1209600": "Tid. Nyere enn to uker", + "time-newer-than-1209600": "Tid: Nyere enn to uker", "time-older-than-1209600": "Tid: Eldre enn to uker", "time-newer-than-2592000": "Tid: Nyere enn en måned", "time-older-than-2592000": "Tid: Eldre enn en måned", @@ -64,46 +64,46 @@ "time-newer-than-31104000": "Tid: Nyere enn ett år", "time-older-than-31104000": "Tid: Eldre enn ett år", "sort-by": "Sorter etter", - "sort": "Sortere", + "sort": "Sorter", "last-reply-time": "Siste svartid", - "topic-title": "Tråd-tittel", - "topic-votes": "Stemmer på emne", + "topic-title": "Trådtittel", + "topic-votes": "Stemmer på tråd", "number-of-replies": "Antall svar", "number-of-views": "Antall visninger", - "topic-start-date": "Starttid for tråd", + "topic-start-date": "Startdato for tråd", "username": "Brukernavn", "category": "Kategori", - "descending": "I synkende rekkefølge", - "ascending": "I stigende rekkefølge", - "sort-by-relevance-desc": "Sorter etter: Relevans i synkende rekkefølge", - "sort-by-relevance-asc": "Sorter etter: Relevans i synkende rekkefølge", - "sort-by-timestamp-desc": "Sorter etter: Innleggstid i synkende rekkefølge", - "sort-by-timestamp-asc": "Sorter etter: Posttid i stigende rekkefølge", - "sort-by-votes-desc": "Sorter etter: Stemmer i synkende rekkefølge", - "sort-by-votes-asc": "Sorter etter: Stemmer i stigende rekkefølge", - "sort-by-topic.lastposttime-desc": "Sorter etter: Siste svartid i synkende rekkefølge", - "sort-by-topic.lastposttime-asc": "Sorter etter: Siste svartid i stigende rekkefølge", - "sort-by-topic.title-desc": "Sorter etter: Emnetittel i synkende rekkefølge", - "sort-by-topic.title-asc": "Sorter etter: Emnetittel i stigende rekkefølge", - "sort-by-topic.postcount-desc": "Sorter etter: Antall svar i synkende rekkefølge", - "sort-by-topic.postcount-asc": "Sorter etter: Antall svar i stigende rekkefølge", - "sort-by-topic.viewcount-desc": "Sorter etter: Antall visninger i synkende rekkefølge", - "sort-by-topic.viewcount-asc": "Sorter etter: Antall visninger i stigende rekkefølge", - "sort-by-topic.votes-desc": "Sorter etter: Emnestemmer i synkende rekkefølge", - "sort-by-topic.votes-asc": "Sorter etter: Temastemmer i stigende rekkefølge", - "sort-by-topic.timestamp-desc": "Sorter etter: Emnets startdato i synkende rekkefølge", - "sort-by-topic.timestamp-asc": "Sorter etter: Emnets startdato i stigende rekkefølge", - "sort-by-user.username-desc": "Sorter etter: Brukernavn i synkende rekkefølge", - "sort-by-user.username-asc": "Sorter etter: Brukernavn i stigende rekkefølge", - "sort-by-category.name-desc": "Sorter etter: Kategori i synkende rekkefølge", - "sort-by-category.name-asc": "Sorter etter: Kategori i stigende rekkefølge", + "descending": "Synkende rekkefølge", + "ascending": "Stigende rekkefølge", + "sort-by-relevance-desc": "Sorter etter: Relevanse (synkende rekkefølge)", + "sort-by-relevance-asc": "Sorter etter: Relevanse (stigende rekkefølge)", + "sort-by-timestamp-desc": "Sorter etter: Innleggstid (synkende rekkefølge)", + "sort-by-timestamp-asc": "Sorter etter: Innleggstid (stigende rekkefølge)", + "sort-by-votes-desc": "Sorter etter: Stemmer (synkende rekkefølge)", + "sort-by-votes-asc": "Sorter etter: Stemmer (stigende rekkefølge)", + "sort-by-topic.lastposttime-desc": "Sorter etter: Siste svartid (synkende rekkefølge)", + "sort-by-topic.lastposttime-asc": "Sorter etter: Siste svartid (stigende rekkefølge)", + "sort-by-topic.title-desc": "Sorter etter: Emnetittel (synkende rekkefølge)", + "sort-by-topic.title-asc": "Sorter etter: Emnetittel (stigende rekkefølge)", + "sort-by-topic.postcount-desc": "Sorter etter: Antall svar (synkende rekkefølge)", + "sort-by-topic.postcount-asc": "Sorter etter: Antall svar (stigende rekkefølge)", + "sort-by-topic.viewcount-desc": "Sorter etter: Antall visninger (synkende rekkefølge)", + "sort-by-topic.viewcount-asc": "Sorter etter: Antall visninger (stigende rekkefølge)", + "sort-by-topic.votes-desc": "Sorter etter: Trådstemmer (synkende rekkefølge)", + "sort-by-topic.votes-asc": "Sorter etter: Trådstemmer (stigende rekkefølge)", + "sort-by-topic.timestamp-desc": "Sorter etter: Trådstartdato (synkende rekkefølge)", + "sort-by-topic.timestamp-asc": "Sorter etter: Trådstartdato (stigende rekkefølge)", + "sort-by-user.username-desc": "Sorter etter: Brukernavn (synkende rekkefølge)", + "sort-by-user.username-asc": "Sorter etter: Brukernavn (stigende rekkefølge)", + "sort-by-category.name-desc": "Sorter etter: Kategori (synkende rekkefølge)", + "sort-by-category.name-asc": "Sorter etter: Kategori (stigende rekkefølge)", "save": "Lagre", "save-preferences": "Lagre innstillinger", - "clear-preferences": "Tøm innstillinnger", + "clear-preferences": "Tøm innstillinger", "search-preferences-saved": "Søkeinnstillinger lagret", "search-preferences-cleared": "Søkeinnstillinger tømt", "show-results-as": "Vis resultater som", - "show-results-as-topics": "Show results as topics", + "show-results-as-topics": "Vis resultater som tråder", "show-results-as-posts": "Vis resultater som innlegg", "see-more-results": "Se flere resultater (%1)", "search-in-category": "Søk i \"%1\"" diff --git a/public/language/nb/tags.json b/public/language/nb/tags.json index 943a869ec7..85f56e9cc8 100644 --- a/public/language/nb/tags.json +++ b/public/language/nb/tags.json @@ -8,10 +8,10 @@ "no-tags": "Det finnes ingen emneord ennå.", "select-tags": "Velg emneord", "tag-whitelist": "Hviteliste for emneord", - "watching": "Overvåker", - "not-watching": "Overvåker ikke", - "watching.description": "Gi meg beskjed om nye emner.", - "not-watching.description": "Ikke gi meg beskjed om nye emner.", + "watching": "Følger", + "not-watching": "Følger ikke", + "watching.description": "Varsle meg om nye emner.", + "not-watching.description": "Ikke varsle meg om nye emner.", "following-tag.message": "Du vil nå motta varsler når noen legger ut et emne med dette emneordet.", "not-following-tag.message": "Du vil ikke motta varsler når noen legger ut et emne med dette emneordet." } \ No newline at end of file diff --git a/public/language/nb/topic.json b/public/language/nb/topic.json index 3a0e6bfafc..ab23cfec71 100644 --- a/public/language/nb/topic.json +++ b/public/language/nb/topic.json @@ -6,14 +6,14 @@ "post-is-deleted": "Dette innlegget er slettet!", "topic-is-deleted": "Denne tråden er slettet!", "profile": "Profil", - "posted-by": "Skapt av %1", - "posted-by-guest": "Skapt av Gjest", + "posted-by": "Opprettet av %1", + "posted-by-guest": "Opprettet av Gjest", "chat": "Chat", "notify-me": "Bli varslet om nye svar i denne tråden", "quote": "Siter", "reply": "Svar", - "replies-to-this-post": "%1 Svar", - "one-reply-to-this-post": "1 Svar", + "replies-to-this-post": "%1 svar", + "one-reply-to-this-post": "1 svar", "last-reply-time": "Siste svar", "reply-options": "Alternativer for svar", "reply-as-topic": "Svar som tråd", @@ -27,7 +27,7 @@ "restore": "Gjenopprett", "move": "Flytt", "change-owner": "Bytt eier", - "manage-editors": "Administrer Editor", + "manage-editors": "Administrer redaktører", "fork": "Forgren", "link": "Lenk til", "share": "Del", @@ -42,7 +42,7 @@ "copy-code": "Kopier kode", "copy-ip": "Kopier IP", "ban-ip": "Forby IP", - "view-history": "Redigere historie", + "view-history": "Vis redigeringshistorikk", "wrote-ago": "skrev ", "wrote-on": "skrev på ", "replied-to-user-ago": "svarte på %3 ", @@ -134,7 +134,7 @@ "bookmark": "Bokmerke", "bookmarks": "Bokmerker", "bookmarks.has-no-bookmarks": "Du har ikke bokmerket noen innlegg ennå.", - "copy-permalink": "Kopier permalink", + "copy-permalink": "Kopier permanent lenke", "loading-more-posts": "Laster flere innlegg", "move-topic": "Flytt tråd", "move-topics": "Flytt tråder", @@ -191,9 +191,9 @@ "most-posts": "Flest innlegg", "most-views": "Flest visninger", "stale.title": "Lag en ny tråd i stedet?", - "stale.warning": "Tråden du svarer på er ganske gammel. Vil du heller lage en ny tråd og refere til denne i den?", + "stale.warning": "Tråden du svarer på er ganske gammel. Vil du heller lage en ny tråd og referere til denne?", "stale.create": "Lag en ny tråd", - "stale.reply-anyway": "Svar på denne tråden allikevel", + "stale.reply-anyway": "Svar på denne tråden likevel", "link-back": "Sv: [%1](%2)", "diffs.title": "Redigeringshistorikk for innlegg", "diffs.description": "Dette innlegget har %1 redigeringer. Klikk på en av revisjonene nedenfor for å se innholdet på innlegget på det tidspunktet.", @@ -208,7 +208,7 @@ "timeago-later": "%1 senere", "timeago-earlier": "%1 tidligere", "first-post": "Første innlegg", - "last-post": "Seneste innlegg", + "last-post": "Nyeste innlegg", "go-to-my-next-post": "Gå til mitt neste innlegg", "no-more-next-post": "Du har ikke flere innlegg i dette emnet", "open-composer": "Åpne editor", diff --git a/public/language/nb/unread.json b/public/language/nb/unread.json index 55dcaca25e..9ac5779198 100644 --- a/public/language/nb/unread.json +++ b/public/language/nb/unread.json @@ -3,7 +3,7 @@ "no-unread-topics": "Det er ingen uleste emner.", "load-more": "Last inn mer", "mark-as-read": "Marker som lest", - "mark-as-unread": "Marker som lest", + "mark-as-unread": "Marker som ulest", "selected": "Valgte", "all": "Alle", "all-categories": "Alle kategorier", diff --git a/public/language/nb/users.json b/public/language/nb/users.json index ec7e43eb0d..f1f13bd283 100644 --- a/public/language/nb/users.json +++ b/public/language/nb/users.json @@ -7,7 +7,7 @@ "most-flags": "Flest flagg", "search": "Søk", "enter-username": "Skriv inn et brukernavn for å søke", - "search-user-for-chat": "Search for a user to start chat", + "search-user-for-chat": "Søk etter en bruker for å starte chat", "load-more": "Last flere", "users-found-search-took": "%1 bruker(e) funnet. Søket tok %2 sekunder.", "filter-by": "Filtrer etter", @@ -21,6 +21,6 @@ "popular-topics": "Populære tråder", "unread-topics": "Uleste tråder", "categories": "Kategorier", - "tags": "Tagger", + "tags": "Emneord", "no-users-found": "Ingen brukere funnet" } \ No newline at end of file diff --git a/public/language/pl/admin/settings/uploads.json b/public/language/pl/admin/settings/uploads.json index 51ca09ce3e..10d0606239 100644 --- a/public/language/pl/admin/settings/uploads.json +++ b/public/language/pl/admin/settings/uploads.json @@ -12,7 +12,7 @@ "resize-image-width-threshold-help": "(w pikselach; domyślnie 2000 pikseli; ustaw 0 aby wyłączyć)", "resize-image-width": "Zmień rozmiar obrazów na określoną szerokość", "resize-image-width-help": "(w pikselach, domyślnie: 760 pixeli, ustaw 0, aby wyłączyć)", - "resize-image-keep-original": "Keep original image after resize", + "resize-image-keep-original": "Zachowaj oryginał po zmniejszeniu", "resize-image-quality": "Poziom jakości użyty przy zmianie rozmiaru", "resize-image-quality-help": "Użyj niższych ustawień jakości aby zredukować rozmiar pliku zmienionego obrazu.", "max-file-size": "Maksymalny rozmiar plików (w KiB)", diff --git a/public/language/zh-CN/tags.json b/public/language/zh-CN/tags.json index d68b9825fa..c61222475a 100644 --- a/public/language/zh-CN/tags.json +++ b/public/language/zh-CN/tags.json @@ -8,10 +8,10 @@ "no-tags": "尚无标签。", "select-tags": "选择标签", "tag-whitelist": "标签白名单", - "watching": "Watching", - "not-watching": "Not Watching", - "watching.description": "Notify me of new topics.", - "not-watching.description": "Do not notify me of new topics.", - "following-tag.message": "You will now be receiving notifications when somebody posts a topic with this tag.", - "not-following-tag.message": "You will not receive notifications when somebody posts a topic with this tag." + "watching": "关注中", + "not-watching": "未关注", + "watching.description": "有新主题时通知我。", + "not-watching.description": "不要在有新主题时通知我。", + "following-tag.message": "当有人发布带有此标签的主题时,您将会收到通知。", + "not-following-tag.message": "当有人发布带有此标签的主题时,您将不会收到通知。" } \ No newline at end of file From 309fcf4e2b70c5cd5b823c5a10bfb54852fbdc49 Mon Sep 17 00:00:00 2001 From: Misty Release Bot Date: Wed, 4 Dec 2024 09:18:33 +0000 Subject: [PATCH 15/82] Latest translations and fallbacks --- .../language/nb/admin/manage/privileges.json | 4 +-- public/language/nb/category.json | 2 +- public/language/nb/topic.json | 10 +++---- public/language/nb/user.json | 12 ++++---- public/language/zh-CN/email.json | 4 +-- public/language/zh-CN/error.json | 28 ++++++++--------- public/language/zh-CN/flags.json | 2 +- public/language/zh-CN/groups.json | 4 +-- public/language/zh-CN/ip-blacklist.json | 2 +- public/language/zh-CN/modules.json | 30 +++++++++---------- public/language/zh-CN/notifications.json | 8 ++--- public/language/zh-CN/pages.json | 2 +- 12 files changed, 54 insertions(+), 54 deletions(-) diff --git a/public/language/nb/admin/manage/privileges.json b/public/language/nb/admin/manage/privileges.json index b102313cd5..1b2e763424 100644 --- a/public/language/nb/admin/manage/privileges.json +++ b/public/language/nb/admin/manage/privileges.json @@ -35,8 +35,8 @@ "view-edit-history": "Vis redigeringshistorikk", "delete-posts": "Slett innlegg", "view-deleted": "Vis slettede innlegg", - "upvote-posts": "Stem opp innlegg", - "downvote-posts": "Stem ned innlegg", + "upvote-posts": "Tilrå innlegg", + "downvote-posts": "Ikke tilrå innlegg", "delete-topics": "Slett emner", "purge": "Rensk", "moderate": "Moderere", diff --git a/public/language/nb/category.json b/public/language/nb/category.json index 7e97b6945a..e6674f2cad 100644 --- a/public/language/nb/category.json +++ b/public/language/nb/category.json @@ -18,7 +18,7 @@ "not-watching.description": "Ikke vis emner i ulest, vis i nylig", "ignoring.description": "Ikke vis emner i ulest & nylig", "watching.message": "Du ser nå på oppdateringer fra denne kategorien og alle underkategorier", - "tracking.message": "Du sporer nå oppdateringer fra denne kategorien og alle underkategorier", + "tracking.message": "Du følger nå oppdateringer fra denne kategorien og alle underkategorier", "notwatching.message": "Du ser ikke på oppdateringer fra denne kategorien og alle underkategorier", "ignoring.message": "Du ignorerer nå oppdateringer fra denne kategorien og alle underkategorier", "watched-categories": "Overvåkede kategorier", diff --git a/public/language/nb/topic.json b/public/language/nb/topic.json index ab23cfec71..b09ebb6019 100644 --- a/public/language/nb/topic.json +++ b/public/language/nb/topic.json @@ -78,7 +78,7 @@ "deleted-message": "Denne tråden har blitt slettet. Bare brukere med trådhåndterings-privilegier kan se den.", "following-topic.message": "Du vil nå motta varsler når noen skriver i denne tråden.", "not-following-topic.message": "Du vil se denne tråden i trådlisten, men du vil ikke motta varslinger når noen skriver i den.", - "ignoring-topic.message": "Du vil ikke lenger se denne tråden blandt de uleste trådene. Du vil få et varsel når du blir nevnt eller din tråd blir oppstemt.", + "ignoring-topic.message": "Du vil ikke lenger se denne tråden blant de uleste trådene. Du vil få et varsel når du blir nevnt eller din tråd blir tilrådd.", "login-to-subscribe": "Vennligst registrer deg eller logg inn for å abonnere på denne tråden.", "markAsUnreadForAll.success": "Tråd markert som ulest for alle.", "mark-unread": "Merk som ulest", @@ -159,7 +159,7 @@ "move-posts-instruction": "Klikk på innleggene du vil flytte, og skriv deretter inn en emne-ID, eller gå til målemnet", "move-topic-instruction": "Velg målkategorien og klikk deretter flytt", "change-owner-instruction": "Klikk på innleggene du vil tildele til en annen bruker", - "manage-editors-instruction": "Manage the users who can edit this post below.", + "manage-editors-instruction": "Administrer brukere som kan redigere dette innlegget nedenfor.", "composer.title-placeholder": "Skriv din tråd-tittel her", "composer.handle-placeholder": "Skriv inn navnet ditt / signatur her", "composer.hide": "Gjem", @@ -187,7 +187,7 @@ "newest-to-oldest": "Nyeste til eldste", "recently-replied": "Seneste svar", "recently-created": "Siste innlegg", - "most-votes": "Flest stemmer", + "most-votes": "Flest tilrådinger", "most-posts": "Flest innlegg", "most-views": "Flest visninger", "stale.title": "Lag en ny tråd i stedet?", @@ -215,8 +215,8 @@ "post-quick-reply": "Raskt svar", "navigator.index": "Innlegg %1 av %2", "navigator.unread": "%1 ulest", - "upvote-post": "Stem opp innlegg", - "downvote-post": "Stem ned innlegg", + "upvote-post": "Tilrå innlegg", + "downvote-post": "Ikke tilrå innlegg", "post-tools": "Innleggsverktøy", "unread-posts-link": "Lenke til uleste innlegg", "thumb-image": "Miniatyrbilde for emne" diff --git a/public/language/nb/user.json b/public/language/nb/user.json index d83aeee39d..8517bb2410 100644 --- a/public/language/nb/user.json +++ b/public/language/nb/user.json @@ -79,7 +79,7 @@ "change-password": "Endre passord", "change-password-error": "Ugyldig passord!", "change-password-error-wrong-current": "Ditt gjeldende passord er ikke korrekt!", - "change-password-error-same-password": "Your new password matches your current password, please use a new password.", + "change-password-error-same-password": "Passordet ditt har utløpt, vennligst velg et nytt passord", "change-password-error-match": "Passordene må samsvare!", "change-password-error-privileges": "Du har ikke rettigheter tli å endre dette passordet.", "change-password-success": "Passordet ditt ble oppdatert!", @@ -97,7 +97,7 @@ "crop-picture": "Beskjær bilde", "upload-cropped-picture": "Beskjær og last opp", "avatar-background-colour": "Avatar bakgrunnsfarge", - "settings": "Innstillinger", + "settings": "Brukerinnstillinger", "show-email": "Vis min e-post", "show-fullname": "Vis mitt fulle navn", "restrict-chats": "Bare tillat chat-meldinger fra brukere jeg følger", @@ -111,11 +111,11 @@ "has-no-follower": "Denne brukeren har ingen følgere :(", "follows-no-one": "Denne brukeren følger ingen :(", "has-no-posts": "Denne brukeren har ikke skrevet noe enda.", - "has-no-best-posts": "Denne brukeren har ingen opp-stemte innlegg ennå.", + "has-no-best-posts": "Denne brukeren har ingen tilrådde innlegg ennå.", "has-no-topics": "Denne brukeren har ikke skrevet noen tråder enda.", "has-no-watched-topics": "Denne brukeren har ikke fulgt noen tråder enda.", "has-no-ignored-topics": "Denne brukeren har ikke ignorert noen emner ennå", - "has-no-read-topics": "This user hasn't read any topics yet.", + "has-no-read-topics": "Denne brukeren har ikke lest noen tråder enda.", "has-no-upvoted-posts": "Denne brukeren har ikke stemt opp noen innlegg ennå.", "has-no-downvoted-posts": "Denne brukeren har ikke stemt ned noen innlegg ennå.", "has-no-controversial-posts": "Denne brukeren har ikke noen nedstemte innlegg ennå.", @@ -147,8 +147,8 @@ "follow-topics-you-create": "Følg tråder du vil lage", "grouptitle": "Gruppetittel", "group-order-help": "Velg en gruppe og bruk pilene for å gi titler", - "show-group-title": "Show group title", - "hide-group-title": "Hide group title", + "show-group-title": "Vis gruppetittel", + "hide-group-title": "Skjul gruppetittel", "order-group-up": "Order group up", "order-group-down": "Order group down", "no-group-title": "Ingen gruppetittel", diff --git a/public/language/zh-CN/email.json b/public/language/zh-CN/email.json index c94326d495..da067df94d 100644 --- a/public/language/zh-CN/email.json +++ b/public/language/zh-CN/email.json @@ -36,8 +36,8 @@ "digest.title.day": "您的每日摘要", "digest.title.week": "您的每周摘要", "digest.title.month": "您的每月摘要", - "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": "来自 \"%1\" 的新消息", + "notif.chat.new-message-from-user-in-room": "来自 %1 在房间 %2 中的新消息", "notif.chat.cta": "点击这里继续会话", "notif.chat.unsub.info": "根据您的订阅设置,为您发送此聊天提醒。", "notif.post.unsub.info": "根据您的订阅设置,为您发送此回帖提醒。", diff --git a/public/language/zh-CN/error.json b/public/language/zh-CN/error.json index abedb7bb2c..f859f3750a 100644 --- a/public/language/zh-CN/error.json +++ b/public/language/zh-CN/error.json @@ -51,7 +51,7 @@ "reset-rate-limited": "太多密码重置请求(总数有限)", "reset-same-password": "新的密码不能与当前使用的相同", "user-banned": "用户已禁止", - "user-banned-reason": "抱歉,此帐号已经被封禁 (原因:%1)", + "user-banned-reason": "抱歉,此帐号已经被封禁(原因:%1)", "user-banned-reason-until": "抱歉,此账号已被封禁,直到 %1(原因:%2)", "user-too-new": "抱歉,您需要等待 %1 秒后,才可以发帖!", "blacklisted-ip": "对不起,您的 IP 地址已被社区禁用。如果您认为这是一个错误,请与管理员联系。", @@ -181,20 +181,20 @@ "not-enough-reputation-min-rep-signature": "您需要 %1 声望以添加签名档", "not-enough-reputation-min-rep-profile-picture": "您需要 %1 声望以设置头像", "not-enough-reputation-min-rep-cover-picture": "您需要 %1 声望以设置封面图片", - "not-enough-reputation-custom-field": "You need %1 reputation for %2", - "custom-user-field-value-too-long": "Custom field value too long, %1", - "custom-user-field-select-value-invalid": "Custom field selected option is invalid, %1", - "custom-user-field-invalid-text": "Custom field text is invalid, %1", - "custom-user-field-invalid-link": "Custom field link is invalid, %1", - "custom-user-field-invalid-number": "Custom field number is invalid, %1", - "custom-user-field-invalid-date": "Custom field date is invalid, %1", - "invalid-custom-user-field": "Invalid custom user field, \"%1\" is already used by NodeBB", + "not-enough-reputation-custom-field": "您需要 %1 声望才能 %2", + "custom-user-field-value-too-long": "自定义字段值过长,%1", + "custom-user-field-select-value-invalid": "选中的自定义字段选项无效,%1", + "custom-user-field-invalid-text": "无效的自定义字段文本,%1", + "custom-user-field-invalid-link": "无效的自定义字段链接,%1", + "custom-user-field-invalid-number": "无效的自定义字段数字,%1", + "custom-user-field-invalid-date": "无效的自定义字段日期,%1", + "invalid-custom-user-field": "无效的自定义用户字段,“%1”已被 NodeBB 使用。", "post-already-flagged": "您已举报此帖", "user-already-flagged": "您已举报此用户", "post-flagged-too-many-times": "此贴已被其他用户举报", "user-flagged-too-many-times": "此用户已被其他用户举报", - "too-many-post-flags-per-day": "你每日可以举报%1 个帖子", - "too-many-user-flags-per-day": "你每日可以举报 %1个用户", + "too-many-post-flags-per-day": "你每日可以举报 %1 个帖子", + "too-many-user-flags-per-day": "你每日可以举报 %1 个用户", "cant-flag-privileged": "您不能举报特权用户(版主/全局版主/管理员)的内容或资料", "cant-locate-flag-report": "无法确定举报报告", "self-vote": "您不能对您自己的帖子投票", @@ -209,8 +209,8 @@ "wrong-login-type-username": "请输入您的用户名登录", "sso-registration-disabled": "已禁用通过 %1 账户的注册,请先使用邮箱地址注册", "sso-multiple-association": "您无法将此服务中的多个账户关联到您的NodeBB账号。请您分离的现有账号并重试。", - "invite-maximum-met": "您的邀请人数超出了上限 (%1 超过了 %2)。", - "no-session-found": "未登录!", + "invite-maximum-met": "您的邀请人数超出了上限(%1 超过了 %2)。", + "no-session-found": "未登录!", "not-in-room": "用户已不在聊天室中", "cant-kick-self": "您不能把自己踢出群组", "no-users-selected": "尚未选择用户", @@ -247,5 +247,5 @@ "api.500": "在试图为您的请求提供服务时出现了一个意外的错误。", "api.501": "您试图调用的路由还没被实现,请明天重试", "api.503": "您试图调用的路由因为服务器配置而目前不可用", - "api.reauth-required": "您试图访问的资源需要(重新)进行身份验证。" + "api.reauth-required": "您试图访问的资源需要(重新)进行身份验证。" } \ No newline at end of file diff --git a/public/language/zh-CN/flags.json b/public/language/zh-CN/flags.json index 3a27c1461a..f262d3fa85 100644 --- a/public/language/zh-CN/flags.json +++ b/public/language/zh-CN/flags.json @@ -14,7 +14,7 @@ "target-purged": "被举报的内容已经被清除,不再可用。", "target-aboutme-empty": "这个用户没有设置 "关于我" 。", - "graph-label": "日举报", + "graph-label": "每日举报", "quick-filters": "快速过滤器", "filter-active": "该列中有一个或更多激活的过滤器", "filter-reset": "删除过滤器", diff --git a/public/language/zh-CN/groups.json b/public/language/zh-CN/groups.json index e4b80d3f9d..74b4fbb097 100644 --- a/public/language/zh-CN/groups.json +++ b/public/language/zh-CN/groups.json @@ -52,13 +52,13 @@ "event.updated": "群组信息已更新", "event.deleted": "群组 \"%1\" 已被删除", "membership.accept-invitation": "接受邀请", - "membership.accept.notification-title": "你现在是 %1的成员了", + "membership.accept.notification-title": "你现在是 %1 的成员了", "membership.invitation-pending": "邀请中", "membership.join-group": "加入群组", "membership.leave-group": "退出群组", "membership.leave.notification-title": "%1 退出了群组:%2", "membership.reject": "拒绝", - "new-group.group-name": "群组名:", + "new-group.group-name": "群组名:", "upload-group-cover": "上传群组封面", "bulk-invite-instructions": "输入您要邀请加入此群组的用户名,多个用户以逗号分隔", "bulk-invite": "批量邀请", diff --git a/public/language/zh-CN/ip-blacklist.json b/public/language/zh-CN/ip-blacklist.json index 3ab79f710b..69eed72aed 100644 --- a/public/language/zh-CN/ip-blacklist.json +++ b/public/language/zh-CN/ip-blacklist.json @@ -5,7 +5,7 @@ "validate": "验证黑名单", "apply": "应用黑名单", "hints": "格式建议", - "hint-1": "每行定义一个独立 IP 地址。您可以添加 IP 块,只要它们满足 CIDR 格式(e.g. 192.168.100.0/22)。", + "hint-1": "每行定义一个独立 IP 地址。您可以添加 IP 块,只要它们满足 CIDR 格式(例如:192.168.100.0/22)。", "hint-2": "您可以通过以#标志开头的行来添加注释。", "validate.x-valid": "%1 / %2的规则有效。", diff --git a/public/language/zh-CN/modules.json b/public/language/zh-CN/modules.json index 2137715749..a20595f84f 100644 --- a/public/language/zh-CN/modules.json +++ b/public/language/zh-CN/modules.json @@ -10,10 +10,10 @@ "chat.chat-with-usernames-and-x-others": "与%1 & %2 和其他人聊天", "chat.send": "发送", "chat.no-active": "暂无聊天", - "chat.user-typing-1": "%1 is typing ...", - "chat.user-typing-2": "%1 and %2 are typing ...", - "chat.user-typing-3": "%1, %2 and %3 are typing ...", - "chat.user-typing-n": "%1, %2 and %3 others are typing ...", + "chat.user-typing-1": "%1 正在输入...", + "chat.user-typing-2": "%1%2 正在输入...", + "chat.user-typing-3": "%1%2%3 正在输入...", + "chat.user-typing-n": "%1%2 和其余 %3 人正在输入...", "chat.user-has-messaged-you": "%1 向您发送了消息。", "chat.replying-to": "回复 %1", "chat.see-all": "全部对话", @@ -34,10 +34,10 @@ "chat.delete-message-confirm": "您确定您要删除此消息吗?", "chat.retrieving-users": "查找用户", "chat.view-users-list": "查看用户列表", - "chat.pinned-messages": "Pinned Messages", - "chat.no-pinned-messages": "There are no pinned messages", - "chat.pin-message": "Pin Message", - "chat.unpin-message": "Unpin Message", + "chat.pinned-messages": "已置顶消息", + "chat.no-pinned-messages": "这里没有已置顶消息", + "chat.pin-message": "置顶消息", + "chat.unpin-message": "取消置顶消息", "chat.public-rooms": "公开房间(1%)", "chat.private-rooms": "私有房间(1%)", "chat.create-room": "创建聊天室", @@ -88,13 +88,13 @@ "composer.uploading": "正在上传 %1", "composer.formatting.bold": "加粗", "composer.formatting.italic": "倾斜", - "composer.formatting.heading": "Heading", - "composer.formatting.heading1": "Heading 1", - "composer.formatting.heading2": "Heading 2", - "composer.formatting.heading3": "Heading 3", - "composer.formatting.heading4": "Heading 4", - "composer.formatting.heading5": "Heading 5", - "composer.formatting.heading6": "Heading 6", + "composer.formatting.heading": "标题", + "composer.formatting.heading1": "标题 1", + "composer.formatting.heading2": "标题 2", + "composer.formatting.heading3": "标题 3", + "composer.formatting.heading4": "标题 4", + "composer.formatting.heading5": "标题 5", + "composer.formatting.heading6": "标题 6", "composer.formatting.list": "列表", "composer.formatting.strikethrough": "删除线", "composer.formatting.code": "代码", diff --git a/public/language/zh-CN/notifications.json b/public/language/zh-CN/notifications.json index d7f6a5342f..b8e3676b58 100644 --- a/public/language/zh-CN/notifications.json +++ b/public/language/zh-CN/notifications.json @@ -12,7 +12,7 @@ "you-have-unread-notifications": "您有未读的通知。", "all": "所有", "topics": "主题", - "tags": "Tags", + "tags": "标签", "categories": "版块", "replies": "回复", "chat": "聊天", @@ -25,13 +25,13 @@ "my-flags": "指派举报给我", "bans": "封禁", "new-message-from": "来自 %1 的新消息", - "new-messages-from": "%2的%1新信息", + "new-messages-from": "来自 %2 的 %1 条新消息", "new-message-in": "%1的新消息", - "new-messages-in": " %2的 %1 个新消息", + "new-messages-in": " %2的 %1 条新消息", "user-posted-in-public-room": "%1%3发表", "user-posted-in-public-room-dual": "%1%2%4发表", "user-posted-in-public-room-triple": "%1, %2%3%5发表", - "user-posted-in-public-room-multiple": "%1, %2 和 %3 其他人在 %5发表", + "user-posted-in-public-room-multiple": "%1, %2 和其余 %3 人在 %5发表", "upvoted-your-post-in": "%1%2 点赞了您的帖子。", "upvoted-your-post-in-dual": "%1%2%3 赞了您的帖子。", "upvoted-your-post-in-triple": "%1, %2%3 赞同了您在 %4的帖子。", diff --git a/public/language/zh-CN/pages.json b/public/language/zh-CN/pages.json index 5901103af8..46a380184b 100644 --- a/public/language/zh-CN/pages.json +++ b/public/language/zh-CN/pages.json @@ -48,7 +48,7 @@ "account/topics": "%1 创建的主题", "account/groups": "%1 的群组", "account/watched-categories": "%1 关注的版块", - "account/watched-tags": "%1's 关注的标签", + "account/watched-tags": "%1 关注的标签", "account/bookmarks": "%1 收藏的帖子", "account/settings": "用户设置", "account/settings-of": "改变设置的 %1", From 2e0a1751f9058676f4534c897ac3e80036de1e46 Mon Sep 17 00:00:00 2001 From: Julian Lam Date: Wed, 4 Dec 2024 12:44:00 -0500 Subject: [PATCH 16/82] fix: users page QoL improvements - focus on search box on page load - persist search options in query string on search --- public/src/client/users.js | 29 ++++++++++++++++++++++++----- 1 file changed, 24 insertions(+), 5 deletions(-) diff --git a/public/src/client/users.js b/public/src/client/users.js index cb6322ba74..47c16f9387 100644 --- a/public/src/client/users.js +++ b/public/src/client/users.js @@ -29,6 +29,16 @@ define('forum/users', [ searchResultCount = params && params.resultCount; $('#search-user').on('keyup', utils.debounce(doSearch, 250)); $('.search select, .search input[type="checkbox"]').on('change', doSearch); + + // Populate box with query if present + const searchEl = document.getElementById('search-user'); + const search = new URLSearchParams(document.location.search); + const query = search.get('query'); + if (query) { + searchEl.value = query; + } + + searchEl.focus(); }; function doSearch() { @@ -36,20 +46,25 @@ define('forum/users', [ return; } $('[component="user/search/icon"]').removeClass('fa-search').addClass('fa-spinner fa-spin'); - const username = $('#search-user').val(); const activeSection = getActiveSection(); const query = { - section: activeSection, + section: activeSection || 'users', page: 1, }; - if (!username) { + const username = $('#search-user').val(); + if (username) { + query.query = username; + } else { return loadPage(query); } - query.query = username; - query.sortBy = getSortBy(); + const sortBy = getSortBy(); + if (sortBy) { + query.sortBy = sortBy; + } + const filters = []; if ($('.search .online-only').is(':checked') || (activeSection === 'online')) { filters.push('online'); @@ -85,6 +100,10 @@ define('forum/users', [ api.get('/api/users', query) .then(renderSearchResults) .catch(alerts.error); + + // Update query string + const search = new URLSearchParams(query); + ajaxify.updateHistory(`users?${search.toString()}`, true); } function renderSearchResults(data) { From 5b60aee625fc7ce9f206a99b97a9aa8509389678 Mon Sep 17 00:00:00 2001 From: Julian Lam Date: Wed, 4 Dec 2024 15:05:25 -0500 Subject: [PATCH 17/82] fix: issue where clicking on a topic thumb caused a page nav, fixes #12948 --- public/src/client/topic.js | 1 + 1 file changed, 1 insertion(+) diff --git a/public/src/client/topic.js b/public/src/client/topic.js index 7e65cbeb4f..be542dae7a 100644 --- a/public/src/client/topic.js +++ b/public/src/client/topic.js @@ -181,6 +181,7 @@ define('forum/topic', [ const clickedThumb = e.target.closest('a'); if (clickedThumb) { const clickedThumbIndex = Array.from(clickedThumb.parentNode.children).indexOf(clickedThumb); + e.stopPropagation(); e.preventDefault(); const thumbs = ajaxify.data.thumbs.map(t => ({ ...t })); thumbs.forEach((t, i) => { From 18abf2ca571a327a7ac153ff30ca5719da069659 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Wed, 4 Dec 2024 19:18:52 -0500 Subject: [PATCH 18/82] default visiblilty to all --- src/controllers/accounts/helpers.js | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/controllers/accounts/helpers.js b/src/controllers/accounts/helpers.js index 2bf00215ae..5b30cd0d7a 100644 --- a/src/controllers/accounts/helpers.js +++ b/src/controllers/accounts/helpers.js @@ -140,9 +140,10 @@ helpers.getCustomUserFields = async function (callerUID, userData) { ]); const fields = allFields.filter((field) => { - const visibilityCheck = isAdmin || isModOfAny || isSelf || field.visibility === 'all' || + const visibility = field.visibility || 'all'; + const visibilityCheck = isAdmin || isModOfAny || isSelf || visibility === 'all' || ( - field.visibility === 'loggedin' && + visibility === 'loggedin' && String(callerUID) !== '0' && String(callerUID) !== '-1' ); From 38d904b23e67079a0667dfba6d6c623b5018bb18 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 4 Dec 2024 19:20:30 -0500 Subject: [PATCH 19/82] fix(deps): update dependency connect-redis to v8.0.1 (#12944) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- install/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/package.json b/install/package.json index d898af5f32..66ebb76e2e 100644 --- a/install/package.json +++ b/install/package.json @@ -60,7 +60,7 @@ "connect-mongo": "5.1.0", "connect-multiparty": "2.2.0", "connect-pg-simple": "10.0.0", - "connect-redis": "8.0.0", + "connect-redis": "8.0.1", "cookie-parser": "1.4.7", "cron": "3.2.1", "cropperjs": "1.6.2", From 55ad7af806d01a3a5acc217e290f9c1d383bdbb9 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 5 Dec 2024 12:41:22 -0500 Subject: [PATCH 20/82] chore(deps): update dependency mocha to v11 (#12954) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- install/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/package.json b/install/package.json index 66ebb76e2e..dcd5d57b9e 100644 --- a/install/package.json +++ b/install/package.json @@ -168,7 +168,7 @@ "husky": "8.0.3", "jsdom": "25.0.1", "lint-staged": "15.2.10", - "mocha": "10.8.2", + "mocha": "11.0.1", "mocha-lcov-reporter": "1.3.0", "mockdate": "3.0.5", "nyc": "17.1.0", From 122d3841cc04d34698e4d9980bc1c66fe60cdfdc Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 5 Dec 2024 12:41:34 -0500 Subject: [PATCH 21/82] fix(deps): update dependency webpack to v5.97.1 (#12953) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- install/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/package.json b/install/package.json index dcd5d57b9e..f27279a04a 100644 --- a/install/package.json +++ b/install/package.json @@ -146,7 +146,7 @@ "toobusy-js": "0.5.1", "tough-cookie": "5.0.0", "validator": "13.12.0", - "webpack": "5.96.1", + "webpack": "5.97.1", "webpack-merge": "6.0.1", "winston": "3.17.0", "workerpool": "9.2.0", From 3bd447be081c3884f0e37802b4c305a739433b98 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 5 Dec 2024 12:41:50 -0500 Subject: [PATCH 22/82] fix(deps): update dependency sass to v1.82.0 (#12952) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- install/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/package.json b/install/package.json index f27279a04a..3d21c63d32 100644 --- a/install/package.json +++ b/install/package.json @@ -128,7 +128,7 @@ "rss": "1.2.2", "rtlcss": "4.3.0", "sanitize-html": "2.13.1", - "sass": "1.81.0", + "sass": "1.82.0", "semver": "7.6.3", "serve-favicon": "2.5.0", "sharp": "0.32.6", From 6e2b33b7c7b6a9777f20c7ff474a6292704574a9 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 5 Dec 2024 12:41:58 -0500 Subject: [PATCH 23/82] chore(deps): update dependency sass-embedded to v1.82.0 (#12951) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- install/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/package.json b/install/package.json index 3d21c63d32..0f334f11a8 100644 --- a/install/package.json +++ b/install/package.json @@ -175,7 +175,7 @@ "smtp-server": "3.13.6" }, "optionalDependencies": { - "sass-embedded": "1.81.0" + "sass-embedded": "1.82.0" }, "resolutions": { "*/jquery": "3.7.1" From 300ca70476e05a4cf4554133c89a098277f73afd Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 5 Dec 2024 12:42:17 -0500 Subject: [PATCH 24/82] fix(deps): update dependency chart.js to v4.4.7 (#12950) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- install/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/package.json b/install/package.json index 0f334f11a8..f6fbeb6b06 100644 --- a/install/package.json +++ b/install/package.json @@ -49,7 +49,7 @@ "bootstrap": "5.3.3", "bootswatch": "5.3.3", "chalk": "4.1.2", - "chart.js": "4.4.6", + "chart.js": "4.4.7", "cli-graph": "3.2.2", "clipboard": "2.0.11", "colors": "1.4.0", From 26026fb2d78a7426aa52f9abe57855536a763f81 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Fri, 6 Dec 2024 15:43:34 -0500 Subject: [PATCH 25/82] fix: escape about me on user flags --- src/flags.js | 1 + src/views/flags/detail.tpl | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/src/flags.js b/src/flags.js index 00bce1d9bd..be0f849244 100644 --- a/src/flags.js +++ b/src/flags.js @@ -663,6 +663,7 @@ Flags.canFlag = async function (type, id, uid, skipLimitCheck = false) { Flags.getTarget = async function (type, id, uid) { if (type === 'user') { const userData = await user.getUserData(id); + userData.aboutme = validator.escape(String(userData.aboutme)); return userData && userData.uid ? userData : {}; } if (type === 'post') { diff --git a/src/views/flags/detail.tpl b/src/views/flags/detail.tpl index 6c8cd657f3..c1e39af6ac 100644 --- a/src/views/flags/detail.tpl +++ b/src/views/flags/detail.tpl @@ -123,7 +123,7 @@ {{{ end }}} {{{ if type_bool.user }}} -
    + From 55a07bcbc94b4960eab8b3a2466f48d96e539804 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Fri, 6 Dec 2024 15:55:34 -0500 Subject: [PATCH 26/82] fix(deps): update dependency express to v4.21.2 (#12955) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- install/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/package.json b/install/package.json index f6fbeb6b06..85b14e15f5 100644 --- a/install/package.json +++ b/install/package.json @@ -68,7 +68,7 @@ "daemon": "1.1.0", "diff": "7.0.0", "esbuild": "0.24.0", - "express": "4.21.1", + "express": "4.21.2", "express-session": "1.18.1", "express-useragent": "1.0.15", "fetch-cookie": "3.0.1", From a72c067fd0fac3623327ff33c06fef71f5a5949d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Fri, 6 Dec 2024 16:35:31 -0500 Subject: [PATCH 27/82] chore: up peace --- install/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/package.json b/install/package.json index 85b14e15f5..ee9bc5f517 100644 --- a/install/package.json +++ b/install/package.json @@ -109,7 +109,7 @@ "nodebb-rewards-essentials": "1.0.0", "nodebb-theme-harmony": "1.2.88", "nodebb-theme-lavender": "7.1.16", - "nodebb-theme-peace": "2.2.23", + "nodebb-theme-peace": "2.2.27", "nodebb-theme-persona": "13.3.56", "nodebb-widget-essentials": "7.0.31", "nodemailer": "6.9.16", From 3a7e9733a4d47e6cdcc8c341774629e63acb117d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Sat, 7 Dec 2024 13:14:51 -0500 Subject: [PATCH 28/82] chore: up spam-be-gone --- install/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/package.json b/install/package.json index a60734d844..c571855be6 100644 --- a/install/package.json +++ b/install/package.json @@ -105,7 +105,7 @@ "nodebb-plugin-markdown": "12.2.8", "nodebb-plugin-mentions": "4.4.5", "nodebb-plugin-ntfy": "1.7.7", - "nodebb-plugin-spam-be-gone": "2.2.2", + "nodebb-plugin-spam-be-gone": "2.3.0", "nodebb-rewards-essentials": "1.0.0", "nodebb-theme-harmony": "1.2.88", "nodebb-theme-lavender": "7.1.16", From c8a38667bb038cda228e39cdc0a91b57a515a51a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Sun, 8 Dec 2024 17:53:48 -0500 Subject: [PATCH 29/82] fix: closes #12957, don't overflow thumbs modal if filename is too long --- src/views/modals/topic-thumbs.tpl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/views/modals/topic-thumbs.tpl b/src/views/modals/topic-thumbs.tpl index ec2366080d..ead862457c 100644 --- a/src/views/modals/topic-thumbs.tpl +++ b/src/views/modals/topic-thumbs.tpl @@ -9,7 +9,7 @@

    - {./name} + {./name}

    From e6bdbb6b2393c8c64acd2ee210b325d51fa73181 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Mon, 9 Dec 2024 09:56:30 -0500 Subject: [PATCH 30/82] feat: add some missing canonical tags, closes #12961 --- src/controllers/accounts/follow.js | 11 +++++++++++ src/controllers/accounts/groups.js | 10 ++++++++++ src/controllers/accounts/posts.js | 11 +++++++++++ src/controllers/accounts/profile.js | 10 ++++++++++ src/controllers/groups.js | 16 ++++++++++++++++ src/controllers/tags.js | 9 +++++++++ src/controllers/users.js | 11 +++++++++++ 7 files changed, 78 insertions(+) diff --git a/src/controllers/accounts/follow.js b/src/controllers/accounts/follow.js index 7a28374582..dac4902701 100644 --- a/src/controllers/accounts/follow.js +++ b/src/controllers/accounts/follow.js @@ -1,11 +1,15 @@ 'use strict'; +const nconf = require('nconf'); + const user = require('../../user'); const helpers = require('../helpers'); const pagination = require('../../pagination'); const followController = module.exports; +const url = nconf.get('url'); + followController.getFollowing = async function (req, res, next) { await getFollow('account/following', 'following', req, res, next); }; @@ -39,5 +43,12 @@ async function getFollow(tpl, name, req, res, next) { payload.breadcrumbs = helpers.buildBreadcrumbs([{ text: username, url: `/user/${userslug}` }, { text: `[[user:${name}]]` }]); + res.locals.linkTags = [ + { + rel: 'canonical', + href: `${url}${req.url.replace(/^\/api/, '')}`, + }, + ]; + res.render(tpl, payload); } diff --git a/src/controllers/accounts/groups.js b/src/controllers/accounts/groups.js index 3a9d66243e..fbe9a39407 100644 --- a/src/controllers/accounts/groups.js +++ b/src/controllers/accounts/groups.js @@ -1,11 +1,15 @@ 'use strict'; +const nconf = require('nconf'); + const user = require('../../user'); const groups = require('../../groups'); const helpers = require('../helpers'); const groupsController = module.exports; +const url = nconf.get('url'); + groupsController.get = async function (req, res) { const { username, userslug } = await user.getUserFields(res.locals.uid, ['username', 'userslug']); @@ -21,5 +25,11 @@ groupsController.get = async function (req, res) { payload.groups = groupsData; payload.title = `[[pages:account/groups, ${username}]]`; payload.breadcrumbs = helpers.buildBreadcrumbs([{ text: username, url: `/user/${userslug}` }, { text: '[[global:header.groups]]' }]); + res.locals.linkTags = [ + { + rel: 'canonical', + href: `${url}${req.url.replace(/^\/api/, '')}`, + }, + ]; res.render('account/groups', payload); }; diff --git a/src/controllers/accounts/posts.js b/src/controllers/accounts/posts.js index adb8fbffc8..f36834ef0e 100644 --- a/src/controllers/accounts/posts.js +++ b/src/controllers/accounts/posts.js @@ -1,5 +1,7 @@ 'use strict'; +const nconf = require('nconf'); + const db = require('../../database'); const user = require('../../user'); const posts = require('../../posts'); @@ -13,6 +15,8 @@ const utils = require('../../utils'); const postsController = module.exports; +const url = nconf.get('url'); + const templateToData = { 'account/bookmarks': { type: 'posts', @@ -240,6 +244,13 @@ async function getPostsFromUserSet(template, req, res) { option.selected = option.url.includes(`sort=${req.query.sort}`); }); + res.locals.linkTags = [ + { + rel: 'canonical', + href: `${url}${req.url.replace(/^\/api/, '')}`, + }, + ]; + res.render(template, payload); } diff --git a/src/controllers/accounts/profile.js b/src/controllers/accounts/profile.js index e24415794d..0f2cf3cf9c 100644 --- a/src/controllers/accounts/profile.js +++ b/src/controllers/accounts/profile.js @@ -1,6 +1,7 @@ 'use strict'; const _ = require('lodash'); +const nconf = require('nconf'); const db = require('../../database'); const user = require('../../user'); @@ -14,6 +15,8 @@ const utils = require('../../utils'); const profileController = module.exports; +const url = nconf.get('url'); + profileController.get = async function (req, res, next) { const { userData } = res.locals; if (!userData) { @@ -151,4 +154,11 @@ function addMetaTags(res, userData) { } ); } + + res.locals.linkTags = [ + { + rel: 'canonical', + href: `${url}/user/${userData.userslug}`, + }, + ]; } diff --git a/src/controllers/groups.js b/src/controllers/groups.js index 76c1b00f97..4638384b6e 100644 --- a/src/controllers/groups.js +++ b/src/controllers/groups.js @@ -12,6 +12,8 @@ const privileges = require('../privileges'); const groupsController = module.exports; +const url = nconf.get('url'); + groupsController.list = async function (req, res) { const sort = req.query.sort || 'alpha'; const page = parseInt(req.query.page, 10) || 1; @@ -20,6 +22,13 @@ groupsController.list = async function (req, res) { getGroups(req, sort, page), ]); + res.locals.linkTags = [ + { + rel: 'canonical', + href: `${url}${req.url.replace(/^\/api/, '')}`, + }, + ]; + res.render('groups/list', { groups: groupData, allowGroupCreation: allowGroupCreation, @@ -101,6 +110,13 @@ groupsController.details = async function (req, res, next) { return next(); } + res.locals.linkTags = [ + { + rel: 'canonical', + href: `${url}/groups/${lowercaseSlug}`, + }, + ]; + res.render('groups/details', { title: `[[pages:group, ${groupData.displayName}]]`, group: groupData, diff --git a/src/controllers/tags.js b/src/controllers/tags.js index 392ff9201e..01c91f345c 100644 --- a/src/controllers/tags.js +++ b/src/controllers/tags.js @@ -14,6 +14,8 @@ const helpers = require('./helpers'); const tagsController = module.exports; +const url = nconf.get('url'); + tagsController.getTag = async function (req, res) { const tag = validator.escape(utils.cleanUpTag(req.params.tag, meta.config.maximumTagLength)); const page = parseInt(req.query.page, 10) || 1; @@ -89,6 +91,13 @@ tagsController.getTags = async function (req, res) { topics.getCategoryTagsData(cids, 0, 99), ]); + res.locals.linkTags = [ + { + rel: 'canonical', + href: `${url}/tags`, + }, + ]; + res.render('tags', { tags: tags.filter(Boolean), displayTagSearch: canSearch, diff --git a/src/controllers/users.js b/src/controllers/users.js index 41194e6c82..e2deb1d93b 100644 --- a/src/controllers/users.js +++ b/src/controllers/users.js @@ -1,5 +1,7 @@ 'use strict'; +const nconf = require('nconf'); + const user = require('../user'); const meta = require('../meta'); @@ -12,6 +14,8 @@ const utils = require('../utils'); const usersController = module.exports; +const url = nconf.get('url'); + usersController.index = async function (req, res, next) { const section = req.query.section || 'joindate'; const sectionToController = { @@ -206,6 +210,13 @@ async function render(req, res, data) { data['reputation:disabled'] = meta.config['reputation:disabled']; + res.locals.linkTags = [ + { + rel: 'canonical', + href: `${url}${req.url.replace(/^\/api/, '')}`, + }, + ]; + res.append('X-Total-Count', data.userCount); res.render('users', data); } From 4568ec3e04a290f7e92618fa77d918c1457dde58 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Mon, 9 Dec 2024 10:00:03 -0500 Subject: [PATCH 31/82] fix: closes #12962, fix js error for guests on /users dont focus input on mobile --- public/src/client/users.js | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/public/src/client/users.js b/public/src/client/users.js index 47c16f9387..45ea32ea40 100644 --- a/public/src/client/users.js +++ b/public/src/client/users.js @@ -32,13 +32,16 @@ define('forum/users', [ // Populate box with query if present const searchEl = document.getElementById('search-user'); - const search = new URLSearchParams(document.location.search); - const query = search.get('query'); - if (query) { - searchEl.value = query; + if (searchEl) { + const search = new URLSearchParams(document.location.search); + const query = search.get('query'); + if (query) { + searchEl.value = query; + } + if (!utils.isMobile()) { + searchEl.focus(); + } } - - searchEl.focus(); }; function doSearch() { From e532dcb46c4724e1b4f2e879ac98248788d2b44d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Mon, 9 Dec 2024 10:46:45 -0500 Subject: [PATCH 32/82] chore: up themes --- install/package.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/install/package.json b/install/package.json index c571855be6..69e40d598d 100644 --- a/install/package.json +++ b/install/package.json @@ -109,8 +109,8 @@ "nodebb-rewards-essentials": "1.0.0", "nodebb-theme-harmony": "1.2.88", "nodebb-theme-lavender": "7.1.16", - "nodebb-theme-peace": "2.2.27", - "nodebb-theme-persona": "13.3.56", + "nodebb-theme-peace": "2.2.28", + "nodebb-theme-persona": "13.3.57", "nodebb-widget-essentials": "7.0.31", "nodemailer": "6.9.16", "nprogress": "0.2.0", From fe811537e93532e21ff4e6d77190271a032c5494 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Mon, 9 Dec 2024 14:40:49 -0500 Subject: [PATCH 33/82] refactor: remove "password" in comments --- src/api/users.js | 5 ++--- src/cli/setup.js | 3 +-- src/install.js | 7 +------ src/middleware/admin.js | 1 - src/socket.io/user.js | 1 - src/user/data.js | 1 - src/user/index.js | 2 +- src/user/reset.js | 1 - 8 files changed, 5 insertions(+), 16 deletions(-) diff --git a/src/api/users.js b/src/api/users.js index 3897613342..5b7e35d254 100644 --- a/src/api/users.js +++ b/src/api/users.js @@ -67,8 +67,8 @@ usersAPI.update = async function (caller, data) { privileges.users.canEdit(caller.uid, data.uid), ]); - // Changing own email/username requires password confirmation - if (data.hasOwnProperty('email') || data.hasOwnProperty('username')) { + const isChangingEmailOrUsername = data.hasOwnProperty('email') || data.hasOwnProperty('username'); + if (isChangingEmailOrUsername) { await isPrivilegedOrSelfAndPasswordMatch(caller, data); } @@ -547,7 +547,6 @@ async function processDeletion({ uid, method, password, caller }) { throw new Error('[[error:no-privileges]]'); } - // Self-deletions require a password const hasPassword = await user.hasPassword(uid); if (isSelf && hasPassword) { const ok = await user.isPasswordCorrect(uid, password, caller.ip); diff --git a/src/cli/setup.js b/src/cli/setup.js index 859f674a9c..67b958ed95 100644 --- a/src/cli/setup.js +++ b/src/cli/setup.js @@ -51,8 +51,7 @@ async function setup(initConfig) { } console.log('NodeBB Setup Completed. Run "./nodebb start" to manually start your NodeBB server.'); - // If I am a child process, notify the parent of the returned data before exiting (useful for notifying - // hosts of auto-generated username/password during headless setups) + // If I am a child process, notify the parent of the returned data before exiting (useful for notifying hosts during headless setups) if (process.send) { process.send(data); } diff --git a/src/install.js b/src/install.js index 89b40d7b39..54ea7a325f 100644 --- a/src/install.js +++ b/src/install.js @@ -370,26 +370,21 @@ async function createAdmin() { } async function retryPassword(originalResults) { - // Ask only the password questions const results = await prompt.get(passwordQuestions); - // Update the original data with newly collected password originalResults.password = results.password; originalResults['password:confirm'] = results['password:confirm']; - // Send back to success to handle return await success(originalResults); } - // Add the password questions questions = questions.concat(passwordQuestions); if (!install.values) { const results = await prompt.get(questions); return await success(results); } - // If automated setup did not provide a user password, generate one, - // it will be shown to the user upon setup completion + if (!install.values.hasOwnProperty('admin:password') && !nconf.get('admin:password')) { console.log('Password was not provided during automated setup, generating one...'); password = utils.generateUUID().slice(0, 8); diff --git a/src/middleware/admin.js b/src/middleware/admin.js index bf89079103..84d34dfbd0 100644 --- a/src/middleware/admin.js +++ b/src/middleware/admin.js @@ -47,7 +47,6 @@ middleware.checkPrivileges = helpers.try(async (req, res, next) => { } } - // If user does not have password const hasPassword = await user.hasPassword(req.uid); if (!hasPassword) { return next(); diff --git a/src/socket.io/user.js b/src/socket.io/user.js index 51e5dc9f71..c20c545f8a 100644 --- a/src/socket.io/user.js +++ b/src/socket.io/user.js @@ -24,7 +24,6 @@ require('./user/status')(SocketUser); require('./user/picture')(SocketUser); require('./user/registration')(SocketUser); -// Password Reset SocketUser.reset = {}; SocketUser.reset.send = async function (socket, email) { diff --git a/src/user/data.js b/src/user/data.js index 47975ea99a..96ddfc51fe 100644 --- a/src/user/data.js +++ b/src/user/data.js @@ -82,7 +82,6 @@ module.exports = function (User) { if (!fields.length) { fields = results.whitelist; } else { - // Never allow password retrieval via this method fields = fields.filter(value => value !== 'password'); } diff --git a/src/user/index.js b/src/user/index.js index 5922fea7b7..eaba1dbb32 100644 --- a/src/user/index.js +++ b/src/user/index.js @@ -244,7 +244,7 @@ User.addInterstitials = function (callback) { plugins.hooks.register('core', { hook: 'filter:register.interstitial', method: [ - User.interstitials.email, // Email address (for password reset + digest) + User.interstitials.email, // Email address User.interstitials.gdpr, // GDPR information collection/processing consent + email consent User.interstitials.tou, // Forum Terms of Use ], diff --git a/src/user/reset.js b/src/user/reset.js index 9a6d6330ff..d2782c6dc0 100644 --- a/src/user/reset.js +++ b/src/user/reset.js @@ -108,7 +108,6 @@ UserReset.commit = async function (code, password) { 'password:shaWrapped': 1, }; - // don't verify email if password reset is due to expiry const isPasswordExpired = userData.passwordExpiry && userData.passwordExpiry < Date.now(); if (!isPasswordExpired) { data['email:confirmed'] = 1; From c69765e305f3788f44cc1d1213f3bb03692f6a5d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Mon, 9 Dec 2024 14:44:05 -0500 Subject: [PATCH 34/82] lint: long line --- src/cli/setup.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/cli/setup.js b/src/cli/setup.js index 67b958ed95..511dc81e73 100644 --- a/src/cli/setup.js +++ b/src/cli/setup.js @@ -51,7 +51,8 @@ async function setup(initConfig) { } console.log('NodeBB Setup Completed. Run "./nodebb start" to manually start your NodeBB server.'); - // If I am a child process, notify the parent of the returned data before exiting (useful for notifying hosts during headless setups) + // If I am a child process, notify the parent of the returned data before exiting + // (useful for notifying hosts during headless setups) if (process.send) { process.send(data); } From 0201bc1f3fedc080ec4765f1bb0d29c86cda5a4c Mon Sep 17 00:00:00 2001 From: Misty Release Bot Date: Mon, 9 Dec 2024 20:03:09 +0000 Subject: [PATCH 35/82] chore: incrementing version number - v3.11.1 --- install/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/package.json b/install/package.json index dfd1973b1a..a01875389b 100644 --- a/install/package.json +++ b/install/package.json @@ -2,7 +2,7 @@ "name": "nodebb", "license": "GPL-3.0", "description": "NodeBB Forum", - "version": "3.11.0", + "version": "3.11.1", "homepage": "https://www.nodebb.org", "repository": { "type": "git", From fee578164e55312c17917eec2cbc0df3a47ba545 Mon Sep 17 00:00:00 2001 From: Misty Release Bot Date: Mon, 9 Dec 2024 20:03:10 +0000 Subject: [PATCH 36/82] chore: update changelog for v3.11.1 --- CHANGELOG.md | 69 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 69 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8b494cd652..c717f1505d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,72 @@ +#### v3.11.1 (2024-12-09) + +##### Chores + +* **config:** migrate config renovate.json (#12960) (14f698f9) +* up spam-be-gone (e5c8deb8) +* incrementing version number - v3.11.0 (acf27e85) +* update changelog for v3.11.0 (0333d263) +* incrementing version number - v3.10.3 (57d54224) +* incrementing version number - v3.10.2 (2f15f464) +* incrementing version number - v3.10.1 (cca3a644) +* 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 + +* escape about me on user flags (4e69bff7) + #### v3.11.0 (2024-11-27) ##### Chores From 9d2af7e10c74a83fe2b5ed3167de5838d6ed49d8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Mon, 9 Dec 2024 18:18:02 -0500 Subject: [PATCH 37/82] refactor: replace math.random with crypto --- src/categories/create.js | 2 +- src/controllers/404.js | 3 ++- src/database/mongo/sets.js | 3 ++- src/meta/cacheBuster.js | 6 +++++- src/password.js | 4 +++- src/socket.io/user.js | 4 ++-- src/utils.js | 10 ++++++++++ test/utils.js | 15 ++++++++++++++- 8 files changed, 39 insertions(+), 8 deletions(-) diff --git a/src/categories/create.js b/src/categories/create.js index c4aa403425..d8f3e4a65c 100644 --- a/src/categories/create.js +++ b/src/categories/create.js @@ -149,7 +149,7 @@ module.exports = function (Categories) { Categories.assignColours = function () { const backgrounds = ['#AB4642', '#DC9656', '#F7CA88', '#A1B56C', '#86C1B9', '#7CAFC2', '#BA8BAF', '#A16946']; const text = ['#ffffff', '#ffffff', '#333333', '#ffffff', '#333333', '#ffffff', '#ffffff', '#ffffff']; - const index = Math.floor(Math.random() * backgrounds.length); + const index = utils.secureRandom(0, backgrounds.length - 1); return [backgrounds[index], text[index]]; }; diff --git a/src/controllers/404.js b/src/controllers/404.js index 33f04f142e..becc206e76 100644 --- a/src/controllers/404.js +++ b/src/controllers/404.js @@ -8,6 +8,7 @@ const meta = require('../meta'); const plugins = require('../plugins'); const middleware = require('../middleware'); const helpers = require('../middleware/helpers'); +const { secureRandom } = require('../utils'); exports.handle404 = helpers.try(async (req, res) => { const relativePath = nconf.get('relative_path'); @@ -64,6 +65,6 @@ exports.send404 = helpers.try(async (req, res) => { path: validator.escape(path), title: '[[global:404.title]]', bodyClass: helpers.buildBodyClass(req, res), - icon: icons[Math.floor(Math.random() * icons.length)], + icon: icons[secureRandom(0, icons.length - 1)], }); }); diff --git a/src/database/mongo/sets.js b/src/database/mongo/sets.js index 3f110b79f9..0c84a0f210 100644 --- a/src/database/mongo/sets.js +++ b/src/database/mongo/sets.js @@ -3,6 +3,7 @@ module.exports = function (module) { const _ = require('lodash'); const helpers = require('./helpers'); + const { secureRandom } = require('../../utils'); module.setAdd = async function (key, value) { if (!Array.isArray(value)) { @@ -200,7 +201,7 @@ module.exports = function (module) { return; } - const randomIndex = Math.floor(Math.random() * data.members.length); + const randomIndex = secureRandom(0, data.members.length - 1); const value = data.members[randomIndex]; await module.setRemove(data._key, value); return value; diff --git a/src/meta/cacheBuster.js b/src/meta/cacheBuster.js index 58129ff2f8..d1e4d2d239 100644 --- a/src/meta/cacheBuster.js +++ b/src/meta/cacheBuster.js @@ -11,7 +11,11 @@ let cached; // cache buster is an 11-character, lowercase, alphanumeric string function generate() { - return (Math.random() * 1e18).toString(32).slice(0, 11); + const crypto = require('crypto'); + const length = 11; + const generated = crypto.randomBytes(Math.ceil(length / 2)) + .toString('hex').slice(0, length); + return generated; } exports.write = async function write() { diff --git a/src/password.js b/src/password.js index 7c0d01931c..6f9617f6ab 100644 --- a/src/password.js +++ b/src/password.js @@ -29,7 +29,9 @@ async function getFakeHash() { if (fakeHashCache) { return fakeHashCache; } - fakeHashCache = await exports.hash(12, Math.random().toString()); + const length = 18; + fakeHashCache = crypto.randomBytes(Math.ceil(length / 2)) + .toString('hex').slice(0, length); return fakeHashCache; } diff --git a/src/socket.io/user.js b/src/socket.io/user.js index c20c545f8a..48b491ab43 100644 --- a/src/socket.io/user.js +++ b/src/socket.io/user.js @@ -46,10 +46,10 @@ SocketUser.reset.send = async function (socket, email) { try { await user.reset.send(email); await logEvent('[[success:success]]'); - await sleep(2500 + ((Math.random() * 500) - 250)); + await sleep(2500 + (utils.secureRandom(0, 500) - 250)); } catch (err) { await logEvent(err.message); - await sleep(2500 + ((Math.random() * 500) - 250)); + await sleep(2500 + (utils.secureRandom(0, 500) - 250)); const internalErrors = ['[[error:invalid-email]]']; if (!internalErrors.includes(err.message)) { throw err; diff --git a/src/utils.js b/src/utils.js index fb59865f69..6600b855ce 100644 --- a/src/utils.js +++ b/src/utils.js @@ -31,6 +31,16 @@ utils.generateUUID = function () { return rnd.join('-'); }; +utils.secureRandom = function (low, high) { + if (low > high) { + throw new Error("The 'low' parameter must be less than or equal to the 'high' parameter."); + } + const randomBuffer = crypto.randomBytes(4); + const randomInt = randomBuffer.readUInt32BE(0); + const range = high - low + 1; + return low + (randomInt % range); +}; + utils.getSass = function () { try { const sass = require('sass-embedded'); diff --git a/test/utils.js b/test/utils.js index dbf397e995..370c05d298 100644 --- a/test/utils.js +++ b/test/utils.js @@ -102,7 +102,7 @@ describe('Utility Methods', () => { }); }); - describe('UUID generation', () => { + describe('UUID generation / secureRandom', () => { it('return unique random value every time', () => { delete require.cache[require.resolve('../src/utils')]; const { generateUUID } = require('../src/utils'); @@ -110,6 +110,19 @@ describe('Utility Methods', () => { const uuid2 = generateUUID(); assert.notEqual(uuid1, uuid2, 'matches'); }); + + it('should return a random number between 1-10 inclusive', () => { + const { secureRandom } = require('../src/utils'); + const r1 = secureRandom(1, 10); + assert(r1 >= 1); + assert(r1 <= 10); + }); + + it('should always return 3', () => { + const { secureRandom } = require('../src/utils') + const r1 = secureRandom(3, 3); + assert.strictEqual(r1, 3); + }); }); describe('cleanUpTag', () => { From 0495842faebaef71713963ce4980051238b7f234 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Mon, 9 Dec 2024 18:25:31 -0500 Subject: [PATCH 38/82] lint: missing semi --- test/utils.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/utils.js b/test/utils.js index 370c05d298..2d3edb7ff0 100644 --- a/test/utils.js +++ b/test/utils.js @@ -119,7 +119,7 @@ describe('Utility Methods', () => { }); it('should always return 3', () => { - const { secureRandom } = require('../src/utils') + const { secureRandom } = require('../src/utils'); const r1 = secureRandom(3, 3); assert.strictEqual(r1, 3); }); From 76caa92c0b6b76e901671f133a5352231d016518 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Mon, 9 Dec 2024 18:35:43 -0500 Subject: [PATCH 39/82] refactor: only send required fields in query --- src/controllers/admin/dashboard.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/controllers/admin/dashboard.js b/src/controllers/admin/dashboard.js index a8930e35f4..405a239aaf 100644 --- a/src/controllers/admin/dashboard.js +++ b/src/controllers/admin/dashboard.js @@ -275,7 +275,7 @@ dashboardController.getLogins = async (req, res) => { res.render('admin/dashboard/logins', { set: 'logins', - query: req.query, + query: _.pick(req.query, ['units', 'until', 'count']), stats, summary, sessions, @@ -303,7 +303,7 @@ dashboardController.getUsers = async (req, res) => { res.render('admin/dashboard/users', { set: 'registrations', - query: req.query, + query: _.pick(req.query, ['units', 'until', 'count']), stats, summary, users, @@ -330,7 +330,7 @@ dashboardController.getTopics = async (req, res) => { res.render('admin/dashboard/topics', { set: 'topics', - query: req.query, + query: _.pick(req.query, ['units', 'until', 'count']), stats, summary, topics: topicData, From c25fd40ae5e391ebd75f5f0f524cf8b1d2ae481b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Mon, 9 Dec 2024 18:47:26 -0500 Subject: [PATCH 40/82] fix: race condition that results in 2x localReset call the same process --- src/cache/lru.js | 12 +++++++++--- src/cache/ttl.js | 12 +++++++++--- 2 files changed, 18 insertions(+), 6 deletions(-) diff --git a/src/cache/lru.js b/src/cache/lru.js index fc6eb69147..2af778b23d 100644 --- a/src/cache/lru.js +++ b/src/cache/lru.js @@ -2,6 +2,8 @@ module.exports = function (opts) { const { LRUCache } = require('lru-cache'); + const os = require('os'); + const pubsub = require('../pubsub'); // lru-cache@7 deprecations @@ -91,7 +93,9 @@ module.exports = function (opts) { cache.delete = cache.del; cache.reset = function () { - pubsub.publish(`${cache.name}:lruCache:reset`); + pubsub.publish(`${cache.name}:lruCache:reset`, { + id: `${os.hostname()}:${process.pid}`, + }); localReset(); }; cache.clear = cache.reset; @@ -102,8 +106,10 @@ module.exports = function (opts) { cache.misses = 0; } - pubsub.on(`${cache.name}:lruCache:reset`, () => { - localReset(); + pubsub.on(`${cache.name}:lruCache:reset`, ({ id }) => { + if (id !== `${os.hostname()}:${process.pid}`) { + localReset(); + } }); pubsub.on(`${cache.name}:lruCache:del`, (keys) => { diff --git a/src/cache/ttl.js b/src/cache/ttl.js index 292c76fdc7..818289da00 100644 --- a/src/cache/ttl.js +++ b/src/cache/ttl.js @@ -2,6 +2,8 @@ module.exports = function (opts) { const TTLCache = require('@isaacs/ttlcache'); + const os = require('os'); + const pubsub = require('../pubsub'); const ttlCache = new TTLCache(opts); @@ -72,7 +74,9 @@ module.exports = function (opts) { cache.delete = cache.del; cache.reset = function () { - pubsub.publish(`${cache.name}:ttlCache:reset`); + pubsub.publish(`${cache.name}:ttlCache:reset`, { + id: `${os.hostname()}:${process.pid}`, + }); localReset(); }; cache.clear = cache.reset; @@ -83,8 +87,10 @@ module.exports = function (opts) { cache.misses = 0; } - pubsub.on(`${cache.name}:ttlCache:reset`, () => { - localReset(); + pubsub.on(`${cache.name}:ttlCache:reset`, ({ id }) => { + if (id !== `${os.hostname()}:${process.pid}`) { + localReset(); + } }); pubsub.on(`${cache.name}:ttlCache:del`, (keys) => { From bb0ff6d60219ada61229d3d8cee828aa1cb60a21 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Mon, 9 Dec 2024 19:07:46 -0500 Subject: [PATCH 41/82] refactor: explicit settings/appearance routes --- src/controllers/admin/appearance.js | 14 ++- src/controllers/admin/settings.js | 169 +++++++++++++++++++--------- src/routes/admin.js | 24 +++- 3 files changed, 141 insertions(+), 66 deletions(-) diff --git a/src/controllers/admin/appearance.js b/src/controllers/admin/appearance.js index 5bcfa5321e..a1384a4185 100644 --- a/src/controllers/admin/appearance.js +++ b/src/controllers/admin/appearance.js @@ -2,8 +2,14 @@ const appearanceController = module.exports; -appearanceController.get = function (req, res) { - const term = req.params.term ? req.params.term : 'themes'; - - res.render(`admin/appearance/${term}`, {}); +appearanceController.themes = function (req, res) { + res.render(`admin/appearance/themes`, {}); +}; + +appearanceController.skins = function (req, res) { + res.render(`admin/appearance/skins`, {}); +}; + +appearanceController.customise = function (req, res) { + res.render(`admin/appearance/customise`, {}); }; diff --git a/src/controllers/admin/settings.js b/src/controllers/admin/settings.js index 61e8a6fb2d..9b891aa139 100644 --- a/src/controllers/admin/settings.js +++ b/src/controllers/admin/settings.js @@ -16,64 +16,20 @@ const translator = require('../../translator'); const settingsController = module.exports; -settingsController.get = async function (req, res) { - const term = req.params.term || 'general'; - const payload = { - title: `[[admin/menu:settings/${term}]]`, - }; - if (term === 'general') { - payload.routes = await helpers.getHomePageRoutes(req.uid); - payload.postSharing = await social.getPostSharing(); - const languageData = await languages.list(); - languageData.forEach((language) => { - language.selected = language.code === meta.config.defaultLang; - }); - payload.languages = languageData; - payload.autoDetectLang = meta.config.autoDetectLang; - } - res.render(`admin/settings/${term}`, payload); -}; - -settingsController.email = async (req, res) => { - const emails = await emailer.getTemplates(meta.config); - - res.render('admin/settings/email', { - title: '[[admin/menu:settings/email]]', - emails: emails, - sendable: emails.filter(e => !e.path.includes('_plaintext') && !e.path.includes('partials')).map(tpl => tpl.path), - services: emailer.listServices(), +settingsController.general = async (req, res) => { + const routes = await helpers.getHomePageRoutes(req.uid); + const postSharing = await social.getPostSharing(); + const languageData = await languages.list(); + languageData.forEach((language) => { + language.selected = language.code === meta.config.defaultLang; }); -}; -settingsController.user = async (req, res) => { - const [notificationTypes, groupData] = await Promise.all([ - notifications.getAllNotificationTypes(), - groups.getNonPrivilegeGroups('groups:createtime', 0, -1), - ]); - const notificationSettings = notificationTypes.map(type => ({ - name: type, - label: `[[notifications:${type.replace(/_/g, '-')}]]`, - })); - res.render('admin/settings/user', { - title: '[[admin/menu:settings/user]]', - notificationSettings: notificationSettings, - groupsExemptFromNewUserRestrictions: groupData, - }); -}; - -settingsController.post = async (req, res) => { - const groupData = await groups.getNonPrivilegeGroups('groups:createtime', 0, -1); - res.render('admin/settings/post', { - title: '[[admin/menu:settings/post]]', - groupsExemptFromPostQueue: groupData, - }); -}; - -settingsController.advanced = async (req, res) => { - const groupData = await groups.getNonPrivilegeGroups('groups:createtime', 0, -1); - res.render('admin/settings/advanced', { - title: '[[admin/menu:settings/advanced]]', - groupsExemptFromMaintenanceMode: groupData, + res.render('admin/settings/general', { + title: `[[admin/menu:settings/general]]`, + routes, + postSharing, + languages: languageData, + autoDetectLang: meta.config.autoDetectLang, }); }; @@ -107,6 +63,83 @@ settingsController.navigation = async function (req, res) { res.render('admin/settings/navigation', admin); }; +settingsController.user = async (req, res) => { + const [notificationTypes, groupData] = await Promise.all([ + notifications.getAllNotificationTypes(), + groups.getNonPrivilegeGroups('groups:createtime', 0, -1), + ]); + const notificationSettings = notificationTypes.map(type => ({ + name: type, + label: `[[notifications:${type.replace(/_/g, '-')}]]`, + })); + res.render('admin/settings/user', { + title: '[[admin/menu:settings/user]]', + notificationSettings: notificationSettings, + groupsExemptFromNewUserRestrictions: groupData, + }); +}; + +settingsController.reputation = async (req, res) => { + res.render(`admin/settings/reputation`, { + title: `[[admin/menu:settings/reputation]]`, + }); +}; + +settingsController.group = async (req, res) => { + res.render(`admin/settings/group`, { + title: `[[admin/menu:settings/group]]`, + }); +}; + +settingsController.tags = async (req, res) => { + res.render(`admin/settings/tags`, { + title: `[[admin/menu:settings/tags]]`, + }); +}; + +settingsController.post = async (req, res) => { + const groupData = await groups.getNonPrivilegeGroups('groups:createtime', 0, -1); + res.render('admin/settings/post', { + title: '[[admin/menu:settings/post]]', + groupsExemptFromPostQueue: groupData, + }); +}; + +settingsController.uploads = async (req, res) => { + res.render(`admin/settings/uploads`, { + title: `[[admin/menu:settings/uploads]]`, + }); +}; + +settingsController.email = async (req, res) => { + const emails = await emailer.getTemplates(meta.config); + + res.render('admin/settings/email', { + title: '[[admin/menu:settings/email]]', + emails: emails, + sendable: emails.filter(e => !e.path.includes('_plaintext') && !e.path.includes('partials')).map(tpl => tpl.path), + services: emailer.listServices(), + }); +}; + +settingsController.chat = async (req, res) => { + res.render(`admin/settings/chat`, { + title: `[[admin/menu:settings/chat]]`, + }); +}; + +settingsController.pagination = async (req, res) => { + res.render(`admin/settings/pagination`, { + title: `[[admin/menu:settings/pagination]]`, + }); +}; + +settingsController.notifications = async (req, res) => { + res.render(`admin/settings/notifications`, { + title: `[[admin/menu:settings/notifications]]`, + }); +}; + settingsController.api = async (req, res) => { const page = parseInt(req.query.page, 10) || 1; const resultsPerPage = 50; @@ -123,3 +156,27 @@ settingsController.api = async (req, res) => { pagination: pagination.create(page, pageCount, req.query), }); }; + +settingsController.cookies = async (req, res) => { + res.render(`admin/settings/cookies`, { + title: `[[admin/menu:settings/cookies]]`, + }); +}; + +settingsController.webCrawler = async (req, res) => { + res.render(`admin/settings/web-crawler`, { + title: `[[admin/menu:settings/web-crawler]]`, + }); +}; + +settingsController.advanced = async (req, res) => { + const groupData = await groups.getNonPrivilegeGroups('groups:createtime', 0, -1); + res.render('admin/settings/advanced', { + title: '[[admin/menu:settings/advanced]]', + groupsExemptFromMaintenanceMode: groupData, + }); +}; + + + + diff --git a/src/routes/admin.js b/src/routes/admin.js index 9e780d9104..f7f2c07884 100644 --- a/src/routes/admin.js +++ b/src/routes/admin.js @@ -32,15 +32,27 @@ module.exports = function (app, name, middleware, controllers) { helpers.setupAdminPageRoute(app, `/${name}/manage/uploads`, middlewares, controllers.admin.uploads.get); helpers.setupAdminPageRoute(app, `/${name}/manage/digest`, middlewares, controllers.admin.digest.get); - helpers.setupAdminPageRoute(app, `/${name}/settings/email`, middlewares, controllers.admin.settings.email); - helpers.setupAdminPageRoute(app, `/${name}/settings/user`, middlewares, controllers.admin.settings.user); - helpers.setupAdminPageRoute(app, `/${name}/settings/post`, middlewares, controllers.admin.settings.post); - helpers.setupAdminPageRoute(app, `/${name}/settings/advanced`, middlewares, controllers.admin.settings.advanced); + helpers.setupAdminPageRoute(app, `/${name}/settings/general`, middlewares, controllers.admin.settings.general); helpers.setupAdminPageRoute(app, `/${name}/settings/navigation`, middlewares, controllers.admin.settings.navigation); + helpers.setupAdminPageRoute(app, `/${name}/settings/user`, middlewares, controllers.admin.settings.user); + helpers.setupAdminPageRoute(app, `/${name}/settings/reputation`, middlewares, controllers.admin.settings.reputation); + helpers.setupAdminPageRoute(app, `/${name}/settings/group`, middlewares, controllers.admin.settings.group); + helpers.setupAdminPageRoute(app, `/${name}/settings/tags`, middlewares, controllers.admin.settings.tags); + helpers.setupAdminPageRoute(app, `/${name}/settings/post`, middlewares, controllers.admin.settings.post); + helpers.setupAdminPageRoute(app, `/${name}/settings/uploads`, middlewares, controllers.admin.settings.uploads); + helpers.setupAdminPageRoute(app, `/${name}/settings/email`, middlewares, controllers.admin.settings.email); + helpers.setupAdminPageRoute(app, `/${name}/settings/chat`, middlewares, controllers.admin.settings.chat); + helpers.setupAdminPageRoute(app, `/${name}/settings/pagination`, middlewares, controllers.admin.settings.pagination); + helpers.setupAdminPageRoute(app, `/${name}/settings/notifications`, middlewares, controllers.admin.settings.notifications); helpers.setupAdminPageRoute(app, `/${name}/settings/api`, middlewares, controllers.admin.settings.api); - helpers.setupAdminPageRoute(app, `/${name}/settings/:term?`, middlewares, controllers.admin.settings.get); + helpers.setupAdminPageRoute(app, `/${name}/settings/cookies`, middlewares, controllers.admin.settings.cookies); + helpers.setupAdminPageRoute(app, `/${name}/settings/web-crawler`, middlewares, controllers.admin.settings.webCrawler); + helpers.setupAdminPageRoute(app, `/${name}/settings/advanced`, middlewares, controllers.admin.settings.advanced); + + helpers.setupAdminPageRoute(app, `/${name}/appearance/themes`, middlewares, controllers.admin.appearance.themes); + helpers.setupAdminPageRoute(app, `/${name}/appearance/skins`, middlewares, controllers.admin.appearance.skins); + helpers.setupAdminPageRoute(app, `/${name}/appearance/customise`, middlewares, controllers.admin.appearance.customise); - helpers.setupAdminPageRoute(app, `/${name}/appearance/:term?`, middlewares, controllers.admin.appearance.get); helpers.setupAdminPageRoute(app, `/${name}/extend/plugins`, middlewares, controllers.admin.plugins.get); helpers.setupAdminPageRoute(app, `/${name}/extend/widgets`, middlewares, controllers.admin.extend.widgets.get); From b05dc7f7bd8e98024f8df7ace1fa933cdf192dc9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Mon, 9 Dec 2024 19:16:09 -0500 Subject: [PATCH 42/82] test: fix test --- test/controllers-admin.js | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/test/controllers-admin.js b/test/controllers-admin.js index 7760bf128e..e428efe390 100644 --- a/test/controllers-admin.js +++ b/test/controllers-admin.js @@ -138,7 +138,7 @@ describe('Admin Controllers', () => { }); it('should load general settings page', async () => { - const { response, body } = await request.get(`${nconf.get('url')}/admin/settings`, { jar: jar }); + const { response, body } = await request.get(`${nconf.get('url')}/admin/settings/general`, { jar: jar }); assert.equal(response.statusCode, 200); assert(body); }); @@ -476,6 +476,12 @@ describe('Admin Controllers', () => { assert(body); }); + it('should load /admin/appearance/skins', async () => { + const { response, body } = await request.get(`${nconf.get('url')}/api/admin/appearance/skins`, { jar }); + assert.equal(response.statusCode, 200); + assert(body); + }); + it('should load /admin/appearance/customise', async () => { const { response, body } = await request.get(`${nconf.get('url')}/api/admin/appearance/customise`, { jar }); assert.equal(response.statusCode, 200); From 468d930a8dc4282f4ab5498c069d14c1af9ba596 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Mon, 9 Dec 2024 19:22:37 -0500 Subject: [PATCH 43/82] test: remove routes that no longer exist --- test/controllers-admin.js | 17 ----------------- 1 file changed, 17 deletions(-) diff --git a/test/controllers-admin.js b/test/controllers-admin.js index e428efe390..1d8a19c1bf 100644 --- a/test/controllers-admin.js +++ b/test/controllers-admin.js @@ -423,23 +423,6 @@ describe('Admin Controllers', () => { assert(body); }); - it('should load /admin/settings/languages', async () => { - const { response, body } = await request.get(`${nconf.get('url')}/api/admin/settings/languages`, { jar }); - assert.equal(response.statusCode, 200); - assert(body); - }); - - it('should load /admin/settings/social', async () => { - const { body } = await request.get(`${nconf.get('url')}/api/admin/settings/general`, { jar }); - assert(body); - const sharing = body.postSharing.map(network => network && network.id); - assert(sharing.includes('facebook')); - assert(sharing.includes('twitter')); - assert(sharing.includes('linkedin')); - assert(sharing.includes('whatsapp')); - assert(sharing.includes('telegram')); - }); - it('should load /admin/manage/tags', async () => { const { response, body } = await request.get(`${nconf.get('url')}/api/admin/manage/tags`, { jar }); assert.equal(response.statusCode, 200); From 6eb2807747057269569422ae5f6526007c4e37a7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Mon, 9 Dec 2024 19:38:40 -0500 Subject: [PATCH 44/82] test: add missing spec files --- public/openapi/read.yaml | 38 +++++++++++++++---- .../appearance/{term.yaml => customise.yaml} | 7 ---- .../openapi/read/admin/appearance/skins.yaml | 11 ++++++ .../openapi/read/admin/appearance/themes.yaml | 11 ++++++ public/openapi/read/admin/settings/chat.yaml | 16 ++++++++ .../openapi/read/admin/settings/cookies.yaml | 16 ++++++++ .../settings/{term.yaml => general.yaml} | 7 ---- public/openapi/read/admin/settings/group.yaml | 16 ++++++++ .../read/admin/settings/notifications.yaml | 16 ++++++++ .../read/admin/settings/pagination.yaml | 16 ++++++++ .../read/admin/settings/reputation.yaml | 16 ++++++++ public/openapi/read/admin/settings/tags.yaml | 16 ++++++++ .../openapi/read/admin/settings/uploads.yaml | 16 ++++++++ .../read/admin/settings/web-crawler.yaml | 16 ++++++++ 14 files changed, 196 insertions(+), 22 deletions(-) rename public/openapi/read/admin/appearance/{term.yaml => customise.yaml} (65%) create mode 100644 public/openapi/read/admin/appearance/skins.yaml create mode 100644 public/openapi/read/admin/appearance/themes.yaml create mode 100644 public/openapi/read/admin/settings/chat.yaml create mode 100644 public/openapi/read/admin/settings/cookies.yaml rename public/openapi/read/admin/settings/{term.yaml => general.yaml} (87%) create mode 100644 public/openapi/read/admin/settings/group.yaml create mode 100644 public/openapi/read/admin/settings/notifications.yaml create mode 100644 public/openapi/read/admin/settings/pagination.yaml create mode 100644 public/openapi/read/admin/settings/reputation.yaml create mode 100644 public/openapi/read/admin/settings/tags.yaml create mode 100644 public/openapi/read/admin/settings/uploads.yaml create mode 100644 public/openapi/read/admin/settings/web-crawler.yaml diff --git a/public/openapi/read.yaml b/public/openapi/read.yaml index f6104b495e..7df263b819 100644 --- a/public/openapi/read.yaml +++ b/public/openapi/read.yaml @@ -80,18 +80,36 @@ paths: $ref: 'read/admin/dashboard/topics.yaml' /api/admin/dashboard/searches: $ref: 'read/admin/dashboard/searches.yaml' - "/api/admin/settings/{term}": - $ref: 'read/admin/settings/term.yaml' + "/api/admin/settings/general": + $ref: 'read/admin/settings/general.yaml' /api/admin/settings/navigation: $ref: 'read/admin/settings/navigation.yaml' - /api/admin/settings/api: - $ref: 'read/admin/settings/api.yaml' - /api/admin/settings/email: - $ref: 'read/admin/settings/email.yaml' /api/admin/settings/user: $ref: 'read/admin/settings/user.yaml' + /api/admin/settings/reputation: + $ref: 'read/admin/settings/reputation.yaml' + /api/admin/settings/group: + $ref: 'read/admin/settings/group.yaml' + /api/admin/settings/tags: + $ref: 'read/admin/settings/tags.yaml' /api/admin/settings/post: $ref: 'read/admin/settings/post.yaml' + /api/admin/settings/uploads: + $ref: 'read/admin/settings/uploads.yaml' + /api/admin/settings/email: + $ref: 'read/admin/settings/email.yaml' + /api/admin/settings/chat: + $ref: 'read/admin/settings/chat.yaml' + /api/admin/settings/pagination: + $ref: 'read/admin/settings/pagination.yaml' + /api/admin/settings/notifications: + $ref: 'read/admin/settings/notifications.yaml' + /api/admin/settings/api: + $ref: 'read/admin/settings/api.yaml' + /api/admin/settings/cookies: + $ref: 'read/admin/settings/cookies.yaml' + /api/admin/settings/web-crawler: + $ref: 'read/admin/settings/web-crawler.yaml' /api/admin/settings/advanced: $ref: 'read/admin/settings/advanced.yaml' /api/admin/manage/categories: @@ -120,8 +138,12 @@ paths: $ref: 'read/admin/manage/uploads.yaml' /api/admin/manage/digest: $ref: 'read/admin/manage/digest.yaml' - "/api/admin/appearance/{term}": - $ref: 'read/admin/appearance/term.yaml' + "/api/admin/appearance/themes": + $ref: 'read/admin/appearance/themes.yaml' + "/api/admin/appearance/skins": + $ref: 'read/admin/appearance/skins.yaml' + "/api/admin/appearance/customise": + $ref: 'read/admin/appearance/customise.yaml' /api/admin/extend/plugins: $ref: 'read/admin/extend/plugins.yaml' /api/admin/extend/widgets: diff --git a/public/openapi/read/admin/appearance/term.yaml b/public/openapi/read/admin/appearance/customise.yaml similarity index 65% rename from public/openapi/read/admin/appearance/term.yaml rename to public/openapi/read/admin/appearance/customise.yaml index 5c8364fa31..d2b2eabb68 100644 --- a/public/openapi/read/admin/appearance/term.yaml +++ b/public/openapi/read/admin/appearance/customise.yaml @@ -2,13 +2,6 @@ get: tags: - admin summary: Get appearance settings - parameters: - - name: term - in: path - required: true - schema: - type: string - example: themes responses: "200": description: "" diff --git a/public/openapi/read/admin/appearance/skins.yaml b/public/openapi/read/admin/appearance/skins.yaml new file mode 100644 index 0000000000..d2b2eabb68 --- /dev/null +++ b/public/openapi/read/admin/appearance/skins.yaml @@ -0,0 +1,11 @@ +get: + tags: + - admin + summary: Get appearance settings + responses: + "200": + description: "" + content: + application/json: + schema: + $ref: ../../../components/schemas/CommonProps.yaml#/CommonProps \ No newline at end of file diff --git a/public/openapi/read/admin/appearance/themes.yaml b/public/openapi/read/admin/appearance/themes.yaml new file mode 100644 index 0000000000..d2b2eabb68 --- /dev/null +++ b/public/openapi/read/admin/appearance/themes.yaml @@ -0,0 +1,11 @@ +get: + tags: + - admin + summary: Get appearance settings + responses: + "200": + description: "" + content: + application/json: + schema: + $ref: ../../../components/schemas/CommonProps.yaml#/CommonProps \ No newline at end of file diff --git a/public/openapi/read/admin/settings/chat.yaml b/public/openapi/read/admin/settings/chat.yaml new file mode 100644 index 0000000000..402f9b173c --- /dev/null +++ b/public/openapi/read/admin/settings/chat.yaml @@ -0,0 +1,16 @@ +get: + tags: + - admin + summary: Get chat settings + responses: + "200": + description: "" + content: + application/json: + schema: + allOf: + - type: object + properties: + title: + type: string + - $ref: ../../../components/schemas/CommonProps.yaml#/CommonProps \ No newline at end of file diff --git a/public/openapi/read/admin/settings/cookies.yaml b/public/openapi/read/admin/settings/cookies.yaml new file mode 100644 index 0000000000..8f454839e5 --- /dev/null +++ b/public/openapi/read/admin/settings/cookies.yaml @@ -0,0 +1,16 @@ +get: + tags: + - admin + summary: Get cookie settings + responses: + "200": + description: "" + content: + application/json: + schema: + allOf: + - type: object + properties: + title: + type: string + - $ref: ../../../components/schemas/CommonProps.yaml#/CommonProps \ No newline at end of file diff --git a/public/openapi/read/admin/settings/term.yaml b/public/openapi/read/admin/settings/general.yaml similarity index 87% rename from public/openapi/read/admin/settings/term.yaml rename to public/openapi/read/admin/settings/general.yaml index 86eaf50b4e..d19ff555ee 100644 --- a/public/openapi/read/admin/settings/term.yaml +++ b/public/openapi/read/admin/settings/general.yaml @@ -2,13 +2,6 @@ get: tags: - admin summary: Get system settings - parameters: - - name: term - in: path - required: true - schema: - type: string - example: general responses: "200": description: "" diff --git a/public/openapi/read/admin/settings/group.yaml b/public/openapi/read/admin/settings/group.yaml new file mode 100644 index 0000000000..e4b0157a2f --- /dev/null +++ b/public/openapi/read/admin/settings/group.yaml @@ -0,0 +1,16 @@ +get: + tags: + - admin + summary: Get group settings + responses: + "200": + description: "" + content: + application/json: + schema: + allOf: + - type: object + properties: + title: + type: string + - $ref: ../../../components/schemas/CommonProps.yaml#/CommonProps \ No newline at end of file diff --git a/public/openapi/read/admin/settings/notifications.yaml b/public/openapi/read/admin/settings/notifications.yaml new file mode 100644 index 0000000000..3ef8e368ab --- /dev/null +++ b/public/openapi/read/admin/settings/notifications.yaml @@ -0,0 +1,16 @@ +get: + tags: + - admin + summary: Get notification settings + responses: + "200": + description: "" + content: + application/json: + schema: + allOf: + - type: object + properties: + title: + type: string + - $ref: ../../../components/schemas/CommonProps.yaml#/CommonProps \ No newline at end of file diff --git a/public/openapi/read/admin/settings/pagination.yaml b/public/openapi/read/admin/settings/pagination.yaml new file mode 100644 index 0000000000..cb598ef643 --- /dev/null +++ b/public/openapi/read/admin/settings/pagination.yaml @@ -0,0 +1,16 @@ +get: + tags: + - admin + summary: Get pagination settings + responses: + "200": + description: "" + content: + application/json: + schema: + allOf: + - type: object + properties: + title: + type: string + - $ref: ../../../components/schemas/CommonProps.yaml#/CommonProps \ No newline at end of file diff --git a/public/openapi/read/admin/settings/reputation.yaml b/public/openapi/read/admin/settings/reputation.yaml new file mode 100644 index 0000000000..91f6ea0561 --- /dev/null +++ b/public/openapi/read/admin/settings/reputation.yaml @@ -0,0 +1,16 @@ +get: + tags: + - admin + summary: Get reputation settings + responses: + "200": + description: "" + content: + application/json: + schema: + allOf: + - type: object + properties: + title: + type: string + - $ref: ../../../components/schemas/CommonProps.yaml#/CommonProps \ No newline at end of file diff --git a/public/openapi/read/admin/settings/tags.yaml b/public/openapi/read/admin/settings/tags.yaml new file mode 100644 index 0000000000..53d82a4355 --- /dev/null +++ b/public/openapi/read/admin/settings/tags.yaml @@ -0,0 +1,16 @@ +get: + tags: + - admin + summary: Get tag settings + responses: + "200": + description: "" + content: + application/json: + schema: + allOf: + - type: object + properties: + title: + type: string + - $ref: ../../../components/schemas/CommonProps.yaml#/CommonProps \ No newline at end of file diff --git a/public/openapi/read/admin/settings/uploads.yaml b/public/openapi/read/admin/settings/uploads.yaml new file mode 100644 index 0000000000..f181df0792 --- /dev/null +++ b/public/openapi/read/admin/settings/uploads.yaml @@ -0,0 +1,16 @@ +get: + tags: + - admin + summary: Get upload settings + responses: + "200": + description: "" + content: + application/json: + schema: + allOf: + - type: object + properties: + title: + type: string + - $ref: ../../../components/schemas/CommonProps.yaml#/CommonProps \ No newline at end of file diff --git a/public/openapi/read/admin/settings/web-crawler.yaml b/public/openapi/read/admin/settings/web-crawler.yaml new file mode 100644 index 0000000000..57963c5901 --- /dev/null +++ b/public/openapi/read/admin/settings/web-crawler.yaml @@ -0,0 +1,16 @@ +get: + tags: + - admin + summary: Get web crawler settings + responses: + "200": + description: "" + content: + application/json: + schema: + allOf: + - type: object + properties: + title: + type: string + - $ref: ../../../components/schemas/CommonProps.yaml#/CommonProps \ No newline at end of file From 2a085cdba80c9fb28f39568d078f3a09f81e0dca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Mon, 9 Dec 2024 21:27:32 -0500 Subject: [PATCH 45/82] chore: up persona --- install/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/package.json b/install/package.json index 69e40d598d..17a870f895 100644 --- a/install/package.json +++ b/install/package.json @@ -110,7 +110,7 @@ "nodebb-theme-harmony": "1.2.88", "nodebb-theme-lavender": "7.1.16", "nodebb-theme-peace": "2.2.28", - "nodebb-theme-persona": "13.3.57", + "nodebb-theme-persona": "13.3.58", "nodebb-widget-essentials": "7.0.31", "nodemailer": "6.9.16", "nprogress": "0.2.0", From 521e679cf158f76ef481c0c6b5bec97e1cba10f2 Mon Sep 17 00:00:00 2001 From: Misty Release Bot Date: Tue, 10 Dec 2024 09:18:56 +0000 Subject: [PATCH 46/82] Latest translations and fallbacks --- public/language/zh-CN/aria.json | 2 +- public/language/zh-CN/modules.json | 4 ++-- public/language/zh-CN/topic.json | 6 +++--- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/public/language/zh-CN/aria.json b/public/language/zh-CN/aria.json index c69f1844a9..5bfde2aa6a 100644 --- a/public/language/zh-CN/aria.json +++ b/public/language/zh-CN/aria.json @@ -1,5 +1,5 @@ { - "post-sort-option": "帖子分类选项,1%", + "post-sort-option": "帖子分类选项,%1", "topic-sort-option": "主题分类选项,%1", "user-avatar-for": "用户头像%1", "user-watched-tags": "用户关注标签", diff --git a/public/language/zh-CN/modules.json b/public/language/zh-CN/modules.json index a20595f84f..f7e63925ff 100644 --- a/public/language/zh-CN/modules.json +++ b/public/language/zh-CN/modules.json @@ -38,8 +38,8 @@ "chat.no-pinned-messages": "这里没有已置顶消息", "chat.pin-message": "置顶消息", "chat.unpin-message": "取消置顶消息", - "chat.public-rooms": "公开房间(1%)", - "chat.private-rooms": "私有房间(1%)", + "chat.public-rooms": "公开房间(%1)", + "chat.private-rooms": "私有房间(%1)", "chat.create-room": "创建聊天室", "chat.private.option": "私有(仅已加入房间用户可见)", "chat.public.option": "公开(对选中组里的所有用户可见)", diff --git a/public/language/zh-CN/topic.json b/public/language/zh-CN/topic.json index 33e2575729..515fe112dc 100644 --- a/public/language/zh-CN/topic.json +++ b/public/language/zh-CN/topic.json @@ -117,9 +117,9 @@ "thread-tools.purge-confirm": "确认清除此主题吗?", "thread-tools.merge-topics": "合并主题", "thread-tools.merge": "合并主题", - "topic-move-success": "注意:此主题将会被移动到“1%”。点击此处可取消。", + "topic-move-success": "注意:此主题将会被移动到“%1”。点击此处可取消。", "topic-move-multiple-success": "注意:以下主题将会被移动到“%1”,点击此处可取消。", - "topic-move-all-success": "注意 :全部主题都将被移动到“1%”,点击此处可取消。", + "topic-move-all-success": "注意 :全部主题都将被移动到“%1”,点击此处可取消。", "topic-move-undone": "撤销主题移动", "topic-move-posts-success": "此帖子将马上移动。点击此处撤销", "topic-move-posts-undone": "撤销帖子移动", @@ -170,7 +170,7 @@ "composer.schedule": "定时", "composer.replying-to": "正在回复 %1", "composer.new-topic": "新主题", - "composer.editing-in": "在 1% 中编辑帖子", + "composer.editing-in": "在 %1 中编辑帖子", "composer.uploading": "正在上传...", "composer.thumb-url-label": "粘贴主题缩略图网址", "composer.thumb-title": "给此主题添加缩略图", From 04eb9e1ad7332e21aea9cf7ed2e163f02928abf4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Tue, 10 Dec 2024 09:47:26 -0500 Subject: [PATCH 47/82] fix: closes #12963, change translation to general --- src/views/admin/settings/email.tpl | 2 +- src/views/admin/settings/general.tpl | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/views/admin/settings/email.tpl b/src/views/admin/settings/email.tpl index 549b23a234..a89fb850a8 100644 --- a/src/views/admin/settings/email.tpl +++ b/src/views/admin/settings/email.tpl @@ -103,7 +103,7 @@
    [[admin/settings/email:smtp-transport]]
    -
    +
    [[admin/settings/email:smtp-transport-help]]
    diff --git a/src/views/admin/settings/general.tpl b/src/views/admin/settings/general.tpl index c2c6f27caa..7070fbf0ee 100644 --- a/src/views/admin/settings/general.tpl +++ b/src/views/admin/settings/general.tpl @@ -293,7 +293,7 @@
    -
    [[admin/settings/social:post-sharing]]
    +
    [[admin/settings/general:post-sharing]]
    {{{ each postSharing }}} @@ -304,7 +304,7 @@
    {{{ end }}} -

    [[admin/settings/social:info-plugins-additional]]

    +

    [[admin/settings/general:info-plugins-additional]]

    From 8f465afc97282dbc6bb266ae91565ac97b153c65 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Tue, 10 Dec 2024 10:17:38 -0500 Subject: [PATCH 48/82] refactor: add csrf protection to webinstall POST route --- install/web.js | 18 +++++++++++++++--- src/views/install/index.tpl | 2 ++ 2 files changed, 17 insertions(+), 3 deletions(-) diff --git a/install/web.js b/install/web.js index 92fe675c22..cd38c3be6e 100644 --- a/install/web.js +++ b/install/web.js @@ -2,6 +2,7 @@ const winston = require('winston'); const express = require('express'); +const session = require('express-session'); const bodyParser = require('body-parser'); const fs = require('fs'); const path = require('path'); @@ -13,7 +14,10 @@ const nconf = require('nconf'); const Benchpress = require('benchpressjs'); const { mkdirp } = require('mkdirp'); const { paths } = require('../src/constants'); -const sass = require('../src/utils').getSass(); +const utils = require('../src/utils'); + +const sass = utils.getSass(); +const { generateToken, csrfSynchronisedProtection } = require('../src/middleware/csrf'); const app = express(); let server; @@ -73,6 +77,13 @@ web.install = async function (port) { app.use(bodyParser.urlencoded({ extended: true, })); + + app.use(session({ + secret: utils.generateUUID(), + resave: false, + saveUninitialized: false, + })); + try { await Promise.all([ compileTemplate(), @@ -103,8 +114,8 @@ function launchExpress(port) { } function setupRoutes() { - app.get('/', welcome); - app.post('/', install); + app.get('/', csrfSynchronisedProtection, welcome); + app.post('/', csrfSynchronisedProtection, install); app.get('/testdb', testDatabase); app.get('/ping', ping); app.get('/sping', ping); @@ -160,6 +171,7 @@ function welcome(req, res) { minimumPasswordStrength: defaults.minimumPasswordStrength, installing: installing, percentInstalled: installing ? ((Date.now() - timeStart) / totalTime * 100).toFixed(2) : 0, + csrf_token: generateToken(req), }); } diff --git a/src/views/install/index.tpl b/src/views/install/index.tpl index f41400f734..aa703f8356 100644 --- a/src/views/install/index.tpl +++ b/src/views/install/index.tpl @@ -35,6 +35,8 @@ You are just a few steps away from launching your own NodeBB forum!

    + + {{{ if !skipGeneralSetup }}}

    From 38520769a3c85f9745ee3cfaa270f932d7d1edca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Tue, 10 Dec 2024 10:21:06 -0500 Subject: [PATCH 49/82] refactor: check if caches have the requested cache name --- src/controllers/admin/cache.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/controllers/admin/cache.js b/src/controllers/admin/cache.js index 2faad03fc2..f46d7fd41e 100644 --- a/src/controllers/admin/cache.js +++ b/src/controllers/admin/cache.js @@ -52,7 +52,7 @@ cacheController.dump = async function (req, res, next) { local: require('../../cache'), }; caches = await plugins.hooks.fire('filter:admin.cache.get', caches); - if (!caches[req.query.name]) { + if (!caches.hasOwnProperty(req.query.name)) { return next(); } From 3b713afed3cbefab318cbe48ad3a46a620dc4a3e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Tue, 10 Dec 2024 10:37:48 -0500 Subject: [PATCH 50/82] fix: make sure theme screenshot starts with themeDir --- src/controllers/admin/themes.js | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/controllers/admin/themes.js b/src/controllers/admin/themes.js index db08d08f84..339884c95d 100644 --- a/src/controllers/admin/themes.js +++ b/src/controllers/admin/themes.js @@ -20,12 +20,18 @@ themesController.get = async function (req, res, next) { themeConfig = JSON.parse(themeConfig); } catch (err) { if (err.code === 'ENOENT') { - return next(Error('invalid-data')); + return next(Error('[[error:invalid-data]]')); } return next(err); } - const screenshotPath = themeConfig.screenshot ? path.join(themeDir, themeConfig.screenshot) : defaultScreenshotPath; - const exists = await file.exists(screenshotPath); + const screenshotPath = themeConfig.screenshot ? + path.join(themeDir, themeConfig.screenshot) : + ''; + + if (screenshotPath && !screenshotPath.startsWith(themeDir)) { + throw new Error('[[error:invalid-path]]'); + } + const exists = screenshotPath ? await file.exists(screenshotPath) : false; res.sendFile(exists ? screenshotPath : defaultScreenshotPath); }; From e0c345b2b850f4c0f45f650abd00637472f84bfe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Tue, 10 Dec 2024 13:39:31 -0500 Subject: [PATCH 51/82] chore: up themes --- install/package.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/install/package.json b/install/package.json index 17a870f895..f5a7c06027 100644 --- a/install/package.json +++ b/install/package.json @@ -108,9 +108,9 @@ "nodebb-plugin-spam-be-gone": "2.3.0", "nodebb-rewards-essentials": "1.0.0", "nodebb-theme-harmony": "1.2.88", - "nodebb-theme-lavender": "7.1.16", + "nodebb-theme-lavender": "7.1.17", "nodebb-theme-peace": "2.2.28", - "nodebb-theme-persona": "13.3.58", + "nodebb-theme-persona": "13.3.59", "nodebb-widget-essentials": "7.0.31", "nodemailer": "6.9.16", "nprogress": "0.2.0", From 607d1895ce57518925aaebcc9e52b45b4d2aff10 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 10 Dec 2024 18:41:58 -0500 Subject: [PATCH 52/82] chore(deps): update dependency lint-staged to v15.2.11 (#12964) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- install/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/package.json b/install/package.json index f5a7c06027..1a8c912167 100644 --- a/install/package.json +++ b/install/package.json @@ -167,7 +167,7 @@ "grunt-contrib-watch": "1.1.0", "husky": "8.0.3", "jsdom": "25.0.1", - "lint-staged": "15.2.10", + "lint-staged": "15.2.11", "mocha": "11.0.1", "mocha-lcov-reporter": "1.3.0", "mockdate": "3.0.5", From cc6963f2751228685824e27d4d20fab6f705dd8e Mon Sep 17 00:00:00 2001 From: Julian Lam Date: Wed, 11 Dec 2024 11:14:08 -0500 Subject: [PATCH 53/82] chore: remove lines re: incrementing version number, in changelog --- CHANGELOG.md | 1875 -------------------------------------------------- 1 file changed, 1875 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index c717f1505d..11ebe19e7b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,64 +4,7 @@ * **config:** migrate config renovate.json (#12960) (14f698f9) * up spam-be-gone (e5c8deb8) -* incrementing version number - v3.11.0 (acf27e85) * update changelog for v3.11.0 (0333d263) -* incrementing version number - v3.10.3 (57d54224) -* incrementing version number - v3.10.2 (2f15f464) -* incrementing version number - v3.10.1 (cca3a644) -* 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 @@ -112,65 +55,9 @@ * up themes (65f64eba) * up themes (280e7613) * up widgets (b13bd803) -* incrementing version number - v3.10.3 (57d54224) * update changelog for v3.10.3 (83965385) * up harmony (f6f1d906) -* incrementing version number - v3.10.2 (2f15f464) -* incrementing version number - v3.10.1 (cca3a644) * up harmony (9426fd1a) -* 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) * **deps:** * update commitlint monorepo to v19.6.0 (#12920) (151e0164) * update postgres docker tag to v17.2 (#12931) (036f4564) @@ -295,62 +182,7 @@ ##### Chores -* incrementing version number - v3.10.2 (2f15f464) * update changelog for v3.10.2 (e780120a) -* incrementing version number - v3.10.1 (cca3a644) -* 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 @@ -362,61 +194,7 @@ ##### 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 @@ -437,60 +215,7 @@ ##### 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 @@ -505,58 +230,6 @@ ##### Chores * move service worker generation code to its own controller file (c153c469) -* 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) * **deps:** * update dependency jsdom to v25.0.1 (#12816) (9a24eb7e) * update dependency sass-embedded to v1.79.3 (#12813) (e0cb1d26) @@ -586,58 +259,7 @@ * up themes (8bca9768) * up widgets (41c73de5) -* incrementing version number - v3.9.0 (4880f32d) * update changelog for v3.9.0 (c3d97c6c) -* 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 @@ -703,57 +325,7 @@ * up widgets (bf6be3ef) * up widgets (32d4ac84) * up harmony (780db9e2) -* incrementing version number - v3.8.4 (4833f9a6) * update changelog for v3.8.4 (693bac5b) -* 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) * **i18n:** * fallback strings for new resources: nodebb.users (d348d1df) * fallback strings for new resources: nodebb.admin-extend-widgets (16ee1ad7) @@ -917,56 +489,7 @@ * up widgets (d1663ac2) * up widgets (cb4bf9dd) * up persona (324610de) -* incrementing version number - v3.8.3 (97ce2c44) * update changelog for v3.8.3 (2a239a79) -* 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) ##### New Features @@ -998,55 +521,7 @@ * up dbsearch (8a42db6f) * use nodebb fork of spider-detector (3a1b39c9) * up 2factor (142de2ca) -* incrementing version number - v3.8.2 (72d91251) * update changelog for v3.8.2 (3854a434) -* 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) ##### New Features @@ -1132,54 +607,7 @@ * up composer (83facb7d) * up harmony (17ea61a0) -* incrementing version number - v3.8.1 (527326f7) * update changelog for v3.8.1 (5ef3e0f3) -* 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) ##### New Features @@ -1200,53 +628,7 @@ ##### Chores -* incrementing version number - v3.8.0 (e228a6eb) * update changelog for v3.8.0 (2ef2750d) -* 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 @@ -1281,54 +663,9 @@ * update dependency sass-embedded to v1.72.0 (#12406) (6d62e592) * update commitlint monorepo to v19.1.0 (#12403) (3d095a6b) * up themes (1e3a321d) -* incrementing version number - v3.7.5 (6882894d) * update changelog for v3.7.5 (febeede5) -* incrementing version number - v3.7.4 (6678744c) -* incrementing version number - v3.7.3 (2d62b6f6) -* incrementing version number - v3.7.2 (cc257e7e) * up harmony (80a1a0e0) * up harmony (1a000eae) -* 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) * **i18n:** * fallback strings for new resources: nodebb.flags, nodebb.user (19f8a77c) * fallback strings for new resources: nodebb.user (7ad477af) @@ -1454,51 +791,7 @@ ##### Chores -* incrementing version number - v3.7.4 (6678744c) * update changelog for v3.7.4 (8a1b281b) -* 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 @@ -1512,50 +805,7 @@ * up harmony (c2465a16) * up themes (ba86740a) * up themes (5d8a5571) -* incrementing version number - v3.7.3 (2d62b6f6) * update changelog for v3.7.3 (8d450eea) -* 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) ##### New Features @@ -1591,49 +841,7 @@ ##### Chores * up ntfy (0058ca68) -* incrementing version number - v3.7.2 (cc257e7e) * update changelog for v3.7.2 (277e1787) -* 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 @@ -1646,48 +854,7 @@ * up harmony (0171e73a) * up harmony (c6915398) -* incrementing version number - v3.7.1 (712365a5) * update changelog for v3.7.1 (07640389) -* 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) ##### New Features @@ -1714,47 +881,7 @@ * up harmony (1b24b337) * up harmony (b6c3a9d2) * up harmony (f107a7ff) -* incrementing version number - v3.7.0 (9a6153d7) * update changelog for v3.7.0 (f1f81b17) -* 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) ##### New Features @@ -1791,7 +918,6 @@ * up harmony (25ef62dc) * up peace (3aaa0727) * up peace (65f3c734) -* incrementing version number - v3.6.7 (86a17e38) * update changelog for v3.6.7 (caf8722f) * up harmony (22cd80b9) * up themes (96fc20a3) @@ -1800,7 +926,6 @@ * up themes (9ee864ce) * up composer (8324adc5) * up composer (0ff7adb4) -* incrementing version number - v3.6.6 (6604bf37) * up themes (43a02c89) * up themes (69342342) * up harmony (9bbaef84) @@ -1811,47 +936,10 @@ * up harmony (4f42172d) * up harmony (c0db10af) * up harmony (0743cb3c) -* incrementing version number - v3.6.5 (6c653625) * up harmony (09414efa) -* incrementing version number - v3.6.4 (83d131b4) -* incrementing version number - v3.6.3 (fc7d2bfd) * up harmony (bbdefad3) -* incrementing version number - v3.6.2 (0f577a57) * up themes (79ebbee5) -* incrementing version number - v3.6.1 (f1a69468) * up composer (c31e321b) -* 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) * **deps:** * update commitlint monorepo to v19 (#12369) (516c8d04) * update dependency smtp-server to v3.13.3 (#12378) (0ab1982c) @@ -1997,45 +1085,7 @@ ##### Chores -* incrementing version number - v3.6.6 (6604bf37) * update changelog for v3.6.6 (debaa2b9) -* 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 @@ -2053,44 +1103,7 @@ ##### Chores -* incrementing version number - v3.6.5 (6c653625) * update changelog for v3.6.5 (04039f76) -* 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 @@ -2104,43 +1117,7 @@ ##### Chores -* incrementing version number - v3.6.4 (83d131b4) * update changelog for v3.6.4 (6e6c3974) -* 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 @@ -2150,42 +1127,7 @@ ##### Chores -* incrementing version number - v3.6.3 (fc7d2bfd) * update changelog for v3.6.3 (92ffc57c) -* 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) ##### New Features @@ -2206,41 +1148,7 @@ ##### Chores -* incrementing version number - v3.6.2 (0f577a57) * update changelog for v3.6.2 (82a936c3) -* 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 @@ -2256,40 +1164,7 @@ * up harmony (b6dbe1a6) * up lavender (16f0affa) * up themes (980bfee8) -* incrementing version number - v3.6.1 (f1a69468) * update changelog for v3.6.1 (1e4abdbf) -* 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) ##### New Features @@ -2309,39 +1184,7 @@ ##### Chores -* incrementing version number - v3.6.0 (4cdf85f8) * update changelog for v3.6.0 (eb92cee6) -* 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 @@ -2366,17 +1209,14 @@ * make error:email-taken slightly more descriptive (dd0743d3) * up harmony (250cc771) * up harmony (9324a75c) -* incrementing version number - v3.5.3 (ed0e8783) * update changelog for v3.5.3 (e49ddaf8) * up harmony (dbbf3a2c) * up harmony (e4656bd4) -* incrementing version number - v3.5.2 (52fbb2da) * up themes (0ec9d4c3) * added missing deprecation warning for .getTopics (9079ad0b) * update note at top of file (2de534fa) * up dbsearch (b6981693) * up themes (9a1f8e9b) -* incrementing version number - v3.5.1 (4c543488) * up themes (ed10dda2) * up composer (22d7e92f) * up themes (fcdd3737) @@ -2384,34 +1224,6 @@ * minor re-order of routes/controllers in admin api v3 router/controller (181a9399) * add in note at top of files ready for deletion in v4 (54a08087) * up harmony (1b8dcbc2) -* 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) * **deps:** * update dependency eslint-plugin-import to v2.29.1 (#12229) (055b7597) * update dependency eslint to v8.56.0 (#12231) (a7dd0f92) @@ -2580,37 +1392,7 @@ * up composer (245e5df3) * up composer default (c1f82b78) -* incrementing version number - v3.5.2 (52fbb2da) * update changelog for v3.5.2 (e2e85053) -* 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 @@ -2625,36 +1407,7 @@ ##### Chores * up composer (49013f81) -* incrementing version number - v3.5.1 (4c543488) * update changelog for v3.5.1 (48f7ae99) -* 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 @@ -2666,35 +1419,7 @@ ##### Chores * up mentions (b1b3dcb6) -* incrementing version number - v3.5.0 (d06fb4f0) * update changelog for v3.5.0 (5d7c10f1) -* 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) ##### New Features @@ -2739,7 +1464,6 @@ * up persona (cc5e9d9c) * up harmony (769f879e) * up themes (46530337) -* incrementing version number - v3.4.3 (5c984250) * update changelog for v3.4.3 (08949be9) * up themes (e0b29ba9) * up emoji (00dd0cb3) @@ -2749,38 +1473,12 @@ * up emoji (7568be3c) * up themes (b7d8fd1e) * up themes (d0682905) -* incrementing version number - v3.4.2 (3f0dac38) * up deps (f1021542) * up composer (45b9803a) * up composer (7e5d9b71) * up harmony (13ea14f1) * up engines (0f9f875b) -* incrementing version number - v3.4.1 (01e69574) * up dbsearch (b4775b18) -* 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) * **deps:** * update actions/setup-node action to v4 (#12114) (762ad161) * update dependency eslint-plugin-import to v2.29.0 (#12112) (2ae031ed) @@ -2993,33 +1691,7 @@ ##### Chores -* incrementing version number - v3.4.2 (3f0dac38) * update changelog for v3.4.2 (f9323de6) -* 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 @@ -3046,32 +1718,7 @@ * up harmony (512c44d5) * up harmony (319d3b1f) * up themes (d7a7c355) -* incrementing version number - v3.4.1 (01e69574) * update changelog for v3.4.1 (f24a334c) -* 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 @@ -3095,31 +1742,7 @@ ##### Chores * up dbsearch (8357bb2e) -* incrementing version number - v3.4.0 (fd9247c5) * update changelog for v3.4.0 (5c023025) -* 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 @@ -3138,44 +1761,21 @@ * up themes (10d11924) * up harmony (0334b389) * up harmony (32c870f4) -* incrementing version number - v3.3.9 (5805e770) * update changelog for v3.3.9 (50d44777) * up composer (ffd6ea5a) * up composer (c2534287) * up composer (540b9f18) * up composer (87015e9b) * up themes (dd3647ed) -* incrementing version number - v3.3.8 (a5603565) -* incrementing version number - v3.3.7 (b26f1744) * markdown dep (03f11a24) * up markdown (f399db9d) -* incrementing version number - v3.3.6 (7fb38792) * up deps (a7843a40) * up composer (05a7c761) * up themes (c4b865e1) * up themes (7d9ff9bf) -* 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) * up themes (5c14438d) * up themes (cb3252be) * up harmony (c7df93b4) -* 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) * **deps:** * update coverallsapp/github-action action to v2.2.2 (#11977) (15c6fd6b) * update dependency jquery to v3.7.1 (#11963) (94f07c14) @@ -3272,29 +1872,7 @@ ##### Chores * up mentions (4ec3a480) -* incrementing version number - v3.3.8 (a5603565) * update changelog for v3.3.8 (65e16e9f) -* 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 @@ -3308,28 +1886,7 @@ ##### Chores -* incrementing version number - v3.3.7 (b26f1744) * update changelog for v3.3.7 (1193fa04) -* 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 @@ -3340,27 +1897,7 @@ ##### Chores -* incrementing version number - v3.3.6 (7fb38792) * update changelog for v3.3.6 (a43354c0) -* 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 @@ -3371,49 +1908,12 @@ ##### Chores * up deps (db55f18a) -* 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) #### v3.3.4 (2023-08-20) ##### Chores -* incrementing version number - v3.3.3 (f94d239b) * update changelog for v3.3.3 (38149a57) -* 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 @@ -3423,24 +1923,7 @@ ##### Chores -* incrementing version number - v3.3.2 (ec9dac97) * update changelog for v3.3.2 (2ecf15c4) -* 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 @@ -3456,23 +1939,7 @@ ##### Chores -* incrementing version number - v3.3.1 (151cc68f) * update changelog for v3.3.1 (6f961f9c) -* 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 @@ -3483,22 +1950,7 @@ ##### Chores * up themes (62231baa) -* incrementing version number - v3.3.0 (fc1ad70f) * update changelog for v3.3.0 (46f7405d) -* 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) ##### New Features @@ -3562,7 +2014,6 @@ * up harmony (ee0128d7) * up harmony (ba03e223) * up themes (6fc80f9f) -* incrementing version number - v3.2.3 (b06d3e63) * update changelog for v3.2.3 (afb38c71) * up mentions (4b92df75) * up composer (48a04eb7) @@ -3580,20 +2031,7 @@ * up themes (62429252) * remove log (954db1ee) * up themes (9fda8dce) -* incrementing version number - v3.2.2 (758ecfcd) -* incrementing version number - v3.2.1 (20145074) * up markdown (f23cda10) -* 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) * **i18n:** * fallback strings for new resources: nodebb.admin-dashboard (80ea4eb0) * fallback strings for new resources: nodebb.admin-settings-chat, nodebb.error (e27d1743) @@ -3769,20 +2207,7 @@ ##### Chores * downgrade harmony to correct version (7c94506b) -* incrementing version number - v3.2.2 (758ecfcd) * update changelog for v3.2.2 (91a432ad) -* 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 @@ -3800,19 +2225,7 @@ * 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 @@ -3826,18 +2239,7 @@ * up harmony (9fc5ae08) * up composer (82d37702) * up spider-detector (97d8f858) -* incrementing version number - v3.2.0 (9ecac38e) * update changelog for v3.2.0 (080f9e75) -* 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 @@ -3875,7 +2277,6 @@ * up harmony (777c7d09) * up deps (7f465006) * up harmony (f9e37829) -* incrementing version number - v3.1.7 (0b4e81ab) * update changelog for v3.1.7 (8744e412) * up persona (7a0e5c6d) * up harmony (be474fb4) @@ -3886,14 +2287,12 @@ * up themes (b2f70a2e) * up composer (21919524) * up harmony (64441602) -* incrementing version number - v3.1.6 (b3a3b130) * up themes (61420fdc) * up themes (f9990cab) * bump themes for da02361b13d064763223533368f9b71d998ecf37 (c97977f8) * up harmony (0f84f597) * up emoji (4b0d3940) * up emoji (291aa58e) -* incrementing version number - v3.1.5 (ec19343a) * up harmony (56ac610b) * up themes (0bfe361c) * up themes (67ab222d) @@ -3914,17 +2313,10 @@ * up themes (14c93cd5) * up harmony (6188d8be) * up harmony (9e416d7f) -* incrementing version number - v3.1.4 (2452783c) * up persona (78c2e29c) * up markdown (7f5ec0ef) * up themes (cdfc1bfe) * up harmony (fd80b612) -* 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) * **i18n:** * fallback strings for new resources: nodebb.admin-appearance-skins (7ca85c60) * fallback strings for new resources: nodebb.admin-advanced-cache, nodebb.admin-advanced-errors, nodebb.admin-development-logger (fa8e656d) @@ -4153,16 +2545,7 @@ ##### Chores -* incrementing version number - v3.1.6 (b3a3b130) * update changelog for v3.1.6 (f10a2d2e) -* 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 @@ -4174,15 +2557,7 @@ ##### Chores -* incrementing version number - v3.1.5 (ec19343a) * update changelog for v3.1.5 (b0d16861) -* 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 @@ -4195,14 +2570,7 @@ * fix persona (74174414) * up themes (97ff1f11) -* incrementing version number - v3.1.4 (2452783c) * update changelog for v3.1.4 (633dc2de) -* 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) ##### New Features @@ -4230,13 +2598,7 @@ ##### Chores * up markdown (51bf5e95) -* incrementing version number - v3.1.3 (3b4e9d3f) * update changelog for v3.1.3 (9924fde6) -* 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 @@ -4258,12 +2620,7 @@ ##### Chores -* incrementing version number - v3.1.2 (40fa3489) * update changelog for v3.1.2 (5b398782) -* 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) ##### Continuous Integration @@ -4284,11 +2641,7 @@ ##### Chores -* incrementing version number - v3.1.1 (40250733) * update changelog for v3.1.1 (ccd6f48c) -* incrementing version number - v3.1.0 (0cb386bd) -* incrementing version number - v3.0.1 (26f6ea49) -* incrementing version number - v3.0.0 (224e08cd) ##### Bug Fixes @@ -4298,10 +2651,7 @@ ##### Chores -* incrementing version number - v3.1.0 (0cb386bd) * update changelog for v3.1.0 (2c515dc3) -* incrementing version number - v3.0.1 (26f6ea49) -* incrementing version number - v3.0.0 (224e08cd) ##### Documentation Changes @@ -4331,7 +2681,6 @@ * up harmony (eab2679f) * up harmony (7f19913b) * up themes (832fe95a) -* incrementing version number - v3.0.1 (26f6ea49) * update changelog for v3.0.1 (fd30af10) * whopps (ec0da196) * up harmony (2caf4afc) @@ -4343,7 +2692,6 @@ * up widgets (2588853b) * up harmony (01669fa5) * up harmony (c58d07f4) -* incrementing version number - v3.0.0 (224e08cd) * **i18n:** * fallback strings for new resources: nodebb.themes-harmony, nodebb.themes-persona (48a4fd50) * fallback strings for new resources: nodebb.admin-settings-email (489163aa) @@ -4485,7 +2833,6 @@ ##### Chores -* incrementing version number - v3.0.0 (224e08cd) * update changelog for v3.0.0 (56ad381f) ##### Bug Fixes @@ -4879,39 +3226,7 @@ ##### Chores * removing superfluous changelog items (5343d2a0) -* incrementing version number - v2.8.11 (2ec81eff) * update changelog for v2.8.11 (f2ca93f6) -* incrementing version number - v2.8.10 (5b7c3671) -* incrementing version number - v2.8.9 (57f14e41) -* incrementing version number - v2.8.8 (b331b942) -* incrementing version number - v2.8.7 (3f8248d6) -* incrementing version number - v2.8.6 (af6ce447) -* incrementing version number - v2.8.5 (bff5ce2d) -* incrementing version number - v2.8.4 (a46b2bbc) -* incrementing version number - v2.8.3 (c20b20a7) -* incrementing version number - v2.8.2 (050e43f8) -* incrementing version number - v2.8.1 (727f879e) -* incrementing version number - v2.8.0 (8e77673d) -* incrementing version number - v2.7.0 (96cc0617) -* incrementing version number - v2.6.1 (7e52a7a5) -* incrementing version number - v2.6.0 (e7fcf482) -* incrementing version number - v2.5.8 (dec0e7de) -* incrementing version number - v2.5.7 (5836bf4a) -* incrementing version number - v2.5.6 (c7bd7dbf) -* incrementing version number - v2.5.5 (3509ed94) -* incrementing version number - v2.5.4 (e83260ca) -* incrementing version number - v2.5.3 (7e922936) -* incrementing version number - v2.5.2 (babcd17e) -* incrementing version number - v2.5.1 (ce3aa950) -* incrementing version number - v2.5.0 (01d276cb) -* incrementing version number - v2.4.5 (dd3e1a28) -* incrementing version number - v2.4.4 (d5525c87) -* incrementing version number - v2.4.3 (9c647c6c) -* incrementing version number - v2.4.2 (3aa7b855) -* incrementing version number - v2.4.1 (60cbd148) -* incrementing version number - v2.4.0 (4834cde3) -* incrementing version number - v2.3.1 (d2425942) -* incrementing version number - v2.3.0 (046ea120) ##### New Features @@ -4931,7 +3246,6 @@ ##### Chores -* incrementing version number - v2.8.10 (5b7c3671) * update changelog for v2.8.10 (188ec62f) ##### Continuous Integration @@ -4956,7 +3270,6 @@ ##### Chores * up composer-default (e9a8e195) -* incrementing version number - v2.8.9 (57f14e41) * update changelog for v2.8.9 (18b2150e) ##### Bug Fixes @@ -4975,7 +3288,6 @@ ##### Chores * up cron (73a50d17) -* incrementing version number - v2.8.8 (b331b942) * update changelog for v2.8.8 (c03d5db7) ##### Bug Fixes @@ -4997,7 +3309,6 @@ ##### Chores -* incrementing version number - v2.8.7 (3f8248d6) * update changelog for v2.8.7 (2ca38e7b) ##### Bug Fixes @@ -5012,7 +3323,6 @@ ##### Chores -* incrementing version number - v2.8.6 (af6ce447) * update changelog for v2.8.6 (f3306d03) ##### Documentation Changes @@ -5040,7 +3350,6 @@ ##### Chores * **i18n:** fallback strings for new resources: nodebb.error (8335f90a) -* incrementing version number - v2.8.5 (bff5ce2d) * update changelog for v2.8.5 (24e58c28) ##### New Features @@ -5065,7 +3374,6 @@ ##### Chores -* incrementing version number - v2.8.4 (a46b2bbc) * update changelog for v2.8.4 (c13f0e21) ##### Bug Fixes @@ -5076,7 +3384,6 @@ ##### Chores -* incrementing version number - v2.8.3 (c20b20a7) * update changelog for v2.8.3 (eb2841ee) #### v2.8.3 (2023-01-25) @@ -5084,7 +3391,6 @@ ##### Chores * remove extraneous lines from changelog (48c9f447) -* incrementing version number - v2.8.2 (050e43f8) * update changelog for v2.8.2 (66aa3169) ##### Bug Fixes @@ -5112,7 +3418,6 @@ ##### Chores -* incrementing version number - v2.8.1 (727f879e) * update changelog for v2.8.1 (d17d4ec0) ##### Bug Fixes @@ -5125,7 +3430,6 @@ * fallbacks for new language string (8a69e740) * remove extraneous lines from changelog (bbaf26ce) -* incrementing version number - v2.8.0 (8e77673d) * update changelog for v2.8.0 (a5c2edb9) ##### Bug Fixes @@ -5143,7 +3447,6 @@ * update dependency mocha to v10.2.0 (#11094) (c4cc1e61) * up jquery (3e8f5378) * remove extraneous lines from changelog (e213dbc3) -* incrementing version number - v2.7.0 (96cc0617) * update changelog for v2.7.0 (4701c96d) * **i18n:** * fallback strings for new resources: nodebb.admin-settings-email (717b3612) @@ -5224,25 +3527,7 @@ ##### Chores -* incrementing version number - v2.6.0 (e7fcf482) * update changelog for v2.6.0 (eedd84ae) -* incrementing version number - v2.5.8 (dec0e7de) -* incrementing version number - v2.5.7 (5836bf4a) -* incrementing version number - v2.5.6 (c7bd7dbf) -* incrementing version number - v2.5.5 (3509ed94) -* incrementing version number - v2.5.4 (e83260ca) -* incrementing version number - v2.5.3 (7e922936) -* incrementing version number - v2.5.2 (babcd17e) -* incrementing version number - v2.5.1 (ce3aa950) -* incrementing version number - v2.5.0 (01d276cb) -* incrementing version number - v2.4.5 (dd3e1a28) -* incrementing version number - v2.4.4 (d5525c87) -* incrementing version number - v2.4.3 (9c647c6c) -* incrementing version number - v2.4.2 (3aa7b855) -* incrementing version number - v2.4.1 (60cbd148) -* incrementing version number - v2.4.0 (4834cde3) -* incrementing version number - v2.3.1 (d2425942) -* incrementing version number - v2.3.0 (046ea120) ##### Documentation Changes @@ -5283,7 +3568,6 @@ * update postgres docker tag to v14 (#10829) (5aa55d29) * update dependency eslint to v8.23.1 (#10885) (0c6fb6e3) * remove derpy extra changelog bits (445f09f0) -* incrementing version number - v2.5.8 (dec0e7de) * update changelog for v2.5.8 (c9cd8975) ##### New Features @@ -5408,7 +3692,6 @@ * really fix indents this time (c2024f34) * fix indents (d50512e7) * add bootstrap5 to test runner for now (be5d6d29) -* incrementing version number - v2.5.7 (5836bf4a) * update changelog for v2.5.7 (17e948ab) ##### New Features @@ -5443,7 +3726,6 @@ ##### Chores -* incrementing version number - v2.5.6 (c7bd7dbf) * update changelog for v2.5.6 (e92238d0) ##### Performance Improvements @@ -5454,7 +3736,6 @@ ##### Chores -* incrementing version number - v2.5.5 (3509ed94) * update changelog for v2.5.5 (e7d0040d) ##### Bug Fixes @@ -5467,7 +3748,6 @@ ##### Chores * up plugins (b91ef6dd) -* incrementing version number - v2.5.4 (e83260ca) * update changelog for v2.5.4 (aabf073c) #### v2.5.4 (2022-10-11) @@ -5475,7 +3755,6 @@ ##### Chores * 🤔 (7240e8ce) -* incrementing version number - v2.5.3 (7e922936) * update changelog for v2.5.3 (fdf240f6) ##### Continuous Integration @@ -5497,7 +3776,6 @@ * remove duplicate version increment lines in changelog (5dbcfef9) * bring back treding plugins (8aa1596d) -* incrementing version number - v2.5.2 (babcd17e) * update changelog for v2.5.2 (84b6a7c7) ##### New Features @@ -5527,7 +3805,6 @@ ##### Chores -* incrementing version number - v2.5.1 (ce3aa950) * update changelog for v2.5.1 (2b2fd4f3) ##### Bug Fixes @@ -5546,7 +3823,6 @@ ##### Chores -* incrementing version number - v2.5.0 (01d276cb) * update changelog for v2.5.0 (1076285d) ##### Bug Fixes @@ -5568,7 +3844,6 @@ * fallback strings for new resources: nodebb.admin-advanced-cache (90fc50e1) * move @textcomplete and its modules to composer-default (3cbb7a3d) * remove client-side js file for tpl that no longer exists (bc2ea860) -* incrementing version number - v2.4.5 (dd3e1a28) * update changelog for v2.4.5 (d505cc47) * **deps:** @@ -5631,7 +3906,6 @@ ##### Chores -* incrementing version number - v2.4.4 (d5525c87) * update changelog for v2.4.4 (77e492b8) ##### Bug Fixes @@ -5643,7 +3917,6 @@ ##### Chores -* incrementing version number - v2.4.3 (9c647c6c) * update changelog for v2.4.3 (06da15a5) ##### Bug Fixes @@ -5654,7 +3927,6 @@ ##### Chores -* incrementing version number - v2.4.2 (3aa7b855) * update changelog for v2.4.2 (ba7a3466) ##### Bug Fixes @@ -5665,7 +3937,6 @@ ##### Chores -* incrementing version number - v2.4.1 (60cbd148) * update changelog for v2.4.1 (4b6baabb) ##### Documentation Changes @@ -5689,7 +3960,6 @@ * update docker/build-push-action action to v3 (bfd6318c) * update docker/login-action action to v2 (3d68accf) * update docker/setup-buildx-action action to v2 (371ac032) -* incrementing version number - v2.4.0 (4834cde3) * update changelog for v2.4.0 (c4714ff7) ##### Bug Fixes @@ -5706,7 +3976,6 @@ * update to new transifex project url (659cfe85) * re-order interstitial tests so email and gdpr tests are in sub-blocks (342cca35) * opt-out of dependabot, due to conflicts with renovate (70d60289) -* incrementing version number - v2.3.1 (d2425942) * update changelog for v2.3.1 (2f487175) * **i18n:** * fallback strings for new resources: nodebb.admin-settings-email (cdaa8f21) @@ -5767,7 +4036,6 @@ * bump sanitize-html from 2.7.0 to 2.7.1 in /install (7b606d2e) * bump webpack from 5.73.0 to 5.74.0 in /install (a9900625) * **i18n:** fallback strings for new resources: nodebb.admin-settings-advanced, nodebb.admin-menu, nodebb.error (17120e03) -* incrementing version number - v2.3.0 (046ea120) * update changelog for v2.3.0 (a6f7fff0) ##### New Features @@ -5829,12 +4097,7 @@ * bump jquery-ui from 1.13.1 to 1.13.2 in /install (abb19e98) * bump nodebb-theme-persona in /install (9e52b8c6) * bump ioredis from 5.1.0 to 5.2.0 in /install (8c20fdad) -* incrementing version number - v2.2.4 (d1d63e6b) * update changelog for v2.2.4 (52f7ed64) -* incrementing version number - v2.2.3 (f80476b9) -* incrementing version number - v2.2.2 (343ffa66) -* incrementing version number - v2.2.1 (efc77b2a) -* incrementing version number - v2.2.0 (eecb836d) ##### Bug Fixes @@ -5855,11 +4118,7 @@ * **deps-dev:** * bump @commitlint/cli from 17.0.2 to 17.0.3 in /install (9e44cdad) * bump eslint from 8.18.0 to 8.19.0 in /install (7139ad5f) -* incrementing version number - v2.2.3 (f80476b9) * update changelog for v2.2.3 (8719a93f) -* incrementing version number - v2.2.2 (343ffa66) -* incrementing version number - v2.2.1 (efc77b2a) -* incrementing version number - v2.2.0 (eecb836d) ##### Bug Fixes @@ -5872,10 +4131,7 @@ ##### Chores -* incrementing version number - v2.2.2 (343ffa66) * update changelog for v2.2.2 (f59ddc34) -* incrementing version number - v2.2.1 (efc77b2a) -* incrementing version number - v2.2.0 (eecb836d) ##### Bug Fixes @@ -5893,9 +4149,7 @@ * **deps-dev:** * bump eslint from 8.17.0 to 8.18.0 in /install (bfd626b0) * bump jsdom from 19.0.0 to 20.0.0 in /install (d037c2c9) -* incrementing version number - v2.2.1 (efc77b2a) * update changelog for v2.2.1 (667780cf) -* incrementing version number - v2.2.0 (eecb836d) ##### Bug Fixes @@ -5914,7 +4168,6 @@ * fallback strings for new resources: nodebb.admin-settings-uploads (da481163) * fallback strings for new resources: nodebb.admin-settings-advanced (34d75e96) * add in warning in language directories about not editing files directly (06074e8c) -* incrementing version number - v2.2.0 (eecb836d) * update changelog for v2.2.0 (bb3766df) ##### Documentation Changes @@ -5990,7 +4243,6 @@ * **deps-dev:** * bump @commitlint/config-angular in /install (e5e788d2) * bump eslint from 8.16.0 to 8.17.0 in /install (52c86dba) -* incrementing version number - v2.1.0 (a3114d33) * update changelog for v2.1.0 (7121949d) ##### Documentation Changes @@ -6010,15 +4262,12 @@ ##### Chores * update changelog for v2.1.0 (7121949d) -* incrementing version number - v2.1.0 (987045c3) * bump persona (91f32487) * update changelog for v2.0.1 (abd8e216) -* incrementing version number - v2.0.1 (768427d4) * remove optional `middleware` parameter from setupPageRoute and setupAdminPageRoute calls (54ff768f) * add note re: sort module (5aca106b) * up emoji (265a0139) * update changelog for v2.0.0 (60fc3f5d) -* incrementing version number - v2.0.0 (f23c3ff5) * **deps:** * bump nodebb-plugin-2factor from 4.0.1 to 5.0.0 in /install (6e95e5c5) * update dependency lint-staged to v12.5.0 (01f607a5) @@ -6126,7 +4375,6 @@ ##### Chores -* incrementing version number - v2.0.0 (f23c3ff5) * update changelog for v1.19.7 (a764df52) * **deps:** * update dependency mocha to v10 (a7986773) @@ -6172,7 +4420,6 @@ ##### Chores -* incrementing version number - v1.19.7 (0c4850e2) * update changelog for v1.19.6 (acca7811) * **deps:** * update commitlint monorepo to v16.2.4 (0d9179f7) @@ -6219,7 +4466,6 @@ ##### Chores -* incrementing version number - v1.19.6 (283a0072) * update changelog for v1.19.5 (05032ca2) * **deps:** * bump semver from 7.3.6 to 7.3.7 in /install (#10493) (65cec8d0) @@ -6302,7 +4548,6 @@ ##### Chores -* incrementing version number - v1.19.5 (48d6eb4f) * update changelog for v1.19.4 (0e6e49b2) * **deps:** * bump less from 3.13.1 to 4.1.2 in /install (#9856) (d33485f6) @@ -6355,10 +4600,8 @@ ##### Chores -* incrementing version number - v1.19.4 (67282057) * delay `filter:email.send` removal to v2.0.0 (83fd4311) * up persona (c23b2089) -* incrementing version number - v1.19.3 (09cb11c8) * update changelog for v1.19.3 (0b48ec54) * **deps:** * bump postcss from 8.4.7 to 8.4.8 in /install (#10372) (d7a4ae1f) @@ -6456,7 +4699,6 @@ * update commitlint monorepo to v16.2.1 (2290cee5) * update dependency eslint to v8.9.0 (763cd193) * remove punycode dep (e9cb1452) -* incrementing version number - v1.19.2 (e49b31f0) * update changelog for v1.19.2 (f012984d) ##### New Features @@ -6532,7 +4774,6 @@ * up persona (f29bed27) * up packages (b4a4e60e) * up persona (3e30b6cd) -* incrementing version number - v1.19.1 (7f450268) * update changelog for v1.19.1 (55df683a) * **deps:** * bump ioredis from 4.28.4 to 4.28.5 in /install (#10254) (b496ad44) @@ -6677,7 +4918,6 @@ * add test.sh to gitignore (d7796f0b) * delete test script (250274c7) * remove unused lang key #10180 (2fe91e36) -* incrementing version number - v1.19.0 (18b0a29f) * update changelog for v1.19.0 (c8f1bc53) * **i18n:** * fallback strings for new resources: nodebb.admin-settings-user (78cd6de7) @@ -6772,7 +5012,6 @@ * right dropdown (7aa85882) * right dropdown (a998cc1c) * update readme mongodb version (af5393ec) -* incrementing version number - v1.18.6 (3a78a151) * update changelog for v1.18.6 (3c8109e2) * **deps:** * update commitlint monorepo (56d134c3) @@ -7080,7 +5319,6 @@ * up mentions (98b98a11) * up mentions (3e4d477e) * fix type.yaml example and summary (591424ce) -* incrementing version number - v1.18.5 (1e418f5b) * update changelog for v1.18.5 (82eda23a) * remove .opacity() mixin as it is supported cross-browser (28efcb59) * **deps:** @@ -7188,7 +5426,6 @@ * remove .opacity() mixin as it is supported cross-browser (28efcb59) * up themes (463b2076) * up persona (1438f409) -* incrementing version number - v1.18.4 (945c2b0b) * update changelog for v1.18.4 (7cbcb521) * **deps:** * update dependency lint-staged to v11.2.6 (8d4bb8bb) @@ -7341,7 +5578,6 @@ ##### Chores * up persona (f4e62fb1) -* incrementing version number - v1.18.3 (57358743) * update changelog for v1.18.3 (f066ddb8) * **deps:** * update dependency lint-staged to v11.2.0 (840b49b9) @@ -7417,7 +5653,6 @@ ##### Chores * **deps:** update docker/build-push-action action to v2.7.0 (ee027719) -* incrementing version number - v1.18.2 (0a56158b) * update changelog for v1.18.2 (27e9282a) ##### New Features @@ -7492,7 +5727,6 @@ ##### Chores * **deps:** update commitlint monorepo to v13 (87ba768f) -* incrementing version number - v1.18.1 (f8f80e4f) * update changelog for v1.18.1 (0713475d) ##### New Features @@ -7535,7 +5769,6 @@ ##### Chores * found some hooks that don't play well docgen (ae793b4a) -* incrementing version number - v1.18.0 (1e436ae7) * update changelog for v1.18.0 (2fd9c095) * **deps:** update dependency mocha to v9.1.1 (64bac178) @@ -7605,7 +5838,6 @@ * update dependency eslint to v7.31.0 (f5a53b7f) * update dependency lint-staged to v11.0.1 (02101315) * up markdown/composer-default, fixes: #9708 (b74eefac) -* incrementing version number - v1.17.2 (46be2046) * update changelog for v1.17.2 (5c9c0605) ##### Documentation Changes @@ -7758,7 +5990,6 @@ * lint (2b42e7ed) * fix indentation (d07229aa) * up rewards (ca9ca876) -* incrementing version number - v1.17.1 (0aad1312) * update changelog for v1.17.1 (1e6ed0ad) ##### Documentation Changes @@ -7870,7 +6101,6 @@ * update dependency mocha to v8.4.0 (461e187b) * update dependency eslint to v7.25.0 (32c20806) * update dependency grunt to v1.4.0 (a30deef3) -* incrementing version number - v1.17.0 (75f7972b) * update changelog for v1.17.0 (4c441a1b) ##### Documentation Changes @@ -8013,23 +6243,16 @@ * update dependency husky to v5 (d89ccf26) * update dependency lint-staged to v10.5.4 (030ecffa) * update dependency eslint to v7.19.0 (3696a199) -* incrementing version number - v1.17.0-beta.5 (42c4f963) * fix indent (6406e527) * benchpress 2.4.1 (3403635c) * remove log (a1ee1a2a) -* incrementing version number - v1.17.0-beta.4 (91992240) * bump composer-default (289bfc0b) * up themes (d14ba1f4) * remove node 10 (8d3ec234) * bump composer-default to 6.5.20 (33fbfdfe) -* incrementing version number - v1.17.0-beta.3 (6e8b1bb9) * add multiparty dep (ef3ec96a) -* incrementing version number - v1.17.0-beta.2 (0c1945dc) -* incrementing version number - v1.17.0-beta.1 (31872aac) * bump composer (30954789) * bump deps (#9335) (b9fd2c87) -* incrementing version number - v1.17.0-beta.0 (b61257ef) -* incrementing version number - v1.16.3-beta.0 (477157cc) * extra console.log (1ae8dda8) * up composer (1c9acef6) * eslint max-len (cc9d6fd0) @@ -8048,7 +6271,6 @@ * fallbacks (74be1a59) * deprecation notices for plugins using plugin old hook methods (3052256d) * add deprecation notice in comments for ajaxify.loadExtraScripts (8b09292e) -* incrementing version number - v1.16.2 (ea7f8381) * update changelog for v1.16.2 (d3883d4b) ##### Documentation Changes @@ -8592,8 +6814,6 @@ * update dependency husky to v4.3.8 (a6f5de86) * update dependency eslint to v7.18.0 (afbef95f) * update dependency husky to v4.3.7 (d3e041e2) -* incrementing version number - v1.16.2-beta.0 (43ff8e41) -* incrementing version number - v1.16.1 (e3cd7a23) * update changelog for v1.16.1 (b6d71710) ##### New Features @@ -8671,10 +6891,8 @@ ##### Chores * increase test timeout (0d7dfeeb) -* incrementing version number - v1.16.1-beta.0 (5fcf3ea6) * add deprecation notice to topic thumb tpl value (05d8b3c3) * minor reordering of lines (8e5a413e) -* incrementing version number - v1.16.0 (6d01fd50) * update changelog for v1.16.0 (1437c62f) * **deps:** * update dependency eslint to v7.17.0 (18ae7cf7) @@ -8797,7 +7015,6 @@ * update dependency lint-staged to v10.5.3 (3e6f7359) * appease codeclimate (9f62df15) * add comment for clarification (6037f5ee) -* incrementing version number - v1.15.5 (57cd1343) * update changelog for v1.15.5 (b0299326) * **i18n:** fallbacks for new topic thumb keys (15f1a089) @@ -8922,7 +7139,6 @@ ##### Chores * up persona (c111bde1) -* incrementing version number - v1.15.4 (a1b658d9) * update changelog for v1.15.4 (252dddfc) ##### New Features @@ -8947,7 +7163,6 @@ * fallbacks for nodebb.error (82ca3760) * fallbacks for nodebb.topic (5b269bc5) * remove test code (07fe959c) -* incrementing version number - v1.15.3 (d1ae08fa) * update changelog for v1.15.3 (cf157c9b) ##### New Features @@ -9075,10 +7290,8 @@ * up persona (5c9ff18e) * add missing plugin hook deprecation warning (98a05e4d) * pin autoprefixer to latest (46eb7701) -* incrementing version number - v1.15.3-beta.0 (28fa03bd) * up persona (81984285) * up slick (5f2fe883) -* incrementing version number - v1.15.2 (5867a5b9) * update changelog for v1.15.2 (37965d45) * **spec:** replace ugly hack with another hack for optional properties (45a4f136) * **deps:** @@ -9157,9 +7370,7 @@ ##### Chores -* incrementing version number - v1.15.2-beta.1 (20c05e80) * remove debug log (0a0b4661) -* incrementing version number - v1.15.2-beta.0 (996174a1) * **deps:** update dependency smtp-server to v3.8.0 (5f5f0edb) ##### Documentation Changes @@ -9234,7 +7445,6 @@ ##### Chores -* incrementing version number - v1.15.1-beta.0 (e033da8a) * fallback l10n for admin-settings-api (8368c25b) * **deps:** * update dependency eslint to v7.13.0 (bcbc0854) @@ -9310,40 +7520,27 @@ ##### Chores * update changelog for v1.15.0-rc.5 (69f4d5ac) -* incrementing version number - v1.15.0-rc.5 (4bd2788b) * add info log into tests (b6d86878) * update renovate config to automatically merge non-major version bumps #yolo (1c8b8ce1) * update changelog for v1.15.0-rc.4 (16882941) -* incrementing version number - v1.15.0-rc.4 (57b49320) * update changelog for v1.15.0-rc.3 (2738041b) -* incrementing version number - v1.15.0-rc.3 (6de7760a) * bump persona (e0b67817) * update changelog for v1.15.0-rc.2 (c3a7ab54) -* incrementing version number - v1.15.0-rc.2 (7c084134) * update changelog for v1.15.0-rc.1 (4f49b3da) -* incrementing version number - v1.15.0-rc.1 (943424b5) * update changelog for v1.15.0-rc.0 (aab5f018) -* incrementing version number - v1.15.0-rc.0 (8d48455b) * update changelog for v1.15.0-beta.30 (39648722) -* incrementing version number - v1.15.0-beta.30 (2dd3c962) * some optimizations for codeclimate (4a63c20a) * update changelog for v1.15.0-beta.29 (63696c40) -* incrementing version number - v1.15.0-beta.29 (fca176d2) * refactor src/emailer.js (75459517) * update changelog for v1.15.0-beta.28 (fd975a66) -* incrementing version number - v1.15.0-beta.28 (57f83162) * update changelog for v1.15.0-beta.27 (70673824) -* incrementing version number - v1.15.0-beta.27 (78fad240) * lint notifications.js (4fc84e9f) * update changelog for v1.15.0-beta.26 (5e01d288) -* incrementing version number - v1.15.0-beta.26 (62c44095) * up persona (ff8a833a) * up persona (4a0f54ae) * update changelog for v1.15.0-beta.25 (240a04b4) -* incrementing version number - v1.15.0-beta.25 (1124d4ee) * up persona (032e6001) * update changelog for v1.15.0-beta.24 (72ab5ba1) -* incrementing version number - v1.15.0-beta.24 (23ba071d) * up persona (5407bf48) * up persona (4c2eab4b) * up persona (91133b0f) @@ -9351,72 +7548,30 @@ * up persona (9dc4db1f) * up persona (ba70a1bf) * update changelog for v1.15.0-beta.23 (e6ea208c) -* incrementing version number - v1.15.0-beta.23 (61a04eb9) * update changelog for v1.15.0-beta.22 (59ee74c2) -* incrementing version number - v1.15.0-beta.22 (9c9329ee) * update changelog for v1.15.0-beta.21 (8089542e) -* incrementing version number - v1.15.0-beta.21 (966cdc13) * update changelog for v1.15.0-beta.20 (1650f303) -* incrementing version number - v1.15.0-beta.20 (c8e57ec1) * update changelog for v1.15.0-beta.19 (9cde5105) -* incrementing version number - v1.15.0-beta.19 (2eb7c284) * update changelog for v1.15.0-beta.18 (b2ca9686) -* incrementing version number - v1.15.0-beta.18 (e096791e) * update changelog for v1.15.0-beta.17 (d6178158) -* incrementing version number - v1.15.0-beta.17 (f1c28092) * update changelog for v1.15.0-beta.16 (e08297ff) -* incrementing version number - v1.15.0-beta.16 (6043c9cb) * update changelog for v1.15.0-beta.15 (f878b92c) -* incrementing version number - v1.15.0-beta.15 (10b94f9b) * update changelog for v1.15.0-beta.14 (5e60d092) -* incrementing version number - v1.15.0-beta.14 (6ca4b86f) * update commitlint config (61a8c6f0) * update changelog for v1.15.0-beta.13 (ca8d492b) -* incrementing version number - v1.15.0-beta.13 (bdd71c51) * update changelog for v1.15.0-beta.12 (0a242605) -* incrementing version number - v1.15.0-beta.12 (b852c9b7) * update changelog for v1.15.0-beta.11 (f07ba866) -* incrementing version number - v1.15.0-beta.11 (c1ce7391) * update changelog for v1.15.0-beta.10 (9c34eced) -* incrementing version number - v1.15.0-beta.10 (f252d4d7) * update changelog for v1.15.0-beta.9 (affc7927) -* incrementing version number - v1.15.0-beta.9 (8dc513da) * update changelog for v1.15.0-beta.8 (3b960c3b) -* incrementing version number - v1.15.0-beta.8 (34bb869c) * update changelog for v1.15.0-beta.7 (e449ff9a) -* incrementing version number - v1.15.0-beta.7 (fd917b8e) * update changelog for v1.15.0-beta.6 (a7f03b64) -* incrementing version number - v1.15.0-beta.6 (a9019cbe) * update changelog for v1.15.0-beta.5 (0e90064e) -* incrementing version number - v1.15.0-beta.5 (81e4c4df) * update changelog for v1.15.0-beta.4 (6c4aed8c) -* incrementing version number - v1.15.0-beta.4 (f2726a6d) * update changelog for v1.15.0-beta.3 (11e2ccab) -* incrementing version number - v1.15.0-beta.3 (39178c2d) * update changelog for v1.15.0-beta.2 (d8a9f1c3) -* incrementing version number - v1.15.0-beta.2 (59b50d0a) * update changelog for v1.15.0-beta.1 (aeca19d5) -* incrementing version number - v1.15.0-beta.1 (4fa57fbb) -* incrementing version number - v1.15.0-beta.0 (bff80983) -* incrementing version number - v1.14.3-beta.16 (d9a05035) -* incrementing version number - v1.14.3-beta.15 (e2a253f2) -* incrementing version number - v1.14.3-beta.14 (9500871e) -* incrementing version number - v1.14.3-beta.13 (b5a2e4b6) -* incrementing version number - v1.14.3-beta.12 (f4c986a7) -* incrementing version number - v1.14.3-beta.11 (8618c32a) -* incrementing version number - v1.14.3-beta.10 (fa341714) -* incrementing version number - v1.14.3-beta.9 (9945c409) -* incrementing version number - v1.14.3-beta.8 (b5dcce9c) -* incrementing version number - v1.14.3-beta.7 (2531c44c) -* incrementing version number - v1.14.3-beta.6 (97088f68) -* incrementing version number - v1.14.3-beta.5 (a33a8a5a) -* incrementing version number - v1.14.3-beta.4 (55b3e376) -* incrementing version number - v1.14.3-beta.3 (5a5abf3c) -* incrementing version number - v1.14.3-beta.2 (bbab183f) -* incrementing version number - v1.14.3-beta.1 (2c06f6ac) -* incrementing version number - v1.14.3-beta.0 (3f87d5f9) * update changelog for v1.14.2 (cd94c24a) -* incrementing version number - v1.14.2 (1e4d683f) * update changelog for v1.14.2 (488e69fd) * **deps:** * update dependency mocha to v8.2.1 (35e725d1) @@ -10199,14 +8354,10 @@ ##### Chores -* incrementing version number - v1.14.2 (1e4d683f) * update changelog for v1.14.2 (488e69fd) * up theme (63fb2ad7) -* incrementing version number - v1.14.2-beta.1 (9d1465d0) * up theme (15aabfd3) * up theme (599c5015) -* incrementing version number - v1.14.2-beta.0 (fca4ee31) -* incrementing version number - v1.14.1 (31203b16) * update changelog for v1.14.1 (d4c16086) * **deps:** update commitlint monorepo to v9.1.1 (0ca7e28a) @@ -10247,13 +8398,7 @@ ##### Chores -* incrementing version number - v1.14.1 (31203b16) * update changelog for v1.14.1 (d4c16086) -* incrementing version number - v1.14.1-beta.3 (e8ecef6b) -* incrementing version number - v1.14.1-beta.2 (b8d9b6b1) -* incrementing version number - v1.14.1-beta.1 (be85123a) -* incrementing version number - v1.14.1-beta.0 (c279875a) -* incrementing version number - v1.14.0 (bb73d6a4) * update changelog for v1.14.0 (cffae0f1) ##### New Features @@ -10314,13 +8459,10 @@ ##### Chores -* incrementing version number - v1.14.0 (bb73d6a4) * update changelog for v1.14.0 (cffae0f1) * bump persona (19f9af94) * latest translations and fallbacks (22879633) -* incrementing version number - v1.13.3 (ee583e80) * bump persona (d2bd746c) -* incrementing version number - v1.13.2 (beafd613) * **deps:** * update dependency smtp-server to v3.7.0 (e80100b5) * update dependency eslint to v7.3.1 (#8417) (33492744) @@ -10809,9 +8951,7 @@ ##### Chores -* incrementing version number - v1.13.3 (ee583e80) * bump persona (d2bd746c) -* incrementing version number - v1.13.2 (beafd613) * **deps:** * update dependency coveralls to v3.1.0 (5ed4a108) * pin dependency @apidevtools/swagger-parser to 9.0.1 (51eccef5) @@ -11042,11 +9182,9 @@ ##### Chores -* incrementing version number - v1.13.2 (71f4607d) * bump themes (027f3f22) * bump vanilla (236a1730) * bump persona (82ace391) -* incrementing version number - v1.13.1 (cc6758a0) * **deps:** * update dependency eslint to v6.8.0 (#8062) (15783213) * update dependency nyc to v15 (#8094) (976e26a9) @@ -11138,8 +9276,6 @@ ##### Chores -* incrementing version number - v1.13.1 (d1e0672f) -* incrementing version number - v1.13.0 (c38b2d23) * **deps:** * update dependency husky to v3.1.0 (#8046) (c3418c26) * update dependency coveralls to v3.0.9 (#8067) (0aeee144) @@ -11209,8 +9345,6 @@ ##### Chores -* incrementing version number - v1.13.0 (c38b2d23) -* incrementing version number - v1.12.2 (810e2c0b) * **deps:** * update dependency jsdom to v15.2.1 (9d946d1c) * update dependency eslint to v6.6.0 (d0e428e9) @@ -11822,12 +9956,10 @@ ##### Chores -* incrementing version number - v1.12.2 (22db818e) * bump themes #7576 (d349754d) * bump themes (59bdc970) * bump themes (abcca134) * bump themes (551b18cd) -* incrementing version number - v1.12.1 (dd973abe) * **deps:** * update dependency lint-staged to v8.1.7 (dc6b49ca) * update commitlint monorepo (9998e86b) @@ -11906,11 +10038,9 @@ ##### Chores -* incrementing version number - v1.12.1 (dd973abe) * comment cleanup (6bed51ef) * bump persona (1f4db132) * bump themes, fix: https://github.com/NodeBB/NodeBB/issues/7446 (0d19bb3d) -* incrementing version number - v1.12.0 (d87f8c52) * **deps:** * update dependency lint-staged to v8.1.5 (ae17481d) * update node:8.15.1 docker digest to 918f0be (5f787d73) @@ -12011,8 +10141,6 @@ ##### Chores -* incrementing version number - v1.12.0 (d87f8c52) -* incrementing version number - v1.11.2 (757bff27) * **deps:** * update node:8.15.1 docker digest to 287b8a5 (0b8d1833) * update node.js to v8.15.1 (ae89db28) @@ -12161,8 +10289,6 @@ ##### Chores -* incrementing version number - v1.11.2 (757bff27) -* incrementing version number - v1.11.1 (2104877c) * **deps:** * update node:8.15.0 docker digest to cb66110 (1719cd77) * update dependency eslint-plugin-import to v2.15.0 (f7191eb9) @@ -12472,7 +10598,6 @@ ##### Chores -* incrementing version number - v1.11.1 (2104877c) * **deps:** * update dependency husky to v1.2.1 (63f4b569) * update node:8.14.0 docker digest to dd2381f (7449ae3e) From 68198e8ad6a95eb4222527cb630edc16e76189b4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Wed, 11 Dec 2024 11:21:58 -0500 Subject: [PATCH 54/82] feat: add support for saas_plan --- public/language/en-GB/admin/extend/plugins.json | 3 ++- public/src/admin/extend/plugins.js | 1 - src/controllers/admin/plugins.js | 1 + src/install.js | 10 +++++++++- src/views/admin/extend/plugins.tpl | 13 ++++++++++--- 5 files changed, 22 insertions(+), 6 deletions(-) diff --git a/public/language/en-GB/admin/extend/plugins.json b/public/language/en-GB/admin/extend/plugins.json index 4849f0cab2..4afc7e5564 100644 --- a/public/language/en-GB/admin/extend/plugins.json +++ b/public/language/en-GB/admin/extend/plugins.json @@ -54,5 +54,6 @@ "license.title": "Plugin License Information", "license.intro": "The plugin %1 is licensed under the %2. Please read and understand the license terms prior to activating this plugin.", - "license.cta": "Do you wish to continue with activating this plugin?" + "license.cta": "Do you wish to continue with activating this plugin?", + "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" } diff --git a/public/src/admin/extend/plugins.js b/public/src/admin/extend/plugins.js index 1419dffe32..6fb820a946 100644 --- a/public/src/admin/extend/plugins.js +++ b/public/src/admin/extend/plugins.js @@ -22,7 +22,6 @@ define('admin/extend/plugins', [ pluginsList.on('click', 'button[data-action="toggleActive"]', function () { const pluginEl = $(this).parents('li'); pluginID = pluginEl.attr('data-plugin-id'); - // const btn = $('[id="' + pluginID + '"] [data-action="toggleActive"]'); const btn = $(this); const pluginData = ajaxify.data.installed[pluginEl.attr('data-plugin-index')]; diff --git a/src/controllers/admin/plugins.js b/src/controllers/admin/plugins.js index 7cc09c98bf..f30de0b527 100644 --- a/src/controllers/admin/plugins.js +++ b/src/controllers/admin/plugins.js @@ -47,6 +47,7 @@ pluginsController.get = async function (req, res) { trending: trendingPlugins, submitPluginUsage: meta.config.submitPluginUsage, version: nconf.get('version'), + isStarterPlan: nconf.get('saas_plan') === 'starter', }); }; diff --git a/src/install.js b/src/install.js index 54ea7a325f..a1f365126e 100644 --- a/src/install.js +++ b/src/install.js @@ -199,6 +199,11 @@ async function completeConfigSetup(config) { if (nconf.get('package_manager')) { config.package_manager = nconf.get('package_manager'); } + + if (install.values.hasOwnProperty('saas_plan')) { + config.saas_plan = install.values.saas_plan; + } + nconf.overrides(config); const db = require('./database'); await db.init(); @@ -619,7 +624,10 @@ install.save = async function (server_conf) { } } - await fs.promises.writeFile(serverConfigPath, JSON.stringify({ ...currentConfig, ...server_conf }, null, 4)); + await fs.promises.writeFile(serverConfigPath, JSON.stringify({ + ...currentConfig, + ...server_conf, + }, null, 4)); console.log('Configuration Saved OK'); nconf.file({ file: serverConfigPath, diff --git a/src/views/admin/extend/plugins.tpl b/src/views/admin/extend/plugins.tpl index e2f7c730d7..0c3c7620f6 100644 --- a/src/views/admin/extend/plugins.tpl +++ b/src/views/admin/extend/plugins.tpl @@ -1,15 +1,22 @@ +{{{ if isStarterPlan}}} +

    +
    + [[admin/extend/plugins:starter-plan-warning]] +
    +
    +{{{ end }}} -
    +

    [[admin/extend/plugins:plugins]]

    -
    +
    -
    +
    {{{ if !canChangeState }}}
    [[error:plugins-set-in-configuration]]
    {{{ end }}} From 26a1a2f11d14d9a26e2380b5668445c1a6f456b0 Mon Sep 17 00:00:00 2001 From: Misty Release Bot Date: Wed, 11 Dec 2024 16:22:33 +0000 Subject: [PATCH 55/82] chore(i18n): fallback strings for new resources: nodebb.admin-extend-plugins --- public/language/ar/admin/extend/plugins.json | 3 ++- public/language/bg/admin/extend/plugins.json | 3 ++- public/language/bn/admin/extend/plugins.json | 3 ++- public/language/cs/admin/extend/plugins.json | 3 ++- public/language/da/admin/extend/plugins.json | 3 ++- public/language/de/admin/extend/plugins.json | 3 ++- public/language/el/admin/extend/plugins.json | 3 ++- public/language/en-US/admin/extend/plugins.json | 3 ++- public/language/en-x-pirate/admin/extend/plugins.json | 3 ++- public/language/es/admin/extend/plugins.json | 3 ++- public/language/et/admin/extend/plugins.json | 3 ++- public/language/fa-IR/admin/extend/plugins.json | 3 ++- public/language/fi/admin/extend/plugins.json | 3 ++- public/language/fr/admin/extend/plugins.json | 3 ++- public/language/gl/admin/extend/plugins.json | 3 ++- public/language/he/admin/extend/plugins.json | 3 ++- public/language/hr/admin/extend/plugins.json | 3 ++- public/language/hu/admin/extend/plugins.json | 3 ++- public/language/hy/admin/extend/plugins.json | 3 ++- public/language/id/admin/extend/plugins.json | 3 ++- public/language/it/admin/extend/plugins.json | 3 ++- public/language/ja/admin/extend/plugins.json | 3 ++- public/language/ko/admin/extend/plugins.json | 3 ++- public/language/lt/admin/extend/plugins.json | 3 ++- public/language/lv/admin/extend/plugins.json | 3 ++- public/language/ms/admin/extend/plugins.json | 3 ++- public/language/nb/admin/extend/plugins.json | 3 ++- public/language/nl/admin/extend/plugins.json | 3 ++- public/language/nn-NO/admin/extend/plugins.json | 3 ++- public/language/pl/admin/extend/plugins.json | 3 ++- public/language/pt-BR/admin/extend/plugins.json | 3 ++- public/language/pt-PT/admin/extend/plugins.json | 3 ++- public/language/ro/admin/extend/plugins.json | 3 ++- public/language/ru/admin/extend/plugins.json | 3 ++- public/language/rw/admin/extend/plugins.json | 3 ++- public/language/sc/admin/extend/plugins.json | 3 ++- public/language/sk/admin/extend/plugins.json | 3 ++- public/language/sl/admin/extend/plugins.json | 3 ++- public/language/sq-AL/admin/extend/plugins.json | 3 ++- public/language/sr/admin/extend/plugins.json | 3 ++- public/language/sv/admin/extend/plugins.json | 3 ++- public/language/th/admin/extend/plugins.json | 3 ++- public/language/tr/admin/extend/plugins.json | 3 ++- public/language/uk/admin/extend/plugins.json | 3 ++- public/language/vi/admin/extend/plugins.json | 3 ++- public/language/zh-CN/admin/extend/plugins.json | 3 ++- public/language/zh-TW/admin/extend/plugins.json | 3 ++- 47 files changed, 94 insertions(+), 47 deletions(-) diff --git a/public/language/ar/admin/extend/plugins.json b/public/language/ar/admin/extend/plugins.json index a7c687d31a..4e2d52ea1c 100644 --- a/public/language/ar/admin/extend/plugins.json +++ b/public/language/ar/admin/extend/plugins.json @@ -54,5 +54,6 @@ "license.title": "معلومات ترخيص الإضافة", "license.intro": "The plugin %1 is licensed under the %2. Please read and understand the license terms prior to activating this plugin.", - "license.cta": "هل ترغب بالاستمرار في تفعيل هذه الإضافة؟" + "license.cta": "هل ترغب بالاستمرار في تفعيل هذه الإضافة؟", + "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" } diff --git a/public/language/bg/admin/extend/plugins.json b/public/language/bg/admin/extend/plugins.json index a01ec486a2..7c94594341 100644 --- a/public/language/bg/admin/extend/plugins.json +++ b/public/language/bg/admin/extend/plugins.json @@ -54,5 +54,6 @@ "license.title": "Информация за лиценза на добавката", "license.intro": "Добавката „%1“ използва лиценза „%2“. Моля, прочетете условията на лиценза и се уверете, че ги разбирате, преди да включите добавката.", - "license.cta": "Искате ли да продължите с включването на тази добавка?" + "license.cta": "Искате ли да продължите с включването на тази добавка?", + "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" } diff --git a/public/language/bn/admin/extend/plugins.json b/public/language/bn/admin/extend/plugins.json index 4849f0cab2..4afc7e5564 100644 --- a/public/language/bn/admin/extend/plugins.json +++ b/public/language/bn/admin/extend/plugins.json @@ -54,5 +54,6 @@ "license.title": "Plugin License Information", "license.intro": "The plugin %1 is licensed under the %2. Please read and understand the license terms prior to activating this plugin.", - "license.cta": "Do you wish to continue with activating this plugin?" + "license.cta": "Do you wish to continue with activating this plugin?", + "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" } diff --git a/public/language/cs/admin/extend/plugins.json b/public/language/cs/admin/extend/plugins.json index 8606eb8709..144f528156 100644 --- a/public/language/cs/admin/extend/plugins.json +++ b/public/language/cs/admin/extend/plugins.json @@ -54,5 +54,6 @@ "license.title": "Licenční informace o rozšíření", "license.intro": "Rozšíření %1 je licencováno pod %2. Pro aktivování tohoto rozšíření si přečtěte licenční podmínky.", - "license.cta": "Přejete si pokračovat v aktivování tohoto rozšíření?" + "license.cta": "Přejete si pokračovat v aktivování tohoto rozšíření?", + "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" } diff --git a/public/language/da/admin/extend/plugins.json b/public/language/da/admin/extend/plugins.json index 4849f0cab2..4afc7e5564 100644 --- a/public/language/da/admin/extend/plugins.json +++ b/public/language/da/admin/extend/plugins.json @@ -54,5 +54,6 @@ "license.title": "Plugin License Information", "license.intro": "The plugin %1 is licensed under the %2. Please read and understand the license terms prior to activating this plugin.", - "license.cta": "Do you wish to continue with activating this plugin?" + "license.cta": "Do you wish to continue with activating this plugin?", + "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" } diff --git a/public/language/de/admin/extend/plugins.json b/public/language/de/admin/extend/plugins.json index b647be021f..07d7d1666c 100644 --- a/public/language/de/admin/extend/plugins.json +++ b/public/language/de/admin/extend/plugins.json @@ -54,5 +54,6 @@ "license.title": "Plugin-Lizenzinformation", "license.intro": "Das Plugin %1is unter der %2 lizenziert. Bitte ließ dir diese durch bevor du dieses Plugin aktivierst.", - "license.cta": "Willst du dieses Plugin wirklich aktivieren?" + "license.cta": "Willst du dieses Plugin wirklich aktivieren?", + "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" } diff --git a/public/language/el/admin/extend/plugins.json b/public/language/el/admin/extend/plugins.json index 4849f0cab2..4afc7e5564 100644 --- a/public/language/el/admin/extend/plugins.json +++ b/public/language/el/admin/extend/plugins.json @@ -54,5 +54,6 @@ "license.title": "Plugin License Information", "license.intro": "The plugin %1 is licensed under the %2. Please read and understand the license terms prior to activating this plugin.", - "license.cta": "Do you wish to continue with activating this plugin?" + "license.cta": "Do you wish to continue with activating this plugin?", + "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" } diff --git a/public/language/en-US/admin/extend/plugins.json b/public/language/en-US/admin/extend/plugins.json index ac2725ae5b..78cc50dcf6 100644 --- a/public/language/en-US/admin/extend/plugins.json +++ b/public/language/en-US/admin/extend/plugins.json @@ -54,5 +54,6 @@ "license.title": "Plugin License Information", "license.intro": "The plugin %1 is licensed under the %2. Please read and understand the license terms prior to activating this plugin.", - "license.cta": "Do you wish to continue with activating this plugin?" + "license.cta": "Do you wish to continue with activating this plugin?", + "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" } diff --git a/public/language/en-x-pirate/admin/extend/plugins.json b/public/language/en-x-pirate/admin/extend/plugins.json index 4849f0cab2..4afc7e5564 100644 --- a/public/language/en-x-pirate/admin/extend/plugins.json +++ b/public/language/en-x-pirate/admin/extend/plugins.json @@ -54,5 +54,6 @@ "license.title": "Plugin License Information", "license.intro": "The plugin %1 is licensed under the %2. Please read and understand the license terms prior to activating this plugin.", - "license.cta": "Do you wish to continue with activating this plugin?" + "license.cta": "Do you wish to continue with activating this plugin?", + "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" } diff --git a/public/language/es/admin/extend/plugins.json b/public/language/es/admin/extend/plugins.json index 07e473b64c..36cbb883e4 100644 --- a/public/language/es/admin/extend/plugins.json +++ b/public/language/es/admin/extend/plugins.json @@ -54,5 +54,6 @@ "license.title": "Información de Licencia de Plugin", "license.intro": "El plugin %1 tiene licencia bajo %2. Por favor lea y comprenda los términos de licencia antes de activar este plugin.", - "license.cta": "¿Desea continuar con la activación de este plugin?" + "license.cta": "¿Desea continuar con la activación de este plugin?", + "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" } diff --git a/public/language/et/admin/extend/plugins.json b/public/language/et/admin/extend/plugins.json index 4849f0cab2..4afc7e5564 100644 --- a/public/language/et/admin/extend/plugins.json +++ b/public/language/et/admin/extend/plugins.json @@ -54,5 +54,6 @@ "license.title": "Plugin License Information", "license.intro": "The plugin %1 is licensed under the %2. Please read and understand the license terms prior to activating this plugin.", - "license.cta": "Do you wish to continue with activating this plugin?" + "license.cta": "Do you wish to continue with activating this plugin?", + "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" } diff --git a/public/language/fa-IR/admin/extend/plugins.json b/public/language/fa-IR/admin/extend/plugins.json index 71635abd71..b48e66c7ac 100644 --- a/public/language/fa-IR/admin/extend/plugins.json +++ b/public/language/fa-IR/admin/extend/plugins.json @@ -54,5 +54,6 @@ "license.title": "Plugin License Information", "license.intro": "The plugin %1 is licensed under the %2. Please read and understand the license terms prior to activating this plugin.", - "license.cta": "Do you wish to continue with activating this plugin?" + "license.cta": "Do you wish to continue with activating this plugin?", + "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" } diff --git a/public/language/fi/admin/extend/plugins.json b/public/language/fi/admin/extend/plugins.json index b02ab26ca9..bbbf9c3dab 100644 --- a/public/language/fi/admin/extend/plugins.json +++ b/public/language/fi/admin/extend/plugins.json @@ -54,5 +54,6 @@ "license.title": "Plugin License Information", "license.intro": "The plugin %1 is licensed under the %2. Please read and understand the license terms prior to activating this plugin.", - "license.cta": "Do you wish to continue with activating this plugin?" + "license.cta": "Do you wish to continue with activating this plugin?", + "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" } diff --git a/public/language/fr/admin/extend/plugins.json b/public/language/fr/admin/extend/plugins.json index ee8e3b5083..42b0c23bea 100644 --- a/public/language/fr/admin/extend/plugins.json +++ b/public/language/fr/admin/extend/plugins.json @@ -54,5 +54,6 @@ "license.title": "Information sur la licence du plugin", "license.intro": "Le plugin %1 est sous licence %2. Veuillez lire et comprendre les termes de la licence avant d’activer ce plugin.", - "license.cta": "Voulez-vous poursuivre en activant ce plugin ?" + "license.cta": "Voulez-vous poursuivre en activant ce plugin ?", + "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" } diff --git a/public/language/gl/admin/extend/plugins.json b/public/language/gl/admin/extend/plugins.json index 4849f0cab2..4afc7e5564 100644 --- a/public/language/gl/admin/extend/plugins.json +++ b/public/language/gl/admin/extend/plugins.json @@ -54,5 +54,6 @@ "license.title": "Plugin License Information", "license.intro": "The plugin %1 is licensed under the %2. Please read and understand the license terms prior to activating this plugin.", - "license.cta": "Do you wish to continue with activating this plugin?" + "license.cta": "Do you wish to continue with activating this plugin?", + "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" } diff --git a/public/language/he/admin/extend/plugins.json b/public/language/he/admin/extend/plugins.json index 07ce4ff67c..0fe524a31b 100644 --- a/public/language/he/admin/extend/plugins.json +++ b/public/language/he/admin/extend/plugins.json @@ -54,5 +54,6 @@ "license.title": "מידע רישיון התוסף", "license.intro": "תוסף %1 מורשה תחת %2. אנא קראו והבינו את תנאי הרשיון לפני הפעלת תוסף זה.", - "license.cta": "האם להמשיך בהפעלת התוסף הזה?" + "license.cta": "האם להמשיך בהפעלת התוסף הזה?", + "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" } diff --git a/public/language/hr/admin/extend/plugins.json b/public/language/hr/admin/extend/plugins.json index 6b2cc46efd..10735917f3 100644 --- a/public/language/hr/admin/extend/plugins.json +++ b/public/language/hr/admin/extend/plugins.json @@ -54,5 +54,6 @@ "license.title": "Plugin License Information", "license.intro": "The plugin %1 is licensed under the %2. Please read and understand the license terms prior to activating this plugin.", - "license.cta": "Do you wish to continue with activating this plugin?" + "license.cta": "Do you wish to continue with activating this plugin?", + "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" } diff --git a/public/language/hu/admin/extend/plugins.json b/public/language/hu/admin/extend/plugins.json index bf179197c5..54fc1c45bb 100644 --- a/public/language/hu/admin/extend/plugins.json +++ b/public/language/hu/admin/extend/plugins.json @@ -54,5 +54,6 @@ "license.title": "Beépülő licencinformáció", "license.intro": "A %1 beépülő a %2 liszensz szerződést használja. Kérjük olvasd el és vedd tudomásul a szerződésben leírtakat, mielőtt használatba veszed a beépülőt.", - "license.cta": "Biztosan szeretnéd folytatni a beépülő aktiválását?" + "license.cta": "Biztosan szeretnéd folytatni a beépülő aktiválását?", + "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" } diff --git a/public/language/hy/admin/extend/plugins.json b/public/language/hy/admin/extend/plugins.json index 5d4041f118..8868cf3c59 100644 --- a/public/language/hy/admin/extend/plugins.json +++ b/public/language/hy/admin/extend/plugins.json @@ -54,5 +54,6 @@ "license.title": "Plugin-ի լիցենզիայի մասին տեղեկատվություն", "license.intro": "%1 հավելվածը լիցենզավորված է %2-ի ներքո: Խնդրում ենք կարդալ և հասկանալ լիցենզիայի պայմանները նախքան այս փլագինը ակտիվացնելը:", - "license.cta": "Ցանկանու՞մ եք շարունակել ակտիվացնել այս plugin-ը:" + "license.cta": "Ցանկանու՞մ եք շարունակել ակտիվացնել այս plugin-ը:", + "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" } diff --git a/public/language/id/admin/extend/plugins.json b/public/language/id/admin/extend/plugins.json index 4849f0cab2..4afc7e5564 100644 --- a/public/language/id/admin/extend/plugins.json +++ b/public/language/id/admin/extend/plugins.json @@ -54,5 +54,6 @@ "license.title": "Plugin License Information", "license.intro": "The plugin %1 is licensed under the %2. Please read and understand the license terms prior to activating this plugin.", - "license.cta": "Do you wish to continue with activating this plugin?" + "license.cta": "Do you wish to continue with activating this plugin?", + "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" } diff --git a/public/language/it/admin/extend/plugins.json b/public/language/it/admin/extend/plugins.json index 1aa54ae856..0bad82f592 100644 --- a/public/language/it/admin/extend/plugins.json +++ b/public/language/it/admin/extend/plugins.json @@ -54,5 +54,6 @@ "license.title": "Informazioni Licenza Plugin", "license.intro": "Il plugin %1 è concesso in licenza ai sensi della %2. Si prega di leggere e comprendere i termini della licenza prima di attivare questo plugin.", - "license.cta": "Vuoi continuare con l'attivazione di questo plugin?" + "license.cta": "Vuoi continuare con l'attivazione di questo plugin?", + "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" } diff --git a/public/language/ja/admin/extend/plugins.json b/public/language/ja/admin/extend/plugins.json index 01c36a0ecc..85bf09d16f 100644 --- a/public/language/ja/admin/extend/plugins.json +++ b/public/language/ja/admin/extend/plugins.json @@ -54,5 +54,6 @@ "license.title": "プラグインライセンス情報", "license.intro": "%1のプラグインは%2の下でライセンスされています。このプラグインを有効にする前にライセンス条項を熟読してください。", - "license.cta": "このプラグインを有効にし続けますか?" + "license.cta": "このプラグインを有効にし続けますか?", + "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" } diff --git a/public/language/ko/admin/extend/plugins.json b/public/language/ko/admin/extend/plugins.json index 2ae5ee71b8..237ed7e48c 100644 --- a/public/language/ko/admin/extend/plugins.json +++ b/public/language/ko/admin/extend/plugins.json @@ -54,5 +54,6 @@ "license.title": "플러그인 라이선스 정보", "license.intro": "플러그인 %1은 %2에 따라 라이선스가 부여됩니다. 이 플러그인을 활성화하기 전에 라이선스 약관을 읽고 이해하세요.", - "license.cta": "이 플러그인을 활성화하시겠습니까?" + "license.cta": "이 플러그인을 활성화하시겠습니까?", + "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" } diff --git a/public/language/lt/admin/extend/plugins.json b/public/language/lt/admin/extend/plugins.json index 4849f0cab2..4afc7e5564 100644 --- a/public/language/lt/admin/extend/plugins.json +++ b/public/language/lt/admin/extend/plugins.json @@ -54,5 +54,6 @@ "license.title": "Plugin License Information", "license.intro": "The plugin %1 is licensed under the %2. Please read and understand the license terms prior to activating this plugin.", - "license.cta": "Do you wish to continue with activating this plugin?" + "license.cta": "Do you wish to continue with activating this plugin?", + "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" } diff --git a/public/language/lv/admin/extend/plugins.json b/public/language/lv/admin/extend/plugins.json index 533da7736e..ba5ca03efd 100644 --- a/public/language/lv/admin/extend/plugins.json +++ b/public/language/lv/admin/extend/plugins.json @@ -54,5 +54,6 @@ "license.title": "Spraudņa licences informācija", "license.intro": "Spraudnis %1 ir licencēts pēc %2. Pirms spraudņa aktivizēšanas, lūdzu, izlasīt un izprast licences noteikumus.", - "license.cta": "Vai vēlies turpināt aktivizēt spraudni?" + "license.cta": "Vai vēlies turpināt aktivizēt spraudni?", + "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" } diff --git a/public/language/ms/admin/extend/plugins.json b/public/language/ms/admin/extend/plugins.json index 4849f0cab2..4afc7e5564 100644 --- a/public/language/ms/admin/extend/plugins.json +++ b/public/language/ms/admin/extend/plugins.json @@ -54,5 +54,6 @@ "license.title": "Plugin License Information", "license.intro": "The plugin %1 is licensed under the %2. Please read and understand the license terms prior to activating this plugin.", - "license.cta": "Do you wish to continue with activating this plugin?" + "license.cta": "Do you wish to continue with activating this plugin?", + "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" } diff --git a/public/language/nb/admin/extend/plugins.json b/public/language/nb/admin/extend/plugins.json index 1af0a071fc..4eec02141b 100644 --- a/public/language/nb/admin/extend/plugins.json +++ b/public/language/nb/admin/extend/plugins.json @@ -54,5 +54,6 @@ "license.title": "Informasjon om plugin-lisens", "license.intro": "Plugin-en %1 er lisensiert under %2. Les og forstå lisensvilkårene før du aktiverer denne plugin-en.", - "license.cta": "Vil du fortsette med aktivering av denne plugin-en?" + "license.cta": "Vil du fortsette med aktivering av denne plugin-en?", + "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" } diff --git a/public/language/nl/admin/extend/plugins.json b/public/language/nl/admin/extend/plugins.json index 4c6f3d306f..304dc5b435 100644 --- a/public/language/nl/admin/extend/plugins.json +++ b/public/language/nl/admin/extend/plugins.json @@ -54,5 +54,6 @@ "license.title": "Plugin License Information", "license.intro": "The plugin %1 is licensed under the %2. Please read and understand the license terms prior to activating this plugin.", - "license.cta": "Do you wish to continue with activating this plugin?" + "license.cta": "Do you wish to continue with activating this plugin?", + "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" } diff --git a/public/language/nn-NO/admin/extend/plugins.json b/public/language/nn-NO/admin/extend/plugins.json index a3f28227e7..93c31d0f8a 100644 --- a/public/language/nn-NO/admin/extend/plugins.json +++ b/public/language/nn-NO/admin/extend/plugins.json @@ -54,5 +54,6 @@ "license.title": "Lisens", "license.intro": "Les lisensavtalen før du installerer eller brukar denne pluginen.", - "license.cta": "Godta og fortset" + "license.cta": "Godta og fortset", + "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" } diff --git a/public/language/pl/admin/extend/plugins.json b/public/language/pl/admin/extend/plugins.json index 8dcb7200d3..abb3c7b09d 100644 --- a/public/language/pl/admin/extend/plugins.json +++ b/public/language/pl/admin/extend/plugins.json @@ -54,5 +54,6 @@ "license.title": "Informacje o licencji wtyczki", "license.intro": "Wtyczka %1 jest licencjonowana według %2. Zapoznaj się z warunkami licencji przed aktywacją tej wtyczki.", - "license.cta": "Czy chcesz kontynuować aktywację tej wtyczki?" + "license.cta": "Czy chcesz kontynuować aktywację tej wtyczki?", + "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" } diff --git a/public/language/pt-BR/admin/extend/plugins.json b/public/language/pt-BR/admin/extend/plugins.json index 021c31393b..f80ce9219e 100644 --- a/public/language/pt-BR/admin/extend/plugins.json +++ b/public/language/pt-BR/admin/extend/plugins.json @@ -54,5 +54,6 @@ "license.title": "Informação sobre a Licença do Plugin", "license.intro": "O plugin %1 está licenciado sob a %2. Por gentileza leia e entenda a licença antes de ativar este plugin.", - "license.cta": "Deseja continuar com a ativação deste plugin?" + "license.cta": "Deseja continuar com a ativação deste plugin?", + "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" } diff --git a/public/language/pt-PT/admin/extend/plugins.json b/public/language/pt-PT/admin/extend/plugins.json index fee767af6a..8f31563318 100644 --- a/public/language/pt-PT/admin/extend/plugins.json +++ b/public/language/pt-PT/admin/extend/plugins.json @@ -54,5 +54,6 @@ "license.title": "Informação sobre a licença do plugin", "license.intro": "O plug-in %1 está licenciado sob %2. Por favor leia e compreenda os termos da licença antes de ativar este plugin.", - "license.cta": "Tens a certeza que queres ativar este plugin?" + "license.cta": "Tens a certeza que queres ativar este plugin?", + "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" } diff --git a/public/language/ro/admin/extend/plugins.json b/public/language/ro/admin/extend/plugins.json index 4849f0cab2..4afc7e5564 100644 --- a/public/language/ro/admin/extend/plugins.json +++ b/public/language/ro/admin/extend/plugins.json @@ -54,5 +54,6 @@ "license.title": "Plugin License Information", "license.intro": "The plugin %1 is licensed under the %2. Please read and understand the license terms prior to activating this plugin.", - "license.cta": "Do you wish to continue with activating this plugin?" + "license.cta": "Do you wish to continue with activating this plugin?", + "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" } diff --git a/public/language/ru/admin/extend/plugins.json b/public/language/ru/admin/extend/plugins.json index 5af4b8b4c0..c938d1514f 100644 --- a/public/language/ru/admin/extend/plugins.json +++ b/public/language/ru/admin/extend/plugins.json @@ -54,5 +54,6 @@ "license.title": "Сведения о лицензии плагина", "license.intro": "Плагин %1 распространяется под лицензией %2. Пожалуйста, внимательно прочтите условия лицензии перед активацией плагина.", - "license.cta": "Вы хотите продолжить и активировать плагин?" + "license.cta": "Вы хотите продолжить и активировать плагин?", + "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" } diff --git a/public/language/rw/admin/extend/plugins.json b/public/language/rw/admin/extend/plugins.json index 4849f0cab2..4afc7e5564 100644 --- a/public/language/rw/admin/extend/plugins.json +++ b/public/language/rw/admin/extend/plugins.json @@ -54,5 +54,6 @@ "license.title": "Plugin License Information", "license.intro": "The plugin %1 is licensed under the %2. Please read and understand the license terms prior to activating this plugin.", - "license.cta": "Do you wish to continue with activating this plugin?" + "license.cta": "Do you wish to continue with activating this plugin?", + "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" } diff --git a/public/language/sc/admin/extend/plugins.json b/public/language/sc/admin/extend/plugins.json index 4849f0cab2..4afc7e5564 100644 --- a/public/language/sc/admin/extend/plugins.json +++ b/public/language/sc/admin/extend/plugins.json @@ -54,5 +54,6 @@ "license.title": "Plugin License Information", "license.intro": "The plugin %1 is licensed under the %2. Please read and understand the license terms prior to activating this plugin.", - "license.cta": "Do you wish to continue with activating this plugin?" + "license.cta": "Do you wish to continue with activating this plugin?", + "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" } diff --git a/public/language/sk/admin/extend/plugins.json b/public/language/sk/admin/extend/plugins.json index 5213bfa197..8b5635ca57 100644 --- a/public/language/sk/admin/extend/plugins.json +++ b/public/language/sk/admin/extend/plugins.json @@ -54,5 +54,6 @@ "license.title": "Licenčná informácie o rozšírení", "license.intro": "Rozšírenie %1 je licencované pod %2. Pre aktivovanie tohto rozšírenia si prečítajte licenčné podmienky.", - "license.cta": "Želáte si pokračovať v aktivovaní tohto rozšírenia?" + "license.cta": "Želáte si pokračovať v aktivovaní tohto rozšírenia?", + "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" } diff --git a/public/language/sl/admin/extend/plugins.json b/public/language/sl/admin/extend/plugins.json index bab65936f3..63a9b69e87 100644 --- a/public/language/sl/admin/extend/plugins.json +++ b/public/language/sl/admin/extend/plugins.json @@ -54,5 +54,6 @@ "license.title": "Informacija o licenci vtičnika", "license.intro": "Vtičnik %1 je licenciran pod %2. Preden aktivirate ta vtičnik, preberite in razumite licenčne pogoje.", - "license.cta": "Ali želite nadaljevati z aktiviranjem tega vtičnika?" + "license.cta": "Ali želite nadaljevati z aktiviranjem tega vtičnika?", + "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" } diff --git a/public/language/sq-AL/admin/extend/plugins.json b/public/language/sq-AL/admin/extend/plugins.json index 4849f0cab2..4afc7e5564 100644 --- a/public/language/sq-AL/admin/extend/plugins.json +++ b/public/language/sq-AL/admin/extend/plugins.json @@ -54,5 +54,6 @@ "license.title": "Plugin License Information", "license.intro": "The plugin %1 is licensed under the %2. Please read and understand the license terms prior to activating this plugin.", - "license.cta": "Do you wish to continue with activating this plugin?" + "license.cta": "Do you wish to continue with activating this plugin?", + "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" } diff --git a/public/language/sr/admin/extend/plugins.json b/public/language/sr/admin/extend/plugins.json index 4849f0cab2..4afc7e5564 100644 --- a/public/language/sr/admin/extend/plugins.json +++ b/public/language/sr/admin/extend/plugins.json @@ -54,5 +54,6 @@ "license.title": "Plugin License Information", "license.intro": "The plugin %1 is licensed under the %2. Please read and understand the license terms prior to activating this plugin.", - "license.cta": "Do you wish to continue with activating this plugin?" + "license.cta": "Do you wish to continue with activating this plugin?", + "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" } diff --git a/public/language/sv/admin/extend/plugins.json b/public/language/sv/admin/extend/plugins.json index 4849f0cab2..4afc7e5564 100644 --- a/public/language/sv/admin/extend/plugins.json +++ b/public/language/sv/admin/extend/plugins.json @@ -54,5 +54,6 @@ "license.title": "Plugin License Information", "license.intro": "The plugin %1 is licensed under the %2. Please read and understand the license terms prior to activating this plugin.", - "license.cta": "Do you wish to continue with activating this plugin?" + "license.cta": "Do you wish to continue with activating this plugin?", + "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" } diff --git a/public/language/th/admin/extend/plugins.json b/public/language/th/admin/extend/plugins.json index 6f04a90ae7..e847e1f21d 100644 --- a/public/language/th/admin/extend/plugins.json +++ b/public/language/th/admin/extend/plugins.json @@ -54,5 +54,6 @@ "license.title": "ข้อมูลลิขสิทธิ์ปลั๊กอิน", "license.intro": "ปลั๊กอิน %1ได้รับอนุญาตภายใต้ %2 โปรดอ่านและทำความเข้าใจข้อกำหนดสิทธิ์การใช้งานก่อนเปิดใช้งานปลั๊กอินนี้", - "license.cta": "คุณต้องการจะเปิดใช้ปลั๊กอินนี้ต่อหรือไม่?" + "license.cta": "คุณต้องการจะเปิดใช้ปลั๊กอินนี้ต่อหรือไม่?", + "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" } diff --git a/public/language/tr/admin/extend/plugins.json b/public/language/tr/admin/extend/plugins.json index 339920ea2e..369765898c 100644 --- a/public/language/tr/admin/extend/plugins.json +++ b/public/language/tr/admin/extend/plugins.json @@ -54,5 +54,6 @@ "license.title": "Eklenti Lisans Bilgisi", "license.intro": "%1 eklentisi, %2 altında lisanslanmıştır. Lütfen bu eklentiyi etkinleştirmeden önce lisans koşullarını okuyun ve anlayın.", - "license.cta": "Bu eklentiyi aktifleştirmeye devam etmek istiyor musunuz?" + "license.cta": "Bu eklentiyi aktifleştirmeye devam etmek istiyor musunuz?", + "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" } diff --git a/public/language/uk/admin/extend/plugins.json b/public/language/uk/admin/extend/plugins.json index 8a96a91f98..688ce342d0 100644 --- a/public/language/uk/admin/extend/plugins.json +++ b/public/language/uk/admin/extend/plugins.json @@ -54,5 +54,6 @@ "license.title": "Інформація про ліцензію плагіна", "license.intro": "Цей плагін %1 ліцензований відповідно до %2. Будь-ласка прочитайте та зрозумійте умови ліцензії перед активацією цього плагіну.", - "license.cta": "Ви бажаєте активувати цей плагін?" + "license.cta": "Ви бажаєте активувати цей плагін?", + "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" } diff --git a/public/language/vi/admin/extend/plugins.json b/public/language/vi/admin/extend/plugins.json index 6716e75d18..cee4c39dec 100644 --- a/public/language/vi/admin/extend/plugins.json +++ b/public/language/vi/admin/extend/plugins.json @@ -54,5 +54,6 @@ "license.title": "Thông Tin Cấp Phép Plugin", "license.intro": "Plugin %1 được cấp phép theo %2. Vui lòng đọc và hiểu các điều khoản cấp phép trước khi kích hoạt plugin này.", - "license.cta": "Bạn có muốn tiếp tục kích hoạt plugin này không?" + "license.cta": "Bạn có muốn tiếp tục kích hoạt plugin này không?", + "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" } diff --git a/public/language/zh-CN/admin/extend/plugins.json b/public/language/zh-CN/admin/extend/plugins.json index 2c81179baa..208022f280 100644 --- a/public/language/zh-CN/admin/extend/plugins.json +++ b/public/language/zh-CN/admin/extend/plugins.json @@ -54,5 +54,6 @@ "license.title": "插件许可证信息", "license.intro": "插件 %1 在 %2 下获得许可。请在激活此插件之前阅读,确认许可条款。", - "license.cta": "您希望继续使用此插件吗?" + "license.cta": "您希望继续使用此插件吗?", + "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" } diff --git a/public/language/zh-TW/admin/extend/plugins.json b/public/language/zh-TW/admin/extend/plugins.json index 281390c5b4..4636c18f45 100644 --- a/public/language/zh-TW/admin/extend/plugins.json +++ b/public/language/zh-TW/admin/extend/plugins.json @@ -54,5 +54,6 @@ "license.title": "外掛授權資料", "license.intro": "外掛 %1 在 %2 下獲得許可。請在啟用此插件之前閱讀,確認授權條款。", - "license.cta": "您希望繼續使用此外掛嗎?" + "license.cta": "您希望繼續使用此外掛嗎?", + "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" } From 456373c5327c989456725f5c027c22c5df382a60 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Wed, 11 Dec 2024 19:08:08 -0500 Subject: [PATCH 56/82] test: add missing field --- public/openapi/read/admin/extend/plugins.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/public/openapi/read/admin/extend/plugins.yaml b/public/openapi/read/admin/extend/plugins.yaml index 5c1148a06f..ff273480fe 100644 --- a/public/openapi/read/admin/extend/plugins.yaml +++ b/public/openapi/read/admin/extend/plugins.yaml @@ -42,6 +42,8 @@ get: type: boolean version: type: string + isStarterPlan: + type: boolean license: type: object properties: From 6b77441b9369b935f23ce89af96ad66f1cf74cf6 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 11 Dec 2024 19:09:56 -0500 Subject: [PATCH 57/82] fix(deps): update dependency nodebb-theme-peace to v2.2.29 (#12967) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- install/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/package.json b/install/package.json index 1a8c912167..b55eb1ffb1 100644 --- a/install/package.json +++ b/install/package.json @@ -109,7 +109,7 @@ "nodebb-rewards-essentials": "1.0.0", "nodebb-theme-harmony": "1.2.88", "nodebb-theme-lavender": "7.1.17", - "nodebb-theme-peace": "2.2.28", + "nodebb-theme-peace": "2.2.29", "nodebb-theme-persona": "13.3.59", "nodebb-widget-essentials": "7.0.31", "nodemailer": "6.9.16", From 27867d7735bd31949cb89a5191de7ee47ef07d12 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Wed, 11 Dec 2024 19:16:02 -0500 Subject: [PATCH 58/82] refactor: move to saas plugin --- public/language/en-GB/admin/extend/plugins.json | 3 +-- src/views/admin/extend/plugins.tpl | 8 -------- 2 files changed, 1 insertion(+), 10 deletions(-) diff --git a/public/language/en-GB/admin/extend/plugins.json b/public/language/en-GB/admin/extend/plugins.json index 4afc7e5564..4849f0cab2 100644 --- a/public/language/en-GB/admin/extend/plugins.json +++ b/public/language/en-GB/admin/extend/plugins.json @@ -54,6 +54,5 @@ "license.title": "Plugin License Information", "license.intro": "The plugin %1 is licensed under the %2. Please read and understand the license terms prior to activating this plugin.", - "license.cta": "Do you wish to continue with activating this plugin?", - "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" + "license.cta": "Do you wish to continue with activating this plugin?" } diff --git a/src/views/admin/extend/plugins.tpl b/src/views/admin/extend/plugins.tpl index 0c3c7620f6..c43e286411 100644 --- a/src/views/admin/extend/plugins.tpl +++ b/src/views/admin/extend/plugins.tpl @@ -1,11 +1,3 @@ -{{{ if isStarterPlan}}} -
    -
    - [[admin/extend/plugins:starter-plan-warning]] -
    -
    -{{{ end }}} -
    From 6b5b9a4e57622daba6cdd78f699dae0b79d0fa9a Mon Sep 17 00:00:00 2001 From: Misty Release Bot Date: Thu, 12 Dec 2024 00:16:33 +0000 Subject: [PATCH 59/82] chore(i18n): fallback strings for new resources: nodebb.admin-extend-plugins --- public/language/ar/admin/extend/plugins.json | 3 +-- public/language/bg/admin/extend/plugins.json | 3 +-- public/language/bn/admin/extend/plugins.json | 3 +-- public/language/cs/admin/extend/plugins.json | 3 +-- public/language/da/admin/extend/plugins.json | 3 +-- public/language/de/admin/extend/plugins.json | 3 +-- public/language/el/admin/extend/plugins.json | 3 +-- public/language/en-US/admin/extend/plugins.json | 3 +-- public/language/en-x-pirate/admin/extend/plugins.json | 3 +-- public/language/es/admin/extend/plugins.json | 3 +-- public/language/et/admin/extend/plugins.json | 3 +-- public/language/fa-IR/admin/extend/plugins.json | 3 +-- public/language/fi/admin/extend/plugins.json | 3 +-- public/language/fr/admin/extend/plugins.json | 3 +-- public/language/gl/admin/extend/plugins.json | 3 +-- public/language/he/admin/extend/plugins.json | 3 +-- public/language/hr/admin/extend/plugins.json | 3 +-- public/language/hu/admin/extend/plugins.json | 3 +-- public/language/hy/admin/extend/plugins.json | 3 +-- public/language/id/admin/extend/plugins.json | 3 +-- public/language/it/admin/extend/plugins.json | 3 +-- public/language/ja/admin/extend/plugins.json | 3 +-- public/language/ko/admin/extend/plugins.json | 3 +-- public/language/lt/admin/extend/plugins.json | 3 +-- public/language/lv/admin/extend/plugins.json | 3 +-- public/language/ms/admin/extend/plugins.json | 3 +-- public/language/nb/admin/extend/plugins.json | 3 +-- public/language/nl/admin/extend/plugins.json | 3 +-- public/language/nn-NO/admin/extend/plugins.json | 3 +-- public/language/pl/admin/extend/plugins.json | 3 +-- public/language/pt-BR/admin/extend/plugins.json | 3 +-- public/language/pt-PT/admin/extend/plugins.json | 3 +-- public/language/ro/admin/extend/plugins.json | 3 +-- public/language/ru/admin/extend/plugins.json | 3 +-- public/language/rw/admin/extend/plugins.json | 3 +-- public/language/sc/admin/extend/plugins.json | 3 +-- public/language/sk/admin/extend/plugins.json | 3 +-- public/language/sl/admin/extend/plugins.json | 3 +-- public/language/sq-AL/admin/extend/plugins.json | 3 +-- public/language/sr/admin/extend/plugins.json | 3 +-- public/language/sv/admin/extend/plugins.json | 3 +-- public/language/th/admin/extend/plugins.json | 3 +-- public/language/tr/admin/extend/plugins.json | 3 +-- public/language/uk/admin/extend/plugins.json | 3 +-- public/language/vi/admin/extend/plugins.json | 3 +-- public/language/zh-CN/admin/extend/plugins.json | 3 +-- public/language/zh-TW/admin/extend/plugins.json | 3 +-- 47 files changed, 47 insertions(+), 94 deletions(-) diff --git a/public/language/ar/admin/extend/plugins.json b/public/language/ar/admin/extend/plugins.json index 4e2d52ea1c..a7c687d31a 100644 --- a/public/language/ar/admin/extend/plugins.json +++ b/public/language/ar/admin/extend/plugins.json @@ -54,6 +54,5 @@ "license.title": "معلومات ترخيص الإضافة", "license.intro": "The plugin %1 is licensed under the %2. Please read and understand the license terms prior to activating this plugin.", - "license.cta": "هل ترغب بالاستمرار في تفعيل هذه الإضافة؟", - "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" + "license.cta": "هل ترغب بالاستمرار في تفعيل هذه الإضافة؟" } diff --git a/public/language/bg/admin/extend/plugins.json b/public/language/bg/admin/extend/plugins.json index 7c94594341..a01ec486a2 100644 --- a/public/language/bg/admin/extend/plugins.json +++ b/public/language/bg/admin/extend/plugins.json @@ -54,6 +54,5 @@ "license.title": "Информация за лиценза на добавката", "license.intro": "Добавката „%1“ използва лиценза „%2“. Моля, прочетете условията на лиценза и се уверете, че ги разбирате, преди да включите добавката.", - "license.cta": "Искате ли да продължите с включването на тази добавка?", - "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" + "license.cta": "Искате ли да продължите с включването на тази добавка?" } diff --git a/public/language/bn/admin/extend/plugins.json b/public/language/bn/admin/extend/plugins.json index 4afc7e5564..4849f0cab2 100644 --- a/public/language/bn/admin/extend/plugins.json +++ b/public/language/bn/admin/extend/plugins.json @@ -54,6 +54,5 @@ "license.title": "Plugin License Information", "license.intro": "The plugin %1 is licensed under the %2. Please read and understand the license terms prior to activating this plugin.", - "license.cta": "Do you wish to continue with activating this plugin?", - "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" + "license.cta": "Do you wish to continue with activating this plugin?" } diff --git a/public/language/cs/admin/extend/plugins.json b/public/language/cs/admin/extend/plugins.json index 144f528156..8606eb8709 100644 --- a/public/language/cs/admin/extend/plugins.json +++ b/public/language/cs/admin/extend/plugins.json @@ -54,6 +54,5 @@ "license.title": "Licenční informace o rozšíření", "license.intro": "Rozšíření %1 je licencováno pod %2. Pro aktivování tohoto rozšíření si přečtěte licenční podmínky.", - "license.cta": "Přejete si pokračovat v aktivování tohoto rozšíření?", - "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" + "license.cta": "Přejete si pokračovat v aktivování tohoto rozšíření?" } diff --git a/public/language/da/admin/extend/plugins.json b/public/language/da/admin/extend/plugins.json index 4afc7e5564..4849f0cab2 100644 --- a/public/language/da/admin/extend/plugins.json +++ b/public/language/da/admin/extend/plugins.json @@ -54,6 +54,5 @@ "license.title": "Plugin License Information", "license.intro": "The plugin %1 is licensed under the %2. Please read and understand the license terms prior to activating this plugin.", - "license.cta": "Do you wish to continue with activating this plugin?", - "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" + "license.cta": "Do you wish to continue with activating this plugin?" } diff --git a/public/language/de/admin/extend/plugins.json b/public/language/de/admin/extend/plugins.json index 07d7d1666c..b647be021f 100644 --- a/public/language/de/admin/extend/plugins.json +++ b/public/language/de/admin/extend/plugins.json @@ -54,6 +54,5 @@ "license.title": "Plugin-Lizenzinformation", "license.intro": "Das Plugin %1is unter der %2 lizenziert. Bitte ließ dir diese durch bevor du dieses Plugin aktivierst.", - "license.cta": "Willst du dieses Plugin wirklich aktivieren?", - "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" + "license.cta": "Willst du dieses Plugin wirklich aktivieren?" } diff --git a/public/language/el/admin/extend/plugins.json b/public/language/el/admin/extend/plugins.json index 4afc7e5564..4849f0cab2 100644 --- a/public/language/el/admin/extend/plugins.json +++ b/public/language/el/admin/extend/plugins.json @@ -54,6 +54,5 @@ "license.title": "Plugin License Information", "license.intro": "The plugin %1 is licensed under the %2. Please read and understand the license terms prior to activating this plugin.", - "license.cta": "Do you wish to continue with activating this plugin?", - "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" + "license.cta": "Do you wish to continue with activating this plugin?" } diff --git a/public/language/en-US/admin/extend/plugins.json b/public/language/en-US/admin/extend/plugins.json index 78cc50dcf6..ac2725ae5b 100644 --- a/public/language/en-US/admin/extend/plugins.json +++ b/public/language/en-US/admin/extend/plugins.json @@ -54,6 +54,5 @@ "license.title": "Plugin License Information", "license.intro": "The plugin %1 is licensed under the %2. Please read and understand the license terms prior to activating this plugin.", - "license.cta": "Do you wish to continue with activating this plugin?", - "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" + "license.cta": "Do you wish to continue with activating this plugin?" } diff --git a/public/language/en-x-pirate/admin/extend/plugins.json b/public/language/en-x-pirate/admin/extend/plugins.json index 4afc7e5564..4849f0cab2 100644 --- a/public/language/en-x-pirate/admin/extend/plugins.json +++ b/public/language/en-x-pirate/admin/extend/plugins.json @@ -54,6 +54,5 @@ "license.title": "Plugin License Information", "license.intro": "The plugin %1 is licensed under the %2. Please read and understand the license terms prior to activating this plugin.", - "license.cta": "Do you wish to continue with activating this plugin?", - "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" + "license.cta": "Do you wish to continue with activating this plugin?" } diff --git a/public/language/es/admin/extend/plugins.json b/public/language/es/admin/extend/plugins.json index 36cbb883e4..07e473b64c 100644 --- a/public/language/es/admin/extend/plugins.json +++ b/public/language/es/admin/extend/plugins.json @@ -54,6 +54,5 @@ "license.title": "Información de Licencia de Plugin", "license.intro": "El plugin %1 tiene licencia bajo %2. Por favor lea y comprenda los términos de licencia antes de activar este plugin.", - "license.cta": "¿Desea continuar con la activación de este plugin?", - "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" + "license.cta": "¿Desea continuar con la activación de este plugin?" } diff --git a/public/language/et/admin/extend/plugins.json b/public/language/et/admin/extend/plugins.json index 4afc7e5564..4849f0cab2 100644 --- a/public/language/et/admin/extend/plugins.json +++ b/public/language/et/admin/extend/plugins.json @@ -54,6 +54,5 @@ "license.title": "Plugin License Information", "license.intro": "The plugin %1 is licensed under the %2. Please read and understand the license terms prior to activating this plugin.", - "license.cta": "Do you wish to continue with activating this plugin?", - "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" + "license.cta": "Do you wish to continue with activating this plugin?" } diff --git a/public/language/fa-IR/admin/extend/plugins.json b/public/language/fa-IR/admin/extend/plugins.json index b48e66c7ac..71635abd71 100644 --- a/public/language/fa-IR/admin/extend/plugins.json +++ b/public/language/fa-IR/admin/extend/plugins.json @@ -54,6 +54,5 @@ "license.title": "Plugin License Information", "license.intro": "The plugin %1 is licensed under the %2. Please read and understand the license terms prior to activating this plugin.", - "license.cta": "Do you wish to continue with activating this plugin?", - "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" + "license.cta": "Do you wish to continue with activating this plugin?" } diff --git a/public/language/fi/admin/extend/plugins.json b/public/language/fi/admin/extend/plugins.json index bbbf9c3dab..b02ab26ca9 100644 --- a/public/language/fi/admin/extend/plugins.json +++ b/public/language/fi/admin/extend/plugins.json @@ -54,6 +54,5 @@ "license.title": "Plugin License Information", "license.intro": "The plugin %1 is licensed under the %2. Please read and understand the license terms prior to activating this plugin.", - "license.cta": "Do you wish to continue with activating this plugin?", - "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" + "license.cta": "Do you wish to continue with activating this plugin?" } diff --git a/public/language/fr/admin/extend/plugins.json b/public/language/fr/admin/extend/plugins.json index 42b0c23bea..ee8e3b5083 100644 --- a/public/language/fr/admin/extend/plugins.json +++ b/public/language/fr/admin/extend/plugins.json @@ -54,6 +54,5 @@ "license.title": "Information sur la licence du plugin", "license.intro": "Le plugin %1 est sous licence %2. Veuillez lire et comprendre les termes de la licence avant d’activer ce plugin.", - "license.cta": "Voulez-vous poursuivre en activant ce plugin ?", - "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" + "license.cta": "Voulez-vous poursuivre en activant ce plugin ?" } diff --git a/public/language/gl/admin/extend/plugins.json b/public/language/gl/admin/extend/plugins.json index 4afc7e5564..4849f0cab2 100644 --- a/public/language/gl/admin/extend/plugins.json +++ b/public/language/gl/admin/extend/plugins.json @@ -54,6 +54,5 @@ "license.title": "Plugin License Information", "license.intro": "The plugin %1 is licensed under the %2. Please read and understand the license terms prior to activating this plugin.", - "license.cta": "Do you wish to continue with activating this plugin?", - "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" + "license.cta": "Do you wish to continue with activating this plugin?" } diff --git a/public/language/he/admin/extend/plugins.json b/public/language/he/admin/extend/plugins.json index 0fe524a31b..07ce4ff67c 100644 --- a/public/language/he/admin/extend/plugins.json +++ b/public/language/he/admin/extend/plugins.json @@ -54,6 +54,5 @@ "license.title": "מידע רישיון התוסף", "license.intro": "תוסף %1 מורשה תחת %2. אנא קראו והבינו את תנאי הרשיון לפני הפעלת תוסף זה.", - "license.cta": "האם להמשיך בהפעלת התוסף הזה?", - "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" + "license.cta": "האם להמשיך בהפעלת התוסף הזה?" } diff --git a/public/language/hr/admin/extend/plugins.json b/public/language/hr/admin/extend/plugins.json index 10735917f3..6b2cc46efd 100644 --- a/public/language/hr/admin/extend/plugins.json +++ b/public/language/hr/admin/extend/plugins.json @@ -54,6 +54,5 @@ "license.title": "Plugin License Information", "license.intro": "The plugin %1 is licensed under the %2. Please read and understand the license terms prior to activating this plugin.", - "license.cta": "Do you wish to continue with activating this plugin?", - "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" + "license.cta": "Do you wish to continue with activating this plugin?" } diff --git a/public/language/hu/admin/extend/plugins.json b/public/language/hu/admin/extend/plugins.json index 54fc1c45bb..bf179197c5 100644 --- a/public/language/hu/admin/extend/plugins.json +++ b/public/language/hu/admin/extend/plugins.json @@ -54,6 +54,5 @@ "license.title": "Beépülő licencinformáció", "license.intro": "A %1 beépülő a %2 liszensz szerződést használja. Kérjük olvasd el és vedd tudomásul a szerződésben leírtakat, mielőtt használatba veszed a beépülőt.", - "license.cta": "Biztosan szeretnéd folytatni a beépülő aktiválását?", - "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" + "license.cta": "Biztosan szeretnéd folytatni a beépülő aktiválását?" } diff --git a/public/language/hy/admin/extend/plugins.json b/public/language/hy/admin/extend/plugins.json index 8868cf3c59..5d4041f118 100644 --- a/public/language/hy/admin/extend/plugins.json +++ b/public/language/hy/admin/extend/plugins.json @@ -54,6 +54,5 @@ "license.title": "Plugin-ի լիցենզիայի մասին տեղեկատվություն", "license.intro": "%1 հավելվածը լիցենզավորված է %2-ի ներքո: Խնդրում ենք կարդալ և հասկանալ լիցենզիայի պայմանները նախքան այս փլագինը ակտիվացնելը:", - "license.cta": "Ցանկանու՞մ եք շարունակել ակտիվացնել այս plugin-ը:", - "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" + "license.cta": "Ցանկանու՞մ եք շարունակել ակտիվացնել այս plugin-ը:" } diff --git a/public/language/id/admin/extend/plugins.json b/public/language/id/admin/extend/plugins.json index 4afc7e5564..4849f0cab2 100644 --- a/public/language/id/admin/extend/plugins.json +++ b/public/language/id/admin/extend/plugins.json @@ -54,6 +54,5 @@ "license.title": "Plugin License Information", "license.intro": "The plugin %1 is licensed under the %2. Please read and understand the license terms prior to activating this plugin.", - "license.cta": "Do you wish to continue with activating this plugin?", - "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" + "license.cta": "Do you wish to continue with activating this plugin?" } diff --git a/public/language/it/admin/extend/plugins.json b/public/language/it/admin/extend/plugins.json index 0bad82f592..1aa54ae856 100644 --- a/public/language/it/admin/extend/plugins.json +++ b/public/language/it/admin/extend/plugins.json @@ -54,6 +54,5 @@ "license.title": "Informazioni Licenza Plugin", "license.intro": "Il plugin %1 è concesso in licenza ai sensi della %2. Si prega di leggere e comprendere i termini della licenza prima di attivare questo plugin.", - "license.cta": "Vuoi continuare con l'attivazione di questo plugin?", - "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" + "license.cta": "Vuoi continuare con l'attivazione di questo plugin?" } diff --git a/public/language/ja/admin/extend/plugins.json b/public/language/ja/admin/extend/plugins.json index 85bf09d16f..01c36a0ecc 100644 --- a/public/language/ja/admin/extend/plugins.json +++ b/public/language/ja/admin/extend/plugins.json @@ -54,6 +54,5 @@ "license.title": "プラグインライセンス情報", "license.intro": "%1のプラグインは%2の下でライセンスされています。このプラグインを有効にする前にライセンス条項を熟読してください。", - "license.cta": "このプラグインを有効にし続けますか?", - "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" + "license.cta": "このプラグインを有効にし続けますか?" } diff --git a/public/language/ko/admin/extend/plugins.json b/public/language/ko/admin/extend/plugins.json index 237ed7e48c..2ae5ee71b8 100644 --- a/public/language/ko/admin/extend/plugins.json +++ b/public/language/ko/admin/extend/plugins.json @@ -54,6 +54,5 @@ "license.title": "플러그인 라이선스 정보", "license.intro": "플러그인 %1은 %2에 따라 라이선스가 부여됩니다. 이 플러그인을 활성화하기 전에 라이선스 약관을 읽고 이해하세요.", - "license.cta": "이 플러그인을 활성화하시겠습니까?", - "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" + "license.cta": "이 플러그인을 활성화하시겠습니까?" } diff --git a/public/language/lt/admin/extend/plugins.json b/public/language/lt/admin/extend/plugins.json index 4afc7e5564..4849f0cab2 100644 --- a/public/language/lt/admin/extend/plugins.json +++ b/public/language/lt/admin/extend/plugins.json @@ -54,6 +54,5 @@ "license.title": "Plugin License Information", "license.intro": "The plugin %1 is licensed under the %2. Please read and understand the license terms prior to activating this plugin.", - "license.cta": "Do you wish to continue with activating this plugin?", - "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" + "license.cta": "Do you wish to continue with activating this plugin?" } diff --git a/public/language/lv/admin/extend/plugins.json b/public/language/lv/admin/extend/plugins.json index ba5ca03efd..533da7736e 100644 --- a/public/language/lv/admin/extend/plugins.json +++ b/public/language/lv/admin/extend/plugins.json @@ -54,6 +54,5 @@ "license.title": "Spraudņa licences informācija", "license.intro": "Spraudnis %1 ir licencēts pēc %2. Pirms spraudņa aktivizēšanas, lūdzu, izlasīt un izprast licences noteikumus.", - "license.cta": "Vai vēlies turpināt aktivizēt spraudni?", - "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" + "license.cta": "Vai vēlies turpināt aktivizēt spraudni?" } diff --git a/public/language/ms/admin/extend/plugins.json b/public/language/ms/admin/extend/plugins.json index 4afc7e5564..4849f0cab2 100644 --- a/public/language/ms/admin/extend/plugins.json +++ b/public/language/ms/admin/extend/plugins.json @@ -54,6 +54,5 @@ "license.title": "Plugin License Information", "license.intro": "The plugin %1 is licensed under the %2. Please read and understand the license terms prior to activating this plugin.", - "license.cta": "Do you wish to continue with activating this plugin?", - "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" + "license.cta": "Do you wish to continue with activating this plugin?" } diff --git a/public/language/nb/admin/extend/plugins.json b/public/language/nb/admin/extend/plugins.json index 4eec02141b..1af0a071fc 100644 --- a/public/language/nb/admin/extend/plugins.json +++ b/public/language/nb/admin/extend/plugins.json @@ -54,6 +54,5 @@ "license.title": "Informasjon om plugin-lisens", "license.intro": "Plugin-en %1 er lisensiert under %2. Les og forstå lisensvilkårene før du aktiverer denne plugin-en.", - "license.cta": "Vil du fortsette med aktivering av denne plugin-en?", - "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" + "license.cta": "Vil du fortsette med aktivering av denne plugin-en?" } diff --git a/public/language/nl/admin/extend/plugins.json b/public/language/nl/admin/extend/plugins.json index 304dc5b435..4c6f3d306f 100644 --- a/public/language/nl/admin/extend/plugins.json +++ b/public/language/nl/admin/extend/plugins.json @@ -54,6 +54,5 @@ "license.title": "Plugin License Information", "license.intro": "The plugin %1 is licensed under the %2. Please read and understand the license terms prior to activating this plugin.", - "license.cta": "Do you wish to continue with activating this plugin?", - "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" + "license.cta": "Do you wish to continue with activating this plugin?" } diff --git a/public/language/nn-NO/admin/extend/plugins.json b/public/language/nn-NO/admin/extend/plugins.json index 93c31d0f8a..a3f28227e7 100644 --- a/public/language/nn-NO/admin/extend/plugins.json +++ b/public/language/nn-NO/admin/extend/plugins.json @@ -54,6 +54,5 @@ "license.title": "Lisens", "license.intro": "Les lisensavtalen før du installerer eller brukar denne pluginen.", - "license.cta": "Godta og fortset", - "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" + "license.cta": "Godta og fortset" } diff --git a/public/language/pl/admin/extend/plugins.json b/public/language/pl/admin/extend/plugins.json index abb3c7b09d..8dcb7200d3 100644 --- a/public/language/pl/admin/extend/plugins.json +++ b/public/language/pl/admin/extend/plugins.json @@ -54,6 +54,5 @@ "license.title": "Informacje o licencji wtyczki", "license.intro": "Wtyczka %1 jest licencjonowana według %2. Zapoznaj się z warunkami licencji przed aktywacją tej wtyczki.", - "license.cta": "Czy chcesz kontynuować aktywację tej wtyczki?", - "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" + "license.cta": "Czy chcesz kontynuować aktywację tej wtyczki?" } diff --git a/public/language/pt-BR/admin/extend/plugins.json b/public/language/pt-BR/admin/extend/plugins.json index f80ce9219e..021c31393b 100644 --- a/public/language/pt-BR/admin/extend/plugins.json +++ b/public/language/pt-BR/admin/extend/plugins.json @@ -54,6 +54,5 @@ "license.title": "Informação sobre a Licença do Plugin", "license.intro": "O plugin %1 está licenciado sob a %2. Por gentileza leia e entenda a licença antes de ativar este plugin.", - "license.cta": "Deseja continuar com a ativação deste plugin?", - "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" + "license.cta": "Deseja continuar com a ativação deste plugin?" } diff --git a/public/language/pt-PT/admin/extend/plugins.json b/public/language/pt-PT/admin/extend/plugins.json index 8f31563318..fee767af6a 100644 --- a/public/language/pt-PT/admin/extend/plugins.json +++ b/public/language/pt-PT/admin/extend/plugins.json @@ -54,6 +54,5 @@ "license.title": "Informação sobre a licença do plugin", "license.intro": "O plug-in %1 está licenciado sob %2. Por favor leia e compreenda os termos da licença antes de ativar este plugin.", - "license.cta": "Tens a certeza que queres ativar este plugin?", - "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" + "license.cta": "Tens a certeza que queres ativar este plugin?" } diff --git a/public/language/ro/admin/extend/plugins.json b/public/language/ro/admin/extend/plugins.json index 4afc7e5564..4849f0cab2 100644 --- a/public/language/ro/admin/extend/plugins.json +++ b/public/language/ro/admin/extend/plugins.json @@ -54,6 +54,5 @@ "license.title": "Plugin License Information", "license.intro": "The plugin %1 is licensed under the %2. Please read and understand the license terms prior to activating this plugin.", - "license.cta": "Do you wish to continue with activating this plugin?", - "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" + "license.cta": "Do you wish to continue with activating this plugin?" } diff --git a/public/language/ru/admin/extend/plugins.json b/public/language/ru/admin/extend/plugins.json index c938d1514f..5af4b8b4c0 100644 --- a/public/language/ru/admin/extend/plugins.json +++ b/public/language/ru/admin/extend/plugins.json @@ -54,6 +54,5 @@ "license.title": "Сведения о лицензии плагина", "license.intro": "Плагин %1 распространяется под лицензией %2. Пожалуйста, внимательно прочтите условия лицензии перед активацией плагина.", - "license.cta": "Вы хотите продолжить и активировать плагин?", - "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" + "license.cta": "Вы хотите продолжить и активировать плагин?" } diff --git a/public/language/rw/admin/extend/plugins.json b/public/language/rw/admin/extend/plugins.json index 4afc7e5564..4849f0cab2 100644 --- a/public/language/rw/admin/extend/plugins.json +++ b/public/language/rw/admin/extend/plugins.json @@ -54,6 +54,5 @@ "license.title": "Plugin License Information", "license.intro": "The plugin %1 is licensed under the %2. Please read and understand the license terms prior to activating this plugin.", - "license.cta": "Do you wish to continue with activating this plugin?", - "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" + "license.cta": "Do you wish to continue with activating this plugin?" } diff --git a/public/language/sc/admin/extend/plugins.json b/public/language/sc/admin/extend/plugins.json index 4afc7e5564..4849f0cab2 100644 --- a/public/language/sc/admin/extend/plugins.json +++ b/public/language/sc/admin/extend/plugins.json @@ -54,6 +54,5 @@ "license.title": "Plugin License Information", "license.intro": "The plugin %1 is licensed under the %2. Please read and understand the license terms prior to activating this plugin.", - "license.cta": "Do you wish to continue with activating this plugin?", - "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" + "license.cta": "Do you wish to continue with activating this plugin?" } diff --git a/public/language/sk/admin/extend/plugins.json b/public/language/sk/admin/extend/plugins.json index 8b5635ca57..5213bfa197 100644 --- a/public/language/sk/admin/extend/plugins.json +++ b/public/language/sk/admin/extend/plugins.json @@ -54,6 +54,5 @@ "license.title": "Licenčná informácie o rozšírení", "license.intro": "Rozšírenie %1 je licencované pod %2. Pre aktivovanie tohto rozšírenia si prečítajte licenčné podmienky.", - "license.cta": "Želáte si pokračovať v aktivovaní tohto rozšírenia?", - "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" + "license.cta": "Želáte si pokračovať v aktivovaní tohto rozšírenia?" } diff --git a/public/language/sl/admin/extend/plugins.json b/public/language/sl/admin/extend/plugins.json index 63a9b69e87..bab65936f3 100644 --- a/public/language/sl/admin/extend/plugins.json +++ b/public/language/sl/admin/extend/plugins.json @@ -54,6 +54,5 @@ "license.title": "Informacija o licenci vtičnika", "license.intro": "Vtičnik %1 je licenciran pod %2. Preden aktivirate ta vtičnik, preberite in razumite licenčne pogoje.", - "license.cta": "Ali želite nadaljevati z aktiviranjem tega vtičnika?", - "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" + "license.cta": "Ali želite nadaljevati z aktiviranjem tega vtičnika?" } diff --git a/public/language/sq-AL/admin/extend/plugins.json b/public/language/sq-AL/admin/extend/plugins.json index 4afc7e5564..4849f0cab2 100644 --- a/public/language/sq-AL/admin/extend/plugins.json +++ b/public/language/sq-AL/admin/extend/plugins.json @@ -54,6 +54,5 @@ "license.title": "Plugin License Information", "license.intro": "The plugin %1 is licensed under the %2. Please read and understand the license terms prior to activating this plugin.", - "license.cta": "Do you wish to continue with activating this plugin?", - "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" + "license.cta": "Do you wish to continue with activating this plugin?" } diff --git a/public/language/sr/admin/extend/plugins.json b/public/language/sr/admin/extend/plugins.json index 4afc7e5564..4849f0cab2 100644 --- a/public/language/sr/admin/extend/plugins.json +++ b/public/language/sr/admin/extend/plugins.json @@ -54,6 +54,5 @@ "license.title": "Plugin License Information", "license.intro": "The plugin %1 is licensed under the %2. Please read and understand the license terms prior to activating this plugin.", - "license.cta": "Do you wish to continue with activating this plugin?", - "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" + "license.cta": "Do you wish to continue with activating this plugin?" } diff --git a/public/language/sv/admin/extend/plugins.json b/public/language/sv/admin/extend/plugins.json index 4afc7e5564..4849f0cab2 100644 --- a/public/language/sv/admin/extend/plugins.json +++ b/public/language/sv/admin/extend/plugins.json @@ -54,6 +54,5 @@ "license.title": "Plugin License Information", "license.intro": "The plugin %1 is licensed under the %2. Please read and understand the license terms prior to activating this plugin.", - "license.cta": "Do you wish to continue with activating this plugin?", - "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" + "license.cta": "Do you wish to continue with activating this plugin?" } diff --git a/public/language/th/admin/extend/plugins.json b/public/language/th/admin/extend/plugins.json index e847e1f21d..6f04a90ae7 100644 --- a/public/language/th/admin/extend/plugins.json +++ b/public/language/th/admin/extend/plugins.json @@ -54,6 +54,5 @@ "license.title": "ข้อมูลลิขสิทธิ์ปลั๊กอิน", "license.intro": "ปลั๊กอิน %1ได้รับอนุญาตภายใต้ %2 โปรดอ่านและทำความเข้าใจข้อกำหนดสิทธิ์การใช้งานก่อนเปิดใช้งานปลั๊กอินนี้", - "license.cta": "คุณต้องการจะเปิดใช้ปลั๊กอินนี้ต่อหรือไม่?", - "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" + "license.cta": "คุณต้องการจะเปิดใช้ปลั๊กอินนี้ต่อหรือไม่?" } diff --git a/public/language/tr/admin/extend/plugins.json b/public/language/tr/admin/extend/plugins.json index 369765898c..339920ea2e 100644 --- a/public/language/tr/admin/extend/plugins.json +++ b/public/language/tr/admin/extend/plugins.json @@ -54,6 +54,5 @@ "license.title": "Eklenti Lisans Bilgisi", "license.intro": "%1 eklentisi, %2 altında lisanslanmıştır. Lütfen bu eklentiyi etkinleştirmeden önce lisans koşullarını okuyun ve anlayın.", - "license.cta": "Bu eklentiyi aktifleştirmeye devam etmek istiyor musunuz?", - "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" + "license.cta": "Bu eklentiyi aktifleştirmeye devam etmek istiyor musunuz?" } diff --git a/public/language/uk/admin/extend/plugins.json b/public/language/uk/admin/extend/plugins.json index 688ce342d0..8a96a91f98 100644 --- a/public/language/uk/admin/extend/plugins.json +++ b/public/language/uk/admin/extend/plugins.json @@ -54,6 +54,5 @@ "license.title": "Інформація про ліцензію плагіна", "license.intro": "Цей плагін %1 ліцензований відповідно до %2. Будь-ласка прочитайте та зрозумійте умови ліцензії перед активацією цього плагіну.", - "license.cta": "Ви бажаєте активувати цей плагін?", - "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" + "license.cta": "Ви бажаєте активувати цей плагін?" } diff --git a/public/language/vi/admin/extend/plugins.json b/public/language/vi/admin/extend/plugins.json index cee4c39dec..6716e75d18 100644 --- a/public/language/vi/admin/extend/plugins.json +++ b/public/language/vi/admin/extend/plugins.json @@ -54,6 +54,5 @@ "license.title": "Thông Tin Cấp Phép Plugin", "license.intro": "Plugin %1 được cấp phép theo %2. Vui lòng đọc và hiểu các điều khoản cấp phép trước khi kích hoạt plugin này.", - "license.cta": "Bạn có muốn tiếp tục kích hoạt plugin này không?", - "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" + "license.cta": "Bạn có muốn tiếp tục kích hoạt plugin này không?" } diff --git a/public/language/zh-CN/admin/extend/plugins.json b/public/language/zh-CN/admin/extend/plugins.json index 208022f280..2c81179baa 100644 --- a/public/language/zh-CN/admin/extend/plugins.json +++ b/public/language/zh-CN/admin/extend/plugins.json @@ -54,6 +54,5 @@ "license.title": "插件许可证信息", "license.intro": "插件 %1 在 %2 下获得许可。请在激活此插件之前阅读,确认许可条款。", - "license.cta": "您希望继续使用此插件吗?", - "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" + "license.cta": "您希望继续使用此插件吗?" } diff --git a/public/language/zh-TW/admin/extend/plugins.json b/public/language/zh-TW/admin/extend/plugins.json index 4636c18f45..281390c5b4 100644 --- a/public/language/zh-TW/admin/extend/plugins.json +++ b/public/language/zh-TW/admin/extend/plugins.json @@ -54,6 +54,5 @@ "license.title": "外掛授權資料", "license.intro": "外掛 %1 在 %2 下獲得許可。請在啟用此插件之前閱讀,確認授權條款。", - "license.cta": "您希望繼續使用此外掛嗎?", - "starter-plan-warning": "Plugins page is disabled on \"Starter\" plans, if you wish to upgrade your plan please contact us at support@nodebb.org" + "license.cta": "您希望繼續使用此外掛嗎?" } From 68f87ccf6ef9dd7f6fc92e2a4470570e5f9f76c7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Wed, 11 Dec 2024 19:18:38 -0500 Subject: [PATCH 60/82] test: fix spec --- public/openapi/read/admin/extend/plugins.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/public/openapi/read/admin/extend/plugins.yaml b/public/openapi/read/admin/extend/plugins.yaml index ff273480fe..2dd8b0cb6c 100644 --- a/public/openapi/read/admin/extend/plugins.yaml +++ b/public/openapi/read/admin/extend/plugins.yaml @@ -42,8 +42,6 @@ get: type: boolean version: type: string - isStarterPlan: - type: boolean license: type: object properties: @@ -356,4 +354,6 @@ get: type: number version: type: string + isStarterPlan: + type: boolean - $ref: ../../../components/schemas/CommonProps.yaml#/CommonProps \ No newline at end of file From 3d33c5cb398bbbb4f4c643a80f01f8c9e3137f81 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 11 Dec 2024 19:31:32 -0500 Subject: [PATCH 61/82] fix(deps): update dependency mongodb to v6.12.0 (#12966) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- install/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/package.json b/install/package.json index b55eb1ffb1..c1cbdbfbd8 100644 --- a/install/package.json +++ b/install/package.json @@ -92,7 +92,7 @@ "lru-cache": "10.4.3", "mime": "3.0.0", "mkdirp": "3.0.1", - "mongodb": "6.11.0", + "mongodb": "6.12.0", "morgan": "1.10.0", "mousetrap": "1.6.5", "multiparty": "4.2.3", From 0913c307fbc1e1cb87b4afb9313ff7613c2765f8 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 11 Dec 2024 19:32:32 -0500 Subject: [PATCH 62/82] fix(deps): update dependency cron to v3.3.0 (#12965) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- install/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/package.json b/install/package.json index c1cbdbfbd8..419907eeaa 100644 --- a/install/package.json +++ b/install/package.json @@ -62,7 +62,7 @@ "connect-pg-simple": "10.0.0", "connect-redis": "8.0.1", "cookie-parser": "1.4.7", - "cron": "3.2.1", + "cron": "3.3.0", "cropperjs": "1.6.2", "csrf-sync": "4.0.3", "daemon": "1.1.0", From 3a8ae12c0355a08be244d013b8f2dc9dc124393a Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 12 Dec 2024 09:13:32 -0500 Subject: [PATCH 63/82] fix(deps): update dependency jsesc to v3.1.0 (#12968) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- install/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/package.json b/install/package.json index 419907eeaa..d215f925a4 100644 --- a/install/package.json +++ b/install/package.json @@ -84,7 +84,7 @@ "jquery-form": "4.3.0", "jquery-serializeobject": "1.0.0", "jquery-ui": "1.14.1", - "jsesc": "3.0.2", + "jsesc": "3.1.0", "json2csv": "5.0.7", "jsonwebtoken": "9.0.2", "lodash": "4.17.21", From b8a0a502147f24bc8d2e2d1e9504fc6f85163282 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 12 Dec 2024 09:26:16 -0500 Subject: [PATCH 64/82] fix(deps): update dependency cron to v3.3.1 (#12969) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- install/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/package.json b/install/package.json index d215f925a4..64e0de2c9a 100644 --- a/install/package.json +++ b/install/package.json @@ -62,7 +62,7 @@ "connect-pg-simple": "10.0.0", "connect-redis": "8.0.1", "cookie-parser": "1.4.7", - "cron": "3.3.0", + "cron": "3.3.1", "cropperjs": "1.6.2", "csrf-sync": "4.0.3", "daemon": "1.1.0", From 645bddb8f1f5fabbfc0b49d67465f1e8833ed281 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Thu, 12 Dec 2024 09:26:26 -0500 Subject: [PATCH 65/82] fix(deps): update dependency nodebb-theme-peace to v2.2.30 (#12970) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- install/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/package.json b/install/package.json index 64e0de2c9a..37d9021bc9 100644 --- a/install/package.json +++ b/install/package.json @@ -109,7 +109,7 @@ "nodebb-rewards-essentials": "1.0.0", "nodebb-theme-harmony": "1.2.88", "nodebb-theme-lavender": "7.1.17", - "nodebb-theme-peace": "2.2.29", + "nodebb-theme-peace": "2.2.30", "nodebb-theme-persona": "13.3.59", "nodebb-widget-essentials": "7.0.31", "nodemailer": "6.9.16", From 03b9df082b23233499d1f65d63dec048fe88b0d4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Thu, 12 Dec 2024 10:16:29 -0500 Subject: [PATCH 66/82] chore: up harmony --- install/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/package.json b/install/package.json index c306ac23e0..198ab9604f 100644 --- a/install/package.json +++ b/install/package.json @@ -107,7 +107,7 @@ "nodebb-plugin-ntfy": "1.7.7", "nodebb-plugin-spam-be-gone": "2.3.0", "nodebb-rewards-essentials": "1.0.0", - "nodebb-theme-harmony": "1.2.88", + "nodebb-theme-harmony": "1.2.89", "nodebb-theme-lavender": "7.1.17", "nodebb-theme-peace": "2.2.30", "nodebb-theme-persona": "13.3.59", From 5045a1ae4bf5b8d99414a07b973bf4d706c1306a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Thu, 12 Dec 2024 10:35:07 -0500 Subject: [PATCH 67/82] chore: up harmony --- install/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/package.json b/install/package.json index 198ab9604f..2aefe9966a 100644 --- a/install/package.json +++ b/install/package.json @@ -107,7 +107,7 @@ "nodebb-plugin-ntfy": "1.7.7", "nodebb-plugin-spam-be-gone": "2.3.0", "nodebb-rewards-essentials": "1.0.0", - "nodebb-theme-harmony": "1.2.89", + "nodebb-theme-harmony": "1.2.90", "nodebb-theme-lavender": "7.1.17", "nodebb-theme-peace": "2.2.30", "nodebb-theme-persona": "13.3.59", From 8883eaf7bd852e722cdf3af70f744b2be2253f70 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Thu, 12 Dec 2024 10:43:29 -0500 Subject: [PATCH 68/82] fix: chat header line-height --- src/views/partials/chats/message-window.tpl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/views/partials/chats/message-window.tpl b/src/views/partials/chats/message-window.tpl index 4f5e99c9f1..446ffb0bc6 100644 --- a/src/views/partials/chats/message-window.tpl +++ b/src/views/partials/chats/message-window.tpl @@ -14,7 +14,7 @@ {{{ else }}}
    -
    +
    {{{ if ./roomName }}} {roomName}{{{ else }}}{./chatWithMessage}{{{ end}}}
    From a79426f9e5945639521e30745b1e31b613cf030b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Fri, 13 Dec 2024 08:20:05 -0500 Subject: [PATCH 69/82] chore: up themes --- install/package.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/install/package.json b/install/package.json index 2aefe9966a..0885090fba 100644 --- a/install/package.json +++ b/install/package.json @@ -109,8 +109,8 @@ "nodebb-rewards-essentials": "1.0.0", "nodebb-theme-harmony": "1.2.90", "nodebb-theme-lavender": "7.1.17", - "nodebb-theme-peace": "2.2.30", - "nodebb-theme-persona": "13.3.59", + "nodebb-theme-peace": "2.2.31", + "nodebb-theme-persona": "13.3.60", "nodebb-widget-essentials": "7.0.31", "nodemailer": "6.9.16", "nprogress": "0.2.0", From 0f5e1457f097a56c6e335855c49784eefe93f11c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Fri, 13 Dec 2024 10:55:47 -0500 Subject: [PATCH 70/82] chore: up peace, refactor widgets --- install/package.json | 2 +- public/src/widgets.js | 5 +---- 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/install/package.json b/install/package.json index 0885090fba..4e008050c3 100644 --- a/install/package.json +++ b/install/package.json @@ -109,7 +109,7 @@ "nodebb-rewards-essentials": "1.0.0", "nodebb-theme-harmony": "1.2.90", "nodebb-theme-lavender": "7.1.17", - "nodebb-theme-peace": "2.2.31", + "nodebb-theme-peace": "2.2.32", "nodebb-theme-persona": "13.3.60", "nodebb-widget-essentials": "7.0.31", "nodemailer": "6.9.16", diff --git a/public/src/widgets.js b/public/src/widgets.js index 6f4b030b4c..49ed3c67b7 100644 --- a/public/src/widgets.js +++ b/public/src/widgets.js @@ -14,10 +14,7 @@ module.exports.render = function (template) { return; } - let html = ''; - widgetsAtLocation.forEach(function (widget) { - html += widget.html; - }); + const html = widgetsAtLocation.map(widget => widget.html).join(''); if (!html) { return; } From fb42c4c53ea37d20bfcd8a1c6d05986c8f0fecab Mon Sep 17 00:00:00 2001 From: Misty Release Bot Date: Sat, 14 Dec 2024 09:18:02 +0000 Subject: [PATCH 71/82] Latest translations and fallbacks --- public/language/vi/admin/extend/plugins.json | 2 +- public/language/vi/admin/manage/groups.json | 2 +- public/language/vi/admin/manage/users.json | 4 ++-- public/language/vi/admin/settings/uploads.json | 2 +- public/language/vi/error.json | 4 ++-- public/language/vi/topic.json | 2 +- public/language/vi/users.json | 2 +- 7 files changed, 9 insertions(+), 9 deletions(-) diff --git a/public/language/vi/admin/extend/plugins.json b/public/language/vi/admin/extend/plugins.json index 6716e75d18..c459c4e85d 100644 --- a/public/language/vi/admin/extend/plugins.json +++ b/public/language/vi/admin/extend/plugins.json @@ -48,7 +48,7 @@ "alert.suggest-error": "

    NodeBB không thể tiếp cận trình quản lý gói, hãy tiến hành cài đặt phiên bản mới nhất?

    Máy chủ trả về (%1): %2
    ", "alert.package-manager-unreachable": "

    NodeBB không thể tiếp cận trình quản lý gói, bản nâng cấp không được đề xuất vào lúc này.

    ", "alert.incompatible": "

    Phiên bản NodeBB (v%1) của bạn chỉ được xóa để nâng cấp lên v%2 của plugin này. Vui lòng cập nhật NodeBB của bạn nếu muốn cài đặt phiên bản mới hơn của plugin này.

    ", - "alert.possibly-incompatible": "

    Không Có Thông Tin Tương Thích

    Plugin này không đưa ra một phiên bản cụ thể để cài đặt với phiên bản NodeBB của bạn. Không đảm bảo khả năng tương thích hoàn toàn và có thể khiến NodeBB của bạn không hoạt động bình thường.

    Trường hợp NodeBB không thể hoạt động đúng:

    $ ./nodebb reset plugin=\"%1\"

    Tiếp tục cài đặt phiên bản mới nhất của plugin này?

    ", + "alert.possibly-incompatible": "

    Không Có Thông Tin Tương Thích

    Plugin này ghi phiên bản cụ thể để cài đặt với phiên bản NodeBB của bạn. Không đảm bảo khả năng tương thích hoàn toàn và có thể làm NodeBB của bạn không chạy bình thường.

    Trường hợp NodeBB không hoạt động đúng:

    $ ./nodebb reset plugin=\"%1\"

    Tiếp tục cài đặt phiên bản mới nhất của plugin này?

    ", "alert.reorder": "Các Plugin Đã Được Sắp Xếp Lại", "alert.reorder-success": "Hãy dựng lại và chạy lại NodeBB của bạn để hoàn tất quá trình.", diff --git a/public/language/vi/admin/manage/groups.json b/public/language/vi/admin/manage/groups.json index ad64ad7053..bd34fa65ff 100644 --- a/public/language/vi/admin/manage/groups.json +++ b/public/language/vi/admin/manage/groups.json @@ -44,6 +44,6 @@ "control-panel": "Bảng Điều Khiển Nhóm", "revert": "Hoàn Tác", - "edit.no-users-found": "Không Tìm Thấy Người Dùng", + "edit.no-users-found": "Không Có Ai", "edit.confirm-remove-user": "Bạn có chắc chắn muốn xóa người dùng này?" } \ No newline at end of file diff --git a/public/language/vi/admin/manage/users.json b/public/language/vi/admin/manage/users.json index 9dccca1bc8..dc870f4693 100644 --- a/public/language/vi/admin/manage/users.json +++ b/public/language/vi/admin/manage/users.json @@ -47,7 +47,7 @@ "search.email-placeholder": "Nhập email để tìm kiếm", "search.ip": "Bởi Địa Chỉ IP", "search.ip-placeholder": "Nhập Địa Chỉ IP để tìm kiếm", - "search.not-found": "Không tìm thấy người dùng", + "search.not-found": "Không có ai!", "inactive.3-months": "3 tháng", "inactive.6-months": "6 tháng", @@ -120,7 +120,7 @@ "alerts.prompt-email": "Thư điện tử:", "alerts.email-sent-to": "Email mời đã được gửi đến %1", - "alerts.x-users-found": "Tìm được %1 người dùng (%2 giây)", + "alerts.x-users-found": "Tìm được %1 người, (%2 giây)", "alerts.select-a-single-user-to-change-email": "Chọn một người dùng để thay đổi email", "export": "Xuất", "export-users-fields-title": "Chọn trường CSV", diff --git a/public/language/vi/admin/settings/uploads.json b/public/language/vi/admin/settings/uploads.json index de6c056e17..f89c13a955 100644 --- a/public/language/vi/admin/settings/uploads.json +++ b/public/language/vi/admin/settings/uploads.json @@ -12,7 +12,7 @@ "resize-image-width-threshold-help": "(tính bằng pixel, mặc định: 2000 pixel, đặt thành 0 để tắt)", "resize-image-width": "Giảm kích cỡ ảnh xuống đến chiều rộng đã đặt", "resize-image-width-help": "(tính bằng pixel, mặc định: 760 pixel, đặt thành 0 để tắt)", - "resize-image-keep-original": "Keep original image after resize", + "resize-image-keep-original": "Giữ ảnh gốc sau khi đổi kích thước", "resize-image-quality": "Chất lượng để sử dụng khi thay đổi kích thước hình ảnh", "resize-image-quality-help": "Dùng cài đặt chất lượng thấp hơn để giảm kích cỡ tệp ảnh đã thay đổi kích cỡ.", "max-file-size": "Kích Cỡ Tệp Tối Đa (KiB)", diff --git a/public/language/vi/error.json b/public/language/vi/error.json index 74ef8481f3..727b970d54 100644 --- a/public/language/vi/error.json +++ b/public/language/vi/error.json @@ -43,7 +43,7 @@ "email-confirm-failed": "Chúng tôi không thể xác nhận email của bạn, hãy thử lại sau.", "confirm-email-already-sent": "Email xác nhận đã được gửi, vui lòng đợi %1 phút để gửi email khác.", "confirm-email-expired": "Email xác nhận đã hết hạn", - "sendmail-not-found": "Không thể tìm thấy tệp thực thi sendmail, vui lòng đảm bảo rằng nó được cài đặt và thực thi bởi người dùng chạy NodeBB.", + "sendmail-not-found": "Không tìm thấy tệp thực thi sendmail, vui lòng đảm bảo rằng nó được cài đặt và thực thi bởi người dùng chạy NodeBB.", "digest-not-enabled": "Người dùng này chưa bật thông báo hoặc mặc định hệ thống không được cấu hình để gửi thông báo", "username-too-short": "Tên đăng nhập quá ngắn", "username-too-long": "Tên đăng nhập quá dài", @@ -210,7 +210,7 @@ "sso-registration-disabled": "Đăng ký đã bị vô hiệu hóa đối với tài khoản %1, vui lòng đăng ký bằng địa chỉ email trước", "sso-multiple-association": "Bạn không thể liên kết nhiều tài khoản từ dịch vụ này đến tài khoản NodeBB của bạn. Vui lòng tách tài khoản hiện tại của bạn và thử lại.", "invite-maximum-met": "Bạn đã mời số lượng người tối đa (%1 trên %2)", - "no-session-found": "Không tìm thấy phiên đăng nhập!", + "no-session-found": "Không có phiên đăng nhập!", "not-in-room": "Người dùng không có trong phòng", "cant-kick-self": "Bạn không thể tự loại mình khỏi nhóm", "no-users-selected": "Không chọn người nào", diff --git a/public/language/vi/topic.json b/public/language/vi/topic.json index a0da02b226..b2419eea64 100644 --- a/public/language/vi/topic.json +++ b/public/language/vi/topic.json @@ -2,7 +2,7 @@ "topic": "Chủ đề", "title": "Tiêu đề", "no-topics-found": "Không tìm thấy chủ đề nào!", - "no-posts-found": "Không tìm thấy bài gửi nào", + "no-posts-found": "Không thấy bài nào!", "post-is-deleted": "Bài gửi này đã bị xóa!", "topic-is-deleted": "Chủ đề này đã bị xóa!", "profile": "Hồ sơ", diff --git a/public/language/vi/users.json b/public/language/vi/users.json index a6f23ee6bd..126a6e7d8d 100644 --- a/public/language/vi/users.json +++ b/public/language/vi/users.json @@ -22,5 +22,5 @@ "unread-topics": "Chủ Đề Chưa Đọc", "categories": "Danh mục", "tags": "Thẻ", - "no-users-found": "Không tìm được ai!" + "no-users-found": "Không có ai!" } \ No newline at end of file From abcb200fda1e757dd74ebaac0428ed208eb8d96c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Mon, 16 Dec 2024 10:52:57 -0500 Subject: [PATCH 72/82] refactor: closes #12979, show plugin id/version on semver error --- src/plugins/index.js | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/plugins/index.js b/src/plugins/index.js index 37980dd55c..47676a5197 100644 --- a/src/plugins/index.js +++ b/src/plugins/index.js @@ -235,7 +235,12 @@ Plugins.normalise = async function (apiReturn) { } else { pluginMap[plugin.id].latest = pluginMap[plugin.id].latest || plugin.version; } - pluginMap[plugin.id].outdated = semver.gt(pluginMap[plugin.id].latest, pluginMap[plugin.id].version); + try { + pluginMap[plugin.id].outdated = semver.gt(pluginMap[plugin.id].latest, pluginMap[plugin.id].version); + } catch (err) { + winston.error(`plugin ID=${plugin.id}, latest=${pluginMap[plugin.id].latest}, version=${pluginMap[plugin.id].version},\n${err.stack}`); + throw err; + } }); if (nconf.get('plugins:active')) { From f0aa960c00e885f0230ee6a17a4d74483f117ff6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Mon, 16 Dec 2024 11:36:06 -0500 Subject: [PATCH 73/82] fix: closes #12980, properly reset all plugins with `./nodebb reset -a` --- src/cli/reset.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/cli/reset.js b/src/cli/reset.js index a05519b101..2a009e85d9 100644 --- a/src/cli/reset.js +++ b/src/cli/reset.js @@ -49,7 +49,7 @@ exports.reset = async function (options) { all: async function () { await resetWidgets(); await resetThemes(); - await resetPlugin(); + await resetPlugins(); await resetSettings(); }, }; From 7f0200377b83109b345164593700cfd5933743e8 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 16 Dec 2024 19:55:32 -0500 Subject: [PATCH 74/82] fix(deps): update dependency sass to v1.83.0 (#12975) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- install/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/package.json b/install/package.json index 4e008050c3..660b0241e6 100644 --- a/install/package.json +++ b/install/package.json @@ -128,7 +128,7 @@ "rss": "1.2.2", "rtlcss": "4.3.0", "sanitize-html": "2.13.1", - "sass": "1.82.0", + "sass": "1.83.0", "semver": "7.6.3", "serve-favicon": "2.5.0", "sharp": "0.32.6", From c4399dd09b157410747819b680b1d7ba11fa346f Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 16 Dec 2024 19:55:40 -0500 Subject: [PATCH 75/82] chore(deps): update dependency sass-embedded to v1.83.0 (#12974) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- install/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/package.json b/install/package.json index 660b0241e6..420b47dc32 100644 --- a/install/package.json +++ b/install/package.json @@ -175,7 +175,7 @@ "smtp-server": "3.13.6" }, "optionalDependencies": { - "sass-embedded": "1.82.0" + "sass-embedded": "1.83.0" }, "resolutions": { "*/jquery": "3.7.1" From a054cbd769dfa63701b474ef4dc0907884f38c7f Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Mon, 16 Dec 2024 19:55:50 -0500 Subject: [PATCH 76/82] fix(deps): update dependency terser-webpack-plugin to v5.3.11 (#12973) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- install/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/package.json b/install/package.json index 420b47dc32..68cc301d91 100644 --- a/install/package.json +++ b/install/package.json @@ -138,7 +138,7 @@ "@socket.io/redis-adapter": "8.3.0", "sortablejs": "1.15.6", "spdx-license-list": "6.9.0", - "terser-webpack-plugin": "5.3.10", + "terser-webpack-plugin": "5.3.11", "textcomplete": "0.18.2", "textcomplete.contenteditable": "0.1.1", "timeago": "1.6.7", From a154786a4c65fcaf40d40ffa62ec08ce55979f20 Mon Sep 17 00:00:00 2001 From: Misty Release Bot Date: Tue, 17 Dec 2024 09:18:39 +0000 Subject: [PATCH 77/82] Latest translations and fallbacks --- public/language/es/notifications.json | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/public/language/es/notifications.json b/public/language/es/notifications.json index 18c6160c26..7c13a10f25 100644 --- a/public/language/es/notifications.json +++ b/public/language/es/notifications.json @@ -13,14 +13,14 @@ "all": "Todo", "topics": "Temas", "tags": "Tags", - "categories": "Categories", + "categories": "Categorías", "replies": "Respuestas", "chat": "Chats", "group-chat": "Group Chats", "public-chat": "Public Chats", "follows": "Seguidores", "upvote": "Votos positivos", - "awards": "Awards", + "awards": "Premios", "new-flags": "Nuevos reportes", "my-flags": "Reportado asignado a mí", "bans": "Baneos", @@ -75,7 +75,7 @@ "email-confirmed": "Correo electrónico confirmado", "email-confirmed-message": "Gracias por validar tu correo electrónico. Tu cuenta ya está completamente activa.", "email-confirm-error-message": "Hubo un problema al validar tu cuenta de correo electrónico. Quizá el código era erróneo o expiró...", - "email-confirm-error-message-already-validated": "Your email address was already validated.", + "email-confirm-error-message-already-validated": "Tu dirección de correo ya ha sido validada.", "email-confirm-sent": "Correo de confirmación enviado.", "none": "Ninguno/a", "notification-only": "Solo Notificación", @@ -84,7 +84,7 @@ "notificationType-upvote": "Cuando alguien vota positivamente en tu entrada", "notificationType-new-topic": "Cuando alguien a quien sigues comenta en un tema", "notificationType-new-topic-with-tag": "When a topic is posted with a tag you follow", - "notificationType-new-topic-in-category": "When a topic is posted in a category you are watching", + "notificationType-new-topic-in-category": "Cuando se publica un nuevo tema en una categoría que estás siguiendo", "notificationType-new-reply": "Cuando hay una respuesta nueva en un tema que estás viendo", "notificationType-post-edit": "When a post is edited in a topic you are watching", "notificationType-follow": "Cuando alguien comienza a seguirte", @@ -98,5 +98,5 @@ "notificationType-post-queue": "Cuando un mensaje nuevo entra en la cola", "notificationType-new-post-flag": "Cuando un mensaje es denunciado", "notificationType-new-user-flag": "Cuando un usuario es denunciado", - "notificationType-new-reward": "When you earn a new reward" + "notificationType-new-reward": "Cuando consigues una nueva recompensa" } \ No newline at end of file From 831422d0bb93e815c63b09172fb145bb457b310d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Soner=20U=C5=9Fakl=C4=B1?= Date: Tue, 17 Dec 2024 10:03:15 -0500 Subject: [PATCH 78/82] chore: up harmony --- install/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/package.json b/install/package.json index 4e008050c3..cc94be5e29 100644 --- a/install/package.json +++ b/install/package.json @@ -107,7 +107,7 @@ "nodebb-plugin-ntfy": "1.7.7", "nodebb-plugin-spam-be-gone": "2.3.0", "nodebb-rewards-essentials": "1.0.0", - "nodebb-theme-harmony": "1.2.90", + "nodebb-theme-harmony": "1.2.91", "nodebb-theme-lavender": "7.1.17", "nodebb-theme-peace": "2.2.32", "nodebb-theme-persona": "13.3.60", From 69214d79255fc6807dab3bb4598d72ad8291b209 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 17 Dec 2024 10:16:01 -0500 Subject: [PATCH 79/82] fix(deps): update dependency @fortawesome/fontawesome-free to v6.7.2 (#12982) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- install/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/package.json b/install/package.json index 870c5c624a..47b7288078 100644 --- a/install/package.json +++ b/install/package.json @@ -31,7 +31,7 @@ "@adactive/bootstrap-tagsinput": "0.8.2", "@fontsource/inter": "5.1.0", "@fontsource/poppins": "5.1.0", - "@fortawesome/fontawesome-free": "6.7.1", + "@fortawesome/fontawesome-free": "6.7.2", "@isaacs/ttlcache": "1.4.1", "@nodebb/spider-detector": "2.0.3", "@popperjs/core": "2.11.8", From f25312a8d9fbc980462757203f1352e404b1f627 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Tue, 17 Dec 2024 10:16:16 -0500 Subject: [PATCH 80/82] chore(deps): update dependency @commitlint/cli to v19.6.1 (#12981) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- install/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/package.json b/install/package.json index 47b7288078..400c52bfee 100644 --- a/install/package.json +++ b/install/package.json @@ -157,7 +157,7 @@ }, "devDependencies": { "@apidevtools/swagger-parser": "10.1.0", - "@commitlint/cli": "19.6.0", + "@commitlint/cli": "19.6.1", "@commitlint/config-angular": "19.6.0", "coveralls": "3.1.1", "eslint": "8.57.1", From 05f08d8d3e7f3b58ef062155246c8b0960802aca Mon Sep 17 00:00:00 2001 From: Misty Release Bot Date: Wed, 18 Dec 2024 09:19:04 +0000 Subject: [PATCH 81/82] Latest translations and fallbacks --- .../language/es/admin/manage/privileges.json | 2 +- public/language/es/admin/settings/post.json | 2 +- public/language/es/admin/settings/user.json | 2 +- public/language/es/category.json | 4 +- public/language/es/error.json | 2 +- public/language/es/flags.json | 10 ++--- public/language/es/global.json | 18 ++++----- public/language/es/modules.json | 2 +- public/language/es/notifications.json | 2 +- public/language/es/search.json | 4 +- public/language/es/tags.json | 6 +-- public/language/es/topic.json | 38 +++++++++---------- public/language/es/user.json | 2 +- 13 files changed, 47 insertions(+), 47 deletions(-) diff --git a/public/language/es/admin/manage/privileges.json b/public/language/es/admin/manage/privileges.json index 7b66aea753..06f55e6fcd 100644 --- a/public/language/es/admin/manage/privileges.json +++ b/public/language/es/admin/manage/privileges.json @@ -46,7 +46,7 @@ "admin-users": "Users", "admin-admins-mods": "Admins & Mods", "admin-groups": "Groups", - "admin-tags": "Tags", + "admin-tags": "Etiquetas", "admin-settings": "Settings", "alert.confirm-moderate": "Are you sure you wish to grant the moderation privilege to this user group? This group is public, and any users can join at will.", diff --git a/public/language/es/admin/settings/post.json b/public/language/es/admin/settings/post.json index 0021ecaa0b..2e18e277c6 100644 --- a/public/language/es/admin/settings/post.json +++ b/public/language/es/admin/settings/post.json @@ -4,7 +4,7 @@ "sorting.post-default": "Ordenamiento de Respuestas por Defecto", "sorting.oldest-to-newest": "De más Antiguo a más Nuevo", "sorting.newest-to-oldest": "De más Nuevo a Más Antiguo", - "sorting.recently-replied": "Recently Replied", + "sorting.recently-replied": "Respondidos recientemente", "sorting.recently-created": "Recently Created", "sorting.most-votes": "Más Votado", "sorting.most-posts": "Más Respondido", diff --git a/public/language/es/admin/settings/user.json b/public/language/es/admin/settings/user.json index 6496acebd5..58271d447c 100644 --- a/public/language/es/admin/settings/user.json +++ b/public/language/es/admin/settings/user.json @@ -79,7 +79,7 @@ "follow-replied-topics": "Seguir los temas a los que contestas", "default-notification-settings": "Configuración de notificación por defecto", "categoryWatchState": "Default category watch state", - "categoryWatchState.tracking": "Tracking", + "categoryWatchState.tracking": "Seguimiento", "categoryWatchState.notwatching": "Not Watching", "categoryWatchState.ignoring": "Ignorando", "restrictions-new": "New User Restrictions", diff --git a/public/language/es/category.json b/public/language/es/category.json index 8ef18c632f..d4ebd7cb64 100644 --- a/public/language/es/category.json +++ b/public/language/es/category.json @@ -10,7 +10,7 @@ "watch": "Seguir", "ignore": "Ignorar", "watching": "Siguiendo", - "tracking": "Tracking", + "tracking": "Seguimiento", "not-watching": "No siguiendo", "ignoring": "Ignorando", "watching.description": "Notify me of new topics.
    Show topics in unread & recent", @@ -18,7 +18,7 @@ "not-watching.description": "No mostrar temas en no leído, mostrar en reciente", "ignoring.description": "Do not show topics in unread & recent", "watching.message": "Ahora estás viendo las actualizaciones de esta categoría y todas las subcategorías", - "tracking.message": "You are now tracking updates from this category and all subcategories", + "tracking.message": "Ahora estás siguiendo las actualizaciones de esta categoría y todas las subcategorías", "notwatching.message": "No estás viendo las actualizaciones de esta categoría y todas las subcategorías.", "ignoring.message": "Ahora estás ignorando las actualizaciones de esta categoría y todas las subcategorías", "watched-categories": "Categorías seguidas", diff --git a/public/language/es/error.json b/public/language/es/error.json index 2a56f1e21c..9a62119089 100644 --- a/public/language/es/error.json +++ b/public/language/es/error.json @@ -38,7 +38,7 @@ "email-not-confirmed": "Posting in some categories or topics is enabled once your email is confirmed, please click here to send a confirmation email.", "email-not-confirmed-chat": "No puedes usar el chat hasta que confirmes tu dirección de correo electrónico, por favor haz click aquí para confirmar tu correo.", "email-not-confirmed-email-sent": "Tu email todavía no ha sido confirmado, por favor verifica tu buzón de entrada para ver si has recibido el email de confirmación. No te será posible comentar en algunas de las categorías hasta que tú email sea confirmado.", - "no-email-to-confirm": "Your account does not have an email set. An email is necessary for account recovery, and may be necessary for chatting and posting in some categories. Please click here to enter an email.", + "no-email-to-confirm": "Tu cuenta no tiene un correo electrónico configurado. Un correo electrónico es necesario para recuperar la cuenta y puede ser necesario para chatear y publicar en algunas categorías. Por favor, haz clic aquí para ingresar un correo electrónico.", "user-doesnt-have-email": "User \"%1\" does not have an email set.", "email-confirm-failed": "No se ha podido confirmar su email, por favor inténtelo de nuevo más tarde.", "confirm-email-already-sent": "El email de confirmación ya ha sido enviado, por favor espera %1 minuto(s) para enviar otro.", diff --git a/public/language/es/flags.json b/public/language/es/flags.json index 0bffeb16ee..3e05e7dd6a 100644 --- a/public/language/es/flags.json +++ b/public/language/es/flags.json @@ -1,20 +1,20 @@ { "state": "Estado", - "report": "Report", - "reports": "Reports", + "report": "Denuncia", + "reports": "Denuncias", "first-reported": "First Reported", "no-flags": "Yeah! No se encontraron indicadores", - "x-flags-found": "%1 flag(s) found.", + "x-flags-found": "%1 denuncia(s) encontrada.", "assignee": "Asignado", "update": "Actualizar", "updated": "Actualizado", - "resolved": "Resolved", + "resolved": "Resuelto", "report-added": "Added", "report-rescinded": "Rescinded", "target-purged": "El contenido al que se refiere este indicador ha sido purgado y ya no está disponible.", "target-aboutme-empty": "This user has no "About Me" set.", - "graph-label": "Daily Flags", + "graph-label": "Denuncias Diarias", "quick-filters": "Filtros rapidos", "filter-active": "Hay uno o más filtros activos en esta lista de indicadores.", "filter-reset": "Quitar filtros", diff --git a/public/language/es/global.json b/public/language/es/global.json index 2cbb79f059..162e385c24 100644 --- a/public/language/es/global.json +++ b/public/language/es/global.json @@ -20,18 +20,18 @@ "you-have-successfully-logged-in": "Identificado satisfactoriamente", "save-changes": "Guardar cambios", "save": "Guardar", - "create": "Create", - "cancel": "Cancel", + "create": "Crear", + "cancel": "Cancelar", "close": "Cerrar", "pagination": "Paginación", - "pagination.previouspage": "Previous Page", - "pagination.nextpage": "Next Page", - "pagination.firstpage": "First Page", - "pagination.lastpage": "Last Page", + "pagination.previouspage": "Página anterior", + "pagination.nextpage": "Página siguiente", + "pagination.firstpage": "Primera Página", + "pagination.lastpage": "Última Página", "pagination.out-of": "%1 de %2", "pagination.enter-index": "Go to post index", - "pagination.go-to-page": "Go to page", - "pagination.page-x": "Page %1", + "pagination.go-to-page": "Ir a la página", + "pagination.page-x": "Página", "header.brand-logo": "Brand Logo", "header.admin": "Administración", "header.categories": "Categorías", @@ -140,7 +140,7 @@ "edited": "Editado", "disabled": "Desahabilitado", "select": "Seleccionar", - "selected": "Selected", + "selected": "Seleccionado", "copied": "Copied", "user-search-prompt": "Escriba algo aquí para encontrar usuarios...", "hidden": "Hidden", diff --git a/public/language/es/modules.json b/public/language/es/modules.json index 884a5353fa..5931886036 100644 --- a/public/language/es/modules.json +++ b/public/language/es/modules.json @@ -104,7 +104,7 @@ "composer.upload-file": "Subir archivo", "composer.zen-mode": "Modo Zen", "composer.select-category": "Selecciona una categoría", - "composer.textarea.placeholder": "Enter your post content here, drag and drop images", + "composer.textarea.placeholder": "Escribe el contenido de tu entrada aquí, puedes arrastrar y soltar imágenes", "composer.post-queue-alert": "Hello👋!
    This forum uses a post queue system, since you are a new user your post will be hidden until it is approved by our moderation team.", "composer.schedule-for": "Schedule topic for", "composer.schedule-date": "Date", diff --git a/public/language/es/notifications.json b/public/language/es/notifications.json index 7c13a10f25..f8f5da1859 100644 --- a/public/language/es/notifications.json +++ b/public/language/es/notifications.json @@ -12,7 +12,7 @@ "you-have-unread-notifications": "Tienes notificaciones sin leer.", "all": "Todo", "topics": "Temas", - "tags": "Tags", + "tags": "Etiquetas", "categories": "Categorías", "replies": "Respuestas", "chat": "Chats", diff --git a/public/language/es/search.json b/public/language/es/search.json index c2bd1b0e4b..a92e83d7fe 100644 --- a/public/language/es/search.json +++ b/public/language/es/search.json @@ -16,8 +16,8 @@ "categories-x": "Categorías: %1", "categories-watched-categories": "Categorías: Categorías vistas", "type-a-category": "Introduce una categoría", - "tags": "Tags", - "tags-x": "Tags: %1", + "tags": "Etiquetas", + "tags-x": "Etiquetas: %1", "type-a-tag": "Type a tag", "match-words": "Que coincidan las palabras", "match-all-words": "Match all words", diff --git a/public/language/es/tags.json b/public/language/es/tags.json index ce1aa0f9b8..77be511b89 100644 --- a/public/language/es/tags.json +++ b/public/language/es/tags.json @@ -1,9 +1,9 @@ { - "all-tags": "All tags", + "all-tags": "Todas las Etiquetas", "no-tag-topics": "No hay temas con esta etiqueta.", - "no-tags-found": "No tags found", + "no-tags-found": "No se encontraron etiquetas", "tags": "Etiquetas", - "enter-tags-here": "Enter tags, %1 - %2 characters.", + "enter-tags-here": "Introduzca las etiquetas, %1 - %2 caracteres.", "enter-tags-here-short": "Introduzca las etiquetas...", "no-tags": "Aún no hay etiquetas.", "select-tags": "Seleccionar Etiquetas", diff --git a/public/language/es/topic.json b/public/language/es/topic.json index 3280796197..6a8186b119 100644 --- a/public/language/es/topic.json +++ b/public/language/es/topic.json @@ -15,7 +15,7 @@ "replies-to-this-post": "%1 Respuestas", "one-reply-to-this-post": "1 Respuesta", "last-reply-time": "Última respuesta", - "reply-options": "Reply options", + "reply-options": "Opciones de respuesta", "reply-as-topic": "Responder como tema", "guest-login-reply": "Accede para responder", "login-to-view": "🔒 Inicie sesión para ver", @@ -27,16 +27,16 @@ "restore": "Restaurar", "move": "Mover", "change-owner": "Cambiar propietario", - "manage-editors": "Manage Editors", + "manage-editors": "Gestionar Editores", "fork": "Dividir", - "link": "Link", + "link": "Enlace", "share": "Compartir", "tools": "Herramientas", "locked": "Cerrado", "pinned": "Fijo", "pinned-with-expiry": "Anclado hasta %1", "scheduled": "Programado", - "deleted": "Deleted", + "deleted": "Borrado", "moved": "Movido", "moved-from": "Movido desde %1", "copy-code": "Copiar Codigo", @@ -46,7 +46,7 @@ "wrote-ago": "escribió ", "wrote-on": "escribió en ", "replied-to-user-ago": "respondió a %3 ", - "replied-to-user-on": "replied to %3 on ", + "replied-to-user-on": "respondió a %3 en ", "user-locked-topic-ago": "%1 locked this topic %2", "user-locked-topic-on": "%1 locked this topic on %2", "user-unlocked-topic-ago": "%1 unlocked this topic %2", @@ -104,10 +104,10 @@ "thread-tools.move-posts": "Mover mensajes", "thread-tools.move-all": "Mover todo", "thread-tools.change-owner": "Cambiar propietario", - "thread-tools.manage-editors": "Manage Editors", + "thread-tools.manage-editors": "Gestionar Editores", "thread-tools.select-category": "Seleccionar categoría", "thread-tools.fork": "Dividir tema", - "thread-tools.tag": "Tag Topic", + "thread-tools.tag": "Etiqueta del tema", "thread-tools.delete": "Borrar tema", "thread-tools.delete-posts": "Eliminar mensajes", "thread-tools.delete-confirm": "¿Estás seguro que deseas eliminar este tema?", @@ -141,7 +141,7 @@ "move-post": "Mover mensaje", "post-moved": "¡Mensaje movido!", "fork-topic": "Dividir tema", - "enter-new-topic-title": "Enter new topic title", + "enter-new-topic-title": "Escribe el título", "fork-topic-instruction": "Click the posts you want to fork, enter a title for the new topic and click fork topic", "fork-no-pids": "¡No has seleccionado ningún mensaje!", "no-posts-selected": "No posts selected!", @@ -159,14 +159,14 @@ "move-posts-instruction": "Click the posts you want to move then enter a topic ID or go to the target topic", "move-topic-instruction": "Select the target category and then click move", "change-owner-instruction": "Haz click en los mensajes que quieres asignar a otro usuario", - "manage-editors-instruction": "Manage the users who can edit this post below.", + "manage-editors-instruction": "Gestionar abajo los usuarios que pueden editar esta entrada.", "composer.title-placeholder": "Ingresa el título de tu tema...", "composer.handle-placeholder": "Enter your name/handle here", - "composer.hide": "Hide", + "composer.hide": "Ocultar", "composer.discard": "Descartar", "composer.submit": "Enviar", "composer.additional-options": "Additional Options", - "composer.post-later": "Post Later", + "composer.post-later": "Publicar más tarde", "composer.schedule": "Schedule", "composer.replying-to": "En respuesta a %1", "composer.new-topic": "Nuevo tema", @@ -185,8 +185,8 @@ "sort-by": "Ordenar", "oldest-to-newest": "Más antiguo a más nuevo", "newest-to-oldest": "Más nuevo a más antiguo", - "recently-replied": "Recently Replied", - "recently-created": "Recently Created", + "recently-replied": "Respondidos recientemente", + "recently-created": "Creados recientemente", "most-votes": "Mayor número de Votos", "most-posts": "Mayor número de Posts", "most-views": "Most Views", @@ -211,13 +211,13 @@ "last-post": "Last post", "go-to-my-next-post": "Go to my next post", "no-more-next-post": "You don't have more posts in this topic", - "open-composer": "Open composer", + "open-composer": "Abrir editor", "post-quick-reply": "Quick reply", "navigator.index": "Post %1 of %2", "navigator.unread": "%1 unread", - "upvote-post": "Upvote post", - "downvote-post": "Downvote post", - "post-tools": "Post tools", - "unread-posts-link": "Unread posts link", - "thumb-image": "Topic thumbnail image" + "upvote-post": "Votar positivo", + "downvote-post": "Votar negativo", + "post-tools": "Herramientas de la entrada", + "unread-posts-link": "Enlace a entradas sin leer", + "thumb-image": "Imagen miniatura del tema" } \ No newline at end of file diff --git a/public/language/es/user.json b/public/language/es/user.json index cd31668654..29f340879a 100644 --- a/public/language/es/user.json +++ b/public/language/es/user.json @@ -22,7 +22,7 @@ "delete-account-as-admin": "Delete Account", "delete-content": "Delete Account Content", "delete-all": "Delete Account and Content", - "delete-account-confirm": "Are you sure you want to anonymize your posts and delete your account?
    This action is irreversible and you will not be able to recover any of your data

    Enter your password to confirm that you wish to destroy this account.", + "delete-account-confirm": "¿Estás seguro de que quieres anonimizar tus publicaciones y eliminar tu cuenta?
    Esta acción es irreversible y no podrás recuperar ninguno de tus datos.

    Ingresa tu contraseña para confirmar que deseas eliminar esta cuenta.", "delete-this-account-confirm": "Are you sure you want to delete this account while leaving its contents behind?
    This action is irreversible, posts will be anonymized, and you will not be able to restore post associations with the deleted account

    ", "delete-account-content-confirm": "Are you sure you want to delete this account's content (posts/topics/uploads)?
    This action is irreversible and you will not be able to recover any data

    ", "delete-all-confirm": "Are you sure you want to delete this account and all of its content (posts/topics/uploads)?
    This action is irreversible and you will not be able to recover any data

    ", From 808e483e0a95fcfa9d5ecfdff28a19d9545ef8f8 Mon Sep 17 00:00:00 2001 From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com> Date: Wed, 18 Dec 2024 09:53:08 -0500 Subject: [PATCH 82/82] fix(deps): update dependency ace-builds to v1.37.0 (#12983) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> --- install/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/install/package.json b/install/package.json index 400c52bfee..f3213d66b0 100644 --- a/install/package.json +++ b/install/package.json @@ -38,7 +38,7 @@ "@textcomplete/contenteditable": "0.1.13", "@textcomplete/core": "0.1.13", "@textcomplete/textarea": "0.1.13", - "ace-builds": "1.36.5", + "ace-builds": "1.37.0", "archiver": "7.0.1", "async": "3.2.6", "autoprefixer": "10.4.20",
  • -

    [[email:greeting-with-name, {username}]]

    +

    [[email:greeting-with-name, {displayname}]]

    {function.renderDigestAvatar}

    {topTopics.title}

    -

    {topTopics.teaser.user.username}

    +

    {topTopics.teaser.user.displayname}

    {function.renderDigestAvatar}

    {popularTopics.title}

    -

    {popularTopics.teaser.user.username}

    +

    {popularTopics.teaser.user.displayname}

    {function.renderDigestAvatar}

    {recent.title}

    -

    {recent.teaser.user.username}

    +

    {recent.teaser.user.displayname}