diff --git a/configs/template.js.example b/configs/template.js.example index eed477af..1cddec5e 100644 --- a/configs/template.js.example +++ b/configs/template.js.example @@ -106,6 +106,8 @@ module.exports = { overboardCatalogLimit: 100, //allow custom overboard (user pick what boards to show) allowCustomOverboard: true, + //whether to show reverse links on overboard + overboardReverseLinks: true, //how many hot threads show on homepage. 0 disabled hotThreadsLimit: 5, diff --git a/migrations/0.9.0.js b/migrations/0.9.0.js index 4d597884..2c00498f 100644 --- a/migrations/0.9.0.js +++ b/migrations/0.9.0.js @@ -5,6 +5,7 @@ module.exports = async(db, redis) => { await db.collection('globalsettings').updateOne({ _id: 'globalsettings' }, { '$set': { 'boardDefaults.hideBanners': false, + 'overboardReverseLinks': true, }, }); await db.collection('boards').updateMany({ diff --git a/models/forms/changeglobalsettings.js b/models/forms/changeglobalsettings.js index 9540fe2a..cd660c29 100644 --- a/models/forms/changeglobalsettings.js +++ b/models/forms/changeglobalsettings.js @@ -125,6 +125,7 @@ module.exports = async (req, res) => { abandonedBoardAction: numberSetting(req.body.abandoned_board_action, oldSettings.abandonedBoardAction), overboardLimit: numberSetting(req.body.overboard_limit, oldSettings.overboardLimit), overboardCatalogLimit: numberSetting(req.body.overboard_catalog_limit, oldSettings.overboardCatalogLimit), + overboardReverseLinks: booleanSetting(req.body.overboard_reverse_links, oldSettings.overboardReverseLinks), hotThreadsLimit: numberSetting(req.body.hot_threads_limit, oldSettings.hotThreadsLimit), hotThreadsThreshold: numberSetting(req.body.hot_threads_threshold, oldSettings.hotThreadsThreshold), hotThreadsMaxAge: numberSetting(req.body.hot_threads_max_age, oldSettings.hotThreadsMaxAge), diff --git a/models/pages/overboard.js b/models/pages/overboard.js index bb4046c1..1ec2cdf5 100644 --- a/models/pages/overboard.js +++ b/models/pages/overboard.js @@ -6,7 +6,7 @@ const { Posts, Boards } = require(__dirname+'/../../db/') module.exports = async (req, res, next) => { - const { overboardLimit, allowCustomOverboard } = config.get; + const { overboardLimit, allowCustomOverboard, overboardReverseLinks } = config.get; let selectedBoards = [] , addBoards = [] @@ -74,6 +74,7 @@ module.exports = async (req, res, next) => { selectedBoards, cacheQueryString, allowCustomOverboard, + overboardReverseLinks, }); } diff --git a/views/mixins/post.pug b/views/mixins/post.pug index 7e6e7cca..299389d0 100644 --- a/views/mixins/post.pug +++ b/views/mixins/post.pug @@ -106,7 +106,7 @@ mixin post(post, truncate, manage=false, globalmanage=false, ban=false, overboar if file.durationString | , #{file.durationString} | ) - if type === 'image' && ((board && board.settings.reverseImageSearchLinks === true) || overboard || manage || globalmanage) + if type === 'image' && ((board && board.settings.reverseImageSearchLinks === true) || (overboard && overboardReverseLinks === true) || manage || globalmanage) | span: a(href=`${reverseImageLinksURL.replace('%s', encodeURIComponent(meta.url+'/file/'+file.filename))}` rel='nofollow' referrerpolicy='same-origin' title='Reverse Image Search' target='_blank') Reverse .post-file-src(data-type=type data-attachment=(file.attachment ? "true" : "false")) diff --git a/views/pages/globalmanagesettings.pug b/views/pages/globalmanagesettings.pug index a8676f28..ca2ea101 100644 --- a/views/pages/globalmanagesettings.pug +++ b/views/pages/globalmanagesettings.pug @@ -118,6 +118,10 @@ block content .row .label Overboard Catalog Thread Limit input(type='number' name='overboard_catalog_limit' value=settings.overboardCatalogLimit) + .row + .label Overboard Reverse Image Search + label.postform-style.ph-5 + input(type='checkbox', name='overboard_reverse_links' value='true' checked=settings.overboardReverseLinks) .row .label Allow Custom Overboard label.postform-style.ph-5