diff --git a/install/package.json b/install/package.json
index 3c76a6a6b9..deacbc651a 100644
--- a/install/package.json
+++ b/install/package.json
@@ -65,7 +65,7 @@
"mubsub": "^1.4.0",
"nconf": "^0.9.1",
"nodebb-plugin-composer-default": "6.0.21",
- "nodebb-plugin-dbsearch": "2.0.15",
+ "nodebb-plugin-dbsearch": "2.0.16",
"nodebb-plugin-emoji": "^2.2.2",
"nodebb-plugin-emoji-android": "2.0.0",
"nodebb-plugin-markdown": "8.4.2",
diff --git a/public/language/en-GB/admin/settings/notifications.json b/public/language/en-GB/admin/settings/notifications.json
index da6c9680a3..03fa0ac66a 100644
--- a/public/language/en-GB/admin/settings/notifications.json
+++ b/public/language/en-GB/admin/settings/notifications.json
@@ -2,5 +2,6 @@
"notifications": "Notifications",
"welcome-notification": "Welcome Notification",
"welcome-notification-link": "Welcome Notification Link",
- "welcome-notification-uid": "Welcome Notification User (UID)"
+ "welcome-notification-uid": "Welcome Notification User (UID)",
+ "notification-alert-timeout": "Notification Alert Timeout"
}
\ No newline at end of file
diff --git a/public/language/he/admin/manage/users.json b/public/language/he/admin/manage/users.json
index 4163ec6926..dcd55998e8 100644
--- a/public/language/he/admin/manage/users.json
+++ b/public/language/he/admin/manage/users.json
@@ -30,18 +30,18 @@
"search.uid": "על פי זהות משתמש",
"search.uid-placeholder": "Enter a user ID to search",
"search.username": "על פי שם משתמש",
- "search.username-placeholder": "Enter a username to search",
+ "search.username-placeholder": "הזן שם משתמש לחיפוש",
"search.email": "על פי דוא\"ל",
- "search.email-placeholder": "Enter a email to search",
+ "search.email-placeholder": "הזן דואל לחיפוש",
"search.ip": "על פי כתובת IP",
- "search.ip-placeholder": "Enter an IP Address to search",
+ "search.ip-placeholder": "הזן כתובת IP לחיפוש",
"search.not-found": "משתמש לא נמצא!",
"inactive.3-months": "3 חודשים",
"inactive.6-months": "6 חודשים",
"inactive.12-months": "12 חודשים",
- "users.uid": "uid",
+ "users.uid": "מזהה משתמש",
"users.username": "שם משתמש",
"users.email": "דוא\"ל",
"users.postcount": "postcount",
@@ -58,12 +58,12 @@
"create.password-confirm": "אשר סיסמה",
"temp-ban.length": "Ban Length",
- "temp-ban.reason": "Reason (Optional)",
+ "temp-ban.reason": "סיבה (אופציונאלי)",
"temp-ban.hours": "שעות",
"temp-ban.days": "ימים",
"temp-ban.explanation": "Enter the length of time for the ban. Note that a time of 0 will be a considered a permanent ban.",
- "alerts.confirm-ban": "Do you really want to ban this user permanently?",
+ "alerts.confirm-ban": "האם אתה רוצה להרחיק משתמש זה לצמיתות?",
"alerts.confirm-ban-multi": "Do you really want to ban these users permanently?",
"alerts.ban-success": "User(s) banned!",
"alerts.button-ban-x": "Ban %1 user(s)",
@@ -71,29 +71,29 @@
"alerts.lockout-reset-success": "Lockout(s) reset!",
"alerts.flag-reset-success": "Flags(s) reset!",
"alerts.no-remove-yourself-admin": "You can't remove yourself as Administrator!",
- "alerts.make-admin-success": "User is now administrator.",
- "alerts.confirm-remove-admin": "Do you really want to remove this administrator?",
- "alerts.remove-admin-success": "User is no longer administrator.",
- "alerts.make-global-mod-success": "User is now global moderator.",
+ "alerts.make-admin-success": "המשתמש הנו מנהל עכשיו",
+ "alerts.confirm-remove-admin": "האם אתה בטוח רוצה להסיר את המנהל הזה?",
+ "alerts.remove-admin-success": "בוטלה הרשאת מנהל למשתמש",
+ "alerts.make-global-mod-success": "מעתה המשתמש הנו מנהל קבוצות כללי",
"alerts.confirm-remove-global-mod": "Do you really want to remove this global moderator?",
"alerts.remove-global-mod-success": "User is no longer global moderator.",
"alerts.make-moderator-success": "User is now moderator.",
"alerts.confirm-remove-moderator": "Do you really want to remove this moderator?",
"alerts.remove-moderator-success": "User is no longer moderator.",
- "alerts.confirm-validate-email": "Do you want to validate email(s) of these user(s)?",
- "alerts.validate-email-success": "Emails validated",
- "alerts.password-reset-confirm": "Do you want to send password reset email(s) to these user(s)?",
+ "alerts.confirm-validate-email": "האם אתה רוצה לאמת דואל(ים) למשתמש(ים) האלה?",
+ "alerts.validate-email-success": "דואלים אומתו.",
+ "alerts.password-reset-confirm": "האם אתה רוצה לשלוח איפוס סיסמת דואל(ים) למשתמש(ים) האלה?",
"alerts.confirm-delete": "אזהרה! האם אתה רוצה למחוק משתמש(ים)? פעולה זו אינה הפיכה! רק חשבון המשתמש יימחק, הפוסטים והנושאים שלו ישארו.",
- "alerts.delete-success": "User(s) Deleted!",
- "alerts.confirm-purge": "Warning! Do you really want to delete user(s) and their content? This action is not reversable! All user data and content will be erased!",
- "alerts.create": "Create User",
- "alerts.button-create": "Create",
- "alerts.button-cancel": "Cancel",
- "alerts.error-passwords-different": "Passwords must match!",
- "alerts.error-x": "Error
%1
",
- "alerts.create-success": "User created!",
+ "alerts.delete-success": "משתמש(ים) נמחק!",
+ "alerts.confirm-purge": "אזהרה! האם אתה באמת רוצה למחוק משתמש(ים) ואת התוכן שלהם? פעולה זו בלתי הפיכה! כל המידע והתכנים של המשתמש ימחקו!",
+ "alerts.create": "צור משתמש",
+ "alerts.button-create": "צור",
+ "alerts.button-cancel": "בטל",
+ "alerts.error-passwords-different": "סיסמאות חייבות להיות שווה!",
+ "alerts.error-x": "טעות
%1
",
+ "alerts.create-success": "נוצר משתמש!",
- "alerts.prompt-email": "Email: ",
- "alerts.email-sent-to": "An invitation email has been sent to %1",
+ "alerts.prompt-email": "דוא\"ל:",
+ "alerts.email-sent-to": "דואל הזמנה נשלח ל %1",
"alerts.x-users-found": "%1 user(s) found! Search took %2 ms."
}
\ No newline at end of file
diff --git a/public/language/he/admin/settings/general.json b/public/language/he/admin/settings/general.json
index 4dd212aefb..42ea725ff3 100644
--- a/public/language/he/admin/settings/general.json
+++ b/public/language/he/admin/settings/general.json
@@ -1,8 +1,8 @@
{
- "site-settings": "Site Settings",
- "title": "Site Title",
- "title.url": "URL",
- "title.url-placeholder": "The URL of the site title",
+ "site-settings": "הגדרות האתר",
+ "title": "כותרת האתר",
+ "title.url": "כתובת האתר",
+ "title.url-placeholder": "כתובת אתר זה",
"title.url-help": "When the title is clicked, send users to this address. If left blank, user will be sent to the forum index.",
"title.name": "Your Community Name",
"title.show-in-header": "Show Site Title in Header",
diff --git a/public/language/he/email.json b/public/language/he/email.json
index 2fe5ec327d..635aa7cd5a 100644
--- a/public/language/he/email.json
+++ b/public/language/he/email.json
@@ -9,7 +9,7 @@
"welcome.text3": "מנהל אישר את ההרשמה שלך.\nאתה יכול להתחבר עם השם משתמש והסיסמא שלך מעכשיו.",
"welcome.cta": "לחץ כאן על מנת לאשר את כתובת המייל שלך.",
"invitation.text1": "%1 הזמין אותך להצתרף ל%2",
- "invitation.text2": "Your invitation will expire in %1 days.",
+ "invitation.text2": "ההזמנה של תפוג ב %1 ימים",
"invitation.ctr": "לחץ כאן כדי ליצור את החשבון שלך.",
"reset.text1": "קיבלנו בקשה לאפס את הסיסמה לחשבון שלך, כנראה מפני ששכחת אותה. אם לא ביקשת לאפס את הסיסמה, אנא התעלם ממייל זה.",
"reset.text2": "על מנת להמשיך עם תהליך איפוס הסיסמה, אנא לחץ על הלינק הבא:",
diff --git a/public/language/he/user.json b/public/language/he/user.json
index f27098509a..56ec35951f 100644
--- a/public/language/he/user.json
+++ b/public/language/he/user.json
@@ -12,7 +12,7 @@
"ban_account_confirm": "אתה בטוח שברצונך להרחיק את המשתמש הזה?",
"unban_account": "בטל את הרחקת החשבון",
"delete_account": "מחק חשבון",
- "delete_account_confirm": "Are you sure you want to delete your account? This action is irreversible and you will not be able to recover any of your data
Enter your password to confirm that you wish to destroy this account.",
+ "delete_account_confirm": "האם אתה בטוח שאתה רוצה למחוק את החשבון שלך? הפעולה הזו היא בלתי הפיכה והמידע שלך לא יוכל להשתחזר
הזן את הסיסמה שלך לאשר שאתה רוצה למחוק חשבון זה.",
"delete_this_account_confirm": "האם אתה בטוח שברצונך למחוק חשבון זה? אפשרות זו לא ניתנת לביטול ולא תוכל לשחזר אף מידע
",
"account-deleted": "החשבון נמחק",
"fullname": "שם מלא",
diff --git a/public/language/pl/admin/manage/tags.json b/public/language/pl/admin/manage/tags.json
index 9820ae5739..3c8bea86d4 100644
--- a/public/language/pl/admin/manage/tags.json
+++ b/public/language/pl/admin/manage/tags.json
@@ -14,6 +14,6 @@
"alerts.editing-multiple": "Edycja wielu tagów",
"alerts.editing-x": "Edytowanie tagu \"%1\"",
- "alerts.confirm-delete": "Czy na pewno chcesz skasować zaznaczone tagi?",
+ "alerts.confirm-delete": "Czy na pewno chcesz usunąć zaznaczone tagi?",
"alerts.update-success": "Zaktualizowano tag-a!"
}
\ No newline at end of file
diff --git a/public/language/pl/error.json b/public/language/pl/error.json
index 5cc17e02c8..9890aa410f 100644
--- a/public/language/pl/error.json
+++ b/public/language/pl/error.json
@@ -65,7 +65,7 @@
"cant-delete-topic-has-replies": "Nie możesz usunąć tematu zawierającego %1 odpowiedzi",
"content-too-short": "Prosimy wpisać dłuższy post. Posty powinny zawierać co najmniej %1 znaków.",
"content-too-long": "Prosimy wpisać krótszy post. Posty nie mogą zawierać więcej niż %1 znaków.",
- "title-too-short": "Prosimy podać dłuższy tytuł. Tytuły powinny zawierać co najmniej %1 znaków.",
+ "title-too-short": "Wpisz dłuższy tytuł. Tytuły powinny liczyć co najmniej %1 znaków.",
"title-too-long": "Prosimy podać krótszy tytuł. Tytuły nie mogą być dłuższe niż %1 znaków.",
"category-not-selected": "Nie wybrano kategorii.",
"too-many-posts": "Możesz publikować posty raz na %1 sekund – poczekaj, zanim dodasz kolejny post",
@@ -99,7 +99,7 @@
"post-already-restored": "Ten post został już przywrócony",
"topic-already-deleted": "Ten temat został już skasowany",
"topic-already-restored": "Ten temat został już przywrócony",
- "cant-purge-main-post": "Nie możesz wymazać głównego postu, zamiast tego usuń temat",
+ "cant-purge-main-post": "Nie możesz wymazać głównego posta, zamiast tego usuń temat",
"topic-thumbnails-are-disabled": "Miniatury tematów są wyłączone.",
"invalid-file": "Błędny plik",
"uploads-are-disabled": "Przesyłanie plików jest wyłączone",
diff --git a/public/language/pl/pages.json b/public/language/pl/pages.json
index dc38ed53f7..75a88a4659 100644
--- a/public/language/pl/pages.json
+++ b/public/language/pl/pages.json
@@ -8,7 +8,7 @@
"recent": "Ostatnie tematy",
"top": "Tematy z najwyższą liczbą głosów",
"moderator-tools": "Narzędzia dla moderatorów",
- "flagged-content": "Treść oflagowanego posta",
+ "flagged-content": "Flagi",
"ip-blacklist": "Czarna lista adresów IP",
"post-queue": "Kolejka postów",
"users/online": "Dostępni użytkownicy",
diff --git a/public/language/pl/tags.json b/public/language/pl/tags.json
index f5ad810ca2..bf08ecd799 100644
--- a/public/language/pl/tags.json
+++ b/public/language/pl/tags.json
@@ -1,7 +1,7 @@
{
"no_tag_topics": "Nie ma tematów z tym tagiem",
"tags": "Tagi",
- "enter_tags_here": "Wpisz tagi tutaj, każdy o długości %1 do %2 znaków.",
+ "enter_tags_here": "Wpisz tagi tutaj, każdy o długości od %1 do %2 znaków.",
"enter_tags_here_short": "Wpisz tagi...",
"no_tags": "Jeszcze nie ma tagów."
}
\ No newline at end of file
diff --git a/public/language/pl/topic.json b/public/language/pl/topic.json
index e24c81a371..d878852919 100644
--- a/public/language/pl/topic.json
+++ b/public/language/pl/topic.json
@@ -33,7 +33,7 @@
"copy-ip": "Kopiuj IP",
"ban-ip": "Blokuj IP",
"view-history": "Edytuj historię",
- "bookmark_instructions": "Kliknij tutaj, by powrócić do ostatniego przeczytanego postu w tym temacie.",
+ "bookmark_instructions": "Kliknij tutaj, by powrócić do ostatniego przeczytanego posta w tym temacie.",
"flag_title": "Zgłoś post do moderacji",
"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.",
@@ -84,7 +84,7 @@
"confirm_fork": "Skopiuj",
"bookmark": "Dodaj do zakładek",
"bookmarks": "Zakładki",
- "bookmarks.has_no_bookmarks": "Nie dodałeś jeszcze żadnego postu do zakładek.",
+ "bookmarks.has_no_bookmarks": "Nie dodałeś jeszcze żadnego posta do zakładek.",
"loading_more_posts": "Załaduj więcej postów",
"move_topic": "Przenieś temat",
"move_topics": "Przenieś tematy",
diff --git a/public/src/modules/notifications.js b/public/src/modules/notifications.js
index 937f625738..4a5f86c625 100644
--- a/public/src/modules/notifications.js
+++ b/public/src/modules/notifications.js
@@ -75,7 +75,7 @@ define('notifications', ['sounds', 'translator', 'components', 'navigator', 'ben
var payload = {
alert_id: 'new_notif',
title: '[[notifications:new_notification]]',
- timeout: 2000,
+ timeout: parseInt(config.notificationAlertTimeout, 10) || 5000,
};
if (notifData.path) {
diff --git a/src/controllers/api.js b/src/controllers/api.js
index ed8ad64700..b969b7be8a 100644
--- a/src/controllers/api.js
+++ b/src/controllers/api.js
@@ -62,6 +62,7 @@ apiController.loadConfig = function (req, callback) {
config.bootswatchSkin = meta.config.bootswatchSkin || 'noskin';
config.defaultBootswatchSkin = meta.config.bootswatchSkin || 'noskin';
config.enablePostHistory = parseInt(meta.config.enablePostHistory || 1, 10) === 1;
+ config.notificationAlertTimeout = parseInt(meta.config.notificationAlertTimeout, 10) || 5000;
if (config.useOutgoingLinksPage) {
config.outgoingLinksWhitelist = meta.config['outgoingLinks:whitelist'];
diff --git a/src/emailer.js b/src/emailer.js
index db49bdf0f8..184eb5d95b 100644
--- a/src/emailer.js
+++ b/src/emailer.js
@@ -212,12 +212,23 @@ Emailer.sendToEmail = function (template, email, language, params, callback) {
async.waterfall([
function (next) {
+ Plugins.fireHook('filter:email.params', {
+ template: template,
+ email: email,
+ language: lang,
+ params: params,
+ }, next);
+ },
+ function (result, next) {
+ template = result.template;
+ email = result.email;
+ params = result.params;
async.parallel({
html: function (next) {
- Emailer.renderAndTranslate(template, params, lang, next);
+ Emailer.renderAndTranslate(template, params, result.language, next);
},
subject: function (next) {
- translator.translate(params.subject, lang, function (translated) {
+ translator.translate(params.subject, result.language, function (translated) {
next(null, translated);
});
},
diff --git a/src/posts/cache.js b/src/posts/cache.js
index 9fce761490..28c58839e8 100644
--- a/src/posts/cache.js
+++ b/src/posts/cache.js
@@ -4,7 +4,7 @@ var LRU = require('lru-cache');
var meta = require('../meta');
var cache = LRU({
- max: parseInt(meta.config.postCacheSize, 10) || 1048576,
+ max: parseInt(meta.config.postCacheSize, 10) || 5242880,
length: function (n) { return n.length; },
maxAge: 0,
});
diff --git a/src/views/admin/manage/uploads.tpl b/src/views/admin/manage/uploads.tpl
index a18b233aa6..dbddede2ef 100644
--- a/src/views/admin/manage/uploads.tpl
+++ b/src/views/admin/manage/uploads.tpl
@@ -17,7 +17,7 @@