2019-10-30 03:23:50 +08:00
|
|
|
import EmberObject from "@ember/object";
|
2019-10-24 00:39:32 +08:00
|
|
|
import Route from "@ember/routing/route";
|
2020-05-07 03:28:06 +08:00
|
|
|
import PreloadStore from "discourse/lib/preload-store";
|
2016-07-05 02:15:51 +08:00
|
|
|
|
2019-10-24 00:39:32 +08:00
|
|
|
export default 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
|
2018-06-21 00:34:49 +08:00
|
|
|
const newLogs = _.chain(preloadedLogs)
|
2016-10-21 01:26:41 +08:00
|
|
|
.reject(function(log) {
|
|
|
|
return log.message.length === 0 || log.message[0] === "[";
|
|
|
|
})
|
|
|
|
.map(function(log) {
|
2019-10-30 03:23:50 +08:00
|
|
|
return EmberObject.create(log);
|
2018-06-15 23:03:24 +08:00
|
|
|
})
|
2016-10-21 01:26:41 +08:00
|
|
|
.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
|
|
|
});
|