2019-10-30 03:23:50 +08:00
|
|
|
import EmberObject from "@ember/object";
|
2023-10-11 02:38:59 +08:00
|
|
|
import PreloadStore from "discourse/lib/preload-store";
|
2024-08-30 12:53:36 +08:00
|
|
|
import DiscourseRoute from "discourse/routes/discourse";
|
|
|
|
import I18n from "discourse-i18n";
|
2016-07-05 02:15:51 +08:00
|
|
|
|
2024-08-30 12:53:36 +08:00
|
|
|
export default class AdminBackupsLogsRoute extends DiscourseRoute {
|
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
|
2020-09-02 02:12:17 +08:00
|
|
|
const newLogs = preloadedLogs
|
|
|
|
.filter((log) => {
|
|
|
|
return log.message.length > 0 && log.message[0] !== "[";
|
2016-10-21 01:26:41 +08:00
|
|
|
})
|
2020-09-02 02:12:17 +08:00
|
|
|
.map((log) => EmberObject.create(log));
|
2016-10-21 01:26:41 +08:00
|
|
|
logs.pushObjects(newLogs);
|
2014-02-14 02:49:38 +08:00
|
|
|
}
|
|
|
|
});
|
2023-03-15 21:17:51 +08:00
|
|
|
}
|
2014-04-23 17:20:22 +08:00
|
|
|
|
2015-08-07 00:14:59 +08:00
|
|
|
setupController() {
|
|
|
|
/* prevent default behavior */
|
2023-03-15 21:17:51 +08:00
|
|
|
}
|
2024-08-30 12:53:36 +08:00
|
|
|
|
|
|
|
titleToken() {
|
|
|
|
return I18n.t("admin.backups.menu.logs");
|
|
|
|
}
|
2023-03-15 21:17:51 +08:00
|
|
|
}
|