discourse/app/assets/javascripts/admin/addon/routes/admin-backups-logs.js
David Taylor 32665cf9dd
DEV: Consolidate i18n import paths (#29804)
Enables our new eslint rules which enforce consistent i18n imports. For more info, see 0d58b40cd7
2024-11-19 20:45:18 +00:00

34 lines
1.1 KiB
JavaScript

import EmberObject from "@ember/object";
import PreloadStore from "discourse/lib/preload-store";
import DiscourseRoute from "discourse/routes/discourse";
import { i18n } from "discourse-i18n";
export default class AdminBackupsLogsRoute extends DiscourseRoute {
// since the logs are pushed via the message bus
// we only want to preload them (hence the beforeModel hook)
beforeModel() {
const logs = this.controllerFor("adminBackupsLogs").get("logs");
// 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
const newLogs = preloadedLogs
.filter((log) => {
return log.message.length > 0 && log.message[0] !== "[";
})
.map((log) => EmberObject.create(log));
logs.pushObjects(newLogs);
}
});
}
setupController() {
/* prevent default behavior */
}
titleToken() {
return i18n("admin.backups.menu.logs");
}
}