diff --git a/install/data/defaults.json b/install/data/defaults.json
index 090a1d4026..8d0112ba74 100644
--- a/install/data/defaults.json
+++ b/install/data/defaults.json
@@ -112,6 +112,7 @@
"hideFullname": 0,
"hideEmail": 0,
"allowGuestHandles": 0,
+ "recentMaxTopics": 200,
"disableRecentCategoryFilter": 0,
"maximumRelatedTopics": 0,
"disableEmailSubscriptions": 0,
diff --git a/install/package.json b/install/package.json
index 3f52685195..1fed7ea09a 100644
--- a/install/package.json
+++ b/install/package.json
@@ -80,19 +80,19 @@
"@nodebb/mubsub": "^1.6.0",
"@nodebb/socket.io-adapter-mongo": "3.0.0",
"nconf": "^0.10.0",
- "nodebb-plugin-composer-default": "6.3.44",
+ "nodebb-plugin-composer-default": "6.3.46",
"nodebb-plugin-dbsearch": "4.0.7",
"nodebb-plugin-emoji": "^3.3.0",
"nodebb-plugin-emoji-android": "2.0.0",
"nodebb-plugin-markdown": "8.11.2",
- "nodebb-plugin-mentions": "2.7.4",
+ "nodebb-plugin-mentions": "2.8.3",
"nodebb-plugin-soundpack-default": "1.0.0",
"nodebb-plugin-spam-be-gone": "0.7.2",
"nodebb-rewards-essentials": "0.1.3",
"nodebb-theme-lavender": "5.0.11",
- "nodebb-theme-persona": "10.1.55",
+ "nodebb-theme-persona": "10.1.58",
"nodebb-theme-slick": "1.2.29",
- "nodebb-theme-vanilla": "11.1.30",
+ "nodebb-theme-vanilla": "11.1.32",
"nodebb-widget-essentials": "4.1.0",
"nodemailer": "^6.4.6",
"passport": "^0.4.1",
@@ -147,7 +147,7 @@
"mocha": "8.0.1",
"mocha-lcov-reporter": "1.3.0",
"nyc": "15.0.1",
- "smtp-server": "3.6.0"
+ "smtp-server": "3.7.0"
},
"bugs": {
"url": "https://github.com/NodeBB/NodeBB/issues"
diff --git a/public/language/ar/admin/manage/categories.json b/public/language/ar/admin/manage/categories.json
index 2db7556c2c..f41bd16382 100644
--- a/public/language/ar/admin/manage/categories.json
+++ b/public/language/ar/admin/manage/categories.json
@@ -11,6 +11,7 @@
"num-recent-replies": "# of Recent Replies",
"ext-link": "External Link",
"is-section": "Treat this category as a section",
+ "tag-whitelist": "Tag Whitelist",
"upload-image": "Upload Image",
"delete-image": "Remove",
"category-image": "Category Image",
diff --git a/public/language/ar/admin/settings/post.json b/public/language/ar/admin/settings/post.json
index da708f4c6c..a8d0046355 100644
--- a/public/language/ar/admin/settings/post.json
+++ b/public/language/ar/admin/settings/post.json
@@ -42,6 +42,7 @@
"unread.cutoff": "Unread cutoff days",
"unread.min-track-last": "Minimum posts in topic before tracking last read",
"recent": "Recent Settings",
+ "recent.max-topics": "Maximum topics on /recent",
"recent.categoryFilter.disable": "Disable filtering of topics in ignored categories on the /recent page",
"signature": "Signature Settings",
"signature.disable": "Disable signatures",
diff --git a/public/language/ar/topic.json b/public/language/ar/topic.json
index c148eeedc9..ebed58de90 100644
--- a/public/language/ar/topic.json
+++ b/public/language/ar/topic.json
@@ -36,7 +36,8 @@
"ban-ip": "Ban IP",
"view-history": "Edit History",
"bookmark_instructions": "اضغط هنا للعودة لأخر مشاركة مقروءة في الموضوع",
- "flag_title": "إشعار بمشاركة مخلة.",
+ "flag_post": "Flag this post",
+ "flag_user": "Flag this user",
"merged_message": "This topic has been merged into %2",
"deleted_message": "هذه المشاركة محذوفة. فقط من لهم صلاحية الإشراف على ا لمشاركات يمكنهم معاينتها.",
"following_topic.message": "ستستلم تنبيها عند كل مشاركة جديدة في هذا الموضوع.",
diff --git a/public/language/bg/admin/manage/categories.json b/public/language/bg/admin/manage/categories.json
index f18269d498..d0984f3ab4 100644
--- a/public/language/bg/admin/manage/categories.json
+++ b/public/language/bg/admin/manage/categories.json
@@ -11,6 +11,7 @@
"num-recent-replies": "Брой на скорошните отговори",
"ext-link": "Външна връзка",
"is-section": "Използване на тази категория като раздел",
+ "tag-whitelist": "Списък от разрешени етикети",
"upload-image": "Качване на изображение",
"delete-image": "Премахване",
"category-image": "Изображение на категорията",
diff --git a/public/language/bg/admin/settings/post.json b/public/language/bg/admin/settings/post.json
index 32cdda63a3..033657cbe3 100644
--- a/public/language/bg/admin/settings/post.json
+++ b/public/language/bg/admin/settings/post.json
@@ -42,6 +42,7 @@
"unread.cutoff": "Възраст на публикациите, след която те не се показват в непрочетените (в брой дни)",
"unread.min-track-last": "Минимален брой публикации в темата, след което да започва следене на последно прочетената",
"recent": "Настройки за скорошните",
+ "recent.max-topics": "Максимален брой теми в скорошните",
"recent.categoryFilter.disable": "Изключване на филтрирането на темите в пренебрегваните категории на страницата /recent",
"signature": "Настройки за подписите",
"signature.disable": "Забраняване на подписите",
diff --git a/public/language/bg/notifications.json b/public/language/bg/notifications.json
index ea0beadaff..d5818a10a5 100644
--- a/public/language/bg/notifications.json
+++ b/public/language/bg/notifications.json
@@ -43,9 +43,9 @@
"new_register_multiple": "Има %1 заявки за регистрация, които очакват да бъдат прегледани.",
"flag_assigned_to_you": "Докладът %1 беше назначен на Вас",
"post_awaiting_review": "Публикацията чака да бъде прегледана",
- "profile-exported": "%1 profile exported, click to download",
- "posts-exported": "%1 posts exported, click to download",
- "uploads-exported": "%1 uploads exported, click to download",
+ "profile-exported": "Профилът на %1 е изнесен, щракнете за сваляне",
+ "posts-exported": "Публикациите на %1 са изнесени, щракнете за сваляне",
+ "uploads-exported": "Качванията на %1 са изнесени, щракнете за сваляне",
"email-confirmed": "Е-пощата беше потвърдена",
"email-confirmed-message": "Благодарим Ви, че потвърдихте е-пощата си. Акаунтът Ви е вече напълно активиран.",
"email-confirm-error-message": "Възникна проблем при потвърждаването на е-пощата Ви. Може кодът да е грешен или давността му да е изтекла.",
diff --git a/public/language/bg/topic.json b/public/language/bg/topic.json
index e2bea635a2..748b30a541 100644
--- a/public/language/bg/topic.json
+++ b/public/language/bg/topic.json
@@ -36,7 +36,8 @@
"ban-ip": "Блокиране на IP адреса",
"view-history": "История на редакциите",
"bookmark_instructions": "Щракнете тук, за да се върнете към последно прочетената публикация в тази тема.",
- "flag_title": "Докладване на тази публикация до модератор",
+ "flag_post": "Докладване на тази публикация",
+ "flag_user": "Докладване на този потребител",
"merged_message": "Тази тема беше слята в %2",
"deleted_message": "Темата е изтрита. Само потребители с права за управление на темите могат да я видят.",
"following_topic.message": "Вече ще получавате известия когато някой публикува коментар в тази тема.",
diff --git a/public/language/bn/admin/manage/categories.json b/public/language/bn/admin/manage/categories.json
index 1eda6ea080..a8949c654b 100644
--- a/public/language/bn/admin/manage/categories.json
+++ b/public/language/bn/admin/manage/categories.json
@@ -11,6 +11,7 @@
"num-recent-replies": "# of Recent Replies",
"ext-link": "External Link",
"is-section": "Treat this category as a section",
+ "tag-whitelist": "Tag Whitelist",
"upload-image": "Upload Image",
"delete-image": "Remove",
"category-image": "Category Image",
diff --git a/public/language/bn/admin/settings/post.json b/public/language/bn/admin/settings/post.json
index da708f4c6c..a8d0046355 100644
--- a/public/language/bn/admin/settings/post.json
+++ b/public/language/bn/admin/settings/post.json
@@ -42,6 +42,7 @@
"unread.cutoff": "Unread cutoff days",
"unread.min-track-last": "Minimum posts in topic before tracking last read",
"recent": "Recent Settings",
+ "recent.max-topics": "Maximum topics on /recent",
"recent.categoryFilter.disable": "Disable filtering of topics in ignored categories on the /recent page",
"signature": "Signature Settings",
"signature.disable": "Disable signatures",
diff --git a/public/language/bn/topic.json b/public/language/bn/topic.json
index ec950ff39e..c98ca64855 100644
--- a/public/language/bn/topic.json
+++ b/public/language/bn/topic.json
@@ -36,7 +36,8 @@
"ban-ip": "Ban IP",
"view-history": "Edit History",
"bookmark_instructions": "Click here to return to the last read post in this thread.",
- "flag_title": "মডারেশনের জন্য এই পোস্টটি ফ্ল্যাগ করুন",
+ "flag_post": "Flag this post",
+ "flag_user": "Flag this user",
"merged_message": "This topic has been merged into %2",
"deleted_message": "এই টপিকটি মুছে ফেলা হয়েছে। শুধুমাত্র টপিক ব্যবস্থাপনার ক্ষমতাপ্রাপ্ত সদস্যগণ এটি দেখতে পারবেন।",
"following_topic.message": "এখন থেকে এই টপিকে অন্যকেউ পোস্ট করলে আপনি নোটিফিকেশন পাবেন।",
diff --git a/public/language/cs/admin/manage/categories.json b/public/language/cs/admin/manage/categories.json
index 0d99dc005d..86f0c1d62b 100644
--- a/public/language/cs/admin/manage/categories.json
+++ b/public/language/cs/admin/manage/categories.json
@@ -11,6 +11,7 @@
"num-recent-replies": "# posledních odpovědí",
"ext-link": "Externí odkaz",
"is-section": "Zacházet s kategorii jako se sekcí",
+ "tag-whitelist": "Tag Whitelist",
"upload-image": "Nahrát obrázek",
"delete-image": "Vyjmout",
"category-image": "Obrázek kategorie",
diff --git a/public/language/cs/admin/settings/post.json b/public/language/cs/admin/settings/post.json
index ef9bb0ed62..6e8908159b 100644
--- a/public/language/cs/admin/settings/post.json
+++ b/public/language/cs/admin/settings/post.json
@@ -42,6 +42,7 @@
"unread.cutoff": "Dny ukončení nepřečtených",
"unread.min-track-last": "Minimální počet příspěvků v tématu před posledním čtením",
"recent": "Nastavení pro poslední",
+ "recent.max-topics": "Maximum topics on /recent",
"recent.categoryFilter.disable": "Zakázat filtrování témat v ignorovaných kategoriích na poslední stránce",
"signature": "Nastavení podpisu",
"signature.disable": "Zakázat podpisy",
diff --git a/public/language/cs/topic.json b/public/language/cs/topic.json
index 300b5b92f6..795a7caeaf 100644
--- a/public/language/cs/topic.json
+++ b/public/language/cs/topic.json
@@ -36,7 +36,8 @@
"ban-ip": "Zakázat IP",
"view-history": "Upravit historii",
"bookmark_instructions": "Pro návrat k poslednímu čtenému příspěvku v tématu, klikněte zde.",
- "flag_title": "Označit tento příspěvek k moderování",
+ "flag_post": "Flag this post",
+ "flag_user": "Flag this user",
"merged_message": "Toto téma bylo sloučeno do %2",
"deleted_message": "Toto téma bylo odstraněno. Jen uživatelé s oprávněním správy témat ho mohou vidět.",
"following_topic.message": "Nyní budete dostávat upozornění, jakmile někdo přidá příspěvek do tohoto tématu.",
diff --git a/public/language/da/admin/manage/categories.json b/public/language/da/admin/manage/categories.json
index 1eda6ea080..a8949c654b 100644
--- a/public/language/da/admin/manage/categories.json
+++ b/public/language/da/admin/manage/categories.json
@@ -11,6 +11,7 @@
"num-recent-replies": "# of Recent Replies",
"ext-link": "External Link",
"is-section": "Treat this category as a section",
+ "tag-whitelist": "Tag Whitelist",
"upload-image": "Upload Image",
"delete-image": "Remove",
"category-image": "Category Image",
diff --git a/public/language/da/admin/settings/post.json b/public/language/da/admin/settings/post.json
index da708f4c6c..a8d0046355 100644
--- a/public/language/da/admin/settings/post.json
+++ b/public/language/da/admin/settings/post.json
@@ -42,6 +42,7 @@
"unread.cutoff": "Unread cutoff days",
"unread.min-track-last": "Minimum posts in topic before tracking last read",
"recent": "Recent Settings",
+ "recent.max-topics": "Maximum topics on /recent",
"recent.categoryFilter.disable": "Disable filtering of topics in ignored categories on the /recent page",
"signature": "Signature Settings",
"signature.disable": "Disable signatures",
diff --git a/public/language/da/topic.json b/public/language/da/topic.json
index 7052f6cdf8..e1b1bfe73e 100644
--- a/public/language/da/topic.json
+++ b/public/language/da/topic.json
@@ -36,7 +36,8 @@
"ban-ip": "Ban IP",
"view-history": "Edit History",
"bookmark_instructions": "Klik her for at vende tilbage til den sidst læste indlæg i denne tråd.",
- "flag_title": "Meld dette indlæg til moderation",
+ "flag_post": "Flag this post",
+ "flag_user": "Flag this user",
"merged_message": "This topic has been merged into %2",
"deleted_message": "Denne tråd er blevet slettet. Kun brugere med emne behandlings privilegier kan se den.",
"following_topic.message": "Du vil nu modtage notifikationer når nogle skriver et indlæg i dette emne.",
diff --git a/public/language/de/admin/manage/categories.json b/public/language/de/admin/manage/categories.json
index 18311a74b0..7acbf35a14 100644
--- a/public/language/de/admin/manage/categories.json
+++ b/public/language/de/admin/manage/categories.json
@@ -11,6 +11,7 @@
"num-recent-replies": "Anzahl neuer Antworten",
"ext-link": "Externer Link",
"is-section": "Behandle diese Kategorie als Abschnitt",
+ "tag-whitelist": "Tag Whitelist",
"upload-image": "Bild hochladen",
"delete-image": "Entfernen",
"category-image": "Kategoriebild",
diff --git a/public/language/de/admin/settings/post.json b/public/language/de/admin/settings/post.json
index ce2d8980fb..2115e7d6a6 100644
--- a/public/language/de/admin/settings/post.json
+++ b/public/language/de/admin/settings/post.json
@@ -42,6 +42,7 @@
"unread.cutoff": "Ungelesen-Limit (in Tagen)",
"unread.min-track-last": "Minimale Anzahl an Beiträgen pro Thema bevor die letzte Sichtung mitgeschrieben wird",
"recent": "Kürzlich verwendete Einstellungen",
+ "recent.max-topics": "Maximum topics on /recent",
"recent.categoryFilter.disable": "Filtern von Themen in ignorierten Kategorien auf der /recent Seite deaktivieren",
"signature": "Signatureinstellungen",
"signature.disable": "Signaturen deaktivieren",
diff --git a/public/language/de/topic.json b/public/language/de/topic.json
index b15d97b5db..220a48753f 100644
--- a/public/language/de/topic.json
+++ b/public/language/de/topic.json
@@ -36,7 +36,8 @@
"ban-ip": "IP-Adresse bannen",
"view-history": "Verlauf bearbeiten",
"bookmark_instructions": "Klicke hier, um zum letzten gelesenen Beitrag des Themas zurückzukehren.",
- "flag_title": "Diesen Beitrag melden",
+ "flag_post": "Flag this post",
+ "flag_user": "Flag this user",
"merged_message": "Dieses Thema wurde mit %2 zusammengeführt",
"deleted_message": "Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.",
"following_topic.message": "Du erhältst nun eine Benachrichtigung, wenn jemand einen Beitrag zu diesem Thema verfasst.",
diff --git a/public/language/el/admin/manage/categories.json b/public/language/el/admin/manage/categories.json
index 1eda6ea080..a8949c654b 100644
--- a/public/language/el/admin/manage/categories.json
+++ b/public/language/el/admin/manage/categories.json
@@ -11,6 +11,7 @@
"num-recent-replies": "# of Recent Replies",
"ext-link": "External Link",
"is-section": "Treat this category as a section",
+ "tag-whitelist": "Tag Whitelist",
"upload-image": "Upload Image",
"delete-image": "Remove",
"category-image": "Category Image",
diff --git a/public/language/el/admin/settings/post.json b/public/language/el/admin/settings/post.json
index da708f4c6c..a8d0046355 100644
--- a/public/language/el/admin/settings/post.json
+++ b/public/language/el/admin/settings/post.json
@@ -42,6 +42,7 @@
"unread.cutoff": "Unread cutoff days",
"unread.min-track-last": "Minimum posts in topic before tracking last read",
"recent": "Recent Settings",
+ "recent.max-topics": "Maximum topics on /recent",
"recent.categoryFilter.disable": "Disable filtering of topics in ignored categories on the /recent page",
"signature": "Signature Settings",
"signature.disable": "Disable signatures",
diff --git a/public/language/el/topic.json b/public/language/el/topic.json
index 5ffde07295..fae357a479 100644
--- a/public/language/el/topic.json
+++ b/public/language/el/topic.json
@@ -36,7 +36,8 @@
"ban-ip": "Ban IP",
"view-history": "Edit History",
"bookmark_instructions": "Click here to return to the last read post in this thread.",
- "flag_title": "Επισήμανση αυτής της δημοσίευσης για συντονισμό",
+ "flag_post": "Flag this post",
+ "flag_user": "Flag this user",
"merged_message": "This topic has been merged into %2",
"deleted_message": "Το θέμα αυτό έχει διαγραφεί. Μόνο οι χρήστες με δικαιώματα διαχειριστή θεμάτων μπορούν να το δουν.",
"following_topic.message": "Θα λαμβάνεις ειδοποιήσεις όποτε κάποιος δημοσιεύει κάτι σε αυτό το θέμα.",
diff --git a/public/language/en-GB/admin/settings/post.json b/public/language/en-GB/admin/settings/post.json
index da708f4c6c..a8d0046355 100644
--- a/public/language/en-GB/admin/settings/post.json
+++ b/public/language/en-GB/admin/settings/post.json
@@ -42,6 +42,7 @@
"unread.cutoff": "Unread cutoff days",
"unread.min-track-last": "Minimum posts in topic before tracking last read",
"recent": "Recent Settings",
+ "recent.max-topics": "Maximum topics on /recent",
"recent.categoryFilter.disable": "Disable filtering of topics in ignored categories on the /recent page",
"signature": "Signature Settings",
"signature.disable": "Disable signatures",
diff --git a/public/language/en-GB/topic.json b/public/language/en-GB/topic.json
index f61d3d8a87..8498b83b1e 100644
--- a/public/language/en-GB/topic.json
+++ b/public/language/en-GB/topic.json
@@ -41,7 +41,8 @@
"bookmark_instructions" : "Click here to return to the last read post in this thread.",
- "flag_title": "Flag this post for moderation",
+ "flag_post": "Flag this post",
+ "flag_user": "Flag this user",
"merged_message": "This topic has been merged into %2",
"deleted_message": "This topic has been deleted. Only users with topic management privileges can see it.",
diff --git a/public/language/en-US/admin/manage/categories.json b/public/language/en-US/admin/manage/categories.json
index 1eda6ea080..a8949c654b 100644
--- a/public/language/en-US/admin/manage/categories.json
+++ b/public/language/en-US/admin/manage/categories.json
@@ -11,6 +11,7 @@
"num-recent-replies": "# of Recent Replies",
"ext-link": "External Link",
"is-section": "Treat this category as a section",
+ "tag-whitelist": "Tag Whitelist",
"upload-image": "Upload Image",
"delete-image": "Remove",
"category-image": "Category Image",
diff --git a/public/language/en-US/admin/settings/post.json b/public/language/en-US/admin/settings/post.json
index cef97c6aba..6f848f64d6 100644
--- a/public/language/en-US/admin/settings/post.json
+++ b/public/language/en-US/admin/settings/post.json
@@ -42,6 +42,7 @@
"unread.cutoff": "Unread cutoff days",
"unread.min-track-last": "Minimum posts in topic before tracking last read",
"recent": "Recent Settings",
+ "recent.max-topics": "Maximum topics on /recent",
"recent.categoryFilter.disable": "Disable filtering of topics in ignored categories on the /recent page",
"signature": "Signature Settings",
"signature.disable": "Disable signatures",
diff --git a/public/language/en-US/topic.json b/public/language/en-US/topic.json
index add804e10c..93e2256833 100644
--- a/public/language/en-US/topic.json
+++ b/public/language/en-US/topic.json
@@ -36,7 +36,8 @@
"ban-ip": "Ban IP",
"view-history": "Edit History",
"bookmark_instructions": "Click here to return to the last read post in this thread.",
- "flag_title": "Flag this post for moderation",
+ "flag_post": "Flag this post",
+ "flag_user": "Flag this user",
"merged_message": "This topic has been merged into %2",
"deleted_message": "This topic has been deleted. Only users with topic management privileges can see it.",
"following_topic.message": "You will now be receiving notifications when somebody posts to this topic.",
diff --git a/public/language/en-x-pirate/admin/manage/categories.json b/public/language/en-x-pirate/admin/manage/categories.json
index 1eda6ea080..a8949c654b 100644
--- a/public/language/en-x-pirate/admin/manage/categories.json
+++ b/public/language/en-x-pirate/admin/manage/categories.json
@@ -11,6 +11,7 @@
"num-recent-replies": "# of Recent Replies",
"ext-link": "External Link",
"is-section": "Treat this category as a section",
+ "tag-whitelist": "Tag Whitelist",
"upload-image": "Upload Image",
"delete-image": "Remove",
"category-image": "Category Image",
diff --git a/public/language/en-x-pirate/admin/settings/post.json b/public/language/en-x-pirate/admin/settings/post.json
index da708f4c6c..a8d0046355 100644
--- a/public/language/en-x-pirate/admin/settings/post.json
+++ b/public/language/en-x-pirate/admin/settings/post.json
@@ -42,6 +42,7 @@
"unread.cutoff": "Unread cutoff days",
"unread.min-track-last": "Minimum posts in topic before tracking last read",
"recent": "Recent Settings",
+ "recent.max-topics": "Maximum topics on /recent",
"recent.categoryFilter.disable": "Disable filtering of topics in ignored categories on the /recent page",
"signature": "Signature Settings",
"signature.disable": "Disable signatures",
diff --git a/public/language/en-x-pirate/topic.json b/public/language/en-x-pirate/topic.json
index add804e10c..93e2256833 100644
--- a/public/language/en-x-pirate/topic.json
+++ b/public/language/en-x-pirate/topic.json
@@ -36,7 +36,8 @@
"ban-ip": "Ban IP",
"view-history": "Edit History",
"bookmark_instructions": "Click here to return to the last read post in this thread.",
- "flag_title": "Flag this post for moderation",
+ "flag_post": "Flag this post",
+ "flag_user": "Flag this user",
"merged_message": "This topic has been merged into %2",
"deleted_message": "This topic has been deleted. Only users with topic management privileges can see it.",
"following_topic.message": "You will now be receiving notifications when somebody posts to this topic.",
diff --git a/public/language/es/admin/manage/categories.json b/public/language/es/admin/manage/categories.json
index bcf64a7920..2efd6d1b43 100644
--- a/public/language/es/admin/manage/categories.json
+++ b/public/language/es/admin/manage/categories.json
@@ -11,6 +11,7 @@
"num-recent-replies": "# de Respuestas Recientes",
"ext-link": "Enlace Externo",
"is-section": "Tratar esta categoría como una sección",
+ "tag-whitelist": "Tag Whitelist",
"upload-image": "Subir Imagen",
"delete-image": "Eliminar",
"category-image": "Imagen de Categoría",
diff --git a/public/language/es/admin/settings/post.json b/public/language/es/admin/settings/post.json
index 75e671059a..c5f0dc8f80 100644
--- a/public/language/es/admin/settings/post.json
+++ b/public/language/es/admin/settings/post.json
@@ -42,6 +42,7 @@
"unread.cutoff": "Días límite sin leer",
"unread.min-track-last": "Entradas mínimas en un tema antes de indicar la última leída.",
"recent": "Configuraciones recientes",
+ "recent.max-topics": "Maximum topics on /recent",
"recent.categoryFilter.disable": "Desactivar el filtrado de teas en categorías ignoradas en la página /reciente",
"signature": "Configuraciones de Firma",
"signature.disable": "Desactivar firmas",
diff --git a/public/language/es/topic.json b/public/language/es/topic.json
index 9e759a09d9..4ae7747dea 100644
--- a/public/language/es/topic.json
+++ b/public/language/es/topic.json
@@ -36,7 +36,8 @@
"ban-ip": "Banear IP",
"view-history": "Editar Historial",
"bookmark_instructions": "Haz click aquí para volver a tu último mensaje leído en este tema",
- "flag_title": "Reportar este mensaje",
+ "flag_post": "Flag this post",
+ "flag_user": "Flag this user",
"merged_message": "Este tema ha sido fusionado en %2",
"deleted_message": "Este tema ha sido borrado. Solo los usuarios que tengan privilegios de administración de temas pueden verlo.",
"following_topic.message": "Ahora recibiras notificaciones cuando alguien publique en este tema.",
diff --git a/public/language/et/admin/manage/categories.json b/public/language/et/admin/manage/categories.json
index 1eda6ea080..a8949c654b 100644
--- a/public/language/et/admin/manage/categories.json
+++ b/public/language/et/admin/manage/categories.json
@@ -11,6 +11,7 @@
"num-recent-replies": "# of Recent Replies",
"ext-link": "External Link",
"is-section": "Treat this category as a section",
+ "tag-whitelist": "Tag Whitelist",
"upload-image": "Upload Image",
"delete-image": "Remove",
"category-image": "Category Image",
diff --git a/public/language/et/admin/settings/post.json b/public/language/et/admin/settings/post.json
index da708f4c6c..a8d0046355 100644
--- a/public/language/et/admin/settings/post.json
+++ b/public/language/et/admin/settings/post.json
@@ -42,6 +42,7 @@
"unread.cutoff": "Unread cutoff days",
"unread.min-track-last": "Minimum posts in topic before tracking last read",
"recent": "Recent Settings",
+ "recent.max-topics": "Maximum topics on /recent",
"recent.categoryFilter.disable": "Disable filtering of topics in ignored categories on the /recent page",
"signature": "Signature Settings",
"signature.disable": "Disable signatures",
diff --git a/public/language/et/topic.json b/public/language/et/topic.json
index c20b41d93f..b9cab0a4eb 100644
--- a/public/language/et/topic.json
+++ b/public/language/et/topic.json
@@ -36,7 +36,8 @@
"ban-ip": "Ban IP",
"view-history": "Edit History",
"bookmark_instructions": "Vajuta siia, et tagasi minna viimati loetud postituse juurde siin teemas.",
- "flag_title": "Märgista see postitus modereerimiseks",
+ "flag_post": "Flag this post",
+ "flag_user": "Flag this user",
"merged_message": "This topic has been merged into %2",
"deleted_message": "See teema on kustutatud. Ainult kasutajad kellel on piisavalt õigusi saavad seda näha.",
"following_topic.message": "Sulle ei edastata enam teateid uutest postitustest kui keegi postitab siia teemasse.",
diff --git a/public/language/fa-IR/admin/manage/categories.json b/public/language/fa-IR/admin/manage/categories.json
index 331d193041..6b8abfef90 100644
--- a/public/language/fa-IR/admin/manage/categories.json
+++ b/public/language/fa-IR/admin/manage/categories.json
@@ -11,6 +11,7 @@
"num-recent-replies": "# of Recent Replies",
"ext-link": "External Link",
"is-section": "Treat this category as a section",
+ "tag-whitelist": "Tag Whitelist",
"upload-image": "Upload Image",
"delete-image": "Remove",
"category-image": "Category Image",
diff --git a/public/language/fa-IR/admin/settings/post.json b/public/language/fa-IR/admin/settings/post.json
index da708f4c6c..a8d0046355 100644
--- a/public/language/fa-IR/admin/settings/post.json
+++ b/public/language/fa-IR/admin/settings/post.json
@@ -42,6 +42,7 @@
"unread.cutoff": "Unread cutoff days",
"unread.min-track-last": "Minimum posts in topic before tracking last read",
"recent": "Recent Settings",
+ "recent.max-topics": "Maximum topics on /recent",
"recent.categoryFilter.disable": "Disable filtering of topics in ignored categories on the /recent page",
"signature": "Signature Settings",
"signature.disable": "Disable signatures",
diff --git a/public/language/fa-IR/topic.json b/public/language/fa-IR/topic.json
index 2d58f2f682..8d615b4669 100644
--- a/public/language/fa-IR/topic.json
+++ b/public/language/fa-IR/topic.json
@@ -36,7 +36,8 @@
"ban-ip": "مسدود کردن IP",
"view-history": "تاریخچه ویرایش",
"bookmark_instructions": "برای بازگشت به آخرین پست در این موضوع اینجا را کلیک کنید.",
- "flag_title": "پرچمگذاری این موضوع برای بررسی ناظران",
+ "flag_post": "Flag this post",
+ "flag_user": "Flag this user",
"merged_message": "این تاپیک با %2 ادغام شد",
"deleted_message": "این موضوع پاک شده است. تنها کاربرانِ با حق مدیریت موضوع میتوانند آن را ببینند.",
"following_topic.message": "از این پس اگر کسی در این موضوع پست بگذارد، شما آگاه خواهید شد.",
diff --git a/public/language/fi/admin/manage/categories.json b/public/language/fi/admin/manage/categories.json
index 1eda6ea080..a8949c654b 100644
--- a/public/language/fi/admin/manage/categories.json
+++ b/public/language/fi/admin/manage/categories.json
@@ -11,6 +11,7 @@
"num-recent-replies": "# of Recent Replies",
"ext-link": "External Link",
"is-section": "Treat this category as a section",
+ "tag-whitelist": "Tag Whitelist",
"upload-image": "Upload Image",
"delete-image": "Remove",
"category-image": "Category Image",
diff --git a/public/language/fi/admin/settings/post.json b/public/language/fi/admin/settings/post.json
index da708f4c6c..a8d0046355 100644
--- a/public/language/fi/admin/settings/post.json
+++ b/public/language/fi/admin/settings/post.json
@@ -42,6 +42,7 @@
"unread.cutoff": "Unread cutoff days",
"unread.min-track-last": "Minimum posts in topic before tracking last read",
"recent": "Recent Settings",
+ "recent.max-topics": "Maximum topics on /recent",
"recent.categoryFilter.disable": "Disable filtering of topics in ignored categories on the /recent page",
"signature": "Signature Settings",
"signature.disable": "Disable signatures",
diff --git a/public/language/fi/topic.json b/public/language/fi/topic.json
index 817c1835df..e7c1dc979c 100644
--- a/public/language/fi/topic.json
+++ b/public/language/fi/topic.json
@@ -36,7 +36,8 @@
"ban-ip": "Ban IP",
"view-history": "Muokkaa historiaa",
"bookmark_instructions": "Klikkaa tästä palataksesi viimeisimpään luettuun viestiin tässä aiheessa",
- "flag_title": "Ilmianna tämä viesti moderaattoreille",
+ "flag_post": "Flag this post",
+ "flag_user": "Flag this user",
"merged_message": "Tämä aihe on sulautettu aiheeseen %2¤",
"deleted_message": "Tämä aihe on poistettu. Vain käyttäjät, joilla on aiheen hallintaoikeudet, voivat nähdä sen.",
"following_topic.message": "Saat nyt ilmoituksen, kun joku kirjoittaa tähän aiheeseen.",
diff --git a/public/language/fr/admin/manage/categories.json b/public/language/fr/admin/manage/categories.json
index 927dc5747b..c716605965 100644
--- a/public/language/fr/admin/manage/categories.json
+++ b/public/language/fr/admin/manage/categories.json
@@ -11,6 +11,7 @@
"num-recent-replies": "# de réponses récentes",
"ext-link": "Lien externe",
"is-section": "Traiter cette catégorie comme une section",
+ "tag-whitelist": "Liste blanche de mots clés",
"upload-image": "Envoyer une image",
"delete-image": "Enlever",
"category-image": "Image de la catégorie",
diff --git a/public/language/fr/admin/settings/post.json b/public/language/fr/admin/settings/post.json
index 26c8992e2e..dc62df6988 100644
--- a/public/language/fr/admin/settings/post.json
+++ b/public/language/fr/admin/settings/post.json
@@ -42,6 +42,7 @@
"unread.cutoff": "Nombre de jours pour les messages non-lus",
"unread.min-track-last": "Nombre minimum de messages dans le sujet avant de garder en mémoire le dernier message lu",
"recent": "Réglages récents",
+ "recent.max-topics": "Maximum topics on /recent",
"recent.categoryFilter.disable": "Désactiver le filtrage des sujets dans les catégories ignorées sur la page /recent",
"signature": "Paramètres de signature",
"signature.disable": "Désactiver les signatures",
diff --git a/public/language/fr/notifications.json b/public/language/fr/notifications.json
index b51e163cda..913efafb54 100644
--- a/public/language/fr/notifications.json
+++ b/public/language/fr/notifications.json
@@ -43,9 +43,9 @@
"new_register_multiple": "%1 inscription(s) est en attente de validation.",
"flag_assigned_to_you": "Drapeau %1 vous a été assigné",
"post_awaiting_review": "Message en attente de validation",
- "profile-exported": "%1 profile exported, click to download",
- "posts-exported": "%1 posts exported, click to download",
- "uploads-exported": "%1 uploads exported, click to download",
+ "profile-exported": "%1 profil exporté, cliquez pour le télécharger",
+ "posts-exported": "%1 messages exportés, cliquez pour les télécharger",
+ "uploads-exported": "%1 envois exportés, cliquez pour les télécharger",
"email-confirmed": "Email vérifié",
"email-confirmed-message": "Merci pour la validation de votre adresse email. Votre compte est désormais activé.",
"email-confirm-error-message": "Il y a un un problème dans la vérification de votre adresse email. Le code est peut être invalide ou a expiré.",
diff --git a/public/language/fr/topic.json b/public/language/fr/topic.json
index 4c7c7dcf71..029c341380 100644
--- a/public/language/fr/topic.json
+++ b/public/language/fr/topic.json
@@ -36,7 +36,8 @@
"ban-ip": "Bannir l'IP",
"view-history": "Éditer l'historique",
"bookmark_instructions": "Cliquez ici pour retourner au dernier message lu de ce fil.",
- "flag_title": "Signaler ce message à la modération",
+ "flag_post": "Flag this post",
+ "flag_user": "Flag this user",
"merged_message": "Ce sujet a été fusionné dans %2",
"deleted_message": "Ce sujet a été supprimé. Seuls les utilisateurs avec les droits d'administration peuvent le voir.",
"following_topic.message": "Vous recevrez désormais des notifications lorsque quelqu'un postera dans ce sujet.",
diff --git a/public/language/fr/user.json b/public/language/fr/user.json
index b189a4ac8b..40569695c5 100644
--- a/public/language/fr/user.json
+++ b/public/language/fr/user.json
@@ -179,9 +179,9 @@
"consent.right_to_data_portability": "Vous avez la possibilité de portabilité des données.",
"consent.right_to_data_portability_description": "Vous pouvez exporter de toutes vos données collectées. Vous pouvez le faire en cliquant sur le bouton ci-dessous.",
"consent.export_profile": "Exporter Profile (.json)",
- "consent.export-profile-success": "Exporting profile, you will get a notification when it is complete.",
+ "consent.export-profile-success": "Exportation du profil, vous recevrez une notification lorsqu'elle sera terminée.",
"consent.export_uploads": "Exporter le contenu de vos fichiers envoyés (.zip)",
- "consent.export-uploads-success": "Exporting uploads, you will get a notification when it is complete.",
+ "consent.export-uploads-success": "Exportation des envois, vous recevrez une notification lorsqu'elle sera terminée.",
"consent.export_posts": "Exporter vos messages (.csv)",
- "consent.export-posts-success": "Exporting posts, you will get a notification when it is complete."
+ "consent.export-posts-success": "Exportation des messages, vous recevrez une notification lorsqu'elle sera terminée."
}
\ No newline at end of file
diff --git a/public/language/gl/admin/manage/categories.json b/public/language/gl/admin/manage/categories.json
index 1eda6ea080..a8949c654b 100644
--- a/public/language/gl/admin/manage/categories.json
+++ b/public/language/gl/admin/manage/categories.json
@@ -11,6 +11,7 @@
"num-recent-replies": "# of Recent Replies",
"ext-link": "External Link",
"is-section": "Treat this category as a section",
+ "tag-whitelist": "Tag Whitelist",
"upload-image": "Upload Image",
"delete-image": "Remove",
"category-image": "Category Image",
diff --git a/public/language/gl/admin/settings/post.json b/public/language/gl/admin/settings/post.json
index da708f4c6c..a8d0046355 100644
--- a/public/language/gl/admin/settings/post.json
+++ b/public/language/gl/admin/settings/post.json
@@ -42,6 +42,7 @@
"unread.cutoff": "Unread cutoff days",
"unread.min-track-last": "Minimum posts in topic before tracking last read",
"recent": "Recent Settings",
+ "recent.max-topics": "Maximum topics on /recent",
"recent.categoryFilter.disable": "Disable filtering of topics in ignored categories on the /recent page",
"signature": "Signature Settings",
"signature.disable": "Disable signatures",
diff --git a/public/language/gl/topic.json b/public/language/gl/topic.json
index a83055e20f..e6dc0ceb31 100644
--- a/public/language/gl/topic.json
+++ b/public/language/gl/topic.json
@@ -36,7 +36,8 @@
"ban-ip": "Ban IP",
"view-history": "Edit History",
"bookmark_instructions": "Pica aquí para volver á última mensaxe lida neste tema ",
- "flag_title": "Reportar esta mensaxe",
+ "flag_post": "Flag this post",
+ "flag_user": "Flag this user",
"merged_message": "This topic has been merged into %2",
"deleted_message": "Este tema foi borrado. Só os usuarios con privilexios administrativos poden velo.",
"following_topic.message": "Agora recibirás notificacións cando alguén publique neste tema.",
diff --git a/public/language/he/admin/advanced/database.json b/public/language/he/admin/advanced/database.json
index f395f51052..50389867f6 100644
--- a/public/language/he/admin/advanced/database.json
+++ b/public/language/he/admin/advanced/database.json
@@ -18,17 +18,17 @@
"mongo.resident-memory": "זכרון קיים",
"mongo.virtual-memory": "זיכרון וירטואלי",
"mongo.mapped-memory": "זיכרון ממופה",
- "mongo.bytes-in": "Bytes In",
- "mongo.bytes-out": "Bytes Out",
+ "mongo.bytes-in": "ביטים נכנסים",
+ "mongo.bytes-out": "ביטים יוצאים",
"mongo.num-requests": "מספר בקשות",
"mongo.raw-info": "מידע לא מעובד מMongoDB",
"mongo.unauthorized": "NodeBB was unable to query the MongoDB database for relevant statistics. Please ensure that the user in use by NodeBB contains the "clusterMonitor" role for the "admin" database.",
"redis": "Redis",
"redis.version": "גרסת Redis",
- "redis.keys": "Keys",
- "redis.expires": "Expires",
- "redis.avg-ttl": "Average TTL",
+ "redis.keys": "מפתחות",
+ "redis.expires": "פג תוקף",
+ "redis.avg-ttl": "זמן TTL ממוצע",
"redis.connected-clients": "לקוחות מחוברים",
"redis.connected-slaves": "לקוחות מחוברים",
"redis.blocked-clients": "לקוחות חסומים",
@@ -39,8 +39,8 @@
"redis.iops": "Instantaneous Ops. Per Second",
"redis.iinput": "Instantaneous Input Per Second",
"redis.ioutput": "Instantaneous Output Per Second",
- "redis.total-input": "Total Input",
- "redis.total-output": "Total Ouput",
+ "redis.total-input": "סך הכל מידע נכנס",
+ "redis.total-output": "סך הכל מידע יוצא",
"redis.keyspace-hits": "Keyspace Hits",
"redis.keyspace-misses": "Keyspace Misses",
diff --git a/public/language/he/admin/manage/categories.json b/public/language/he/admin/manage/categories.json
index 1eda6ea080..a8949c654b 100644
--- a/public/language/he/admin/manage/categories.json
+++ b/public/language/he/admin/manage/categories.json
@@ -11,6 +11,7 @@
"num-recent-replies": "# of Recent Replies",
"ext-link": "External Link",
"is-section": "Treat this category as a section",
+ "tag-whitelist": "Tag Whitelist",
"upload-image": "Upload Image",
"delete-image": "Remove",
"category-image": "Category Image",
diff --git a/public/language/he/admin/manage/privileges.json b/public/language/he/admin/manage/privileges.json
index 24aa4b47bd..14d22ab23e 100644
--- a/public/language/he/admin/manage/privileges.json
+++ b/public/language/he/admin/manage/privileges.json
@@ -1,9 +1,9 @@
{
"global": "כללי",
"global.no-users": "אין הרשאות כלליות למשתמשים מסויימים",
- "admin": "Admin",
- "group-privileges": "Group Privileges",
- "user-privileges": "User Privileges",
+ "admin": "מנהל",
+ "group-privileges": "הרשאות קבוצתיות",
+ "user-privileges": "הרשאות משתמש",
"chat": "צ'אט",
"upload-images": "העלאת תמונות",
"upload-files": "העלאת קבצים",
@@ -17,7 +17,7 @@
"view-groups": "צפייה בקבוצות",
"allow-local-login": "התחברות מקומית",
"allow-group-creation": "יצרת קבוצות",
- "view-users-info": "View Users Info",
+ "view-users-info": "צפיה במידע משתמש",
"find-category": "מציאת הקטגוריה",
"access-category": "גישה לקטגוריה",
"access-topics": "גישה לנושאים",
@@ -30,13 +30,13 @@
"view_deleted": "הצגת פוסטים מחוקים",
"upvote-posts": "Upvote Posts",
"downvote-posts": "Downvote Posts",
- "delete-topics": "Delete Topics",
+ "delete-topics": "מחיקת נושא",
"purge": "Purge",
"moderate": "Moderate",
- "admin-dashboard": "Dashboard",
- "admin-categories": "Categories",
- "admin-privileges": "Privileges",
- "admin-users": "Users",
- "admin-settings": "Settings"
+ "admin-dashboard": "לוח מחוונים",
+ "admin-categories": "קטגוריות",
+ "admin-privileges": "הרשאות",
+ "admin-users": "משתמשים",
+ "admin-settings": "הגדרות"
}
\ No newline at end of file
diff --git a/public/language/he/admin/settings/post.json b/public/language/he/admin/settings/post.json
index f33a0f6f3d..0262e7cb79 100644
--- a/public/language/he/admin/settings/post.json
+++ b/public/language/he/admin/settings/post.json
@@ -42,6 +42,7 @@
"unread.cutoff": "Unread cutoff days",
"unread.min-track-last": "Minimum posts in topic before tracking last read",
"recent": "Recent Settings",
+ "recent.max-topics": "Maximum topics on /recent",
"recent.categoryFilter.disable": "Disable filtering of topics in ignored categories on the /recent page",
"signature": "Signature Settings",
"signature.disable": "Disable signatures",
diff --git a/public/language/he/topic.json b/public/language/he/topic.json
index 8d5ed235e6..d25b75f302 100644
--- a/public/language/he/topic.json
+++ b/public/language/he/topic.json
@@ -36,7 +36,8 @@
"ban-ip": "הרחק כתובת IP",
"view-history": "ערוך היסטוריה",
"bookmark_instructions": "לחץ כאן לחזור לפוסט האחרון שקראת בנושא הזה.",
- "flag_title": "דווח על פוסט זה למנהל",
+ "flag_post": "Flag this post",
+ "flag_user": "Flag this user",
"merged_message": "נושא זה מוזג עם %2",
"deleted_message": "נושא זה נמחק. רק משתמשים עם ההרשאות המתאימות יכולים לצפות בו.",
"following_topic.message": "מעתה, תקבל הודעות כאשר מישהו יעלה פוסט לנושא זה.",
diff --git a/public/language/hr/admin/manage/categories.json b/public/language/hr/admin/manage/categories.json
index a0346abd77..c27226e58c 100644
--- a/public/language/hr/admin/manage/categories.json
+++ b/public/language/hr/admin/manage/categories.json
@@ -11,6 +11,7 @@
"num-recent-replies": "# nedavnih objava",
"ext-link": "Vanjska poveznica",
"is-section": "Treat this category as a section",
+ "tag-whitelist": "Tag Whitelist",
"upload-image": "Učitaj sliku",
"delete-image": "Ukloni",
"category-image": "Slika kategorije",
diff --git a/public/language/hr/admin/settings/post.json b/public/language/hr/admin/settings/post.json
index abe0112c2d..9cc882e9e3 100644
--- a/public/language/hr/admin/settings/post.json
+++ b/public/language/hr/admin/settings/post.json
@@ -42,6 +42,7 @@
"unread.cutoff": "Nepročitano dani prekinutosti",
"unread.min-track-last": "Minimalni broj objava u temi prije praćenja zadnje pročitanog",
"recent": "Nedavne postavke",
+ "recent.max-topics": "Maximum topics on /recent",
"recent.categoryFilter.disable": "onemogući filtriranje tema u ignoriranim kategorijama na stranici /nedavno",
"signature": "Postavke potpisa",
"signature.disable": "Onemogući potpise",
diff --git a/public/language/hr/topic.json b/public/language/hr/topic.json
index e2f5486e6e..4a822344a0 100644
--- a/public/language/hr/topic.json
+++ b/public/language/hr/topic.json
@@ -36,7 +36,8 @@
"ban-ip": "Ban IP",
"view-history": "Edit History",
"bookmark_instructions": "Klikni ovdje za povratak na zadnji pročitani post.",
- "flag_title": "Označi ovaj post za zastavom za moderaciju",
+ "flag_post": "Flag this post",
+ "flag_user": "Flag this user",
"merged_message": "This topic has been merged into %2",
"deleted_message": "Ova tema je obrisana. Samo korisnici sa privilegijom upravljanja tema je mogu vidjeti.",
"following_topic.message": "Od sada ćete primati obavijesti kada netko objavi objavu u ovoj temi.",
diff --git a/public/language/hu/admin/manage/categories.json b/public/language/hu/admin/manage/categories.json
index 0d78a254f1..ceb5f83827 100644
--- a/public/language/hu/admin/manage/categories.json
+++ b/public/language/hu/admin/manage/categories.json
@@ -11,6 +11,7 @@
"num-recent-replies": "Utóbbi válaszok száma",
"ext-link": "Külső link",
"is-section": "Ez a kategória legyen szakaszként kezelve",
+ "tag-whitelist": "Tag Whitelist",
"upload-image": "Kép feltöltése",
"delete-image": "Törlés",
"category-image": "Kategóriakép",
diff --git a/public/language/hu/admin/settings/post.json b/public/language/hu/admin/settings/post.json
index da708f4c6c..a8d0046355 100644
--- a/public/language/hu/admin/settings/post.json
+++ b/public/language/hu/admin/settings/post.json
@@ -42,6 +42,7 @@
"unread.cutoff": "Unread cutoff days",
"unread.min-track-last": "Minimum posts in topic before tracking last read",
"recent": "Recent Settings",
+ "recent.max-topics": "Maximum topics on /recent",
"recent.categoryFilter.disable": "Disable filtering of topics in ignored categories on the /recent page",
"signature": "Signature Settings",
"signature.disable": "Disable signatures",
diff --git a/public/language/hu/topic.json b/public/language/hu/topic.json
index c375a7b6e2..282ad9c49d 100644
--- a/public/language/hu/topic.json
+++ b/public/language/hu/topic.json
@@ -36,7 +36,8 @@
"ban-ip": "IP-cím kitiltása",
"view-history": "Edit History",
"bookmark_instructions": "Kattints ide a beszélgetés utolsó hozzászólására ugráshoz.",
- "flag_title": "A hozzászólás jelentése a moderátoroknál",
+ "flag_post": "Flag this post",
+ "flag_user": "Flag this user",
"merged_message": "A témakör következőbe lett összevonva: %2",
"deleted_message": "A témakör törölve lett. Csak a témakör-kezelési joggal rendelkező felhasználók láthatják.",
"following_topic.message": "Mostantól értesítést kapsz, mikor valaki hozzászól ehhez a témakörhöz.",
diff --git a/public/language/id/admin/manage/categories.json b/public/language/id/admin/manage/categories.json
index 1eda6ea080..a8949c654b 100644
--- a/public/language/id/admin/manage/categories.json
+++ b/public/language/id/admin/manage/categories.json
@@ -11,6 +11,7 @@
"num-recent-replies": "# of Recent Replies",
"ext-link": "External Link",
"is-section": "Treat this category as a section",
+ "tag-whitelist": "Tag Whitelist",
"upload-image": "Upload Image",
"delete-image": "Remove",
"category-image": "Category Image",
diff --git a/public/language/id/admin/settings/post.json b/public/language/id/admin/settings/post.json
index da708f4c6c..a8d0046355 100644
--- a/public/language/id/admin/settings/post.json
+++ b/public/language/id/admin/settings/post.json
@@ -42,6 +42,7 @@
"unread.cutoff": "Unread cutoff days",
"unread.min-track-last": "Minimum posts in topic before tracking last read",
"recent": "Recent Settings",
+ "recent.max-topics": "Maximum topics on /recent",
"recent.categoryFilter.disable": "Disable filtering of topics in ignored categories on the /recent page",
"signature": "Signature Settings",
"signature.disable": "Disable signatures",
diff --git a/public/language/id/topic.json b/public/language/id/topic.json
index 31fc4ffaae..171f3067df 100644
--- a/public/language/id/topic.json
+++ b/public/language/id/topic.json
@@ -36,7 +36,8 @@
"ban-ip": "Ban IP",
"view-history": "Edit History",
"bookmark_instructions": "Klik di sini untuk kembali ke posting yang terakhir kali dibaca pada topik ini.",
- "flag_title": "Tandai posting ini untuk moderasi",
+ "flag_post": "Flag this post",
+ "flag_user": "Flag this user",
"merged_message": "This topic has been merged into %2",
"deleted_message": "Topik ini telah dihapus. Hanya pengguna dengan hak manajemen topik yang dapat melihatnya.",
"following_topic.message": "Saat ini kamu akan menerima pemberitahuan saat seseorang membuat posting di dalam topik ini.",
diff --git a/public/language/it/admin/manage/categories.json b/public/language/it/admin/manage/categories.json
index 9a0407d8f2..41d0d6bcbb 100644
--- a/public/language/it/admin/manage/categories.json
+++ b/public/language/it/admin/manage/categories.json
@@ -5,12 +5,13 @@
"name": "Nome Categoria",
"description": "Descrizione categoria",
"bg-color": "Colore sfondo",
- "text-color": "Colore del testo",
+ "text-color": "Colore testo",
"bg-image-size": "Dimensione dell'immagine di sfondo",
"custom-class": "Classe personalizzata",
"num-recent-replies": "# di Repliche Recenti",
"ext-link": "Link esterni",
"is-section": "Tratta questa categoria come una sezione",
+ "tag-whitelist": "Whitelist tag",
"upload-image": "Caricamento Immagine",
"delete-image": "Rimuove",
"category-image": "Immagine di Categoria",
diff --git a/public/language/it/admin/settings/pagination.json b/public/language/it/admin/settings/pagination.json
index d32d1f3073..9a8cf1cbb0 100644
--- a/public/language/it/admin/settings/pagination.json
+++ b/public/language/it/admin/settings/pagination.json
@@ -6,5 +6,5 @@
"max-posts-per-page": "Numero massimo di post per pagina",
"categories": "Categoria Impaginazione",
"topics-per-page": "Discussioni per pagina",
- "max-topics-per-page": "Numero massimo di Discussioni per pagina"
+ "max-topics-per-page": "Numero massimo di discussioni per pagina"
}
\ No newline at end of file
diff --git a/public/language/it/admin/settings/post.json b/public/language/it/admin/settings/post.json
index a0c9aa3c66..a7ca59da17 100644
--- a/public/language/it/admin/settings/post.json
+++ b/public/language/it/admin/settings/post.json
@@ -42,6 +42,7 @@
"unread.cutoff": "Giorni di interruzione non letti",
"unread.min-track-last": "Post minimi nell'argomento prima del monitoraggio dell'ultima lettura",
"recent": "Impostazioni Recenti",
+ "recent.max-topics": "Numero massimo di discussioni in atto/recenti",
"recent.categoryFilter.disable": "Disabilita il filtro degli argomenti nelle categorie ignorate nella pagina/recente",
"signature": "Impostazioni della Firma",
"signature.disable": "Disabilita le firme",
diff --git a/public/language/it/notifications.json b/public/language/it/notifications.json
index 97c0f1d94f..f00c72445e 100644
--- a/public/language/it/notifications.json
+++ b/public/language/it/notifications.json
@@ -43,9 +43,9 @@
"new_register_multiple": "Ci sono %1 richieste di registrazione che attendono di essere esaminate.",
"flag_assigned_to_you": "Segnalazione %1 ti è stata assegnata",
"post_awaiting_review": "Post in attesa di revisione",
- "profile-exported": "%1 profile exported, click to download",
- "posts-exported": "%1 posts exported, click to download",
- "uploads-exported": "%1 uploads exported, click to download",
+ "profile-exported": "%1 profilo esportato, clicca per scaricare",
+ "posts-exported": "%1 post esportati, clicca per scaricare",
+ "uploads-exported": "%1 caricamenti esportati, clicca per scaricare",
"email-confirmed": "Email Confermata",
"email-confirmed-message": "Grazie per aver validato la tua email. Il tuo account è ora completamente attivato.",
"email-confirm-error-message": "C'è stato un problema nella validazione del tuo indirizzo email. Potrebbe essere il codice non valido o scaduto.",
diff --git a/public/language/it/topic.json b/public/language/it/topic.json
index 03d15e49cd..577fcd1bd9 100644
--- a/public/language/it/topic.json
+++ b/public/language/it/topic.json
@@ -36,7 +36,8 @@
"ban-ip": "Banna indirizzo IP",
"view-history": "Modifica storico",
"bookmark_instructions": "Clicca qui per tornare all'ultimo post letto in questa discussione.",
- "flag_title": "Segnala questo post per la moderazione",
+ "flag_post": "Flag this post",
+ "flag_user": "Flag this user",
"merged_message": "Discussione unita a %2",
"deleted_message": "Questa discussione è stata cancellata. Solo gli utenti con diritti di gestione possono vederla.",
"following_topic.message": "Da ora riceverai notifiche quando qualcuno posterà in questa discussione.",
diff --git a/public/language/it/user.json b/public/language/it/user.json
index 6e6300c615..de2d360797 100644
--- a/public/language/it/user.json
+++ b/public/language/it/user.json
@@ -179,9 +179,9 @@
"consent.right_to_data_portability": "Hai i privilegi alla portabilità dei dati",
"consent.right_to_data_portability_description": "Puoi richiedere da noi un'esportazione leggibile meccanicamente di tutti i dati raccolti su di te e sul tuo account. Puoi farlo facendo clic sul pulsante appropriato in basso.",
"consent.export_profile": "Esporta profilo (.json)",
- "consent.export-profile-success": "Exporting profile, you will get a notification when it is complete.",
+ "consent.export-profile-success": "Esportazione del profilo, riceverai una notifica al termine.",
"consent.export_uploads": "Esporta i contenuti caricati (.zip)",
- "consent.export-uploads-success": "Exporting uploads, you will get a notification when it is complete.",
+ "consent.export-uploads-success": "Esportazione dei caricamenti, riceverai una notifica al termine.",
"consent.export_posts": "Esporta i post (.csv)",
- "consent.export-posts-success": "Exporting posts, you will get a notification when it is complete."
+ "consent.export-posts-success": "Esportazione dei post, riceverai una notifica al termine."
}
\ No newline at end of file
diff --git a/public/language/ja/admin/manage/categories.json b/public/language/ja/admin/manage/categories.json
index 80810e29ab..4c0b462c4c 100644
--- a/public/language/ja/admin/manage/categories.json
+++ b/public/language/ja/admin/manage/categories.json
@@ -11,6 +11,7 @@
"num-recent-replies": "# 最近の返信数",
"ext-link": "外部リンク",
"is-section": "このカテゴリをセクションとして扱う",
+ "tag-whitelist": "Tag Whitelist",
"upload-image": "画像をアップロード",
"delete-image": "削除",
"category-image": "カテゴリ画像",
diff --git a/public/language/ja/admin/settings/post.json b/public/language/ja/admin/settings/post.json
index 8bc5143feb..6ef342d757 100644
--- a/public/language/ja/admin/settings/post.json
+++ b/public/language/ja/admin/settings/post.json
@@ -42,6 +42,7 @@
"unread.cutoff": "未読のカットオフ日",
"unread.min-track-last": "最後に読み込みを行う前に追跡するスレッドの最小投稿数",
"recent": "最近の設定",
+ "recent.max-topics": "Maximum topics on /recent",
"recent.categoryFilter.disable": "最近のページで無視されたカテゴリのトピックのフィルタリングを無効にする",
"signature": "署名の設定",
"signature.disable": "署名を無効にする",
diff --git a/public/language/ja/topic.json b/public/language/ja/topic.json
index be5734dc92..d7b3578308 100644
--- a/public/language/ja/topic.json
+++ b/public/language/ja/topic.json
@@ -36,7 +36,8 @@
"ban-ip": "IPをBan",
"view-history": "履歴を編集",
"bookmark_instructions": "ここをクリックすると、このスレッドの最後に読んでいた投稿へ移動します。",
- "flag_title": "問題を報告する",
+ "flag_post": "Flag this post",
+ "flag_user": "Flag this user",
"merged_message": "This topic has been merged into %2",
"deleted_message": "このスレッドが削除されました。スレッド管理権を持っているユーザーにしか読めません。",
"following_topic.message": "このスレッドが更新された際に通知を受け取ります。",
diff --git a/public/language/ko/admin/manage/categories.json b/public/language/ko/admin/manage/categories.json
index 56cec2f3c1..989548d4b7 100644
--- a/public/language/ko/admin/manage/categories.json
+++ b/public/language/ko/admin/manage/categories.json
@@ -11,6 +11,7 @@
"num-recent-replies": "최근 답장 갯수",
"ext-link": "외부 링크",
"is-section": "이 게시판을 섹션으로 취급",
+ "tag-whitelist": "Tag Whitelist",
"upload-image": "이미지 업로드",
"delete-image": "삭제",
"category-image": "게시판 이미지",
diff --git a/public/language/ko/admin/settings/post.json b/public/language/ko/admin/settings/post.json
index a4daa53c7d..7fc0f42192 100644
--- a/public/language/ko/admin/settings/post.json
+++ b/public/language/ko/admin/settings/post.json
@@ -42,6 +42,7 @@
"unread.cutoff": "읽지 않은 글 표기 기간",
"unread.min-track-last": "마지막으로 읽은 글 추적 기능을 사용할 최소 글 수",
"recent": "최근 작성된 글 설정",
+ "recent.max-topics": "Maximum topics on /recent",
"recent.categoryFilter.disable": "최근 작성된 글 페이지에서 무시 중인 게시판의 게시물도 포함",
"signature": "서명 설정",
"signature.disable": "서명 비활성화",
diff --git a/public/language/ko/topic.json b/public/language/ko/topic.json
index 241d339cc6..fc1d4cd040 100644
--- a/public/language/ko/topic.json
+++ b/public/language/ko/topic.json
@@ -36,7 +36,8 @@
"ban-ip": "IP 차단",
"view-history": "편집 기록",
"bookmark_instructions": "이 스레드에서 읽은 마지막 포스트로 이동하시려면 여기를 클릭 하세요.",
- "flag_title": "이 포스트를 신고",
+ "flag_post": "Flag this post",
+ "flag_user": "Flag this user",
"merged_message": "이 게시물은 %2(으)로 병합되었습니다",
"deleted_message": "이 게시물은 삭제됐습니다. 게시물 관리 권한이 있는 사용자만 볼 수 있습니다.",
"following_topic.message": "이제 이 게시물에 새 답글이 달리면 알림을 받습니다.",
diff --git a/public/language/lt/admin/manage/categories.json b/public/language/lt/admin/manage/categories.json
index 1eda6ea080..a8949c654b 100644
--- a/public/language/lt/admin/manage/categories.json
+++ b/public/language/lt/admin/manage/categories.json
@@ -11,6 +11,7 @@
"num-recent-replies": "# of Recent Replies",
"ext-link": "External Link",
"is-section": "Treat this category as a section",
+ "tag-whitelist": "Tag Whitelist",
"upload-image": "Upload Image",
"delete-image": "Remove",
"category-image": "Category Image",
diff --git a/public/language/lt/admin/settings/post.json b/public/language/lt/admin/settings/post.json
index da708f4c6c..a8d0046355 100644
--- a/public/language/lt/admin/settings/post.json
+++ b/public/language/lt/admin/settings/post.json
@@ -42,6 +42,7 @@
"unread.cutoff": "Unread cutoff days",
"unread.min-track-last": "Minimum posts in topic before tracking last read",
"recent": "Recent Settings",
+ "recent.max-topics": "Maximum topics on /recent",
"recent.categoryFilter.disable": "Disable filtering of topics in ignored categories on the /recent page",
"signature": "Signature Settings",
"signature.disable": "Disable signatures",
diff --git a/public/language/lt/topic.json b/public/language/lt/topic.json
index 3138b7a0ee..599504a9ce 100644
--- a/public/language/lt/topic.json
+++ b/public/language/lt/topic.json
@@ -36,7 +36,8 @@
"ban-ip": "Blokuoti IP",
"view-history": "Edit History",
"bookmark_instructions": "Click here to return to the last read post in this thread.",
- "flag_title": "Pažymėti ši pranešimą moderatoriams",
+ "flag_post": "Flag this post",
+ "flag_user": "Flag this user",
"merged_message": "This topic has been merged into %2",
"deleted_message": "Ši tema buvo ištrinta. Tik Vartotojai su temos redagavimo privilegijomis gali matyti ja",
"following_topic.message": "Dabar jūs gausite pranešimus kai kas nors atrašys šioje temoje.",
diff --git a/public/language/lv/admin/manage/categories.json b/public/language/lv/admin/manage/categories.json
index 849ee6f0b4..144ca15e7e 100644
--- a/public/language/lv/admin/manage/categories.json
+++ b/public/language/lv/admin/manage/categories.json
@@ -11,6 +11,7 @@
"num-recent-replies": "Neseno atbilžu skaits",
"ext-link": "Ārējā saite",
"is-section": "Izmantot kategoriju kā sadaļu",
+ "tag-whitelist": "Tag Whitelist",
"upload-image": "Augšupielādēt bildi",
"delete-image": "Noņemt",
"category-image": "Kategorijas bilde",
diff --git a/public/language/lv/admin/settings/post.json b/public/language/lv/admin/settings/post.json
index 1ca23d433c..5feaaa6775 100644
--- a/public/language/lv/admin/settings/post.json
+++ b/public/language/lv/admin/settings/post.json
@@ -42,6 +42,7 @@
"unread.cutoff": "Nelasīto rakstu vecumu robeža",
"unread.min-track-last": "Minimālais rakstu skaits tematā pirms izseko pēdējo lasīto",
"recent": "Nesenie raksti",
+ "recent.max-topics": "Maximum topics on /recent",
"recent.categoryFilter.disable": "Atspējot tematu filtrēšanu ignorētās kategorijās /recent lapā",
"signature": "Parakstīšanās",
"signature.disable": "Atspējot parakstus",
diff --git a/public/language/lv/topic.json b/public/language/lv/topic.json
index 5456af6c8e..54c6ce16a6 100644
--- a/public/language/lv/topic.json
+++ b/public/language/lv/topic.json
@@ -36,7 +36,8 @@
"ban-ip": "Bloķēt IP adresi",
"view-history": "Rediģēšanas vēsture",
"bookmark_instructions": "Noklikšķināt, lai atgrieztos pēdējā lasītā rakstā šajā pavedienā.",
- "flag_title": "Atzīmēt rakstu moderācijai",
+ "flag_post": "Flag this post",
+ "flag_user": "Flag this user",
"merged_message": "Šis temats ir apvienots ar %2",
"deleted_message": "Šis temats ir izdzēsts. To var skatīt tikai lietotāji ar temata pārvaldības privilēģijām.",
"following_topic.message": "Tagad saņemsi paziņojumus, kad kāds šai tematā rakstīs.",
diff --git a/public/language/ms/admin/manage/categories.json b/public/language/ms/admin/manage/categories.json
index 1eda6ea080..a8949c654b 100644
--- a/public/language/ms/admin/manage/categories.json
+++ b/public/language/ms/admin/manage/categories.json
@@ -11,6 +11,7 @@
"num-recent-replies": "# of Recent Replies",
"ext-link": "External Link",
"is-section": "Treat this category as a section",
+ "tag-whitelist": "Tag Whitelist",
"upload-image": "Upload Image",
"delete-image": "Remove",
"category-image": "Category Image",
diff --git a/public/language/ms/admin/settings/post.json b/public/language/ms/admin/settings/post.json
index da708f4c6c..a8d0046355 100644
--- a/public/language/ms/admin/settings/post.json
+++ b/public/language/ms/admin/settings/post.json
@@ -42,6 +42,7 @@
"unread.cutoff": "Unread cutoff days",
"unread.min-track-last": "Minimum posts in topic before tracking last read",
"recent": "Recent Settings",
+ "recent.max-topics": "Maximum topics on /recent",
"recent.categoryFilter.disable": "Disable filtering of topics in ignored categories on the /recent page",
"signature": "Signature Settings",
"signature.disable": "Disable signatures",
diff --git a/public/language/ms/topic.json b/public/language/ms/topic.json
index 386df5fb25..65abb08ec1 100644
--- a/public/language/ms/topic.json
+++ b/public/language/ms/topic.json
@@ -36,7 +36,8 @@
"ban-ip": "Ban IP",
"view-history": "Edit History",
"bookmark_instructions": "Click here to return to the last read post in this thread.",
- "flag_title": "Tanda kiriman ini untuk diselia",
+ "flag_post": "Flag this post",
+ "flag_user": "Flag this user",
"merged_message": "This topic has been merged into %2",
"deleted_message": "Topik ini telah dipadam. Hanya pengguna dengan kuasa pengurusan boleh melihatnya.",
"following_topic.message": "Anda akan menerima makluman apabila ada kiriman ke dalam topik ini",
diff --git a/public/language/nb/admin/manage/categories.json b/public/language/nb/admin/manage/categories.json
index 1eda6ea080..a8949c654b 100644
--- a/public/language/nb/admin/manage/categories.json
+++ b/public/language/nb/admin/manage/categories.json
@@ -11,6 +11,7 @@
"num-recent-replies": "# of Recent Replies",
"ext-link": "External Link",
"is-section": "Treat this category as a section",
+ "tag-whitelist": "Tag Whitelist",
"upload-image": "Upload Image",
"delete-image": "Remove",
"category-image": "Category Image",
diff --git a/public/language/nb/admin/settings/post.json b/public/language/nb/admin/settings/post.json
index da708f4c6c..a8d0046355 100644
--- a/public/language/nb/admin/settings/post.json
+++ b/public/language/nb/admin/settings/post.json
@@ -42,6 +42,7 @@
"unread.cutoff": "Unread cutoff days",
"unread.min-track-last": "Minimum posts in topic before tracking last read",
"recent": "Recent Settings",
+ "recent.max-topics": "Maximum topics on /recent",
"recent.categoryFilter.disable": "Disable filtering of topics in ignored categories on the /recent page",
"signature": "Signature Settings",
"signature.disable": "Disable signatures",
diff --git a/public/language/nb/topic.json b/public/language/nb/topic.json
index aa0e3e5842..cd1b26489e 100644
--- a/public/language/nb/topic.json
+++ b/public/language/nb/topic.json
@@ -36,7 +36,8 @@
"ban-ip": "Ban IP",
"view-history": "Edit History",
"bookmark_instructions": "Click here to return to the last read post in this thread.",
- "flag_title": "Rapporter dette innlegget for granskning",
+ "flag_post": "Flag this post",
+ "flag_user": "Flag this user",
"merged_message": "This topic has been merged into %2",
"deleted_message": "Dette emnet har blitt slettet. Bare brukere med emnehåndterings-privilegier kan se den.",
"following_topic.message": "Du vil nå motta varsler når noen skriver i denne tråden.",
diff --git a/public/language/nl/admin/manage/categories.json b/public/language/nl/admin/manage/categories.json
index ec4a6fe488..12f676edb9 100644
--- a/public/language/nl/admin/manage/categories.json
+++ b/public/language/nl/admin/manage/categories.json
@@ -11,6 +11,7 @@
"num-recent-replies": "# of Recent Replies",
"ext-link": "External Link",
"is-section": "Treat this category as a section",
+ "tag-whitelist": "Tag Whitelist",
"upload-image": "Upload Image",
"delete-image": "Remove",
"category-image": "Category Image",
diff --git a/public/language/nl/admin/settings/post.json b/public/language/nl/admin/settings/post.json
index da708f4c6c..a8d0046355 100644
--- a/public/language/nl/admin/settings/post.json
+++ b/public/language/nl/admin/settings/post.json
@@ -42,6 +42,7 @@
"unread.cutoff": "Unread cutoff days",
"unread.min-track-last": "Minimum posts in topic before tracking last read",
"recent": "Recent Settings",
+ "recent.max-topics": "Maximum topics on /recent",
"recent.categoryFilter.disable": "Disable filtering of topics in ignored categories on the /recent page",
"signature": "Signature Settings",
"signature.disable": "Disable signatures",
diff --git a/public/language/nl/topic.json b/public/language/nl/topic.json
index 2e73eacd83..785b22b4fc 100644
--- a/public/language/nl/topic.json
+++ b/public/language/nl/topic.json
@@ -36,7 +36,8 @@
"ban-ip": "Verban IP",
"view-history": "Revisie geschiedenis",
"bookmark_instructions": "Klik hier om terug te keren naar de laatst gelezen post in deze thread.",
- "flag_title": "Bericht aan beheerders melden",
+ "flag_post": "Flag this post",
+ "flag_user": "Flag this user",
"merged_message": "Dit onderwerp is gevoegd in %2",
"deleted_message": "Dit onderwerp is verwijderd. Alleen gebruikers met beheerrechten op onderwerpniveau kunnen dit inzien.",
"following_topic.message": "Vanaf nu worden meldingen ontvangen zodra iemand een reactie op dit onderwerp geeft.",
diff --git a/public/language/pl/admin/manage/categories.json b/public/language/pl/admin/manage/categories.json
index 50441f4f74..9240275e61 100644
--- a/public/language/pl/admin/manage/categories.json
+++ b/public/language/pl/admin/manage/categories.json
@@ -11,6 +11,7 @@
"num-recent-replies": "# z ostatnich odpowiedzi",
"ext-link": "Zewnętrzny odnośnik",
"is-section": "Traktuj tę kategorię jako sekcję",
+ "tag-whitelist": "Tag Whitelist",
"upload-image": "Prześlij obrazek",
"delete-image": "Usuń",
"category-image": "Obrazek kategorii",
diff --git a/public/language/pl/admin/settings/post.json b/public/language/pl/admin/settings/post.json
index 8468917386..8e8bf8b93f 100644
--- a/public/language/pl/admin/settings/post.json
+++ b/public/language/pl/admin/settings/post.json
@@ -42,6 +42,7 @@
"unread.cutoff": "Dni do odcięcia nieprzeczytanych ",
"unread.min-track-last": "Minimalna liczba postów w temacie przed śledzeniem ostatnio przeczytanego",
"recent": "Ustawienia ostatnich",
+ "recent.max-topics": "Maximum topics on /recent",
"recent.categoryFilter.disable": "Wyłącz filtrowanie tematów w ignorowanych kategoriach na stronie /recent",
"signature": "Ustawienia sygnatur",
"signature.disable": "Wyłącz sygnatury",
diff --git a/public/language/pl/topic.json b/public/language/pl/topic.json
index 4b033842e6..503049a888 100644
--- a/public/language/pl/topic.json
+++ b/public/language/pl/topic.json
@@ -36,7 +36,8 @@
"ban-ip": "Blokuj IP",
"view-history": "Historia edycji",
"bookmark_instructions": "Kliknij tutaj, by powrócić do ostatniego przeczytanego postu w tym temacie.",
- "flag_title": "Zgłoś post do moderacji",
+ "flag_post": "Flag this post",
+ "flag_user": "Flag this user",
"merged_message": "Ten temat został połączony z %2",
"deleted_message": "Ten temat został usunięty. Mogą go zobaczyć tylko użytkownicy upoważnieni do zarządzania tematami.",
"following_topic.message": "Będziesz teraz otrzymywać powiadomienia o nowych odpowiedziach w tym temacie.",
diff --git a/public/language/pt-BR/admin/manage/categories.json b/public/language/pt-BR/admin/manage/categories.json
index 977b87d980..8dfa5ecdce 100644
--- a/public/language/pt-BR/admin/manage/categories.json
+++ b/public/language/pt-BR/admin/manage/categories.json
@@ -11,6 +11,7 @@
"num-recent-replies": "# de Respostas Recentes",
"ext-link": "Link Externo",
"is-section": "Trate esta categoria como uma seção",
+ "tag-whitelist": "Tag Whitelist",
"upload-image": "Enviar Imagem",
"delete-image": "Remover",
"category-image": "Imagem da Categoria",
diff --git a/public/language/pt-BR/admin/settings/post.json b/public/language/pt-BR/admin/settings/post.json
index 1d4d1768f4..7a4ce43437 100644
--- a/public/language/pt-BR/admin/settings/post.json
+++ b/public/language/pt-BR/admin/settings/post.json
@@ -42,6 +42,7 @@
"unread.cutoff": "Data de corte de não-lidos",
"unread.min-track-last": "Mínimo de posts no tópico antes de rastrear o último lido",
"recent": "Configurações Recentes",
+ "recent.max-topics": "Maximum topics on /recent",
"recent.categoryFilter.disable": "Desailitar filtragem de tópicos em categorias ignoradas na página /recente",
"signature": "Configurações de Assinatura",
"signature.disable": "Desabilitar assinaturas",
diff --git a/public/language/pt-BR/topic.json b/public/language/pt-BR/topic.json
index 610ab99465..cc29032343 100644
--- a/public/language/pt-BR/topic.json
+++ b/public/language/pt-BR/topic.json
@@ -36,7 +36,8 @@
"ban-ip": "Banir IP",
"view-history": "Histórico de Edição",
"bookmark_instructions": "Clique aqui para retornar ao último post lido neste tópico.",
- "flag_title": "Sinalizar este post para moderação",
+ "flag_post": "Flag this post",
+ "flag_user": "Flag this user",
"merged_message": "Este tópico foi mesclado em %2",
"deleted_message": "Este tópico foi deletado. Apenas usuários com privilégios de moderação de tópico podem vê-lo.",
"following_topic.message": "Agora você receberá notificações quando alguém responder este tópico.",
diff --git a/public/language/pt-PT/admin/manage/categories.json b/public/language/pt-PT/admin/manage/categories.json
index 686d97d096..c911c1de23 100644
--- a/public/language/pt-PT/admin/manage/categories.json
+++ b/public/language/pt-PT/admin/manage/categories.json
@@ -11,6 +11,7 @@
"num-recent-replies": "# de Respostas Recentes",
"ext-link": "Link Externo",
"is-section": "Tratar esta categoria como uma secção",
+ "tag-whitelist": "Tag Whitelist",
"upload-image": "Enviar Imagem",
"delete-image": "Remover",
"category-image": "Imagem da Categoria",
diff --git a/public/language/pt-PT/admin/settings/post.json b/public/language/pt-PT/admin/settings/post.json
index 0779f7d1f5..6a8b5c5064 100644
--- a/public/language/pt-PT/admin/settings/post.json
+++ b/public/language/pt-PT/admin/settings/post.json
@@ -42,6 +42,7 @@
"unread.cutoff": "Unread cutoff days",
"unread.min-track-last": "Minimum posts in topic before tracking last read",
"recent": "Definições Recentes",
+ "recent.max-topics": "Maximum topics on /recent",
"recent.categoryFilter.disable": "Disable filtering of topics in ignored categories on the /recent page",
"signature": "Definições da Assinatura",
"signature.disable": "Desativar assinaturas",
diff --git a/public/language/pt-PT/topic.json b/public/language/pt-PT/topic.json
index 15678e9596..1122017182 100644
--- a/public/language/pt-PT/topic.json
+++ b/public/language/pt-PT/topic.json
@@ -36,7 +36,8 @@
"ban-ip": "Banir IP",
"view-history": "Histórico de Edição",
"bookmark_instructions": "Carrega aqui para voltares à última publicação lide assunto.",
- "flag_title": "Denunciar esta publicação para moderação",
+ "flag_post": "Flag this post",
+ "flag_user": "Flag this user",
"merged_message": "Este tópico foi fundido no tópico %2",
"deleted_message": "Este tópico foi eliminado. Apenas utilizadores com privilégios de moderação do tópico podem vê-lo.",
"following_topic.message": "A partir de agora receberás uma notificação sempre que alguém publicar neste tópico.",
diff --git a/public/language/ro/admin/manage/categories.json b/public/language/ro/admin/manage/categories.json
index 1eda6ea080..a8949c654b 100644
--- a/public/language/ro/admin/manage/categories.json
+++ b/public/language/ro/admin/manage/categories.json
@@ -11,6 +11,7 @@
"num-recent-replies": "# of Recent Replies",
"ext-link": "External Link",
"is-section": "Treat this category as a section",
+ "tag-whitelist": "Tag Whitelist",
"upload-image": "Upload Image",
"delete-image": "Remove",
"category-image": "Category Image",
diff --git a/public/language/ro/admin/settings/post.json b/public/language/ro/admin/settings/post.json
index da708f4c6c..a8d0046355 100644
--- a/public/language/ro/admin/settings/post.json
+++ b/public/language/ro/admin/settings/post.json
@@ -42,6 +42,7 @@
"unread.cutoff": "Unread cutoff days",
"unread.min-track-last": "Minimum posts in topic before tracking last read",
"recent": "Recent Settings",
+ "recent.max-topics": "Maximum topics on /recent",
"recent.categoryFilter.disable": "Disable filtering of topics in ignored categories on the /recent page",
"signature": "Signature Settings",
"signature.disable": "Disable signatures",
diff --git a/public/language/ro/topic.json b/public/language/ro/topic.json
index fe92c386d8..96b4c42ebe 100644
--- a/public/language/ro/topic.json
+++ b/public/language/ro/topic.json
@@ -36,7 +36,8 @@
"ban-ip": "Ban IP",
"view-history": "Edit History",
"bookmark_instructions": "Click here to return to the last read post in this thread.",
- "flag_title": "Semnalizează acest mesaj pentru moderare",
+ "flag_post": "Flag this post",
+ "flag_user": "Flag this user",
"merged_message": "This topic has been merged into %2",
"deleted_message": "Acest subiect a fost șters. Doar utilizatorii cu privilegii pentru moderarea subiectelor îl poate vedea.",
"following_topic.message": "Vei primi notificări când cineva va posta un nou mesaj in acest subiect.",
diff --git a/public/language/ru/admin/manage/categories.json b/public/language/ru/admin/manage/categories.json
index 6715885107..271c5da72a 100644
--- a/public/language/ru/admin/manage/categories.json
+++ b/public/language/ru/admin/manage/categories.json
@@ -11,6 +11,7 @@
"num-recent-replies": "# последних ответов",
"ext-link": "Внешняя ссылка",
"is-section": "Рассматривать эту категорию как секцию",
+ "tag-whitelist": "Tag Whitelist",
"upload-image": "Загрузить изображение",
"delete-image": "Удалить",
"category-image": "Изображение категории",
diff --git a/public/language/ru/admin/settings/post.json b/public/language/ru/admin/settings/post.json
index e32c183357..ad36935d70 100644
--- a/public/language/ru/admin/settings/post.json
+++ b/public/language/ru/admin/settings/post.json
@@ -42,6 +42,7 @@
"unread.cutoff": "Порог отсечки (в днях)",
"unread.min-track-last": "Минимальное кол-во сообщений в теме, чтобы начать отслеживать непрочитанные ответы",
"recent": "Настройка списка последних тем",
+ "recent.max-topics": "Maximum topics on /recent",
"recent.categoryFilter.disable": "Отключить фильтрацию тем из игнорируемых категорий для списка последних тем",
"signature": "Настройка подписей",
"signature.disable": "Отключить подписи",
diff --git a/public/language/ru/topic.json b/public/language/ru/topic.json
index a7490dfc67..0cd51b5931 100644
--- a/public/language/ru/topic.json
+++ b/public/language/ru/topic.json
@@ -36,7 +36,8 @@
"ban-ip": "Забанить IP",
"view-history": "История правок",
"bookmark_instructions": "Нажмите здесь, чтобы вернуться к последнему прочитанному сообщению в этой теме.",
- "flag_title": "Отметить это сообщение для модераторов",
+ "flag_post": "Flag this post",
+ "flag_user": "Flag this user",
"merged_message": "Эта тема была объединена с %2",
"deleted_message": "Эта тема была удалена. Только пользователи с правом управления темами могут её видеть.",
"following_topic.message": "Теперь вы будете получать уведомления каждый раз, когда кто-нибудь напишет сообщение в эту тему.",
diff --git a/public/language/rw/admin/manage/categories.json b/public/language/rw/admin/manage/categories.json
index 1eda6ea080..a8949c654b 100644
--- a/public/language/rw/admin/manage/categories.json
+++ b/public/language/rw/admin/manage/categories.json
@@ -11,6 +11,7 @@
"num-recent-replies": "# of Recent Replies",
"ext-link": "External Link",
"is-section": "Treat this category as a section",
+ "tag-whitelist": "Tag Whitelist",
"upload-image": "Upload Image",
"delete-image": "Remove",
"category-image": "Category Image",
diff --git a/public/language/rw/admin/settings/post.json b/public/language/rw/admin/settings/post.json
index da708f4c6c..a8d0046355 100644
--- a/public/language/rw/admin/settings/post.json
+++ b/public/language/rw/admin/settings/post.json
@@ -42,6 +42,7 @@
"unread.cutoff": "Unread cutoff days",
"unread.min-track-last": "Minimum posts in topic before tracking last read",
"recent": "Recent Settings",
+ "recent.max-topics": "Maximum topics on /recent",
"recent.categoryFilter.disable": "Disable filtering of topics in ignored categories on the /recent page",
"signature": "Signature Settings",
"signature.disable": "Disable signatures",
diff --git a/public/language/rw/topic.json b/public/language/rw/topic.json
index c0d5b5c6ac..34dbc660f6 100644
--- a/public/language/rw/topic.json
+++ b/public/language/rw/topic.json
@@ -36,7 +36,8 @@
"ban-ip": "Ban IP",
"view-history": "Edit History",
"bookmark_instructions": "Click here to return to the last read post in this thread.",
- "flag_title": "Bimenyeshe ubuyobozi",
+ "flag_post": "Flag this post",
+ "flag_user": "Flag this user",
"merged_message": "This topic has been merged into %2",
"deleted_message": "Iki kiganiro cyamaze gukurwaho. Abantu babifitiye uburenganzira ni bo bonyine bashobora kukibona. ",
"following_topic.message": "Ntabwo uzongera kubimenyeshwa nihagira umuntu ugira icyo yandika kuri iki kiganiro. ",
diff --git a/public/language/sc/admin/manage/categories.json b/public/language/sc/admin/manage/categories.json
index 1eda6ea080..a8949c654b 100644
--- a/public/language/sc/admin/manage/categories.json
+++ b/public/language/sc/admin/manage/categories.json
@@ -11,6 +11,7 @@
"num-recent-replies": "# of Recent Replies",
"ext-link": "External Link",
"is-section": "Treat this category as a section",
+ "tag-whitelist": "Tag Whitelist",
"upload-image": "Upload Image",
"delete-image": "Remove",
"category-image": "Category Image",
diff --git a/public/language/sc/admin/settings/post.json b/public/language/sc/admin/settings/post.json
index da708f4c6c..a8d0046355 100644
--- a/public/language/sc/admin/settings/post.json
+++ b/public/language/sc/admin/settings/post.json
@@ -42,6 +42,7 @@
"unread.cutoff": "Unread cutoff days",
"unread.min-track-last": "Minimum posts in topic before tracking last read",
"recent": "Recent Settings",
+ "recent.max-topics": "Maximum topics on /recent",
"recent.categoryFilter.disable": "Disable filtering of topics in ignored categories on the /recent page",
"signature": "Signature Settings",
"signature.disable": "Disable signatures",
diff --git a/public/language/sc/topic.json b/public/language/sc/topic.json
index 2cf78e277d..1530fccde0 100644
--- a/public/language/sc/topic.json
+++ b/public/language/sc/topic.json
@@ -36,7 +36,8 @@
"ban-ip": "Ban IP",
"view-history": "Edit History",
"bookmark_instructions": "Click here to return to the last read post in this thread.",
- "flag_title": "Signala custu arresonu pro sa moderatzione",
+ "flag_post": "Flag this post",
+ "flag_user": "Flag this user",
"merged_message": "This topic has been merged into %2",
"deleted_message": "This topic has been deleted. Only users with topic management privileges can see it.",
"following_topic.message": "As a retzire notìficas si calincunu pùblica in custa arresonada.",
diff --git a/public/language/sk/admin/manage/categories.json b/public/language/sk/admin/manage/categories.json
index 53c7513d31..8b0f63ec73 100644
--- a/public/language/sk/admin/manage/categories.json
+++ b/public/language/sk/admin/manage/categories.json
@@ -11,6 +11,7 @@
"num-recent-replies": "# posledných odpovedí",
"ext-link": "Externý odkaz",
"is-section": "Zaobchádzať s kategóriou ako so sekciou",
+ "tag-whitelist": "Tag Whitelist",
"upload-image": "Nahrať obrázok",
"delete-image": "Odobrať",
"category-image": "Obrázok kategórie",
diff --git a/public/language/sk/admin/settings/post.json b/public/language/sk/admin/settings/post.json
index 4b1a1e982c..8cb5eb434c 100644
--- a/public/language/sk/admin/settings/post.json
+++ b/public/language/sk/admin/settings/post.json
@@ -42,6 +42,7 @@
"unread.cutoff": "Dni ukončenia neprečítaných",
"unread.min-track-last": "Minimálny počet príspevkov v téme pred posledným prečítaním",
"recent": "Nastavenia pre posledné",
+ "recent.max-topics": "Maximum topics on /recent",
"recent.categoryFilter.disable": "Zakázať filtrovanie tém v ignorovaných kategóriach na poslednej stránke",
"signature": "Nastavenia podpisu",
"signature.disable": "Zakázať podpisy",
diff --git a/public/language/sk/topic.json b/public/language/sk/topic.json
index b79955f503..4cba64a4c3 100644
--- a/public/language/sk/topic.json
+++ b/public/language/sk/topic.json
@@ -36,7 +36,8 @@
"ban-ip": "Zablokovať IP adresu",
"view-history": "Upraviť históriu",
"bookmark_instructions": "Kliknite sem pre návrat k poslednému prečítanému príspevku vo vlákne.",
- "flag_title": "Označiť príspevok pre zmiernenie",
+ "flag_post": "Flag this post",
+ "flag_user": "Flag this user",
"merged_message": "Táto téma bola zlúčená do %2",
"deleted_message": "Táto téma bola odstránená. Iba užívatelia s výsadami správcu ju môžu vidieť.",
"following_topic.message": "Odteraz budete prijímať oznámenia, keď niekto prispeje do tejto témy.",
diff --git a/public/language/sl/admin/manage/categories.json b/public/language/sl/admin/manage/categories.json
index 1eda6ea080..a8949c654b 100644
--- a/public/language/sl/admin/manage/categories.json
+++ b/public/language/sl/admin/manage/categories.json
@@ -11,6 +11,7 @@
"num-recent-replies": "# of Recent Replies",
"ext-link": "External Link",
"is-section": "Treat this category as a section",
+ "tag-whitelist": "Tag Whitelist",
"upload-image": "Upload Image",
"delete-image": "Remove",
"category-image": "Category Image",
diff --git a/public/language/sl/admin/settings/post.json b/public/language/sl/admin/settings/post.json
index da708f4c6c..a8d0046355 100644
--- a/public/language/sl/admin/settings/post.json
+++ b/public/language/sl/admin/settings/post.json
@@ -42,6 +42,7 @@
"unread.cutoff": "Unread cutoff days",
"unread.min-track-last": "Minimum posts in topic before tracking last read",
"recent": "Recent Settings",
+ "recent.max-topics": "Maximum topics on /recent",
"recent.categoryFilter.disable": "Disable filtering of topics in ignored categories on the /recent page",
"signature": "Signature Settings",
"signature.disable": "Disable signatures",
diff --git a/public/language/sl/topic.json b/public/language/sl/topic.json
index 96c02d7800..978e2495a9 100644
--- a/public/language/sl/topic.json
+++ b/public/language/sl/topic.json
@@ -36,7 +36,8 @@
"ban-ip": "Ban IP",
"view-history": "Edit History",
"bookmark_instructions": "Klikni tukaj za vrnitev na zadnje prebrano objavo v tej niti",
- "flag_title": "Označi to objavo za vodenje",
+ "flag_post": "Flag this post",
+ "flag_user": "Flag this user",
"merged_message": "This topic has been merged into %2",
"deleted_message": "Ta tema je bila izbrisana. Le uporabniki s pravicami upravljanja tem jo lahko vidijo.",
"following_topic.message": "Če nekdo objavi v to temo, boste od sedaj dobivali obvestila. ",
diff --git a/public/language/sr/admin/manage/categories.json b/public/language/sr/admin/manage/categories.json
index 1eda6ea080..a8949c654b 100644
--- a/public/language/sr/admin/manage/categories.json
+++ b/public/language/sr/admin/manage/categories.json
@@ -11,6 +11,7 @@
"num-recent-replies": "# of Recent Replies",
"ext-link": "External Link",
"is-section": "Treat this category as a section",
+ "tag-whitelist": "Tag Whitelist",
"upload-image": "Upload Image",
"delete-image": "Remove",
"category-image": "Category Image",
diff --git a/public/language/sr/admin/settings/post.json b/public/language/sr/admin/settings/post.json
index c7a624c968..d9277c7084 100644
--- a/public/language/sr/admin/settings/post.json
+++ b/public/language/sr/admin/settings/post.json
@@ -42,6 +42,7 @@
"unread.cutoff": "Nepročitano tokom prekinutih dana",
"unread.min-track-last": "Minimum postova u temi, pre praćenja poslednjeg pročitanog",
"recent": "Nedavna Podešavanja",
+ "recent.max-topics": "Maximum topics on /recent",
"recent.categoryFilter.disable": "Onemogući filtriranje tema u ignorisanim kategorijama na /recent stranici",
"signature": "Podešavanja Potpisa",
"signature.disable": "Onemogući potpise",
diff --git a/public/language/sr/topic.json b/public/language/sr/topic.json
index 6a07ef3a4e..894b07d114 100644
--- a/public/language/sr/topic.json
+++ b/public/language/sr/topic.json
@@ -36,7 +36,8 @@
"ban-ip": "Бануј IP",
"view-history": "Уреди историју",
"bookmark_instructions": "Кликните овде за повратак на последњу прочитану поруку у овој теми.",
- "flag_title": "Означи ову поруку за модерацију",
+ "flag_post": "Flag this post",
+ "flag_user": "Flag this user",
"merged_message": "Ова тема је обједињена у %2",
"deleted_message": "Ова тема је избрисана. Само корисници са привилегијама управљања темама је могу видети.",
"following_topic.message": "Од сада ће те примати обавештења када неко одговори у овој теми.",
diff --git a/public/language/sv/admin/manage/categories.json b/public/language/sv/admin/manage/categories.json
index 1eda6ea080..a8949c654b 100644
--- a/public/language/sv/admin/manage/categories.json
+++ b/public/language/sv/admin/manage/categories.json
@@ -11,6 +11,7 @@
"num-recent-replies": "# of Recent Replies",
"ext-link": "External Link",
"is-section": "Treat this category as a section",
+ "tag-whitelist": "Tag Whitelist",
"upload-image": "Upload Image",
"delete-image": "Remove",
"category-image": "Category Image",
diff --git a/public/language/sv/admin/settings/post.json b/public/language/sv/admin/settings/post.json
index da708f4c6c..a8d0046355 100644
--- a/public/language/sv/admin/settings/post.json
+++ b/public/language/sv/admin/settings/post.json
@@ -42,6 +42,7 @@
"unread.cutoff": "Unread cutoff days",
"unread.min-track-last": "Minimum posts in topic before tracking last read",
"recent": "Recent Settings",
+ "recent.max-topics": "Maximum topics on /recent",
"recent.categoryFilter.disable": "Disable filtering of topics in ignored categories on the /recent page",
"signature": "Signature Settings",
"signature.disable": "Disable signatures",
diff --git a/public/language/sv/topic.json b/public/language/sv/topic.json
index 0900cbde33..85dd621c81 100644
--- a/public/language/sv/topic.json
+++ b/public/language/sv/topic.json
@@ -36,7 +36,8 @@
"ban-ip": "Banna IP",
"view-history": "Redigera historik",
"bookmark_instructions": "Klicka här för att återgå till senast lästa inlägg i detta ämne.",
- "flag_title": "Rapportera detta inlägg för granskning",
+ "flag_post": "Flag this post",
+ "flag_user": "Flag this user",
"merged_message": "Detta ämne har sammanslagits med %2",
"deleted_message": "Det här ämnet har raderats. Endast användare med ämneshanterings-privilegier kan se det.",
"following_topic.message": "Du kommer nu få notiser när någon gör inlägg i detta ämne.",
diff --git a/public/language/th/admin/manage/categories.json b/public/language/th/admin/manage/categories.json
index 1eda6ea080..a8949c654b 100644
--- a/public/language/th/admin/manage/categories.json
+++ b/public/language/th/admin/manage/categories.json
@@ -11,6 +11,7 @@
"num-recent-replies": "# of Recent Replies",
"ext-link": "External Link",
"is-section": "Treat this category as a section",
+ "tag-whitelist": "Tag Whitelist",
"upload-image": "Upload Image",
"delete-image": "Remove",
"category-image": "Category Image",
diff --git a/public/language/th/admin/settings/post.json b/public/language/th/admin/settings/post.json
index da708f4c6c..a8d0046355 100644
--- a/public/language/th/admin/settings/post.json
+++ b/public/language/th/admin/settings/post.json
@@ -42,6 +42,7 @@
"unread.cutoff": "Unread cutoff days",
"unread.min-track-last": "Minimum posts in topic before tracking last read",
"recent": "Recent Settings",
+ "recent.max-topics": "Maximum topics on /recent",
"recent.categoryFilter.disable": "Disable filtering of topics in ignored categories on the /recent page",
"signature": "Signature Settings",
"signature.disable": "Disable signatures",
diff --git a/public/language/th/topic.json b/public/language/th/topic.json
index 04cc70124f..37acd5e9c9 100644
--- a/public/language/th/topic.json
+++ b/public/language/th/topic.json
@@ -36,7 +36,8 @@
"ban-ip": "แบน IP",
"view-history": "แก้ไขประวัติ",
"bookmark_instructions": "คลิกที่นี่เพื่อกลับไปยังโพสต์ล่าสุดในหัวข้อนี้",
- "flag_title": "ปักธงโพสต์นี้เพื่อดำเนินการ",
+ "flag_post": "Flag this post",
+ "flag_user": "Flag this user",
"merged_message": "กระทูนี้ถูกรวมเข้ากับ %2",
"deleted_message": "Topic นี้ถูกลบไปแล้ว เฉพาะผู้ใช้งานที่มีสิทธิ์ในการจัดการ Topic เท่านั้นที่จะมีสิทธิ์ในการเข้าชม",
"following_topic.message": "คุณจะได้รับการแจ้งเตือนเมื่อมีคนโพสต์ในกระทู้นี้",
diff --git a/public/language/tr/admin/manage/categories.json b/public/language/tr/admin/manage/categories.json
index 308ca714f7..6685e57250 100644
--- a/public/language/tr/admin/manage/categories.json
+++ b/public/language/tr/admin/manage/categories.json
@@ -11,6 +11,7 @@
"num-recent-replies": "Son Yanıtların # Tanesi",
"ext-link": "Harici Bağlantı",
"is-section": "Bu kategoriyi bir bölüm olarak değerlendir",
+ "tag-whitelist": "İzin Verilen Etiketler",
"upload-image": "Görsel Yükle",
"delete-image": "Sil",
"category-image": "Kategori Görseli",
diff --git a/public/language/tr/admin/settings/post.json b/public/language/tr/admin/settings/post.json
index ed009829f9..9332c84474 100644
--- a/public/language/tr/admin/settings/post.json
+++ b/public/language/tr/admin/settings/post.json
@@ -42,6 +42,7 @@
"unread.cutoff": "Okunmamış gün sınırı",
"unread.min-track-last": "Son okumayı takip etmeden önce konuya yapılan asgari gönderim",
"recent": "Güncel Ayarlar",
+ "recent.max-topics": "Güncel Bölümde Gösterilecek Maksimum Konu Sayısı",
"recent.categoryFilter.disable": "Son sayfada önemsenmeyen kategorilerde konu filtrelemeyi devre dışı bırak",
"signature": "İmza Ayarları",
"signature.disable": "İmzaları devre dışı bırak",
diff --git a/public/language/tr/notifications.json b/public/language/tr/notifications.json
index 329d826db7..94b065cdf2 100644
--- a/public/language/tr/notifications.json
+++ b/public/language/tr/notifications.json
@@ -43,9 +43,9 @@
"new_register_multiple": "Beklemede %1 kayıt olma isteği bulunmaktadır.",
"flag_assigned_to_you": "Şikayet %1 size devredildi",
"post_awaiting_review": "İnceleme bekleyen ileti(ler) var",
- "profile-exported": "%1 profile exported, click to download",
- "posts-exported": "%1 posts exported, click to download",
- "uploads-exported": "%1 uploads exported, click to download",
+ "profile-exported": "%1 profili hazırlandı, indirmek için tıklayınız",
+ "posts-exported": "%1 iletileri hazırlandı, indirmek için tıklayınız",
+ "uploads-exported": "%1 yüklemeleri hazırlandı, indirmek için tıklayınız",
"email-confirmed": "E-posta onaylandı",
"email-confirmed-message": "E-postanızı onayladığınız için teşekkürler. Hesabınız tamamen aktif edildi.",
"email-confirm-error-message": "E-posta adresinizi onaylarken bir hata oluştu. Kodunuz geçersiz ya da eski olabilir.",
diff --git a/public/language/tr/topic.json b/public/language/tr/topic.json
index 4b8e572ed8..d9d5c71f6b 100644
--- a/public/language/tr/topic.json
+++ b/public/language/tr/topic.json
@@ -36,7 +36,8 @@
"ban-ip": "IP Yasakla",
"view-history": "Geçmişi Düzenle",
"bookmark_instructions": "Bu konuda en son kaldığın yere dönmek için tıkla.",
- "flag_title": "Bu iletiyi moderatöre bildir",
+ "flag_post": "Bu iletiyi şikayet et!",
+ "flag_user": "Bu kullanıcıyı şikayet et!",
"merged_message": "Bu başlık %2 ile birleştirildi",
"deleted_message": "Bu başlık silindi. Sadece başlık düzenleme yetkisi olan kullanıcılar görebilir.",
"following_topic.message": "Artık bir kullanıcı bu konuya yeni ileti gönderdiğinde siz de bildirim alacaksınız.",
diff --git a/public/language/tr/user.json b/public/language/tr/user.json
index e1a8f4613b..3d633ce53b 100644
--- a/public/language/tr/user.json
+++ b/public/language/tr/user.json
@@ -179,9 +179,9 @@
"consent.right_to_data_portability": "Veri taşıma hakkına sahipsiniz",
"consent.right_to_data_portability_description": "Sizden ve hesabınız hakkında toplanan verilere makine tarafından okunabilir bir veri talep edebilirsiniz. Aşağıdaki uygun düğmeyi tıklayarak bunu yapabilirsiniz.",
"consent.export_profile": "Profili Dışa Aktar (.json)",
- "consent.export-profile-success": "Exporting profile, you will get a notification when it is complete.",
+ "consent.export-profile-success": "Profil aktarılmak üzere hazırlanıyor, işlem tamamlandığında bildirim alacaksınız!",
"consent.export_uploads": "Karşıya Yüklenmiş İçeriği Dışarı Aktar (.zip)",
- "consent.export-uploads-success": "Exporting uploads, you will get a notification when it is complete.",
+ "consent.export-uploads-success": "Yüklemeler aktarılmak üzere hazırlanıyor, işlem tamamlandığında bildirim alacaksınız!",
"consent.export_posts": "Gönderileri Dışa Aktar (.csv)",
- "consent.export-posts-success": "Exporting posts, you will get a notification when it is complete."
+ "consent.export-posts-success": "İletiler aktarılmak üzere hazırlanıyor, işlem tamamlandığında bildirim alacaksınız!"
}
\ No newline at end of file
diff --git a/public/language/uk/admin/manage/categories.json b/public/language/uk/admin/manage/categories.json
index 62240a0edf..cc9ec25df5 100644
--- a/public/language/uk/admin/manage/categories.json
+++ b/public/language/uk/admin/manage/categories.json
@@ -11,6 +11,7 @@
"num-recent-replies": "Кількість свіжих відповідей",
"ext-link": "Зовнішнє посилання",
"is-section": "Вважати цю категорію розділом",
+ "tag-whitelist": "Tag Whitelist",
"upload-image": "Завантажити зображення",
"delete-image": "Видалити",
"category-image": "Зображення категорії",
diff --git a/public/language/uk/admin/settings/post.json b/public/language/uk/admin/settings/post.json
index fd65fccb0e..9b046c92f7 100644
--- a/public/language/uk/admin/settings/post.json
+++ b/public/language/uk/admin/settings/post.json
@@ -42,6 +42,7 @@
"unread.cutoff": "За скільки днів показувати непрочитані",
"unread.min-track-last": "Мінімальна кількість постів у темі перш ніж відслідковувати останні прочитані",
"recent": "Останні Налаштування",
+ "recent.max-topics": "Maximum topics on /recent",
"recent.categoryFilter.disable": "Відключити фільтрування тем в ігнорованих категоріях на сторінці /recent",
"signature": "Налаштування підписів",
"signature.disable": "Вимкнути підписи",
diff --git a/public/language/uk/topic.json b/public/language/uk/topic.json
index 9146b9d9c0..a8614066eb 100644
--- a/public/language/uk/topic.json
+++ b/public/language/uk/topic.json
@@ -36,7 +36,8 @@
"ban-ip": "Заблокувати IP",
"view-history": "Редагувати історію",
"bookmark_instructions": "Натисніть тут, щоб повернутися до останнього прочитаного посту у цій темі.",
- "flag_title": "Поскаржитись на цей пост модератору",
+ "flag_post": "Flag this post",
+ "flag_user": "Flag this user",
"merged_message": "Ця тема була об'єднана в %2",
"deleted_message": "Цю тему було видалено. Лише користувачі з правом керування темами можуть її бачити.",
"following_topic.message": "Відтепер ви будете отримувати сповіщення коли хтось постить в цю тему.",
diff --git a/public/language/vi/admin/manage/categories.json b/public/language/vi/admin/manage/categories.json
index 1eda6ea080..a8949c654b 100644
--- a/public/language/vi/admin/manage/categories.json
+++ b/public/language/vi/admin/manage/categories.json
@@ -11,6 +11,7 @@
"num-recent-replies": "# of Recent Replies",
"ext-link": "External Link",
"is-section": "Treat this category as a section",
+ "tag-whitelist": "Tag Whitelist",
"upload-image": "Upload Image",
"delete-image": "Remove",
"category-image": "Category Image",
diff --git a/public/language/vi/admin/settings/post.json b/public/language/vi/admin/settings/post.json
index da708f4c6c..a8d0046355 100644
--- a/public/language/vi/admin/settings/post.json
+++ b/public/language/vi/admin/settings/post.json
@@ -42,6 +42,7 @@
"unread.cutoff": "Unread cutoff days",
"unread.min-track-last": "Minimum posts in topic before tracking last read",
"recent": "Recent Settings",
+ "recent.max-topics": "Maximum topics on /recent",
"recent.categoryFilter.disable": "Disable filtering of topics in ignored categories on the /recent page",
"signature": "Signature Settings",
"signature.disable": "Disable signatures",
diff --git a/public/language/vi/topic.json b/public/language/vi/topic.json
index 70bc813847..a11669d301 100644
--- a/public/language/vi/topic.json
+++ b/public/language/vi/topic.json
@@ -36,7 +36,8 @@
"ban-ip": "Cấm IP",
"view-history": "Lịch sử chỉnh sửa",
"bookmark_instructions": "Bấm vào đây để quay về đọc bài viết mới nhất trong chủ đề này.",
- "flag_title": "Flag bài viết này để chỉnh sửa",
+ "flag_post": "Flag this post",
+ "flag_user": "Flag this user",
"merged_message": "Chủ đề này đã được sát nhập với %2",
"deleted_message": "Chủ đề này đã bị xóa. Chỉ ban quản trị mới xem được.",
"following_topic.message": "Từ giờ bạn sẽ nhận được thông báo khi có ai đó gửi bài viết trong chủ đề này",
diff --git a/public/language/zh-CN/admin/manage/categories.json b/public/language/zh-CN/admin/manage/categories.json
index edeb8c2b68..a760f1c3e5 100644
--- a/public/language/zh-CN/admin/manage/categories.json
+++ b/public/language/zh-CN/admin/manage/categories.json
@@ -11,6 +11,7 @@
"num-recent-replies": "最近回复数",
"ext-link": "外部链接",
"is-section": "将该版块作为段落",
+ "tag-whitelist": "Tag Whitelist",
"upload-image": "上传图片",
"delete-image": "移除",
"category-image": "版块图片",
diff --git a/public/language/zh-CN/admin/settings/post.json b/public/language/zh-CN/admin/settings/post.json
index 0b04390725..2f0e028e96 100644
--- a/public/language/zh-CN/admin/settings/post.json
+++ b/public/language/zh-CN/admin/settings/post.json
@@ -42,6 +42,7 @@
"unread.cutoff": "未读截止时间(天)",
"unread.min-track-last": "跟踪最后阅读之前的主题最小帖子",
"recent": "最近设置",
+ "recent.max-topics": "Maximum topics on /recent",
"recent.categoryFilter.disable": "禁用对 /recent 页面上忽略类别中的主题进行过滤",
"signature": "签名设置",
"signature.disable": "禁用签名",
diff --git a/public/language/zh-CN/topic.json b/public/language/zh-CN/topic.json
index e8954365e9..e8ce013294 100644
--- a/public/language/zh-CN/topic.json
+++ b/public/language/zh-CN/topic.json
@@ -36,7 +36,8 @@
"ban-ip": "封禁IP",
"view-history": "编辑历史",
"bookmark_instructions": "点击阅读本主题帖中的最新回复",
- "flag_title": "举报此帖",
+ "flag_post": "Flag this post",
+ "flag_user": "Flag this user",
"merged_message": "此主题已并入%2",
"deleted_message": "此主题已被删除。只有拥有主题管理权限的用户可以查看。",
"following_topic.message": "当有人回复此主题时,您会收到通知。",
diff --git a/public/language/zh-CN/user.json b/public/language/zh-CN/user.json
index 4fd74dd99f..2a5a9c7511 100644
--- a/public/language/zh-CN/user.json
+++ b/public/language/zh-CN/user.json
@@ -21,7 +21,7 @@
"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
",
"account-deleted": "帐号已删除",
- "account-content-deleted": "Account content deleted",
+ "account-content-deleted": "账号内容已删除",
"fullname": "姓名",
"website": "网站",
"location": "位置",
diff --git a/public/language/zh-TW/admin/manage/categories.json b/public/language/zh-TW/admin/manage/categories.json
index 8d40c98725..53e81a6124 100644
--- a/public/language/zh-TW/admin/manage/categories.json
+++ b/public/language/zh-TW/admin/manage/categories.json
@@ -11,6 +11,7 @@
"num-recent-replies": "最近回覆數",
"ext-link": "外部連結",
"is-section": "將該版面作為分段",
+ "tag-whitelist": "Tag Whitelist",
"upload-image": "上傳圖片",
"delete-image": "移除",
"category-image": "版面圖片",
diff --git a/public/language/zh-TW/admin/settings/post.json b/public/language/zh-TW/admin/settings/post.json
index 0254e52b3a..b7544bf1f8 100644
--- a/public/language/zh-TW/admin/settings/post.json
+++ b/public/language/zh-TW/admin/settings/post.json
@@ -42,6 +42,7 @@
"unread.cutoff": "未讀截止時間(天)",
"unread.min-track-last": "跟蹤最後閱讀之前的主題最小貼文",
"recent": "最近設定",
+ "recent.max-topics": "Maximum topics on /recent",
"recent.categoryFilter.disable": "禁用對 /recent 頁面上忽略版面中的主題進行過濾",
"signature": "簽名設定",
"signature.disable": "禁用簽名",
diff --git a/public/language/zh-TW/topic.json b/public/language/zh-TW/topic.json
index dc7186389f..d067fe532f 100644
--- a/public/language/zh-TW/topic.json
+++ b/public/language/zh-TW/topic.json
@@ -36,7 +36,8 @@
"ban-ip": "禁用IP",
"view-history": "編輯歷史",
"bookmark_instructions": "點擊閱讀本主題貼文中的最新回覆",
- "flag_title": "舉報此貼文",
+ "flag_post": "Flag this post",
+ "flag_user": "Flag this user",
"merged_message": "此主題已被併入 %2",
"deleted_message": "此主題已被刪除。只有擁有主題管理權限的使用者可以查看。",
"following_topic.message": "當有人回覆此主題時,您會收到通知。",
diff --git a/public/src/admin/settings/navigation.js b/public/src/admin/settings/navigation.js
index cfb78cf754..2209bb4fd1 100644
--- a/public/src/admin/settings/navigation.js
+++ b/public/src/admin/settings/navigation.js
@@ -8,18 +8,11 @@ define('admin/settings/navigation', ['translator', 'iconSelect', 'benchpress', '
navigation.init = function () {
available = ajaxify.data.available;
- $('#enabled .unescape').each(function () {
- $(this).val(translator.unescape($(this).val()));
- });
-
- translator.translate($('#available').html(), function (html) {
- $('#available').html(translator.unescape(html))
- .find('li .drag-item').draggable({
- connectToSortable: '#active-navigation',
- helper: 'clone',
- distance: 10,
- stop: drop,
- });
+ $('#available').find('li .drag-item').draggable({
+ connectToSortable: '#active-navigation',
+ helper: 'clone',
+ distance: 10,
+ stop: drop,
});
$('#active-navigation').sortable().droppable({
@@ -112,7 +105,7 @@ define('admin/settings/navigation', ['translator', 'iconSelect', 'benchpress', '
}
data[input.name].push(input.value);
} else {
- data[input.name] = translator.escape(input.value);
+ data[input.name] = input.value;
}
});
diff --git a/public/src/client/account/blocks.js b/public/src/client/account/blocks.js
index 11d656fa46..a6dd7978cd 100644
--- a/public/src/client/account/blocks.js
+++ b/public/src/client/account/blocks.js
@@ -1,16 +1,32 @@
'use strict';
-define('forum/account/blocks', ['forum/account/header', 'autocomplete'], function (header, autocomplete) {
+define('forum/account/blocks', ['forum/account/header'], function (header) {
var Blocks = {};
Blocks.init = function () {
header.init();
- autocomplete.user($('#user-search'), function (ev, ui) {
- app.parseAndTranslate('account/blocks', 'edit', {
- edit: [ui.item.user],
- }, function (html) {
- $('.block-edit').html(html);
+ $('#user-search').on('keyup', function () {
+ var username = this.value;
+
+ socket.emit('user.search', {
+ query: username,
+ searchBy: 'username',
+ }, function (err, data) {
+ if (err) {
+ return app.alertError(err.message);
+ }
+
+ // Only show first 10 matches
+ if (data.matchCount > 10) {
+ data.users.length = 10;
+ }
+
+ app.parseAndTranslate('account/blocks', 'edit', {
+ edit: data.users,
+ }, function (html) {
+ $('.block-edit').html(html);
+ });
});
});
diff --git a/public/src/client/account/edit.js b/public/src/client/account/edit.js
index c6f99d733b..aeb63b7561 100644
--- a/public/src/client/account/edit.js
+++ b/public/src/client/account/edit.js
@@ -206,7 +206,7 @@ define('forum/account/edit', ['forum/account/header', 'translator', 'components'
updateHeader(urlOnServer);
- if (ajaxify.data.picture.length) {
+ if (ajaxify.data.picture && ajaxify.data.picture.length) {
$('#user-current-picture, img.avatar').attr('src', urlOnServer);
ajaxify.data.uploadedpicture = urlOnServer;
} else {
@@ -228,6 +228,7 @@ define('forum/account/edit', ['forum/account/header', 'translator', 'components'
pictureCropper.show({
socketMethod: 'user.uploadCroppedPicture',
+ route: config.relative_path + '/api/user/' + ajaxify.data.userslug + '/uploadpicture',
aspectRatio: 1 / 1,
paramName: 'uid',
paramValue: ajaxify.data.theirid,
diff --git a/public/src/client/topic/postTools.js b/public/src/client/topic/postTools.js
index 6dea439ce7..40357eca87 100644
--- a/public/src/client/topic/postTools.js
+++ b/public/src/client/topic/postTools.js
@@ -129,6 +129,16 @@ define('forum/topic/postTools', [
});
});
+ postContainer.on('click', '[component="post/flagUser"]', function () {
+ var uid = getData($(this), 'data-uid');
+ require(['flags'], function (flags) {
+ flags.showFlagModal({
+ type: 'user',
+ id: uid,
+ });
+ });
+ });
+
postContainer.on('click', '[component="post/edit"]', function () {
var btn = $(this);
diff --git a/src/categories/data.js b/src/categories/data.js
index 07aa9eb3b9..ddbc6362e3 100644
--- a/src/categories/data.js
+++ b/src/categories/data.js
@@ -76,9 +76,12 @@ function modifyCategory(category, fields) {
db.parseIntFields(category, intFields, fields);
- if (category.hasOwnProperty('name')) {
- category.name = validator.escape(String(category.name || ''));
- }
+ const escapeFields = ['name', 'color', 'bgColor', 'imageClass', 'class', 'link'];
+ escapeFields.forEach((field) => {
+ if (category.hasOwnProperty(field)) {
+ category[field] = validator.escape(String(category[field] || ''));
+ }
+ });
if (category.hasOwnProperty('icon')) {
category.icon = category.icon || 'hidden';
diff --git a/src/controllers/accounts/edit.js b/src/controllers/accounts/edit.js
index 9e23d736fd..0f81163391 100644
--- a/src/controllers/accounts/edit.js
+++ b/src/controllers/accounts/edit.js
@@ -7,6 +7,7 @@ const helpers = require('../helpers');
const groups = require('../../groups');
const accountHelpers = require('./helpers');
const privileges = require('../../privileges');
+const file = require('../../file');
const editController = module.exports;
@@ -124,3 +125,29 @@ async function getUserData(req) {
userData.hasPassword = await user.hasPassword(userData.uid);
return userData;
}
+
+editController.uploadPicture = async function (req, res, next) {
+ const userPhoto = req.files.files[0];
+ try {
+ const updateUid = await user.getUidByUserslug(req.params.userslug);
+ const isAllowed = await privileges.users.canEdit(req.uid, updateUid);
+ if (!isAllowed) {
+ return helpers.notAllowed(req, res);
+ }
+ await user.checkMinReputation(req.uid, updateUid, 'min:rep:profile-picture');
+
+ const image = await user.uploadCroppedPictureFile({
+ uid: updateUid,
+ file: userPhoto,
+ });
+
+ res.json([{
+ name: userPhoto.name,
+ url: image.url,
+ }]);
+ } catch (err) {
+ next(err);
+ } finally {
+ await file.delete(userPhoto.path);
+ }
+};
diff --git a/src/controllers/admin/dashboard.js b/src/controllers/admin/dashboard.js
index bf9081ced9..89d8c1b222 100644
--- a/src/controllers/admin/dashboard.js
+++ b/src/controllers/admin/dashboard.js
@@ -21,7 +21,7 @@ dashboardController.get = async function (req, res) {
getNotices(),
getLatestVersion(),
getLastRestart(),
- user.isAdministrator(),
+ user.isAdministrator(req.uid),
]);
const version = nconf.get('version');
diff --git a/src/controllers/admin/settings.js b/src/controllers/admin/settings.js
index f7b0d529e7..50ee575cea 100644
--- a/src/controllers/admin/settings.js
+++ b/src/controllers/admin/settings.js
@@ -10,6 +10,7 @@ const navigationAdmin = require('../../navigation/admin');
const social = require('../../social');
const helpers = require('../helpers');
+const translator = require('../../../public/src/modules/translator');
const settingsController = module.exports;
settingsController.get = async function (req, res) {
@@ -104,7 +105,8 @@ settingsController.navigation = async function (req, res) {
admin.enabled.forEach(function (enabled, index) {
enabled.index = index;
enabled.selected = index === 0;
-
+ enabled.title = translator.escape(enabled.title);
+ enabled.text = translator.escape(enabled.text);
enabled.groups = admin.groups.map(function (group) {
return {
displayName: group.displayName,
diff --git a/src/controllers/helpers.js b/src/controllers/helpers.js
index 1d3a5ff424..41108267d6 100644
--- a/src/controllers/helpers.js
+++ b/src/controllers/helpers.js
@@ -53,6 +53,19 @@ helpers.buildQueryString = function (cid, filter, term) {
return Object.keys(qs).length ? '?' + querystring.stringify(qs) : '';
};
+helpers.addLinkTags = function (params) {
+ params.res.locals.linkTags = params.res.locals.linkTags || [];
+ params.res.locals.linkTags.push({
+ rel: 'canonical',
+ href: nconf.get('url') + '/' + params.url,
+ });
+
+ params.tags.forEach(function (rel) {
+ rel.href = nconf.get('url') + '/' + params.url + rel.href;
+ params.res.locals.linkTags.push(rel);
+ });
+};
+
helpers.buildFilters = function (url, filter, query) {
return [{
name: '[[unread:all-topics]]',
diff --git a/src/controllers/recent.js b/src/controllers/recent.js
index 13ee9b956c..8e7d6769aa 100644
--- a/src/controllers/recent.js
+++ b/src/controllers/recent.js
@@ -78,6 +78,7 @@ recentController.getData = async function (req, url, sort) {
var pageCount = Math.max(1, Math.ceil(data.topicCount / settings.topicsPerPage));
data.pagination = pagination.create(page, pageCount, req.query);
+ helpers.addLinkTags({ url: url, res: req.res, tags: data.pagination.rel });
if (req.originalUrl.startsWith(nconf.get('relative_path') + '/api/' + url) || req.originalUrl.startsWith(nconf.get('relative_path') + '/' + url)) {
data.title = '[[pages:' + url + ']]';
diff --git a/src/controllers/tags.js b/src/controllers/tags.js
index da9c8122b9..b73b6842b6 100644
--- a/src/controllers/tags.js
+++ b/src/controllers/tags.js
@@ -49,6 +49,8 @@ tagsController.getTag = async function (req, res) {
const pageCount = Math.max(1, Math.ceil(topicCount / settings.topicsPerPage));
templateData.pagination = pagination.create(page, pageCount);
+ helpers.addLinkTags({ url: 'tags/' + tag, res: req.res, tags: templateData.pagination.rel });
+
templateData.rssFeedUrl = nconf.get('relative_path') + '/tags/' + tag + '.rss';
res.render('tag', templateData);
};
diff --git a/src/controllers/unread.js b/src/controllers/unread.js
index a5c2ab053d..b11a147058 100644
--- a/src/controllers/unread.js
+++ b/src/controllers/unread.js
@@ -42,6 +42,7 @@ unreadController.get = async function (req, res, next) {
data.title = meta.config.homePageTitle || '[[pages:home]]';
data.pageCount = Math.max(1, Math.ceil(data.topicCount / userSettings.topicsPerPage));
data.pagination = pagination.create(page, data.pageCount, req.query);
+ helpers.addLinkTags({ url: 'unread', res: req.res, tags: data.pagination.rel });
if (userSettings.usePagination && (page < 1 || page > data.pageCount)) {
req.query.page = Math.max(1, Math.min(data.pageCount, page));
diff --git a/src/meta/themes.js b/src/meta/themes.js
index 3710af3a2e..a5a2dd43ff 100644
--- a/src/meta/themes.js
+++ b/src/meta/themes.js
@@ -90,7 +90,12 @@ Themes.set = async (data) => {
case 'local': {
const current = await Meta.configs.get('theme:id');
if (current !== data.id) {
- let config = await fsReadfile(path.join(nconf.get('themes_path'), data.id, 'theme.json'), 'utf8');
+ const pathToThemeJson = path.join(nconf.get('themes_path'), data.id, 'theme.json');
+ if (!pathToThemeJson.startsWith(nconf.get('themes_path'))) {
+ throw new Error('[[error:invalid-theme-id]]');
+ }
+
+ let config = await fsReadfile(pathToThemeJson, 'utf8');
config = JSON.parse(config);
await db.sortedSetRemove('plugins:active', current);
diff --git a/src/middleware/header.js b/src/middleware/header.js
index ea208895ab..4873a210b2 100644
--- a/src/middleware/header.js
+++ b/src/middleware/header.js
@@ -3,6 +3,7 @@
var nconf = require('nconf');
var jsesc = require('jsesc');
var _ = require('lodash');
+const validator = require('validator');
var util = require('util');
var db = require('../database');
@@ -121,7 +122,7 @@ module.exports = function (middleware) {
const tidsByFilter = results.unreadData.tidsByFilter;
results.navigation = results.navigation.map(function (item) {
function modifyNavItem(item, route, filter, content) {
- if (item && item.originalRoute === route) {
+ if (item && validator.unescape(item.originalRoute) === route) {
unreadData[filter] = _.zipObject(tidsByFilter[filter], tidsByFilter[filter].map(() => true));
item.content = content;
if (unreadCounts[filter] > 0) {
diff --git a/src/navigation/admin.js b/src/navigation/admin.js
index 5398ac8375..499fd9c5ee 100644
--- a/src/navigation/admin.js
+++ b/src/navigation/admin.js
@@ -1,10 +1,10 @@
'use strict';
const _ = require('lodash');
+const validator = require('validator');
const plugins = require('../plugins');
const db = require('../database');
-const translator = require('../translator');
const pubsub = require('../pubsub');
const admin = module.exports;
@@ -17,11 +17,6 @@ pubsub.on('admin:navigation:save', function () {
admin.save = async function (data) {
const order = Object.keys(data);
const items = data.map(function (item, index) {
- for (var i in item) {
- if (item.hasOwnProperty(i) && typeof item[i] === 'string' && (i === 'title' || i === 'text')) {
- item[i] = translator.escape(item[i]);
- }
- }
item.order = order[index];
return JSON.stringify(item);
});
@@ -45,8 +40,16 @@ admin.get = async function () {
return _.cloneDeep(cache);
}
const data = await db.getSortedSetRange('navigation:enabled', 0, -1);
+ const escapeFields = ['iconClass', 'class', 'route', 'id', 'text', 'textClass', 'title'];
cache = data.map(function (item) {
item = JSON.parse(item);
+
+ escapeFields.forEach((field) => {
+ if (item.hasOwnProperty(field)) {
+ item[field] = validator.escape(String(item[field]));
+ }
+ });
+
item.groups = item.groups || [];
if (item.groups && !Array.isArray(item.groups)) {
item.groups = [item.groups];
diff --git a/src/navigation/index.js b/src/navigation/index.js
index cf47d3dd5c..f679cc29a3 100644
--- a/src/navigation/index.js
+++ b/src/navigation/index.js
@@ -2,7 +2,6 @@
const nconf = require('nconf');
const admin = require('./admin');
-const translator = require('../translator');
const groups = require('../groups');
const navigation = module.exports;
@@ -17,10 +16,6 @@ navigation.get = async function (uid) {
item.route = nconf.get('relative_path') + item.route;
}
- Object.keys(item).forEach(function (key) {
- item[key] = translator.unescape(item[key]);
- });
-
return item;
});
diff --git a/src/pagination.js b/src/pagination.js
index 8a6d0bed70..52d3de7511 100644
--- a/src/pagination.js
+++ b/src/pagination.js
@@ -69,14 +69,14 @@ pagination.create = function (currentPage, pageCount, queryObj) {
if (currentPage < pageCount) {
data.rel.push({
rel: 'next',
- href: '?page=' + next,
+ href: '?' + qs.stringify({ ...queryObj, page: next }),
});
}
if (currentPage > 1) {
data.rel.push({
rel: 'prev',
- href: '?page=' + previous,
+ href: '?' + qs.stringify({ ...queryObj, page: previous }),
});
}
return data;
diff --git a/src/routes/api.js b/src/routes/api.js
index 1e94de1d96..bc66050358 100644
--- a/src/routes/api.js
+++ b/src/routes/api.js
@@ -34,4 +34,6 @@ module.exports = function (app, middleware, controllers) {
var middlewares = [middleware.maintenanceMode, multipartMiddleware, middleware.validateFiles, middleware.applyCSRF];
router.post('/post/upload', middlewares, uploadsController.uploadPost);
router.post('/topic/thumb/upload', middlewares, uploadsController.uploadThumb);
+
+ router.post('/user/:userslug/uploadpicture', middlewares.concat([middleware.exposeUid, middleware.authenticate, middleware.canViewUsers, middleware.checkAccountPermissions]), controllers.accounts.edit.uploadPicture);
};
diff --git a/src/topics/sorted.js b/src/topics/sorted.js
index 909f0dd250..28844ffee7 100644
--- a/src/topics/sorted.js
+++ b/src/topics/sorted.js
@@ -26,7 +26,7 @@ module.exports = function (Topics) {
}
data.tids = await getTids(params);
data.tids = await sortTids(data.tids, params);
- data.tids = await filterTids(data.tids.slice(0, 200), params);
+ data.tids = await filterTids(data.tids.slice(0, meta.config.recentMaxTopics), params);
data.topicCount = data.tids.length;
data.topics = await getTopics(data.tids, params);
data.nextStart = params.stop + 1;
@@ -49,7 +49,7 @@ module.exports = function (Topics) {
} else if (params.cids) {
tids = await getCidTids(params);
} else {
- tids = await db.getSortedSetRevRange('topics:' + params.sort, 0, 199);
+ tids = await db.getSortedSetRevRange('topics:' + params.sort, 0, meta.config.recentMaxTopics - 1);
}
return tids;
@@ -67,7 +67,7 @@ module.exports = function (Topics) {
pinnedSets.push('cid:' + cid + ':tids:pinned');
});
const [tids, pinnedTids] = await Promise.all([
- db.getSortedSetRevRange(sets, 0, 199),
+ db.getSortedSetRevRange(sets, 0, meta.config.recentMaxTopics - 1),
db.getSortedSetRevRange(pinnedSets, 0, -1),
]);
return pinnedTids.concat(tids);
diff --git a/src/topics/unread.js b/src/topics/unread.js
index f07640875f..c816bd62e0 100644
--- a/src/topics/unread.js
+++ b/src/topics/unread.js
@@ -370,6 +370,6 @@ module.exports = function (Topics) {
Topics.filterUnrepliedTids = async function (tids) {
const scores = await db.sortedSetScores('topics:posts', tids);
- return tids.filter((tid, index) => tid && scores[index] <= 1);
+ return tids.filter((tid, index) => tid && scores[index] !== null && scores[index] <= 1);
};
};
diff --git a/src/upgrades/1.14.0/unescape_navigation_titles.js b/src/upgrades/1.14.0/unescape_navigation_titles.js
new file mode 100644
index 0000000000..4ed10f1918
--- /dev/null
+++ b/src/upgrades/1.14.0/unescape_navigation_titles.js
@@ -0,0 +1,27 @@
+'use strict';
+
+const db = require('../../database');
+
+module.exports = {
+ name: 'Unescape navigation titles',
+ timestamp: Date.UTC(2020, 5, 26),
+ method: async function () {
+ const data = await db.getSortedSetRangeWithScores('navigation:enabled', 0, -1);
+ const translator = require('../../translator');
+ const order = [];
+ const items = [];
+ data.forEach(function (item) {
+ const navItem = JSON.parse(item.value);
+ if (navItem.hasOwnProperty('title')) {
+ navItem.title = translator.unescape(navItem.title);
+ }
+ if (navItem.hasOwnProperty('text')) {
+ navItem.text = translator.unescape(navItem.text);
+ }
+ order.push(item.score);
+ items.push(JSON.stringify(navItem));
+ });
+ await db.delete('navigation:enabled');
+ await db.sortedSetAdd('navigation:enabled', order, items);
+ },
+};
diff --git a/src/user/picture.js b/src/user/picture.js
index 5419b062e5..b1ae0f72e2 100644
--- a/src/user/picture.js
+++ b/src/user/picture.js
@@ -61,10 +61,52 @@ module.exports = function (User) {
url: uploadData.url,
};
} finally {
- file.delete(picture.path);
+ await file.delete(picture.path);
}
};
+ // uploads a image file as profile picture
+ User.uploadCroppedPictureFile = async function (data) {
+ const userPhoto = data.file;
+ if (!meta.config.allowProfileImageUploads) {
+ throw new Error('[[error:profile-image-uploads-disabled]]');
+ }
+
+ if (userPhoto.size > meta.config.maximumProfileImageSize * 1024) {
+ throw new Error('[[error:file-too-big, ' + meta.config.maximumProfileImageSize + ']]');
+ }
+
+ if (!userPhoto.type || !User.getAllowedImageTypes().includes(userPhoto.type)) {
+ throw new Error('[[error:invalid-image]]');
+ }
+
+ const extension = file.typeToExtension(userPhoto.type);
+ if (!extension) {
+ throw new Error('[[error:invalid-image-extension]]');
+ }
+
+ const newPath = await convertToPNG(userPhoto.path);
+
+ await image.resizeImage({
+ path: newPath,
+ width: meta.config.profileImageDimension,
+ height: meta.config.profileImageDimension,
+ });
+
+ const filename = generateProfileImageFilename(data.uid, extension);
+ const uploadedImage = await image.uploadImage(filename, 'profile', {
+ uid: data.uid,
+ path: newPath,
+ });
+
+ await User.setUserFields(data.uid, {
+ uploadedpicture: uploadedImage.url,
+ picture: uploadedImage.url,
+ });
+ return uploadedImage;
+ };
+
+ // uploads image data in base64 as profile picture
User.uploadCroppedPicture = async function (data) {
const picture = {
name: 'profileAvatar',
@@ -101,7 +143,7 @@ module.exports = function (User) {
});
return uploadedImage;
} finally {
- file.delete(picture.path);
+ await file.delete(picture.path);
}
};
@@ -126,7 +168,7 @@ module.exports = function (User) {
return path;
}
const newPath = await image.normalise(path);
- file.delete(path);
+ await file.delete(path);
return newPath;
}
diff --git a/src/views/admin/settings/post.tpl b/src/views/admin/settings/post.tpl
index 5ee1dbdc6c..082cd15973 100644
--- a/src/views/admin/settings/post.tpl
+++ b/src/views/admin/settings/post.tpl
@@ -210,6 +210,10 @@