diff --git a/app/logos.json b/app/logos.json index a81de14..98376ac 100644 --- a/app/logos.json +++ b/app/logos.json @@ -1622,7 +1622,7 @@ ], "categories": [ "developers", - "everybody" + "bloggers" ] }, { @@ -2021,7 +2021,7 @@ "service integration" ], "categories": [ - "everybody" + "geeks" ] }, { @@ -4312,7 +4312,7 @@ ], "categories": [ "teams", - "everybody" + "geeks" ] }, { @@ -4580,7 +4580,8 @@ "mysql" ], "categories": [ - "developers" + "developers", + "bloggers" ] }, { diff --git a/app/scripts/App.jsx b/app/scripts/App.jsx index ec5fe2e..3d94ab4 100644 --- a/app/scripts/App.jsx +++ b/app/scripts/App.jsx @@ -1,10 +1,11 @@ -var React = require('react'), - Isvg = require('react-inlinesvg'), - Header = require('./components/Header'), - Footer = require('./components/Footer'), - Loader = require('./components/Loader'), - Logo = require('./components/Logo'), - json = require('../logos.json'); +var React = require('react'), + Isvg = require('react-inlinesvg'), + Storage = require('./utils/Storage'), + Header = require('./components/Header'), + Footer = require('./components/Footer'), + Loader = require('./components/Loader'), + Logo = require('./components/Logo'), + json = require('../logos.json'); var App = React.createClass({ getInitialState () { @@ -15,6 +16,16 @@ var App = React.createClass({ }; }, + componentWillMount: function () { + var category = Storage.getItem('category'), + columns = Storage.getItem('columns'); + + this.setState({ + category: category && this.state.category !== category ? category : this.state.category, + columns: columns && this.state.columns !== columns ? columns : this.state.columns + }); + }, + componentDidMount: function () { this .getDOMNode() @@ -46,16 +57,18 @@ var App = React.createClass({ console.log(el); }, - _selectCategory (value) { + _changeCategory (value) { this.setState({ category: value }); + Storage.setItem('category', value); }, _changeColumns (num) { this.setState({ columns: num }); + Storage.setItem('columns', num); }, _filterLogos (tag) { @@ -63,13 +76,13 @@ var App = React.createClass({ }, render () { - var state = this.state, + var state = this.state, hidden, - logos = [], + logos = [], visible = 0; state.logos.forEach(function (d, i) { - hidden = state.category !== 'anyone' && d.categories.indexOf(state.category) === -1; + hidden = state.category !== 'anyone' && d.categories.indexOf(state.category) === -1; d.files.forEach(function (f, j) { logos.push(