mirror of
https://github.com/goharbor/harbor.git
synced 2024-11-26 20:26:13 +01:00
Fix project role displaying issue
This commit is contained in:
parent
2a0fdc4ed2
commit
ce19ba2889
@ -28,12 +28,20 @@ import { State } from 'clarity-angular';
|
|||||||
changeDetection: ChangeDetectionStrategy.OnPush
|
changeDetection: ChangeDetectionStrategy.OnPush
|
||||||
})
|
})
|
||||||
export class ListProjectComponent {
|
export class ListProjectComponent {
|
||||||
|
_filterType: string = ProjectTypes[0];
|
||||||
|
|
||||||
@Input() projects: Project[];
|
@Input() projects: Project[];
|
||||||
@Input() filteredType: string;
|
@Input()
|
||||||
|
get filteredType(): string {
|
||||||
|
return this._filterType;
|
||||||
|
}
|
||||||
|
set filteredType(value: string) {
|
||||||
|
if (value && value.trim() !== "") {
|
||||||
|
this._filterType = value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@Output() paginate = new EventEmitter<State>();
|
@Output() paginate = new EventEmitter<State>();
|
||||||
|
|
||||||
@Output() toggle = new EventEmitter<Project>();
|
@Output() toggle = new EventEmitter<Project>();
|
||||||
@Output() delete = new EventEmitter<Project>();
|
@Output() delete = new EventEmitter<Project>();
|
||||||
|
|
||||||
@ -49,7 +57,7 @@ export class ListProjectComponent {
|
|||||||
}
|
}
|
||||||
|
|
||||||
get showRoleInfo(): boolean {
|
get showRoleInfo(): boolean {
|
||||||
return this.filteredType === ProjectTypes[0];
|
return this.filteredType !== ProjectTypes[2];
|
||||||
}
|
}
|
||||||
|
|
||||||
public get isSystemAdmin(): boolean {
|
public get isSystemAdmin(): boolean {
|
||||||
|
@ -14,9 +14,9 @@
|
|||||||
<div class="option-right">
|
<div class="option-right">
|
||||||
<div class="select" style="float: left;">
|
<div class="select" style="float: left;">
|
||||||
<select (change)="doFilterProjects($event)">
|
<select (change)="doFilterProjects($event)">
|
||||||
<option value="-1" [selected]="currentFilteredType === -1">{{projectTypes[0] | translate}}</option>
|
<option value="0" [selected]="currentFilteredType === 0">{{projectTypes[0] | translate}}</option>
|
||||||
<option value="0">{{projectTypes[1] | translate}}</option>
|
<option value="1">{{projectTypes[1] | translate}}</option>
|
||||||
<option value="1">{{projectTypes[2] | translate}}</option>
|
<option value="2">{{projectTypes[2] | translate}}</option>
|
||||||
</select>
|
</select>
|
||||||
</div>
|
</div>
|
||||||
<grid-filter filterPlaceholder='{{"PROJECT.FILTER_PLACEHOLDER" | translate}}' (filter)="doSearchProjects($event)" [currentValue]="projectName"></grid-filter>
|
<grid-filter filterPlaceholder='{{"PROJECT.FILTER_PLACEHOLDER" | translate}}' (filter)="doSearchProjects($event)" [currentValue]="projectName"></grid-filter>
|
||||||
|
@ -56,7 +56,7 @@ export class ProjectComponent implements OnInit, OnDestroy {
|
|||||||
@ViewChild(ListProjectComponent)
|
@ViewChild(ListProjectComponent)
|
||||||
listProject: ListProjectComponent;
|
listProject: ListProjectComponent;
|
||||||
|
|
||||||
currentFilteredType: number = -1;//all projects
|
currentFilteredType: number = 0;//all projects
|
||||||
projectName: string = "";
|
projectName: string = "";
|
||||||
|
|
||||||
subscription: Subscription;
|
subscription: Subscription;
|
||||||
@ -146,10 +146,10 @@ export class ProjectComponent implements OnInit, OnDestroy {
|
|||||||
doSearchProjects(projectName: string): void {
|
doSearchProjects(projectName: string): void {
|
||||||
this.projectName = projectName;
|
this.projectName = projectName;
|
||||||
if (projectName === "") {
|
if (projectName === "") {
|
||||||
if (this.currentFilteredType === -1) {
|
if (this.currentFilteredType === 0) {
|
||||||
this.getProjects();
|
this.getProjects();
|
||||||
} else {
|
} else {
|
||||||
this.getProjects(projectName, this.currentFilteredType);
|
this.getProjects(projectName, this.currentFilteredType - 1);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
this.getProjects(projectName);
|
this.getProjects(projectName);
|
||||||
@ -160,10 +160,10 @@ export class ProjectComponent implements OnInit, OnDestroy {
|
|||||||
if ($event && $event.target && $event.target["value"]) {
|
if ($event && $event.target && $event.target["value"]) {
|
||||||
this.projectName = "";
|
this.projectName = "";
|
||||||
this.currentFilteredType = +$event.target["value"];
|
this.currentFilteredType = +$event.target["value"];
|
||||||
if (this.currentFilteredType === -1) {
|
if (this.currentFilteredType === 0) {
|
||||||
this.getProjects();
|
this.getProjects();
|
||||||
} else {
|
} else {
|
||||||
this.getProjects("", this.currentFilteredType);
|
this.getProjects("", this.currentFilteredType - 1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -177,7 +177,7 @@ export class ProjectComponent implements OnInit, OnDestroy {
|
|||||||
response => {
|
response => {
|
||||||
this.messageHandlerService.showSuccess('PROJECT.TOGGLED_SUCCESS');
|
this.messageHandlerService.showSuccess('PROJECT.TOGGLED_SUCCESS');
|
||||||
this.statisticHandler.refresh();
|
this.statisticHandler.refresh();
|
||||||
this.getProjects("", this.currentFilteredType);
|
this.getProjects("", this.currentFilteredType - 1);
|
||||||
},
|
},
|
||||||
error => this.messageHandlerService.handleError(error)
|
error => this.messageHandlerService.handleError(error)
|
||||||
);
|
);
|
||||||
@ -197,7 +197,7 @@ export class ProjectComponent implements OnInit, OnDestroy {
|
|||||||
}
|
}
|
||||||
|
|
||||||
refresh(): void {
|
refresh(): void {
|
||||||
this.currentFilteredType = -1;
|
this.currentFilteredType = 0;
|
||||||
this.retrieve();
|
this.retrieve();
|
||||||
this.statisticHandler.refresh();
|
this.statisticHandler.refresh();
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user