Skip to content

Commit c370117

Browse files
authored
Merge pull request ceph#61478 from rhcs-dashboard/critical-confirmation-modal-changes
mgr/dashboard: Add confirmation textbox for resource name on delete action Reviewed-by: Afreen Misbah <[email protected]>
2 parents 1e95d0a + 6866d6a commit c370117

File tree

54 files changed

+273
-149
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

54 files changed

+273
-149
lines changed

src/pybind/mgr/dashboard/frontend/src/app/ceph/block/iscsi-target-list/iscsi-target-list.component.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import { Subscription } from 'rxjs';
66

77
import { IscsiService } from '~/app/shared/api/iscsi.service';
88
import { ListWithDetails } from '~/app/shared/classes/list-with-details.class';
9-
import { CriticalConfirmationModalComponent } from '~/app/shared/components/critical-confirmation-modal/critical-confirmation-modal.component';
9+
import { DeleteConfirmationModalComponent } from '~/app/shared/components/delete-confirmation-modal/delete-confirmation-modal.component';
1010
import { ActionLabelsI18n } from '~/app/shared/constants/app.constants';
1111
import { TableComponent } from '~/app/shared/datatable/table/table.component';
1212
import { CellTemplate } from '~/app/shared/enum/cell-template.enum';
@@ -223,7 +223,7 @@ export class IscsiTargetListComponent extends ListWithDetails implements OnInit,
223223
deleteIscsiTargetModal() {
224224
const target_iqn = this.selection.first().target_iqn;
225225

226-
this.modalRef = this.modalService.show(CriticalConfirmationModalComponent, {
226+
this.modalRef = this.modalService.show(DeleteConfirmationModalComponent, {
227227
itemDescription: $localize`iSCSI target`,
228228
itemNames: [target_iqn],
229229
submitActionObservable: () =>

src/pybind/mgr/dashboard/frontend/src/app/ceph/block/mirroring/pool-list/pool-list.component.ts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import { Observable, Subscriber, Subscription } from 'rxjs';
55

66
import { RbdMirroringService } from '~/app/shared/api/rbd-mirroring.service';
77
import { TableStatusViewCache } from '~/app/shared/classes/table-status-view-cache';
8-
import { CriticalConfirmationModalComponent } from '~/app/shared/components/critical-confirmation-modal/critical-confirmation-modal.component';
8+
import { DeleteConfirmationModalComponent } from '~/app/shared/components/delete-confirmation-modal/delete-confirmation-modal.component';
99
import { URLVerbs } from '~/app/shared/constants/app.constants';
1010
import { Icons } from '~/app/shared/enum/icons.enum';
1111
import { CdTableAction } from '~/app/shared/models/cd-table-action';
@@ -16,6 +16,7 @@ import { AuthStorageService } from '~/app/shared/services/auth-storage.service';
1616
import { TaskWrapperService } from '~/app/shared/services/task-wrapper.service';
1717
import { PoolEditPeerModalComponent } from '../pool-edit-peer-modal/pool-edit-peer-modal.component';
1818
import { ModalCdsService } from '~/app/shared/services/modal-cds.service';
19+
import { DeletionImpact } from '~/app/shared/enum/delete-confirmation-modal-impact.enum';
1920

2021
const BASE_URL = '/block/mirroring';
2122
@Component({
@@ -146,7 +147,8 @@ export class PoolListComponent implements OnInit, OnDestroy {
146147
const poolName = this.selection.first().name;
147148
const peerUUID = this.getPeerUUID();
148149

149-
this.modalService.show(CriticalConfirmationModalComponent, {
150+
this.modalService.show(DeleteConfirmationModalComponent, {
151+
impact: DeletionImpact.high,
150152
itemDescription: $localize`mirror peer`,
151153
itemNames: [`${poolName} (${peerUUID})`],
152154
submitActionObservable: () =>

src/pybind/mgr/dashboard/frontend/src/app/ceph/block/nvmeof-initiators-list/nvmeof-initiators-list.component.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { Component, Input, OnInit, TemplateRef, ViewChild } from '@angular/core';
22
import { Router } from '@angular/router';
33
import { NvmeofService } from '~/app/shared/api/nvmeof.service';
4-
import { CriticalConfirmationModalComponent } from '~/app/shared/components/critical-confirmation-modal/critical-confirmation-modal.component';
4+
import { DeleteConfirmationModalComponent } from '~/app/shared/components/delete-confirmation-modal/delete-confirmation-modal.component';
55
import { ActionLabelsI18n, URLVerbs } from '~/app/shared/constants/app.constants';
66
import { Icons } from '~/app/shared/enum/icons.enum';
77
import { CdTableAction } from '~/app/shared/models/cd-table-action';
@@ -106,7 +106,7 @@ export class NvmeofInitiatorsListComponent implements OnInit {
106106
hostNQNs.splice(allowAllHostIndex, 1);
107107
itemNames = [...hostNQNs, $localize`Allow any host(*)`];
108108
}
109-
this.modalService.show(CriticalConfirmationModalComponent, {
109+
this.modalService.show(DeleteConfirmationModalComponent, {
110110
itemDescription: 'Initiator',
111111
itemNames,
112112
actionDescription: 'remove',

src/pybind/mgr/dashboard/frontend/src/app/ceph/block/nvmeof-listeners-list/nvmeof-listeners-list.component.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { Component, Input, OnInit } from '@angular/core';
22
import { Router } from '@angular/router';
33
import { NvmeofService } from '~/app/shared/api/nvmeof.service';
4-
import { CriticalConfirmationModalComponent } from '~/app/shared/components/critical-confirmation-modal/critical-confirmation-modal.component';
4+
import { DeleteConfirmationModalComponent } from '~/app/shared/components/delete-confirmation-modal/delete-confirmation-modal.component';
55
import { ActionLabelsI18n, URLVerbs } from '~/app/shared/constants/app.constants';
66
import { CellTemplate } from '~/app/shared/enum/cell-template.enum';
77
import { Icons } from '~/app/shared/enum/icons.enum';
@@ -99,7 +99,7 @@ export class NvmeofListenersListComponent implements OnInit {
9999

100100
deleteListenerModal() {
101101
const listener = this.selection.first();
102-
this.modalService.show(CriticalConfirmationModalComponent, {
102+
this.modalService.show(DeleteConfirmationModalComponent, {
103103
itemDescription: 'Listener',
104104
actionDescription: 'delete',
105105
itemNames: [`listener ${listener.host_name} (${listener.traddr}:${listener.trsvcid})`],

src/pybind/mgr/dashboard/frontend/src/app/ceph/block/nvmeof-namespaces-list/nvmeof-namespaces-list.component.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { Component, Input, OnInit } from '@angular/core';
22
import { Router } from '@angular/router';
33
import { NvmeofService } from '~/app/shared/api/nvmeof.service';
4-
import { CriticalConfirmationModalComponent } from '~/app/shared/components/critical-confirmation-modal/critical-confirmation-modal.component';
4+
import { DeleteConfirmationModalComponent } from '~/app/shared/components/delete-confirmation-modal/delete-confirmation-modal.component';
55
import { ActionLabelsI18n, URLVerbs } from '~/app/shared/constants/app.constants';
66
import { Icons } from '~/app/shared/enum/icons.enum';
77
import { CdTableAction } from '~/app/shared/models/cd-table-action';
@@ -170,7 +170,7 @@ export class NvmeofNamespacesListComponent implements OnInit {
170170

171171
deleteNamespaceModal() {
172172
const namespace = this.selection.first();
173-
this.modalService.show(CriticalConfirmationModalComponent, {
173+
this.modalService.show(DeleteConfirmationModalComponent, {
174174
itemDescription: 'Namespace',
175175
itemNames: [namespace.nsid],
176176
actionDescription: 'delete',

src/pybind/mgr/dashboard/frontend/src/app/ceph/block/nvmeof-subsystems/nvmeof-subsystems.component.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ import { AuthStorageService } from '~/app/shared/services/auth-storage.service';
99
import { ListWithDetails } from '~/app/shared/classes/list-with-details.class';
1010
import { CdTableAction } from '~/app/shared/models/cd-table-action';
1111
import { Icons } from '~/app/shared/enum/icons.enum';
12-
import { CriticalConfirmationModalComponent } from '~/app/shared/components/critical-confirmation-modal/critical-confirmation-modal.component';
12+
import { DeleteConfirmationModalComponent } from '~/app/shared/components/delete-confirmation-modal/delete-confirmation-modal.component';
1313
import { FinishedTask } from '~/app/shared/models/finished-task';
1414
import { TaskWrapperService } from '~/app/shared/services/task-wrapper.service';
1515
import { NvmeofService } from '~/app/shared/api/nvmeof.service';
@@ -111,7 +111,7 @@ export class NvmeofSubsystemsComponent extends ListWithDetails implements OnInit
111111

112112
deleteSubsystemModal() {
113113
const subsystem = this.selection.first();
114-
this.modalService.show(CriticalConfirmationModalComponent, {
114+
this.modalService.show(DeleteConfirmationModalComponent, {
115115
itemDescription: 'Subsystem',
116116
itemNames: [subsystem.nqn],
117117
actionDescription: 'delete',

src/pybind/mgr/dashboard/frontend/src/app/ceph/block/rbd-list/rbd-list.component.ts

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import { RbdService } from '~/app/shared/api/rbd.service';
77
import { ListWithDetails } from '~/app/shared/classes/list-with-details.class';
88
import { TableStatus } from '~/app/shared/classes/table-status';
99
import { ConfirmationModalComponent } from '~/app/shared/components/confirmation-modal/confirmation-modal.component';
10-
import { CriticalConfirmationModalComponent } from '~/app/shared/components/critical-confirmation-modal/critical-confirmation-modal.component';
10+
import { DeleteConfirmationModalComponent } from '~/app/shared/components/delete-confirmation-modal/delete-confirmation-modal.component';
1111
import { ActionLabelsI18n } from '~/app/shared/constants/app.constants';
1212
import { TableComponent } from '~/app/shared/datatable/table/table.component';
1313
import { Icons } from '~/app/shared/enum/icons.enum';
@@ -32,6 +32,7 @@ import { RbdTrashMoveModalComponent } from '../rbd-trash-move-modal/rbd-trash-mo
3232
import { RBDImageFormat, RbdModel } from './rbd-model';
3333
import { ModalCdsService } from '~/app/shared/services/modal-cds.service';
3434
import { RBDActionHelpers } from '../rbd-contants';
35+
import { DeletionImpact } from '~/app/shared/enum/delete-confirmation-modal-impact.enum';
3536
const BASE_URL = 'block/rbd';
3637

3738
@Component({
@@ -425,9 +426,10 @@ export class RbdListComponent extends ListWithDetails implements OnInit {
425426
const imageName = this.selection.first().name;
426427
const imageSpec = new ImageSpec(poolName, namespace, imageName);
427428

428-
this.cdsModalService.show(CriticalConfirmationModalComponent, {
429+
this.cdsModalService.show(DeleteConfirmationModalComponent, {
430+
impact: DeletionImpact.high,
429431
itemDescription: 'RBD',
430-
itemNames: [imageSpec],
432+
itemNames: [imageSpec.imageName],
431433
bodyTemplate: this.deleteTpl,
432434
bodyContext: {
433435
hasSnapshots: this.hasSnapshots(),
@@ -449,7 +451,7 @@ export class RbdListComponent extends ListWithDetails implements OnInit {
449451
const imageName = this.selection.first().name;
450452
const imageSpec = new ImageSpec(poolName, namespace, imageName);
451453

452-
this.cdsModalService.show(CriticalConfirmationModalComponent, {
454+
this.cdsModalService.show(DeleteConfirmationModalComponent, {
453455
itemDescription: 'RBD',
454456
itemNames: [imageSpec],
455457
actionDescription: 'resync',
@@ -531,7 +533,7 @@ export class RbdListComponent extends ListWithDetails implements OnInit {
531533
this.selection.first().name
532534
);
533535

534-
this.cdsModalService.show(CriticalConfirmationModalComponent, {
536+
this.cdsModalService.show(DeleteConfirmationModalComponent, {
535537
actionDescription: 'remove scheduling on',
536538
itemDescription: $localize`image`,
537539
itemNames: [`${imageName}`],

src/pybind/mgr/dashboard/frontend/src/app/ceph/block/rbd-namespace-list/rbd-namespace-list.component.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import { forkJoin, Observable } from 'rxjs';
55

66
import { PoolService } from '~/app/shared/api/pool.service';
77
import { RbdService } from '~/app/shared/api/rbd.service';
8-
import { CriticalConfirmationModalComponent } from '~/app/shared/components/critical-confirmation-modal/critical-confirmation-modal.component';
8+
import { DeleteConfirmationModalComponent } from '~/app/shared/components/delete-confirmation-modal/delete-confirmation-modal.component';
99
import { ActionLabelsI18n } from '~/app/shared/constants/app.constants';
1010
import { Icons } from '~/app/shared/enum/icons.enum';
1111
import { NotificationType } from '~/app/shared/enum/notification-type.enum';
@@ -123,7 +123,7 @@ export class RbdNamespaceListComponent implements OnInit {
123123
deleteModal() {
124124
const pool = this.selection.first().pool;
125125
const namespace = this.selection.first().namespace;
126-
const modalRef = this.cdsModalService.show(CriticalConfirmationModalComponent, {
126+
const modalRef = this.cdsModalService.show(DeleteConfirmationModalComponent, {
127127
itemDescription: 'Namespace',
128128
itemNames: [`${pool}/${namespace}`],
129129
submitAction: () =>

src/pybind/mgr/dashboard/frontend/src/app/ceph/block/rbd-snapshot-list/rbd-snapshot-list.component.ts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ import { of } from 'rxjs';
1515
import { RbdService } from '~/app/shared/api/rbd.service';
1616
import { CdHelperClass } from '~/app/shared/classes/cd-helper.class';
1717
import { ConfirmationModalComponent } from '~/app/shared/components/confirmation-modal/confirmation-modal.component';
18-
import { CriticalConfirmationModalComponent } from '~/app/shared/components/critical-confirmation-modal/critical-confirmation-modal.component';
18+
import { DeleteConfirmationModalComponent } from '~/app/shared/components/delete-confirmation-modal/delete-confirmation-modal.component';
1919
import { ActionLabelsI18n } from '~/app/shared/constants/app.constants';
2020
import { CellTemplate } from '~/app/shared/enum/cell-template.enum';
2121
import { CdTableAction } from '~/app/shared/models/cd-table-action';
@@ -37,6 +37,7 @@ import { RbdSnapshotFormModalComponent } from '../rbd-snapshot-form/rbd-snapshot
3737
import { RbdSnapshotActionsModel } from './rbd-snapshot-actions.model';
3838
import { RbdSnapshotModel } from './rbd-snapshot.model';
3939
import { ModalCdsService } from '~/app/shared/services/modal-cds.service';
40+
import { DeletionImpact } from '~/app/shared/enum/delete-confirmation-modal-impact.enum';
4041

4142
@Component({
4243
selector: 'cd-rbd-snapshot-list',
@@ -324,7 +325,8 @@ export class RbdSnapshotListComponent implements OnInit, OnChanges {
324325

325326
deleteSnapshotModal() {
326327
const snapshotName = this.selection.selected[0].name;
327-
this.modalRef = this.cdsModalService.show(CriticalConfirmationModalComponent, {
328+
this.modalRef = this.cdsModalService.show(DeleteConfirmationModalComponent, {
329+
impact: DeletionImpact.high,
328330
itemDescription: $localize`RBD snapshot`,
329331
itemNames: [snapshotName],
330332
submitAction: () => this._asyncTask('deleteSnapshot', 'rbd/snap/delete', snapshotName)

src/pybind/mgr/dashboard/frontend/src/app/ceph/block/rbd-trash-list/rbd-trash-list.component.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import moment from 'moment';
66

77
import { RbdService } from '~/app/shared/api/rbd.service';
88
import { TableStatusViewCache } from '~/app/shared/classes/table-status-view-cache';
9-
import { CriticalConfirmationModalComponent } from '~/app/shared/components/critical-confirmation-modal/critical-confirmation-modal.component';
9+
import { DeleteConfirmationModalComponent } from '~/app/shared/components/delete-confirmation-modal/delete-confirmation-modal.component';
1010
import { ActionLabelsI18n } from '~/app/shared/constants/app.constants';
1111
import { TableComponent } from '~/app/shared/datatable/table/table.component';
1212
import { CellTemplate } from '~/app/shared/enum/cell-template.enum';
@@ -204,7 +204,7 @@ export class RbdTrashListComponent implements OnInit {
204204
const isExpired = moment().isAfter(expiresAt);
205205
const imageIdSpec = new ImageSpec(poolName, namespace, imageId);
206206

207-
this.modalRef = this.modalService.show(CriticalConfirmationModalComponent, {
207+
this.modalRef = this.modalService.show(DeleteConfirmationModalComponent, {
208208
itemDescription: 'RBD',
209209
itemNames: [imageIdSpec],
210210
bodyTemplate: this.deleteTpl,

0 commit comments

Comments
 (0)