0
Fork 0
mirror of https://github.com/TryGhost/Ghost.git synced 2025-01-27 22:49:56 -05:00
ghost/core/client/controllers/feature.js
Jason Williams e6fd1b89c0 Rework Labs feature toggling
Refs #4750
- Make "Feature" a Controller with promise support.
- Use via 'needs' instead of injecting from an initializer because
  we need authenticated access to the API.
- Check whether feature is enabled when entering Code Injection route.
2015-01-04 20:05:25 +00:00

37 lines
1.1 KiB
JavaScript

var FeatureController = Ember.Controller.extend(Ember.PromiseProxyMixin, {
init: function () {
var promise;
promise = this.store.find('setting', {type: 'blog,theme'}).then(function (settings) {
return settings.get('firstObject');
});
this.set('promise', promise);
},
setting: Ember.computed.alias('content'),
labs: Ember.computed('isSettled', 'setting.labs', function () {
var value = {};
if (this.get('isFulfilled')) {
try {
value = JSON.parse(this.get('setting.labs') || {});
} catch (err) {
value = {};
}
}
return value;
}),
tagsUI: Ember.computed('config.tagsUI', 'labs.tagsUI', function () {
return this.get('config.tagsUI') || this.get('labs.tagsUI');
}),
codeInjectionUI: Ember.computed('config.codeInjectionUI', 'labs.codeInjectionUI', function () {
return this.get('config.codeInjectionUI') || this.get('labs.codeInjectionUI');
})
});
export default FeatureController;