From 3c1f8804afa86390952dfa8956885f9adc12fc99 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADctor=20Losada=20Hern=C3=A1ndez?= Date: Thu, 2 May 2024 11:38:00 +0200 Subject: [PATCH] initial commit --- client/homebrew/pages/sharePage/sharePage.jsx | 14 ++++++++++++++ server/app.js | 8 ++++---- 2 files changed, 18 insertions(+), 4 deletions(-) diff --git a/client/homebrew/pages/sharePage/sharePage.jsx b/client/homebrew/pages/sharePage/sharePage.jsx index 981ad0126..194086588 100644 --- a/client/homebrew/pages/sharePage/sharePage.jsx +++ b/client/homebrew/pages/sharePage/sharePage.jsx @@ -47,6 +47,19 @@ const SharePage = createClass({ this.props.brew.shareId; }, + renderEditLink : function(){ + if(!this.props.brew.editId) return; + + let editLink = this.props.brew.editId; + if(this.props.brew.googleId && !this.props.brew.stubbed) { + editLink = this.props.brew.googleId + editLink; + } + + return + edit + ; + }, + render : function(){ return
@@ -67,6 +80,7 @@ const SharePage = createClass({ view + {this.renderEditLink()} download diff --git a/server/app.js b/server/app.js index c8fec4bc4..e04df77a6 100644 --- a/server/app.js +++ b/server/app.js @@ -23,9 +23,9 @@ const { splitTextStyleAndMetadata } = require('../shared/helpers.js'); const sanitizeBrew = (brew, accessType)=>{ brew._id = undefined; brew.__v = undefined; - if(accessType !== 'edit'){ + if(accessType !== 'edit' && accessType !== 'shareAuthor') { brew.editId = undefined; - } + } return brew; }; @@ -307,7 +307,6 @@ app.get('/new/:id', asyncHandler(getBrew('share')), (req, res, next)=>{ //Share Page app.get('/share/:id', asyncHandler(getBrew('share')), asyncHandler(async (req, res, next)=>{ const { brew } = req; - req.ogMeta = { ...defaultMetaTags, title : req.brew.title || 'Untitled Brew', description : req.brew.description || 'No description.', @@ -326,7 +325,8 @@ app.get('/share/:id', asyncHandler(getBrew('share')), asyncHandler(async (req, r await HomebrewModel.increaseView({ shareId: brew.shareId }); } }; - sanitizeBrew(req.brew, 'share'); + + brew.authors.includes(req.account?.username) ? sanitizeBrew(req.brew, 'shareAuthor') : sanitizeBrew(req.brew, 'share'); splitTextStyleAndMetadata(req.brew); return next(); }));