Merge remote-tracking branch 'refs/remotes/origin/master' into develop

v1.18.x
barisusakli 8 years ago
commit 236758b712

@ -216,22 +216,32 @@ function upgrade() {
function activate() {
var db = require('./src/database');
db.init(function (err) {
if (err) {
winston.error(err.stack);
process.exit(1);
}
var plugins = require('./src/plugins');
var plugin = nconf.get('activate');
async.waterfall([
function (next) {
db.init(next);
},
function (next) {
if (plugin.indexOf('nodebb-') !== 0) {
// Allow omission of `nodebb-plugin-`
plugin = 'nodebb-plugin-' + plugin;
}
plugins.isInstalled(plugin, next);
},
function (isInstalled, next) {
if (!isInstalled) {
return next(new Error('plugin not installed'));
}
var plugin = nconf.get('activate');
if (plugin.indexOf('nodebb-') !== 0) {
// Allow omission of `nodebb-plugin-`
plugin = 'nodebb-plugin-' + plugin;
winston.info('Activating plugin `%s`', plugin);
db.sortedSetAdd('plugins:active', 0, plugin, next);
},
], function (err) {
if (err) {
winston.error(err.message);
}
winston.info('Activating plugin `%s`', plugin);
db.sortedSetAdd('plugins:active', 0, plugin, function (err) {
process.exit(err ? 1 : 0);
});
process.exit(err ? 1 : 0);
});
}

@ -403,7 +403,16 @@ var commands = {
description: 'Activate a plugin for the next startup of NodeBB',
usage: 'Usage: ' + './nodebb activate <plugin>'.yellow,
handler: function () {
var arr = ['--activate=' + args._[1]].concat(process.argv.slice(4));
var name = args._[1];
if (!name) {
process.stdout.write(commands.activate.usage + '\n');
process.exit();
}
if (name.startsWith('nodebb-theme')) {
fork(['--reset', '-t', name]);
return;
}
var arr = ['--activate=' + name].concat(process.argv.slice(4));
fork(arr);
},
},

@ -2,7 +2,7 @@
"reputation": "評価の設定",
"disable": "レピュテーションシステムを無効にする",
"disable-down-voting": "低評価を無効にする",
"votes-are-public": "All Votes Are Public",
"votes-are-public": "すべての投票は公開されています",
"thresholds": "アクティビティのしきい値",
"min-rep-downvote": "投稿をdownvoteするための最低評価",
"min-rep-flag": "フラグの投稿に低評価"

@ -10,15 +10,15 @@
"return_to": "%1へ戻る",
"new_notification": "新しい通知",
"you_have_unread_notifications": "未読の通知があります。",
"all": "All",
"topics": "Topics",
"replies": "Replies",
"chat": "Chats",
"follows": "Follows",
"upvote": "Upvotes",
"new-flags": "New Flags",
"my-flags": "Flags assigned to me",
"bans": "Bans",
"all": "全て",
"topics": "スレッド",
"replies": "返信",
"chat": "チャット",
"follows": "フォロー",
"upvote": "高評価",
"new-flags": "新しいフラグ",
"my-flags": "あなたにフラグがつきました",
"bans": "Ban",
"new_message_from": "<strong>%1</strong>からの新しいメッセージ",
"upvoted_your_post_in": "<strong>%1</strong>さんが<strong>%2</strong>に高評価をつけました。",
"upvoted_your_post_in_dual": "<strong>%1</strong>さんと<strong>%2</strong>さんが<strong>%3</strong>に高評価をつけました。",

@ -3,8 +3,8 @@
"robots-txt": "Custom Robots.txt <small>Leave blank for default</small>",
"sitemap-feed-settings": "Sitemap & Feed Settings",
"disable-rss-feeds": "Disable RSS Feeds",
"disable-sitemap-xml": "Disable Sitemap.xml",
"disable-sitemap-xml": "sitemap.xml devredışı bırak",
"sitemap-topics": "Number of Topics to display in the Sitemap",
"clear-sitemap-cache": "Clear Sitemap Cache",
"view-sitemap": "View Sitemap"
"clear-sitemap-cache": "Site haritası çerezlerini temizle",
"view-sitemap": "Site haritasını gör"
}

@ -27,7 +27,7 @@
"details.disableJoinRequests": "Katılma isteklerini devre dışı bırak",
"details.grant": "Gurup sahibi yap/yapma",
"details.kick": "Dışarı at",
"details.kick_confirm": "Are you sure you want to remove this member from the group?",
"details.kick_confirm": "Bu üyeyi bu gruptan silmek istediğinden emin misin?",
"details.owner_options": "Grup Yöneticisi",
"details.group_name": "Grup ismi",
"details.member_count": "Üye Sayısı",

@ -15,7 +15,7 @@
"replies": "Yanıtlar",
"chat": "Sohbetler",
"follows": "Takip ediyor",
"upvote": "Upvotes",
"upvote": "Artı Oy",
"new-flags": "Yeni Bayrak",
"my-flags": "Flags assigned to me",
"bans": "Yasaklamalar",

@ -21,7 +21,7 @@
"upgrade-available": "Була випущена нова версія (v%1). Подумайте про <a href=\"https://docs.nodebb.org/en/latest/upgrading/index.html\">оновлення свого NodeBB</a>.</p>",
"prerelease-upgrade-available": "У вас встановлено застарілу пре-релізну версію NodeBB. Була випущена нова версія (v%1). Подумайте про <a href=\"https://docs.nodebb.org/en/latest/upgrading/index.html\">оновлення свого NodeBB</a>.</p>",
"prerelease-warning": "<p>Це <strong>пре-релізна</strong> версія NodeBB. Можуть виникати неочікувані помилки. <i class=\"fa fa-exclamation-triangle\"></i></p>",
"running-in-development": "<span>Forum is running in development mode. The forum may be open to potential vulnerabilities; please contact your system administrator.</span>",
"running-in-development": "Форум працює в режимі розробки. Форум потенційно може бути незахищеним, будь-ласка повідомте вашого системного адміністратора.",
"notices": "Сповіщення",
"restart-not-required": "Перезавантаження не потрібне",

@ -28,5 +28,5 @@
"outgoing-links": "Зовнішні посилання",
"outgoing-links.warning-page": "Використовувати сторінку попередження про зовнішній перехід",
"search-default-sort-by": "Типовий порядок результатів пошуку",
"outgoing-links.whitelist": "Domains to whitelist for bypassing the warning page"
"outgoing-links.whitelist": "Безпечні домени для пропуску сторінки попередження"
}

@ -2,7 +2,7 @@
"reputation": "Налаштування репутації",
"disable": "Вимкнути систему репутації",
"disable-down-voting": "Вимкнути голосування проти",
"votes-are-public": "All Votes Are Public",
"votes-are-public": "Всі голоси публічні",
"thresholds": "Допуски активності",
"min-rep-downvote": "Мінімальна репутація для голосування проти постів",
"min-rep-flag": "Мінімальна репутація для подання скарг на пости"

@ -5,32 +5,32 @@
"greeting_no_name": "Привіт",
"greeting_with_name": "Привіт %1",
"welcome.text1": "Дякуємо за реєстрацію з %1!",
"welcome.text2": "Щоб повністю активувати ваш аккаунт, нам потрібно перевірити, що вам належить електронна адреса, яку ви вказали при реєстрації ",
"welcome.text3": "Адміністратор схвалив ваш запит на реєстрацію. Ви можете залогінитись, використовуючи свій пароль та назву аккаунту",
"welcome.text2": "Щоб повністю активувати ваш акаунт, нам потрібно перевірити, що вам належить електронна адреса, яку ви вказали при реєстрації ",
"welcome.text3": "Адміністратор схвалив ваш запит на реєстрацію. Ви можете залогінитись, використовуючи свій пароль та назву акаунту",
"welcome.cta": "Натисніть тут, щоб підтвердити вашу електронну адресу",
"invitation.text1": "%1 запросив вас приєднатися до %2",
"invitation.ctr": "Натисніть тут, щоб створити аккаунт",
"reset.text1": "Ми отримали запит на відновлення вашого паролю, можливо тому, что ви його забули. Якщо це не потрібно - проігноруйте цей лист",
"invitation.ctr": "Натисніть тут, щоб створити акаунт",
"reset.text1": "Ми отримали запит на відновлення вашого паролю, можливо тому, что ви його забули. Якщо вам це не потрібно - проігноруйте цей лист",
"reset.text2": "Щоб продовжити відновлення паролю, будь ласка, перейдіть за посиланням",
"reset.cta": "Натисніть щоб скинути Ваш пароль",
"reset.cta": "Натисніть тут щоб скинути Ваш пароль",
"reset.notify.subject": "Пароль змінено",
"reset.notify.text1": "Ми повідомляємо вас, що на %1, ваш пароль було змінено",
"reset.notify.text1": "Ми повідомляємо вас, що на %1, ваш пароль було успішно змінено",
"reset.notify.text2": "Якщо ви не авторизували це, повідомте негайно адміністратора",
"digest.notifications": "Ви маєте нове повідомлення від %1:",
"digest.latest_topics": "Останні теми від %1",
"digest.cta": "Натисніть, щоб відвідати %1",
"digest.unsub.info": "Цей дайджест був вислан вам, згідно ваших налаштувань підписки",
"digest.no_topics": "Не було активних тем, за останні %1",
"digest.unsub.info": "Цей дайджест був висланий вам, згідно ваших налаштувань підписки",
"digest.no_topics": "Не було активних тем за останні %1",
"digest.day": "день",
"digest.week": "тиждень",
"digest.month": "місяць",
"digest.subject": "Дайджест для %1",
"notif.chat.subject": "Новє повідомлення чату було отриманно від %1",
"notif.chat.subject": "Отримане нове повідомлення чату від %1",
"notif.chat.cta": "Натисніть тут, щоб продовжити розмову",
"notif.chat.unsub.info": "Це повідомлення чату було вислано вам, згідно ваших налаштувань підписки",
"notif.post.cta": "Натисніть тут, щоб повністю прочитати статтю",
"notif.post.unsub.info": "Це повідомлення пошти було вислано вам, згідно ваших налаштувань підписки",
"test.text1": "Це пробний лист, для верифікації адресату. Всі налаштування вірні для NodeBB.",
"notif.post.unsub.info": "Це поштове повідомлення було вислано вам, згідно ваших налаштувань підписки",
"test.text1": "Це пробний лист для верифікації поштової служби. Всі налаштування вірні для NodeBB.",
"unsub.cta": "Натисніть тут, щоб змінити ці налаштування",
"closing": "Дякуємо!"
}

@ -16,7 +16,7 @@
"please_log_in": "Увійдіть, будь-ласка",
"logout": "Вийти",
"posting_restriction_info": "Наразі постити можуть лише зареєстровані користувачі, натисніть тут щоб увійти.",
"welcome_back": "З повернення",
"welcome_back": "З поверненням",
"you_have_successfully_logged_in": "Ви успішно увійшли",
"save_changes": "Зберегти зміни",
"save": "Зберегти",

@ -27,7 +27,7 @@
"details.disableJoinRequests": "Вимкнути запити на приєднання",
"details.grant": "Надати/забрати права адміністратора",
"details.kick": "Вигнати",
"details.kick_confirm": "Are you sure you want to remove this member from the group?",
"details.kick_confirm": "Ви впевнені, що бажаєте видалити цього користувача з групи?",
"details.owner_options": "Адміністрація групи",
"details.group_name": "Назва групи",
"details.member_count": "Кількість учасників",

@ -10,15 +10,15 @@
"return_to": "Повернутись до %1",
"new_notification": "Нове сповіщення",
"you_have_unread_notifications": "У вас немає непрочитаних сповіщень",
"all": "All",
"topics": "Topics",
"replies": "Replies",
"chat": "Chats",
"follows": "Follows",
"upvote": "Upvotes",
"new-flags": "New Flags",
"my-flags": "Flags assigned to me",
"bans": "Bans",
"all": "Всі",
"topics": "Теми",
"replies": "Відповіді",
"chat": "Чати",
"follows": "Вістежування",
"upvote": "Схвалення",
"new-flags": "Нові Скарги",
"my-flags": "Скарги, подані на мене",
"bans": "Бани",
"new_message_from": "Нове повідомлення від <strong>%1</strong>",
"upvoted_your_post_in": "<strong>%1</strong> проголосував за ваш пост в <strong>%2</strong>.",
"upvoted_your_post_in_dual": "<strong>%1</strong> та <strong>%2</strong> проголосували за ваш пост в <strong>%3</strong>.",
@ -40,7 +40,7 @@
"user_started_following_you_multiple": "<strong>%1</strong> та %2 інших почали стежити за вами.",
"new_register": "<strong>%1</strong> надіслав запит на реєстрацію.",
"new_register_multiple": "<strong>%1</strong> запити на реєстрацію очікують розгляду.",
"flag_assigned_to_you": "<strong>Flag %1</strong> has been assigned to you",
"flag_assigned_to_you": "На вас була подана <strong>скарга %1</strong>",
"email-confirmed": "Електронну пошту підтверджено",
"email-confirmed-message": "Дякуємо за підтвердження електронної пошти. Ваш акаунт тепер повністю активовано.",
"email-confirm-error-message": "При перевірці вашої електронної пошти сталася проблема. Можливо код був недійсним або простроченим.",

@ -21,7 +21,7 @@ define('admin/manage/group', [
var groupName = ajaxify.data.group.name;
memberList.init();
memberList.init('admin/manage/group');
changeGroupUserTitle.keyup(function () {
groupLabelPreview.text(changeGroupUserTitle.val());

@ -5,8 +5,10 @@ define('forum/groups/memberlist', ['components', 'forum/infinitescroll'], functi
var MemberList = {};
var searchInterval;
var groupName;
var templateName;
MemberList.init = function () {
MemberList.init = function (_templateName) {
templateName = _templateName || 'groups/details';
groupName = ajaxify.data.group.name;
handleMemberSearch();
@ -84,7 +86,7 @@ define('forum/groups/memberlist', ['components', 'forum/infinitescroll'], functi
}
function parseAndTranslate(users, callback) {
app.parseAndTranslate('groups/details', 'members', {
app.parseAndTranslate(templateName, 'members', {
group: {
members: users,
isOwner: ajaxify.data.group.isOwner,

@ -67,13 +67,13 @@ define('sounds', function () {
if (id) {
var item = 'sounds.handled:' + id;
if (sessionStorage.getItem(item)) {
if (localStorage.getItem(item)) {
return;
}
sessionStorage.setItem(item, true);
localStorage.setItem(item, true);
setTimeout(function () {
sessionStorage.removeItem(item);
localStorage.removeItem(item);
}, 5000);
}

@ -76,7 +76,6 @@ module.exports = function (Meta) {
'public/src/modules/alerts.js',
'public/src/modules/taskbar.js',
'public/src/modules/helpers.js',
'public/src/modules/sounds.js',
'public/src/modules/string.js',
'public/src/modules/flags.js',
],

Loading…
Cancel
Save