diff --git a/lib/featureDb.js b/lib/featureDb.js index c64ae80c1a..100c13aeb0 100644 --- a/lib/featureDb.js +++ b/lib/featureDb.js @@ -40,10 +40,11 @@ function getFeature(name) { function getArchivedFeatures() { return knex - .select(['name', 'description']) + .select(FEATURE_COLUMNS) .from('features') .where({archived: 1}) - .orderBy('name', 'asc'); + .orderBy('name', 'asc') + .map(rowToFeature); } @@ -115,4 +116,3 @@ module.exports = { _createFeature: createFeature, // visible for testing _updateFeature: updateFeature // visible for testing }; - diff --git a/public/js/stores/FeatureToggleStore.js b/public/js/stores/FeatureToggleStore.js index 370f62f985..19a882c2bb 100644 --- a/public/js/stores/FeatureToggleStore.js +++ b/public/js/stores/FeatureToggleStore.js @@ -1,6 +1,7 @@ var Reflux = require('reflux'); var FeatureActions = require('./FeatureToggleActions'); var Server = require('./FeatureToggleServerFacade'); +var Timer = require('../utils/Timer'); var _featureToggles = []; var _archivedToggles = []; @@ -14,6 +15,11 @@ var FeatureStore = Reflux.createStore({ this.listenTo(FeatureActions.archive, this.onArchive); this.listenTo(FeatureActions.revive, this.onRevive); + this.timer = new Timer(this.loadDataFromServer, 30*1000); + this.timer.start(); + }, + + loadDataFromServer: function() { Server.getFeatures(function(err, featureToggles) { this.setToggles(featureToggles); }.bind(this));