Browse Source

Fix the user page to refresh on route changes

master
Dan 2 years ago
parent
commit
6830c38c90
  1. 2
      packages/bridge-ui/src/app/pages/user/user.component.html
  2. 17
      packages/bridge-ui/src/app/pages/user/user.component.ts
  3. 7
      packages/bridge-ui/src/app/services/users.service.ts

2
packages/bridge-ui/src/app/pages/user/user.component.html

@ -9,7 +9,7 @@
<p>Real Name:</p><p>{{getUserRealName()}}</p>
<p>Email:</p><p>{{getUserEmail()}}</p>
</mat-card-content>
@if(this.userId == getUserId()) {
@if(this.usersService.isLocalUser(this.userId)) {
<mat-card-actions>
<button mat-button>Edit</button>
</mat-card-actions>

17
packages/bridge-ui/src/app/pages/user/user.component.ts

@ -32,13 +32,22 @@ export class UserComponent {
constructor(
public usersService: UsersService,
private dialog: MatDialog,
private route: ActivatedRoute,
) {
this.userId = String(this.route.snapshot.paramMap.get('id'));
private activeRoute: ActivatedRoute,
) {}
ngOnInit() {
this.userId = String(this.activeRoute.snapshot.paramMap.get('id'));
this.usersService.getUserdetails(this.userId).subscribe(data => {
this.user = data;
});
this.activeRoute.params.subscribe(routeParams => {
this.userId = routeParams['id'];
this.usersService.getUserdetails(this.userId).subscribe(data => {
this.user = data;
});
}
});
}
openClaimRacerDialog()
{

7
packages/bridge-ui/src/app/services/users.service.ts

@ -121,5 +121,10 @@ export class UsersService {
return this.hasPermission("create:races")
}
isLocalUser(id: string) {
if(!this.isAuthenticated || !this.localUser) {return false}
let other = id.replace("auth0|", "")
return this.getUserId() == other;
}
}

Loading…
Cancel
Save