diff --git a/server/app.js b/server/app.js index 61dbbc21a..59aac2d9b 100644 --- a/server/app.js +++ b/server/app.js @@ -294,8 +294,15 @@ app.get('/edit/:id', asyncHandler(getBrew('edit')), (req, res, next)=>{ app.get('/new/:id', asyncHandler(getBrew('share')), (req, res, next)=>{ sanitizeBrew(req.brew, 'share'); splitTextStyleAndMetadata(req.brew); - req.brew.views = 0; - req.brew.title = `CLONE - ${req.brew.title}`; + const brew = { + shareId : req.brew.shareId, + title : `CLONE - ${req.brew.title}`, + text : req.brew.text, + style : req.brew.style, + renderer : req.brew.renderer, + theme : req.brew.theme + }; + req.brew = _.defaults(brew, DEFAULT_BREW); req.ogMeta = { ...defaultMetaTags, title : 'New', diff --git a/server/brewDefaults.js b/server/brewDefaults.js index 092f7070a..30798cea7 100644 --- a/server/brewDefaults.js +++ b/server/brewDefaults.js @@ -16,6 +16,7 @@ const DEFAULT_BREW = { tags : [], systems : [], thumbnail : '', + views : 0, published : false, pageCount : 1, gDrive : false, diff --git a/server/homebrew.api.spec.js b/server/homebrew.api.spec.js index 71d9bdcc7..22f80155c 100644 --- a/server/homebrew.api.spec.js +++ b/server/homebrew.api.spec.js @@ -71,7 +71,8 @@ describe('Tests for api', ()=>{ lastViewed : new Date(), version : 1, pageCount : 1, - textBin : '' + textBin : '', + views : 0 }; googleBrew = { ...hbBrew, @@ -261,7 +262,8 @@ If you believe you should have access to this brew, ask the file owner to invite gDrive : false, style : undefined, trashed : false, - updatedAt : undefined + updatedAt : undefined, + views : 0 }); expect(next).toHaveBeenCalled(); expect(api.getId).toHaveBeenCalledWith(req); @@ -452,7 +454,8 @@ brew`); thumbnail : '', title : 'asdf', trashed : false, - updatedAt : undefined + updatedAt : undefined, + views : 0 }); }); @@ -510,7 +513,8 @@ brew`); thumbnail : '', title : 'asdf', trashed : false, - updatedAt : undefined + updatedAt : undefined, + views : 0 }); });