2016-07-05 02:15:51 +08:00
|
|
|
import PreloadStore from 'preload-store';
|
|
|
|
|
2015-08-07 00:14:59 +08:00
|
|
|
export default Ember.Route.extend({
|
2014-02-14 02:49:38 +08:00
|
|
|
|
|
|
|
// since the logs are pushed via the message bus
|
|
|
|
// we only want to preload them (hence the beforeModel hook)
|
2015-08-07 00:14:59 +08:00
|
|
|
beforeModel() {
|
2016-10-21 01:26:41 +08:00
|
|
|
const logs = this.controllerFor("adminBackupsLogs").get('logs');
|
2014-02-14 02:49:38 +08:00
|
|
|
// preload the logs if any
|
|
|
|
PreloadStore.getAndRemove("logs").then(function (preloadedLogs) {
|
|
|
|
if (preloadedLogs && preloadedLogs.length) {
|
|
|
|
// we need to filter out message like: "[SUCCESS]"
|
|
|
|
// and convert POJOs to Ember Objects
|
2016-10-21 01:26:41 +08:00
|
|
|
const newLogs = _.chain(preloadedLogs)
|
|
|
|
.reject(function (log) { return log.message.length === 0 || log.message[0] === "["; })
|
|
|
|
.map(function (log) { return Em.Object.create(log); })
|
|
|
|
.value();
|
|
|
|
logs.pushObjects(newLogs);
|
2014-02-14 02:49:38 +08:00
|
|
|
}
|
|
|
|
});
|
2014-04-23 17:20:22 +08:00
|
|
|
},
|
|
|
|
|
2015-08-07 00:14:59 +08:00
|
|
|
setupController() { /* prevent default behavior */ }
|
2014-02-14 02:49:38 +08:00
|
|
|
|
|
|
|
});
|