mirror of
https://github.com/discourse/discourse.git
synced 2025-04-19 21:29:05 +08:00
DEV: Convert start-backup
modal to component-based API (#22812)
This commit is contained in:
parent
106a0498f1
commit
6c8af90f5d
@ -0,0 +1,23 @@
|
||||
<DModal
|
||||
@title={{i18n "admin.backups.operations.backup.confirm"}}
|
||||
@closeModal={{@closeModal}}
|
||||
>
|
||||
<:body>
|
||||
{{#if this.warningMessage}}
|
||||
<div class="alert alert-warning">{{html-safe this.warningMessage}}</div>
|
||||
{{/if}}
|
||||
</:body>
|
||||
<:footer>
|
||||
<DButton
|
||||
class="btn-primary backup-with-uploads"
|
||||
@action={{this.startBackupWithUploads}}
|
||||
@label={{or this.yesLabel "yes_value"}}
|
||||
/>
|
||||
<DButton
|
||||
class="backup-no-uploads"
|
||||
@action={{this.startBackupWithoutUploads}}
|
||||
@label="admin.backups.operations.backup.without_uploads"
|
||||
/>
|
||||
<DButton class="btn-default" @action={{@closeModal}} @label="no_value" />
|
||||
</:footer>
|
||||
</DModal>
|
@ -0,0 +1,16 @@
|
||||
import Component from "@glimmer/component";
|
||||
import { action } from "@ember/object";
|
||||
|
||||
export default class StartBackup extends Component {
|
||||
@action
|
||||
startBackupWithUploads() {
|
||||
this.args.model.startBackup(true);
|
||||
this.args.closeModal();
|
||||
}
|
||||
|
||||
@action
|
||||
startBackupWithoutUploads() {
|
||||
this.args.model.startBackup(false);
|
||||
this.args.closeModal();
|
||||
}
|
||||
}
|
@ -1,39 +0,0 @@
|
||||
import { action } from "@ember/object";
|
||||
import Controller, { inject as controller } from "@ember/controller";
|
||||
import discourseComputed from "discourse-common/utils/decorators";
|
||||
import ModalFunctionality from "discourse/mixins/modal-functionality";
|
||||
|
||||
export default class AdminStartBackupController extends Controller.extend(
|
||||
ModalFunctionality
|
||||
) {
|
||||
@controller adminBackupsLogs;
|
||||
|
||||
@discourseComputed
|
||||
warningMessage() {
|
||||
// this is never shown here, but we may want to show different
|
||||
// messages in plugins
|
||||
return "";
|
||||
}
|
||||
|
||||
@discourseComputed
|
||||
yesLabel() {
|
||||
return "yes_value";
|
||||
}
|
||||
|
||||
@action
|
||||
startBackupWithUploads() {
|
||||
this.send("closeModal");
|
||||
this.send("startBackup", true);
|
||||
}
|
||||
|
||||
@action
|
||||
startBackupWithoutUploads() {
|
||||
this.send("closeModal");
|
||||
this.send("startBackup", false);
|
||||
}
|
||||
|
||||
@action
|
||||
cancel() {
|
||||
this.send("closeModal");
|
||||
}
|
||||
}
|
@ -9,14 +9,16 @@ import User from "discourse/models/user";
|
||||
import { ajax } from "discourse/lib/ajax";
|
||||
import { extractError } from "discourse/lib/ajax-error";
|
||||
import getURL from "discourse-common/lib/get-url";
|
||||
import showModal from "discourse/lib/show-modal";
|
||||
import { bind } from "discourse-common/utils/decorators";
|
||||
import StartBackupModal from "admin/components/modal/start-backup";
|
||||
|
||||
const LOG_CHANNEL = "/admin/backups/logs";
|
||||
|
||||
export default class AdminBackupsRoute extends DiscourseRoute {
|
||||
@service dialog;
|
||||
@service router;
|
||||
@service messageBus;
|
||||
@service modal;
|
||||
|
||||
activate() {
|
||||
this.messageBus.subscribe(LOG_CHANNEL, this.onMessage);
|
||||
@ -67,7 +69,9 @@ export default class AdminBackupsRoute extends DiscourseRoute {
|
||||
|
||||
@action
|
||||
showStartBackupModal() {
|
||||
showModal("admin-start-backup", { admin: true });
|
||||
this.modal.show(StartBackupModal, {
|
||||
model: { startBackup: this.startBackup },
|
||||
});
|
||||
}
|
||||
|
||||
@action
|
||||
|
@ -1,16 +0,0 @@
|
||||
<DModalBody @title="admin.backups.operations.backup.confirm">
|
||||
{{#if this.warningMessage}}
|
||||
<div class="alert alert-warning">{{html-safe this.warningMessage}}</div>
|
||||
{{/if}}
|
||||
<DButton
|
||||
@class="btn-primary backup-with-uploads"
|
||||
@action={{action "startBackupWithUploads"}}
|
||||
@label={{this.yesLabel}}
|
||||
/>
|
||||
<DButton
|
||||
@class="backup-no-uploads"
|
||||
@action={{action "startBackupWithoutUploads"}}
|
||||
@label="admin.backups.operations.backup.without_uploads"
|
||||
/>
|
||||
<DButton @class="btn-default" @action={{action "cancel"}} @label="no_value" />
|
||||
</DModalBody>
|
@ -51,7 +51,6 @@ const KNOWN_LEGACY_MODALS = [
|
||||
"topic-summary",
|
||||
"user-status",
|
||||
"admin-merge-users-prompt",
|
||||
"admin-start-backup",
|
||||
"admin-watched-word-test",
|
||||
"admin-api-key-urls",
|
||||
"admin-delete-user-posts-progress",
|
||||
|
Loading…
x
Reference in New Issue
Block a user