]> git.apps.os.sepia.ceph.com Git - ceph.git/blob
f0b5f1872bcbac03c5932b701051fecc22977a3c
[ceph.git] /
1 <ng-container *ngIf="selection">
2   <nav ngbNav
3        #nav="ngbNav"
4        class="nav-tabs"
5        cdStatefulTab="rgw-bucket-details">
6     <ng-container ngbNavItem="details">
7       <a ngbNavLink
8          i18n>Details</a>
9       <ng-template ngbNavContent>
10
11         <table class="table table-striped table-bordered">
12           <tbody>
13             <tr>
14               <td i18n
15                   class="bold w-25">Versioning</td>
16               <td class="w-75">{{ selection.versioning }}</td>
17             </tr>
18             <tr>
19               <td i18n
20                   class="bold">Encryption</td>
21               <td>{{ selection.encryption }}</td>
22             </tr>
23             <tr>
24               <td i18n
25                   class="bold">Replication</td>
26               <td>{{ replicationStatus }}</td>
27             </tr>
28             <tr>
29               <td i18n
30                   class="bold">MFA Delete</td>
31               <td>{{ selection.mfa_delete }}</td>
32             </tr>
33             <tr>
34               <td i18n
35                   class="bold">Index type</td>
36               <td>{{ selection.index_type }}</td>
37             </tr>
38             <tr>
39               <td i18n
40                   class="bold">Placement rule</td>
41               <td>{{ selection.placement_rule }}</td>
42             </tr>
43             <tr>
44               <td i18n
45                   class="bold">Last modification time</td>
46               <td>{{ selection.mtime | cdDate }}</td>
47             </tr>
48           </tbody>
49         </table>
50
51         <!-- Bucket quota -->
52         <div>
53           <legend i18n>Bucket quota</legend>
54           <table class="table table-striped table-bordered">
55             <tbody>
56               <tr>
57                 <td i18n
58                     class="bold w-25">Enabled</td>
59                 <td class="w-75">{{ selection.bucket_quota.enabled | booleanText }}</td>
60               </tr>
61               <ng-container *ngIf="selection.bucket_quota.enabled">
62                 <tr>
63                   <td i18n
64                       class="bold">Maximum size</td>
65                   <td *ngIf="selection.bucket_quota.max_size <= -1"
66                       i18n>Unlimited</td>
67                   <td *ngIf="selection.bucket_quota.max_size > -1">
68                     {{ selection.bucket_quota.max_size | dimless }}
69                   </td>
70                 </tr>
71                 <tr>
72                   <td i18n
73                       class="bold">Maximum objects</td>
74                   <td *ngIf="selection.bucket_quota.max_objects <= -1"
75                       i18n>Unlimited</td>
76                   <td *ngIf="selection.bucket_quota.max_objects > -1">
77                     {{ selection.bucket_quota.max_objects }}
78                   </td>
79                 </tr>
80               </ng-container>
81             </tbody>
82           </table>
83         </div>
84
85         <!-- Locking -->
86         <legend i18n>Locking</legend>
87         <table class="table table-striped table-bordered">
88           <tbody>
89             <tr>
90               <td i18n
91                   class="bold w-25">Enabled</td>
92               <td class="w-75">{{ selection.lock_enabled | booleanText }}</td>
93             </tr>
94             <ng-container *ngIf="selection.lock_enabled">
95               <tr>
96                 <td i18n
97                     class="bold">Mode</td>
98                 <td>{{ selection.lock_mode }}</td>
99               </tr>
100               <tr>
101                 <td i18n
102                     class="bold">Days</td>
103                 <td>{{ selection.lock_retention_period_days }}</td>
104               </tr>
105             </ng-container>
106           </tbody>
107         </table>
108
109       <!-- Tags -->
110       <ng-container *ngIf="(selection.tagset | keyvalue)?.length">
111         <legend i18n>Tags</legend>
112         <table class="table table-striped table-bordered">
113           <tbody>
114             <tr *ngFor="let tag of selection.tagset | keyvalue">
115               <td i18n
116                   class="bold w-25">{{tag.key}}</td>
117               <td class="w-75">{{ tag.value }}</td>
118             </tr>
119           </tbody>
120         </table>
121       </ng-container>
122
123       </ng-template>
124     </ng-container>
125
126     <ng-container ngbNavItem="permissions">
127       <a ngbNavLink
128          i18n>Policies</a>
129       <ng-template ngbNavContent>
130
131         <table class="table table-striped table-bordered">
132           <tbody>
133             <tr>
134               <td i18n
135                   class="bold w-25">Bucket policy</td>
136               <td><pre>{{ selection.bucket_policy | json}}</pre></td>
137             </tr>
138             <tr>
139               <td i18n
140                   class="bold w-25">Replication policy</td>
141               <td><pre>{{ selection.replication | json}}</pre></td>
142             </tr>
143             <tr>
144               <td i18n
145                   class="bold w-25">ACL</td>
146               <td>
147                 <table class="table">
148                   <thead>
149                     <tr i18n>
150                       <th>Grantee</th>
151                       <th>Permissions</th>
152                     </tr>
153                   </thead>
154                   <tbody>
155                     <tr i18n>
156                       <td>Bucket Owner</td>
157                       <td>{{ aclPermissions.Owner || '-'}}</td>
158                     </tr>
159                     <tr i18n>
160                       <td>Everyone</td>
161                       <td>{{ aclPermissions.AllUsers || '-'}}</td>
162                     </tr>
163                     <tr i18n>
164                       <td>Authenticated users group</td>
165                       <td>{{ aclPermissions.AuthenticatedUsers || '-'}}</td>
166                     </tr>
167                   </tbody>
168                 </table>
169               </td>
170             </tr>
171           </tbody>
172         </table>
173       </ng-template>
174     </ng-container>
175   </nav>
176
177   <div [ngbNavOutlet]="nav"></div>
178 </ng-container>