1 <ng-container *
ngIf=
"selection">
5 cdStatefulTab=
"rgw-user-details">
6 <li ngbNavItem=
"details">
9 <ng-template ngbNavContent
>
11 <table class=
"table table-striped table-bordered">
15 class=
"bold w-25">Tenant
</td>
16 <td class=
"w-75">{{ user.tenant }}
</td>
20 class=
"bold w-25">User ID
</td>
21 <td class=
"w-75">{{ user.user_id }}
</td>
25 class=
"bold w-25">Username
</td>
26 <td class=
"w-75">{{ user.uid }}
</td>
30 class=
"bold">Full name
</td>
31 <td>{{ user.display_name }}
</td>
33 <tr *
ngIf=
"user.email?.length">
35 class=
"bold">Email address
</td>
36 <td>{{ user.email }}
</td>
40 class=
"bold">Suspended
</td>
41 <td>{{ user.suspended | booleanText }}
</td>
45 class=
"bold">System
</td>
46 <td>{{ user.system === 'true' | booleanText }}
</td>
50 class=
"bold">Maximum buckets
</td>
51 <td>{{ user.max_buckets | map:maxBucketsMap }}
</td>
53 <tr *
ngIf=
"user.subusers && user.subusers.length">
55 class=
"bold">Subusers
</td>
57 <div *
ngFor=
"let subuser of user.subusers">
58 {{ subuser.id }} ({{ subuser.permissions }})
62 <tr *
ngIf=
"user.caps && user.caps.length">
64 class=
"bold">Capabilities
</td>
66 <div *
ngFor=
"let cap of user.caps">
67 {{ cap.type }} ({{ cap.perm }})
71 <tr *
ngIf=
"user.mfa_ids?.length">
73 class=
"bold">MFAs(Id)
</td>
74 <td>{{ user.mfa_ids | join}}
</td>
80 <div *
ngIf=
"user.user_quota">
81 <legend i18n
>User quota
</legend>
82 <table class=
"table table-striped table-bordered">
86 class=
"bold w-25">Enabled
</td>
87 <td class=
"w-75">{{ user.user_quota.enabled | booleanText }}
</td>
91 class=
"bold">Maximum size
</td>
92 <td *
ngIf=
"!user.user_quota.enabled">-
</td>
93 <td *
ngIf=
"user.user_quota.enabled && user.user_quota.max_size <= -1"
95 <td *
ngIf=
"user.user_quota.enabled && user.user_quota.max_size > -1">
96 {{ user.user_quota.max_size | dimlessBinary }}
101 class=
"bold">Maximum objects
</td>
102 <td *
ngIf=
"!user.user_quota.enabled">-
</td>
103 <td *
ngIf=
"user.user_quota.enabled && user.user_quota.max_objects <= -1"
105 <td *
ngIf=
"user.user_quota.enabled && user.user_quota.max_objects > -1">
106 {{ user.user_quota.max_objects }}
113 <!-- Bucket quota -->
114 <div *
ngIf=
"user.bucket_quota">
115 <legend i18n
>Bucket quota
</legend>
116 <table class=
"table table-striped table-bordered">
120 class=
"bold w-25">Enabled
</td>
121 <td class=
"w-75">{{ user.bucket_quota.enabled | booleanText }}
</td>
125 class=
"bold">Maximum size
</td>
126 <td *
ngIf=
"!user.bucket_quota.enabled">-
</td>
127 <td *
ngIf=
"user.bucket_quota.enabled && user.bucket_quota.max_size <= -1"
129 <td *
ngIf=
"user.bucket_quota.enabled && user.bucket_quota.max_size > -1">
130 {{ user.bucket_quota.max_size | dimlessBinary }}
135 class=
"bold">Maximum objects
</td>
136 <td *
ngIf=
"!user.bucket_quota.enabled">-
</td>
137 <td *
ngIf=
"user.bucket_quota.enabled && user.bucket_quota.max_objects <= -1"
139 <td *
ngIf=
"user.bucket_quota.enabled && user.bucket_quota.max_objects > -1">
140 {{ user.bucket_quota.max_objects }}
149 <li ngbNavItem=
"keys"
153 <ng-template ngbNavContent
>
154 <cd-table [data]=
"keys"
155 [columns]=
"keysColumns"
157 selectionType=
"multi"
158 forceIdentifier=
"true"
159 (updateSelection)=
"updateKeysSelection($event)">
160 <div class=
"table-actions">
161 <div class=
"btn-group"
163 <button type=
"button"
164 class=
"btn btn-accent"
165 [disabled]=
"!keysSelection.hasSingleSelection"
166 (click)=
"showKeyModal()">
167 <i [ngClass]=
"[icons.show]"></i>
168 <ng-container i18n
>Show
</ng-container>
177 <div [ngbNavOutlet]=
"nav"></div>