From 99da6786457547c9b47ef65f0281f4c9f00f6c7e Mon Sep 17 00:00:00 2001 From: OldHawk Date: Sat, 16 Dec 2017 16:17:18 +0800 Subject: [PATCH] feat(config): add new configure item for server notice action #20 --- config/env/torrents.js | 21 ++++++++++++++++++- .../controllers/makers.server.controller.js | 8 ++++++- .../announces.server.controller.js | 1 + modules/core/client/app/trans-string-en.js | 9 ++++++-- modules/core/client/app/trans-string-zh.js | 9 ++++++-- .../controllers/admin.server.controller.js | 6 ++++-- 6 files changed, 46 insertions(+), 8 deletions(-) diff --git a/config/env/torrents.js b/config/env/torrents.js index c68a54ae..5182b64d 100644 --- a/config/env/torrents.js +++ b/config/env/torrents.js @@ -316,6 +316,25 @@ module.exports = { collectionsOverviewLength: 2048 }, + /** + * @serverNotice + * + * server auto notice settings + * + * @action: notice actions + * @title: notice title in translate string of SERVER_MESSAGE + * @content: notice content in translate string of SERVER_MESSAGE + * @enable: enable switch + */ + serverNotice: { + action: { + makerCreate: {title: 'TITLE_MAKER_CREATE', content: 'CONTENT_MAKER_CREATE', enable: true}, + vipStatusChanged: {title: 'TITLE_VIP_CHANGED_ADD', content: 'CONTENT_VIP_CHANGED_ADD', enable: true}, + hnrWarningAddByAnnounce: {title: 'TITLE_HNR_WARNING_ADD', content: 'CONTENT_HNR_WARNING_ADD', enable: true}, + hnrWarningRemoveByAnnounce: {title: 'TITLE_HNR_WARNING_REMOVE', content: 'CONTENT_HNR_WARNING_REMOVE', enable: true} + } + }, + /** * @trace * @@ -613,7 +632,7 @@ module.exports = { */ hitAndRun: { condition: { - seedTime: 24 * 60 * 60 * 1000 * 7, + seedTime: 60 * 60 * 1000 * 24 * 7, ratio: 1.5 }, forbiddenDownloadMinWarningNumber: 3, diff --git a/modules/about/server/controllers/makers.server.controller.js b/modules/about/server/controllers/makers.server.controller.js index 344f51cc..796a43a7 100644 --- a/modules/about/server/controllers/makers.server.controller.js +++ b/modules/about/server/controllers/makers.server.controller.js @@ -15,6 +15,7 @@ var traceConfig = config.meanTorrentConfig.trace; var appConfig = config.meanTorrentConfig.app; var mtDebug = require(path.resolve('./config/lib/debug')); var serverMessage = require(path.resolve('./config/lib/server-message')); +var serverNoticeConfig = config.meanTorrentConfig.serverNotice; /** * Create an maker @@ -48,7 +49,12 @@ exports.create = function (req, res) { }); //add server message - serverMessage.addMessage(user._id, 'TITLE_MAKER_CREATE', 'CONTENT_MAKER_CREATE', {maker_group_name: maker.name, site_name: appConfig.name}); + if (serverNoticeConfig.action.makerCreate.enable) { + serverMessage.addMessage(user._id, serverNoticeConfig.action.makerCreate.title, serverNoticeConfig.action.makerCreate.content, { + maker_group_name: maker.name, + site_name: appConfig.name + }); + } //create trace log traceLogCreate(req, traceConfig.action.OperCreateMakerGroup, { diff --git a/modules/announce/server/controllers/announces.server.controller.js b/modules/announce/server/controllers/announces.server.controller.js index 00ebf863..ec2fc69e 100644 --- a/modules/announce/server/controllers/announces.server.controller.js +++ b/modules/announce/server/controllers/announces.server.controller.js @@ -308,6 +308,7 @@ exports.announce = function (req, res) { torrent: req.torrent._id, user: req.passkeyuser._id }) + .populate('torrent') .exec(function (err, t) { if (err) { done(185); diff --git a/modules/core/client/app/trans-string-en.js b/modules/core/client/app/trans-string-en.js index e99ad403..86bdf426 100644 --- a/modules/core/client/app/trans-string-en.js +++ b/modules/core/client/app/trans-string-en.js @@ -1287,11 +1287,16 @@ //server message string SERVER_MESSAGE: { - TITLE_VIP_CHANGED: 'Vip status changed', + TITLE_VIP_CHANGED_ADD: 'Vip status changed', CONTENT_VIP_CHANGED_ADD: '### Welcome! \n Your vip status changed, now end at: **{{vip_end_at | date: "yyyy-MM-dd HH:mm"}}** :four_leaf_clover:', TITLE_MAKER_CREATE: 'Maker group has created', - CONTENT_MAKER_CREATE: 'Administrator already created a maker group **-={{maker_group_name}}=-** for you, you are the group founder now, Thank you for your contribution on **{{site_name}}** :100:' + CONTENT_MAKER_CREATE: 'Administrator already created a maker group **-={{maker_group_name}}=-** for you, you are the group founder now, Thank you for your contribution on **{{site_name}}** :100:', + + TITLE_HNR_WARNING_ADD: 'New H&R warning', + CONTENT_HNR_WARNING_ADD: '###H&R warning! \n You just got a h&r warning on torrent [{{torrent_file_name}}](/torrents/{{torrent_id}}), please continue to seeding, the warning will be auto cleanup when the seed ratio more than {{hnr_ratio}} or seed time more than {{hnr_days}} days or clean up manually at [warning list](/status/warning).', + TITLE_HNR_WARNING_REMOVE: 'H&R warning removed', + CONTENT_HNR_WARNING_REMOVE: '###H&R warning removed! \n Congratulate, your h&r warning ont torrent [{{torrent_file_name}}](/torrents/{{torrent_id}}) already clean up.' } }; diff --git a/modules/core/client/app/trans-string-zh.js b/modules/core/client/app/trans-string-zh.js index ac037354..9b64a3da 100644 --- a/modules/core/client/app/trans-string-zh.js +++ b/modules/core/client/app/trans-string-zh.js @@ -1287,11 +1287,16 @@ //server message string SERVER_MESSAGE: { - TITLE_VIP_CHANGED: 'Vip 状态已改变', + TITLE_VIP_CHANGED_ADD: 'Vip 状态已改变', CONTENT_VIP_CHANGED_ADD: '### 恭喜! \n 您的 Vip 状态已改变, 您的 Vip 将结束于: **{{vip_end_at | date: "yyyy-MM-dd HH:mm"}}** :four_leaf_clover:', TITLE_MAKER_CREATE: '资源制作小组已建立', - CONTENT_MAKER_CREATE: '管理员已为您创建资源制作小组 **-={{maker_group_name}}=-** , 您现在是该小组的创建人, 感谢您为 **{{site_name}}** 所做的贡献! :100:' + CONTENT_MAKER_CREATE: '管理员已为您创建资源制作小组 **-={{maker_group_name}}=-** , 您现在是该小组的创建人, 感谢您为 **{{site_name}}** 所做的贡献! :100:', + + TITLE_HNR_WARNING_ADD: '新的 H&R 警告', + CONTENT_HNR_WARNING_ADD: '###H&R 警告! \n 您刚刚得到一个 h&r 警告在种子 [{{torrent_file_name}}](/torrents/{{torrent_id}}), 您需要继续做种, 这个警告会在该种分享率大于 {{hnr_ratio}} 或做种时间大于 {{hnr_days}} 天时自动清除,您也可以从这里 [warning list](/status/warning) 使用系统积分手动清除.', + TITLE_HNR_WARNING_REMOVE: 'H&R 警告移除', + CONTENT_HNR_WARNING_REMOVE: '###H&R 警告已移除! \n 恭喜您, 您在种子 [{{torrent_file_name}}](/torrents/{{torrent_id}}) 上的 h&r 警告已经移除.' } }; diff --git a/modules/users/server/controllers/admin.server.controller.js b/modules/users/server/controllers/admin.server.controller.js index 1ee4ed87..0edd137f 100644 --- a/modules/users/server/controllers/admin.server.controller.js +++ b/modules/users/server/controllers/admin.server.controller.js @@ -21,7 +21,7 @@ const PEERSTATE_LEECHER = 'leecher'; var traceConfig = config.meanTorrentConfig.trace; var mtDebug = require(path.resolve('./config/lib/debug')); var serverMessage = require(path.resolve('./config/lib/server-message')); - +var serverNoticeConfig = config.meanTorrentConfig.serverNotice; /** * Show the current user */ @@ -373,7 +373,9 @@ exports.addVIPMonths = function (req, res) { res.json(user); //add server message - serverMessage.addMessage(user._id, 'TITLE_VIP_CHANGED', 'CONTENT_VIP_CHANGED_ADD', {vip_end_at: user.vip_end_at}); + if (serverNoticeConfig.action.vipStatusChanged.enable) { + serverMessage.addMessage(user._id, serverNoticeConfig.action.vipStatusChanged.title, serverNoticeConfig.action.vipStatusChanged.content, {vip_end_at: user.vip_end_at}); + } //create trace log traceLogCreate(req, traceConfig.action.AdminUpdateUserVIPData, {