travis-web/app/mixins/build-favicon.js
2016-01-04 13:15:14 +01:00

36 lines
822 B
JavaScript

import Ember from 'ember';
import { colorForState } from 'travis/utils/helpers';
import FaviconManager from 'travis/utils/favicon-manager';
import getFaviconUri from 'travis/utils/favicon-data-uris';
export default Ember.Mixin.create({
actions: {
faviconStateDidChange(state) {
if (state) {
return this.setFaviconForState(state);
} else {
return this.setDefault();
}
}
},
init() {
this.faviconManager = new FaviconManager();
return this._super.apply(this, arguments);
},
setFaviconForState(state) {
var color;
color = colorForState(state);
return this.setFavicon(getFaviconUri(color));
},
setDefault() {
return this.setFavicon(getFaviconUri('default'));
},
setFavicon(href) {
return this.faviconManager.setFavicon(href);
}
});