]> git.apps.os.sepia.ceph.com Git - ceph.git/blob
603afdb0d32d72326c6005f7cc0c5280483da1a9
[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" dropdown>
8       <button type="button"
9               class="btn btn-sm btn-primary"
10               *ngIf="!selection.hasSingleSelection"
11               (click)="openCreateSnapshotModal()">
12         <i class="fa fa-fw fa-plus"></i><span i18n>Create</span>
13       </button>
14       <button type="button"
15               class="btn btn-sm btn-primary"
16               *ngIf="selection.hasSingleSelection"
17               [ngClass]="{'disabled': selection.first().executing}"
18               (click)="openEditSnapshotModal()">
19         <i class="fa fa-fw fa-pencil"></i><span i18n>Rename</span>
20       </button>
21       <button type="button" dropdownToggle class="btn btn-sm btn-primary dropdown-toggle dropdown-toggle-split">
22         <span class="caret"></span>
23         <span class="sr-only"></span>
24       </button>
25       <ul *dropdownMenu class="dropdown-menu" role="menu">
26         <li role="menuitem"><a class="dropdown-item" (click)="openCreateSnapshotModal()"><i class="fa fa-fw fa-plus"></i><span i18n>Create</span></a></li>
27         <li role="menuitem"
28             [ngClass]="{'disabled': !selection.hasSingleSelection || selection.first().executing}"><a class="dropdown-item" (click)="openEditSnapshotModal()"><i class="fa fa-fw fa-pencil"></i><span i18n>Rename</span></a></li>
29         <li role="menuitem"
30             [ngClass]="{'disabled': !selection.hasSingleSelection || selection.first().executing}">
31           <a class="dropdown-item" (click)="toggleProtection()">
32             <span *ngIf="!selection.first()?.is_protected"><i class="fa fa-fw fa-lock"></i><span i18n>Protect</span></span>
33             <span *ngIf="selection.first()?.is_protected"><i class="fa fa-fw fa-unlock"></i><span i18n>Unprotect</span></span>
34           </a>
35         </li>
36         <li role="menuitem"
37             [ngClass]="{'disabled': !selection.hasSingleSelection || selection.first().executing}">
38           <a class="dropdown-item" routerLink="/rbd/clone/{{ poolName }}/{{ rbdName }}/{{ selection.first()?.name }}">
39             <i class="fa fa-fw fa-clone"></i><span i18n>Clone</span>
40           </a>
41         </li>
42         <li role="menuitem"
43             [ngClass]="{'disabled': !selection.hasSingleSelection || selection.first().executing}">
44           <a class="dropdown-item" routerLink="/rbd/copy/{{ poolName }}/{{ rbdName }}/{{ selection.first()?.name }}">
45             <i class="fa fa-fw fa-copy"></i><span i18n>Copy</span>
46           </a>
47         </li>
48         <li role="menuitem"
49             [ngClass]="{'disabled': !selection.hasSingleSelection || selection.first().executing}">
50           <a class="dropdown-item" (click)="rollbackModal()"><i class="fa fa-fw fa-undo"></i><span i18n>Rollback</span></a>
51         </li>
52         <li role="menuitem"
53             [ngClass]="{'disabled': !selection.hasSingleSelection || selection.first().executing || selection.first().is_protected}">
54           <a class="dropdown-item" (click)="deleteSnapshotModal()"><i class="fa fa-fw fa-trash-o"></i><span i18n>Delete</span></a>
55         </li>
56       </ul>
57     </div>
58   </div>
59 </cd-table>
60
61 <ng-template #protectTpl
62              let-value="value">
63   <span *ngIf="value" class="label label-success">PROTECTED</span>
64   <span *ngIf="!value" class="label label-info">UNPROTECTED</span>
65 </ng-template>