]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/blob
3f50579a371ef005fc6565a8e42b995deb400fd5
[ceph.git] /
1 <cd-table [data]="data"
2           columnMode="flex"
3           selectionType="single"
4           (updateSelection)="updateSelection($event)"
5           [columns]="columns">
6   <div class="table-actions">
7     <div class="btn-group"
8          dropdown>
9       <button type="button"
10               class="btn btn-sm btn-primary"
11               *ngIf="!selection.hasSingleSelection"
12               (click)="openCreateSnapshotModal()">
13         <i class="fa fa-fw fa-plus"></i>
14         <span i18n>Create</span>
15       </button>
16       <button type="button"
17               class="btn btn-sm btn-primary"
18               *ngIf="selection.hasSingleSelection"
19               [ngClass]="{'disabled': selection.first().executing}"
20               (click)="openEditSnapshotModal()">
21         <i class="fa fa-fw fa-pencil"></i>
22         <span i18n>Rename</span>
23       </button>
24       <button type="button"
25               dropdownToggle
26               class="btn btn-sm btn-primary dropdown-toggle dropdown-toggle-split">
27         <span class="caret"></span>
28         <span class="sr-only"></span>
29       </button>
30       <ul *dropdownMenu
31           class="dropdown-menu"
32           role="menu">
33         <li role="menuitem">
34           <a class="dropdown-item"
35              (click)="openCreateSnapshotModal()">
36             <i class="fa fa-fw fa-plus"></i>
37             <span i18n>Create</span>
38           </a>
39         </li>
40         <li role="menuitem"
41             [ngClass]="{'disabled': !selection.hasSingleSelection || selection.first().executing}">
42           <a class="dropdown-item"
43              (click)="openEditSnapshotModal()">
44             <i class="fa fa-fw fa-pencil"></i>
45             <span i18n>Rename</span>
46           </a>
47         </li>
48         <li role="menuitem"
49             [ngClass]="{'disabled': !selection.hasSingleSelection || selection.first().executing}">
50           <a class="dropdown-item"
51              (click)="toggleProtection()">
52             <span *ngIf="!selection.first()?.is_protected">
53               <i class="fa fa-fw fa-lock"></i>
54               <span i18n>Protect</span>
55             </span>
56             <span *ngIf="selection.first()?.is_protected">
57               <i class="fa fa-fw fa-unlock"></i>
58               <span i18n>Unprotect</span>
59             </span>
60           </a>
61         </li>
62         <li role="menuitem"
63             [ngClass]="{'disabled': !selection.hasSingleSelection || selection.first().executing}">
64           <a class="dropdown-item"
65              routerLink="/rbd/clone/{{ poolName }}/{{ rbdName }}/{{ selection.first()?.name }}">
66             <i class="fa fa-fw fa-clone"></i>
67             <span i18n>Clone</span>
68           </a>
69         </li>
70         <li role="menuitem"
71             [ngClass]="{'disabled': !selection.hasSingleSelection || selection.first().executing}">
72           <a class="dropdown-item"
73              routerLink="/rbd/copy/{{ poolName }}/{{ rbdName }}/{{ selection.first()?.name }}">
74             <i class="fa fa-fw fa-copy"></i>
75             <span i18n>Copy</span>
76           </a>
77         </li>
78         <li role="menuitem"
79             [ngClass]="{'disabled': !selection.hasSingleSelection || selection.first().executing}">
80           <a class="dropdown-item"
81              (click)="rollbackModal()">
82             <i class="fa fa-fw fa-undo"></i>
83             <span i18n>Rollback</span>
84           </a>
85         </li>
86         <li role="menuitem"
87             [ngClass]="{'disabled': !selection.hasSingleSelection || selection.first().executing || selection.first().is_protected}">
88           <a class="dropdown-item"
89              (click)="deleteSnapshotModal()">
90             <i class="fa fa-fw fa-trash-o"></i>
91             <span i18n>Delete</span>
92           </a>
93         </li>
94       </ul>
95     </div>
96   </div>
97 </cd-table>
98
99 <ng-template #protectTpl
100              let-value="value">
101   <span *ngIf="value"
102         class="label label-success">PROTECTED</span>
103   <span *ngIf="!value"
104         class="label label-info">UNPROTECTED</span>
105 </ng-template>
106
107 <ng-template #rollbackTpl
108              let-value>
109   You are about to rollback
110   <strong>{{ value.snapName }}</strong>.
111 </ng-template>