cosmetic changes
This commit is contained in:
parent
069afd02b1
commit
b28fc6f955
@ -50,11 +50,11 @@ export class AccountEditorComponent implements OnInit
|
|||||||
firstName: [userInfo.firstName],
|
firstName: [userInfo.firstName],
|
||||||
lastName: [userInfo.lastName],
|
lastName: [userInfo.lastName],
|
||||||
companyName: [userInfo.companyName],
|
companyName: [userInfo.companyName],
|
||||||
address: [userInfo.address],
|
// address: [userInfo.address],
|
||||||
postalCode: [userInfo.postalCode],
|
// postalCode: [userInfo.postalCode],
|
||||||
city: [userInfo.city],
|
// city: [userInfo.city],
|
||||||
state: [userInfo.state],
|
// state: [userInfo.state],
|
||||||
country: [userInfo.country],
|
// country: [userInfo.country],
|
||||||
email: [userInfo.email],
|
email: [userInfo.email],
|
||||||
phone: [userInfo.phone],
|
phone: [userInfo.phone],
|
||||||
cns: [userInfo.triton_cns_enabled]
|
cns: [userInfo.triton_cns_enabled]
|
||||||
|
@ -53,7 +53,7 @@
|
|||||||
|
|
||||||
<button class="btn btn-sm btn-link text-danger" tooltip="{{ 'account.removeKey' | translate }}"
|
<button class="btn btn-sm btn-link text-danger" tooltip="{{ 'account.removeKey' | translate }}"
|
||||||
(click)="deleteSshKey(userKey.name)">
|
(click)="deleteSshKey(userKey.name)">
|
||||||
<fa-icon icon="trash"></fa-icon>
|
<fa-icon icon="times"></fa-icon>
|
||||||
</button>
|
</button>
|
||||||
</li>
|
</li>
|
||||||
</ol>
|
</ol>
|
||||||
|
@ -53,7 +53,17 @@ export class CustomImageEditorComponent implements OnInit
|
|||||||
// ----------------------------------------------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------------------------------------------
|
||||||
saveChanges()
|
saveChanges()
|
||||||
{
|
{
|
||||||
this.save.next(this.editorForm.getRawValue());
|
const changes = this.editorForm.getRawValue();
|
||||||
|
|
||||||
|
const image: any = {
|
||||||
|
name: changes.name,
|
||||||
|
version: changes.version
|
||||||
|
};
|
||||||
|
|
||||||
|
if (changes.description)
|
||||||
|
image.description = changes.description;
|
||||||
|
|
||||||
|
this.save.next(image);
|
||||||
this.modalRef.hide();
|
this.modalRef.hide();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -105,7 +105,7 @@ export class CatalogService
|
|||||||
}
|
}
|
||||||
|
|
||||||
// ----------------------------------------------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------------------------------------------
|
||||||
getImageUntilExpectedState(image: CatalogImage, expectedStates: string[], maxRetries = 10): Observable<CatalogImage>
|
getImageUntilExpectedState(image: CatalogImage, expectedStates: string[], maxRetries = 30): Observable<CatalogImage>
|
||||||
{
|
{
|
||||||
// Keep polling the image until it reaches the expected state
|
// Keep polling the image until it reaches the expected state
|
||||||
return this.httpClient.get<CatalogImage>(`/api/my/images/${image.id}`)
|
return this.httpClient.get<CatalogImage>(`/api/my/images/${image.id}`)
|
||||||
|
@ -91,9 +91,9 @@
|
|||||||
[cdkDropListEnterPredicate]="rolesEnterPredicate" (cdkDropListDropped)="drop($event)" cdkDrag
|
[cdkDropListEnterPredicate]="rolesEnterPredicate" (cdkDropListDropped)="drop($event)" cdkDrag
|
||||||
[cdkDragData]="role" cdkDragBoundary="#securitySettings">
|
[cdkDragData]="role" cdkDragBoundary="#securitySettings">
|
||||||
<div class="d-flex justify-content-between align-items-center">
|
<div class="d-flex justify-content-between align-items-center">
|
||||||
<div>
|
<div class="d-flex align-items-center">
|
||||||
<fa-icon [fixedWidth]="true" icon="angle-right" [rotate]="role.collapsed ? 0 : 90"
|
<fa-icon [fixedWidth]="true" icon="angle-right" [rotate]="role.collapsed || !role.policies.length ? 0 : 90"
|
||||||
class="px-2 py-1 float-start" [ngClass]="role.policies.length ? 'text-secondary' : 'text-muted'"
|
class="px-2 py-1 float-start toggler" [ngClass]="role.policies.length ? 'text-secondary' : 'text-muted'"
|
||||||
(click)="role.policies.length && role.collapsed = !role.collapsed"
|
(click)="role.policies.length && role.collapsed = !role.collapsed"
|
||||||
tooltip="{{ 'security.togglePolicies' | translate }}" container="body" placement="top"
|
tooltip="{{ 'security.togglePolicies' | translate }}" container="body" placement="top"
|
||||||
[adaptivePosition]="false"></fa-icon>
|
[adaptivePosition]="false"></fa-icon>
|
||||||
@ -136,18 +136,16 @@
|
|||||||
|
|
||||||
<div *cdkDragPlaceholder>{{ 'security.dropHere' | translate }}</div>
|
<div *cdkDragPlaceholder>{{ 'security.dropHere' | translate }}</div>
|
||||||
|
|
||||||
<div [collapse]="role.collapsed" [isAnimated]="true">
|
<div [collapse]="role.collapsed || !role.policies.length" [isAnimated]="true">
|
||||||
<ul class="list-group list-group-flush pl-5 mt-2">
|
<ul class="list-group list-group-flush pl-5 mt-2">
|
||||||
<li class="list-group-item pl-1 pr-0" *ngFor="let policy of role.policies">
|
<li class="list-group-item pl-1 pr-0 d-flex align-items-center" *ngFor="let policy of role.policies">
|
||||||
<fa-icon [fixedWidth]="true" icon="key" size="sm"></fa-icon>
|
<fa-icon [fixedWidth]="true" icon="key" size="sm"></fa-icon>
|
||||||
{{ policy.name }}
|
<span class="flex-grow-1">{{ policy.name }}</span>
|
||||||
<div class="btn-group btn-group-sm float-end">
|
<button class="btn btn-sm btn-link text-danger" tooltip="{{ 'security.removeRolePolicy' | translate }}"
|
||||||
<button class="btn text-danger" tooltip="{{ 'security.removeRolePolicy' | translate }}"
|
container="body" placement="top" [adaptivePosition]="false"
|
||||||
container="body" placement="top" [adaptivePosition]="false"
|
(click)="removePolicyFromRole(policy, role)">
|
||||||
(click)="removePolicyFromRole(policy, role)">
|
<fa-icon [fixedWidth]="true" icon="times"></fa-icon>
|
||||||
<fa-icon [fixedWidth]="true" icon="trash" size="sm"></fa-icon>
|
</button>
|
||||||
</button>
|
|
||||||
</div>
|
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
@ -178,14 +176,16 @@
|
|||||||
cdkDropList [cdkDropListData]="user" cdkDropListSortingDisabled sortingDisabled
|
cdkDropList [cdkDropListData]="user" cdkDropListSortingDisabled sortingDisabled
|
||||||
[cdkDropListEnterPredicate]="usersEnterPredicate" (cdkDropListDropped)="drop($event)">
|
[cdkDropListEnterPredicate]="usersEnterPredicate" (cdkDropListDropped)="drop($event)">
|
||||||
<div class="d-flex justify-content-between align-items-center">
|
<div class="d-flex justify-content-between align-items-center">
|
||||||
<div>
|
<div class="d-flex align-items-center">
|
||||||
<fa-icon [fixedWidth]="true" icon="angle-right" [rotate]="user.collapsed ? 0 : 90" class="px-2 py-1"
|
<fa-icon [fixedWidth]="true" icon="angle-right" [rotate]="user.collapsed || !user.roles.length ? 0 : 90" class="px-2 py-1 toggler"
|
||||||
[ngClass]="user.roles.length ? 'text-secondary' : 'text-muted'"
|
[ngClass]="user.roles.length ? 'text-secondary' : 'text-muted'"
|
||||||
(click)="user.roles.length && user.collapsed = !user.collapsed"
|
(click)="user.roles.length && user.collapsed = !user.collapsed"
|
||||||
tooltip="{{ 'security.toggleRoles' | translate }}" container="body" placement="top"
|
tooltip="{{ 'security.toggleRoles' | translate }}" container="body" placement="top"
|
||||||
[adaptivePosition]="false"></fa-icon>
|
[adaptivePosition]="false"></fa-icon>
|
||||||
|
|
||||||
{{ user.login }} <sup *ngIf="user.roles?.length">({{ user.roles.length }})</sup>
|
<span>
|
||||||
|
{{ user.login }} <sup *ngIf="user.roles?.length">({{ user.roles.length }})</sup>
|
||||||
|
</span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="btn-group btn-group-sm float-end" dropdown>
|
<div class="btn-group btn-group-sm float-end" dropdown>
|
||||||
@ -223,17 +223,15 @@
|
|||||||
|
|
||||||
<div *cdkDragPlaceholder>{{ 'security.dropHere' | translate }}</div>
|
<div *cdkDragPlaceholder>{{ 'security.dropHere' | translate }}</div>
|
||||||
|
|
||||||
<div [collapse]="user.collapsed" [isAnimated]="true">
|
<div [collapse]="user.collapsed || !user.roles.length" [isAnimated]="true">
|
||||||
<ul class="list-group list-group-flush pl-5 mt-2">
|
<ul class="list-group list-group-flush pl-5 mt-2">
|
||||||
<li class="list-group-item pl-1 pr-0" *ngFor="let role of user.roles">
|
<li class="list-group-item pl-1 pr-0 d-flex align-items-center" *ngFor="let role of user.roles">
|
||||||
<fa-icon [fixedWidth]="true" icon="tag" size="sm"></fa-icon>
|
<fa-icon [fixedWidth]="true" icon="tag" size="sm"></fa-icon>
|
||||||
{{ role.name }}
|
<span class="flex-grow-1">{{ role.name }}</span>
|
||||||
<div class="btn-group btn-group-sm float-end">
|
<button class="btn btn-sm btn-link text-danger" tooltip="{{ 'security.removeUserRole' | translate }}"
|
||||||
<button class="btn text-danger" tooltip="{{ 'security.removeUserRole' | translate }}"
|
container="body" (click)="removeRoleFromUser(role, user)">
|
||||||
container="body" (click)="removeRoleFromUser(role, user)">
|
<fa-icon [fixedWidth]="true" icon="times"></fa-icon>
|
||||||
<fa-icon [fixedWidth]="true" icon="trash" size="sm"></fa-icon>
|
</button>
|
||||||
</button>
|
|
||||||
</div>
|
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
|
@ -116,3 +116,8 @@ legend
|
|||||||
{
|
{
|
||||||
/*box-shadow: 0 0 3px -1px #0dcaf0;*/
|
/*box-shadow: 0 0 3px -1px #0dcaf0;*/
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.toggler
|
||||||
|
{
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
Reference in New Issue
Block a user