diff --git a/client/homebrew/pages/basePages/listPage/listPage.jsx b/client/homebrew/pages/basePages/listPage/listPage.jsx index fa6965f79..21ed74c73 100644 --- a/client/homebrew/pages/basePages/listPage/listPage.jsx +++ b/client/homebrew/pages/basePages/listPage/listPage.jsx @@ -196,11 +196,16 @@ const ListPage = createClass({ getSortedBrews : function(brews){ const testString = _.deburr(this.state.filterString).toLowerCase(); - brews = _.filter(brews, (brew)=>{ - return (_.deburr(brew.title).toLowerCase().includes(testString)) || - (_.deburr(brew.description).toLowerCase().includes(testString)); - }); + brews = _.filter(brews, (brew)=>{ + const brewStrings = _.deburr([ + brew.title, + brew.description, + brew.tags].join('\n') + .toLowerCase()); + + return brewStrings.includes(testString); + }); return _.orderBy(brews, (brew)=>{ return this.sortBrewOrder(brew); }, this.state.sortDir); }, diff --git a/client/homebrew/pages/newPage/newPage.jsx b/client/homebrew/pages/newPage/newPage.jsx index 18b28ed2f..14ec1c852 100644 --- a/client/homebrew/pages/newPage/newPage.jsx +++ b/client/homebrew/pages/newPage/newPage.jsx @@ -27,41 +27,30 @@ const NewPage = createClass({ getDefaultProps : function() { return { brew : { - text : '', - style : undefined, - shareId : null, - editId : null, - createdAt : null, - updatedAt : null, - gDrive : false, - + text : '', + style : undefined, title : '', description : '', - tags : '', - published : false, - authors : [], - systems : [] + renderer : 'V3' } }; }, getInitialState : function() { - const brew = this.props.brew; + let brew = this.props.brew; + + if(this.props.brew.shareId) { + brew = { + text : brew.text ?? '', + style : brew.style ?? undefined, + title : brew.title ?? '', + description : brew.description ?? '', + renderer : brew.renderer ?? 'legacy' + }; + } return { - brew : { - text : brew.text || '', - style : brew.style || undefined, - gDrive : false, - title : brew.title || '', - description : brew.description || '', - tags : brew.tags || '', - published : false, - authors : [], - systems : brew.systems || [], - renderer : brew.renderer || 'V3' - }, - + brew : brew, isSaving : false, saveGoogle : (global.account && global.account.googleId ? true : false), errors : null, @@ -74,22 +63,20 @@ const NewPage = createClass({ const brew = this.state.brew; - if(typeof window !== 'undefined') { //Load from localStorage if in client browser + if(!this.props.brew.shareId && typeof window !== 'undefined') { //Load from localStorage if in client browser const brewStorage = localStorage.getItem(BREWKEY); const styleStorage = localStorage.getItem(STYLEKEY); const metaStorage = JSON.parse(localStorage.getItem(METAKEY)); - if(!brew.text || !brew.style){ - brew.text = brew.text || (brewStorage ?? ''); - brew.style = brew.style || (styleStorage ?? undefined); - // brew.title = metaStorage?.title || this.state.brew.title; - // brew.description = metaStorage?.description || this.state.brew.description; - brew.renderer = brew.renderer || metaStorage?.renderer; + brew.text = brewStorage ?? brew.text; + brew.style = styleStorage ?? brew.style; + // brew.title = metaStorage?.title || this.state.brew.title; + // brew.description = metaStorage?.description || this.state.brew.description; + brew.renderer = metaStorage?.renderer ?? brew.renderer; - this.setState({ - brew : brew - }); - } + this.setState({ + brew : brew + }); } localStorage.setItem(BREWKEY, brew.text);