From 90c695c005d6ef425f0fee0cf1fc046fbbc38495 Mon Sep 17 00:00:00 2001 From: Scott Tolksdorf Date: Sat, 20 Aug 2016 12:33:11 -0400 Subject: [PATCH] Visitng a deleted brew will now remove it from your recent list --- changelog.md | 2 +- client/homebrew/navbar/recent.navitem.jsx | 27 +++++++++++++++++++++-- 2 files changed, 26 insertions(+), 3 deletions(-) diff --git a/changelog.md b/changelog.md index d8b02ab38..d39056010 100644 --- a/changelog.md +++ b/changelog.md @@ -4,7 +4,7 @@ - Added in a license file - Updated the welcome text - Added in a much better Error page - +- If you visit a deleted brew, it will now remove it from your recent list. (Thanks u/sIllverback!) ### Friday, 29/07/2016 - v2.2.7 - Adding in descriptive note blocks. (Thanks calculuschild!) diff --git a/client/homebrew/navbar/recent.navitem.jsx b/client/homebrew/navbar/recent.navitem.jsx index 0835f53ba..bd1e1e738 100644 --- a/client/homebrew/navbar/recent.navitem.jsx +++ b/client/homebrew/navbar/recent.navitem.jsx @@ -122,6 +122,12 @@ module.exports = { }), both : React.createClass({ + getDefaultProps: function() { + return { + errorId : null + }; + }, + getInitialState: function() { return { showDropdown: false, @@ -131,9 +137,26 @@ module.exports = { }, componentDidMount: function() { + + var edited = JSON.parse(localStorage.getItem(EDIT_KEY) || '[]'); + var viewed = JSON.parse(localStorage.getItem(VIEW_KEY) || '[]'); + + if(this.props.errorId){ + edited = _.filter(edited, (edit) => { + return edit.id !== this.props.errorId; + }); + viewed = _.filter(viewed, (view) => { + return view.id !== this.props.errorId; + }); + + localStorage.setItem(EDIT_KEY, JSON.stringify(edited)); + localStorage.setItem(VIEW_KEY, JSON.stringify(viewed)); + } + + this.setState({ - edit : JSON.parse(localStorage.getItem(EDIT_KEY) || '[]'), - view : JSON.parse(localStorage.getItem(VIEW_KEY) || '[]') + edit : edited, + view : viewed }); },