Feature/disable delete all activities if filters are active (#3389)
* Disable delete all activities button if filters are active * Update changelog
This commit is contained in:
@@ -94,6 +94,7 @@
|
||||
[dataSource]="dataSource"
|
||||
[deviceType]="data.deviceType"
|
||||
[hasPermissionToCreateActivity]="false"
|
||||
[hasPermissionToDeleteActivity]="false"
|
||||
[hasPermissionToExportActivities]="
|
||||
!data.hasImpersonationId && !user.settings.isRestrictedView
|
||||
"
|
||||
|
@@ -335,6 +335,7 @@
|
||||
[dataSource]="dataSource"
|
||||
[deviceType]="data.deviceType"
|
||||
[hasPermissionToCreateActivity]="false"
|
||||
[hasPermissionToDeleteActivity]="false"
|
||||
[hasPermissionToExportActivities]="
|
||||
!data.hasImpersonationId && !user?.settings?.isRestrictedView
|
||||
"
|
||||
|
@@ -155,7 +155,7 @@ export class ActivitiesPageComponent implements OnDestroy, OnInit {
|
||||
|
||||
public onDeleteActivity(aId: string) {
|
||||
this.dataService
|
||||
.deleteOrder(aId)
|
||||
.deleteActivity(aId)
|
||||
.pipe(takeUntil(this.unsubscribeSubject))
|
||||
.subscribe({
|
||||
next: () => {
|
||||
@@ -171,7 +171,7 @@ export class ActivitiesPageComponent implements OnDestroy, OnInit {
|
||||
|
||||
if (confirmation) {
|
||||
this.dataService
|
||||
.deleteAllOrders()
|
||||
.deleteAllActivities()
|
||||
.pipe(takeUntil(this.unsubscribeSubject))
|
||||
.subscribe({
|
||||
next: () => {
|
||||
@@ -400,6 +400,7 @@ export class ActivitiesPageComponent implements OnDestroy, OnInit {
|
||||
hasPermission(this.user.permissions, permissions.createOrder);
|
||||
this.hasPermissionToDeleteActivity =
|
||||
!this.hasImpersonationId &&
|
||||
hasPermission(this.user.permissions, permissions.deleteOrder);
|
||||
hasPermission(this.user.permissions, permissions.deleteOrder) &&
|
||||
!this.userService.hasFilters();
|
||||
}
|
||||
}
|
||||
|
@@ -7,6 +7,7 @@
|
||||
[dataSource]="dataSource"
|
||||
[deviceType]="deviceType"
|
||||
[hasPermissionToCreateActivity]="hasPermissionToCreateActivity"
|
||||
[hasPermissionToDeleteActivity]="hasPermissionToDeleteActivity"
|
||||
[hasPermissionToExportActivities]="!hasImpersonationId"
|
||||
[locale]="user?.settings?.locale"
|
||||
[pageIndex]="pageIndex"
|
||||
|
@@ -126,6 +126,7 @@
|
||||
[dataSource]="dataSource"
|
||||
[deviceType]="data?.deviceType"
|
||||
[hasPermissionToCreateActivity]="false"
|
||||
[hasPermissionToDeleteActivity]="false"
|
||||
[hasPermissionToExportActivities]="false"
|
||||
[hasPermissionToFilter]="false"
|
||||
[hasPermissionToOpenDetails]="false"
|
||||
|
@@ -256,18 +256,18 @@ export class DataService {
|
||||
return this.http.delete<any>(`/api/v1/account-balance/${aId}`);
|
||||
}
|
||||
|
||||
public deleteAllOrders() {
|
||||
return this.http.delete<any>(`/api/v1/order/`);
|
||||
public deleteActivity(aId: string) {
|
||||
return this.http.delete<any>(`/api/v1/order/${aId}`);
|
||||
}
|
||||
|
||||
public deleteAllActivities() {
|
||||
return this.http.delete<any>(`/api/v1/order`);
|
||||
}
|
||||
|
||||
public deleteBenchmark({ dataSource, symbol }: UniqueAsset) {
|
||||
return this.http.delete<any>(`/api/v1/benchmark/${dataSource}/${symbol}`);
|
||||
}
|
||||
|
||||
public deleteOrder(aId: string) {
|
||||
return this.http.delete<any>(`/api/v1/order/${aId}`);
|
||||
}
|
||||
|
||||
public deleteUser(aId: string) {
|
||||
return this.http.delete<any>(`/api/v1/user/${aId}`);
|
||||
}
|
||||
|
@@ -75,6 +75,10 @@ export class UserService extends ObservableStore<UserStoreState> {
|
||||
return filters;
|
||||
}
|
||||
|
||||
public hasFilters() {
|
||||
return this.getFilters().length > 0;
|
||||
}
|
||||
|
||||
public remove() {
|
||||
this.setState({ user: null }, UserStoreActions.RemoveUser);
|
||||
}
|
||||
|
Reference in New Issue
Block a user