Skip to content

Commit b565f1d

Browse files
IsmaestroIsmael Ramos
authored andcommitted
feat(hero top): added hero detail links
1 parent 8ee8e2e commit b565f1d

File tree

3 files changed

+17
-7
lines changed

3 files changed

+17
-7
lines changed

src/app/heroes/hero-top/hero-top.component.html

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,10 @@ <h1 class="section-title">{{'topHeroes' | translate}}</h1>
1111
<ng-container *ngFor="let hero of heroes">
1212
<mat-card class="hero-card">
1313
<mat-card-header>
14-
<div mat-card-avatar class="hero-header-image"
14+
<div (click)="seeHeroDetails(hero)" mat-card-avatar class="hero-header-image"
1515
[ngStyle]="{'background-image': 'url(https://github.com/assets/images/heroes/'%20+%20hero.id%20+%20'-thumbnail.jpg)'}"></div>
16-
<mat-card-title>{{hero.name}}</mat-card-title>
17-
<mat-card-subtitle>{{hero.alterEgo}}</mat-card-subtitle>
16+
<mat-card-title (click)="seeHeroDetails(hero)">{{hero.name}}</mat-card-title>
17+
<mat-card-subtitle (click)="seeHeroDetails(hero)">{{hero.alterEgo}}</mat-card-subtitle>
1818
<div class="flex-spacer"></div>
1919
<div class="hero-actions">
2020
{{hero.likes}}
@@ -24,7 +24,7 @@ <h1 class="section-title">{{'topHeroes' | translate}}</h1>
2424
</mat-icon>
2525
</div>
2626
</mat-card-header>
27-
<img mat-card-image src="assets/images/heroes/{{hero.id}}.jpg">
27+
<img (click)="seeHeroDetails(hero)" mat-card-image src="assets/images/heroes/{{hero.id}}.jpg">
2828
</mat-card>
2929
</ng-container>
3030
</div>

src/app/heroes/hero-top/hero-top.component.scss

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@
22
margin: 2em;
33
}
44

5+
.hero-header-image, mat-card-title, mat-card-subtitle, .mat-card-image {
6+
cursor: pointer;
7+
}
8+
59
.hero-card {
610
margin: 2em auto;
711
}

src/app/heroes/hero-top/hero-top.component.ts

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
11
import {Component} from '@angular/core';
2-
32
import {Hero} from '../shared/hero.model';
4-
53
import {HeroService} from '../shared/hero.service';
64
import {AppConfig} from '../../config/app.config';
5+
import {Router} from '@angular/router';
76

87
@Component({
98
selector: 'app-hero-top',
@@ -15,7 +14,8 @@ export class HeroTopComponent {
1514
heroes: Hero[] = null;
1615
canVote = false;
1716

18-
constructor(private heroService: HeroService) {
17+
constructor(private heroService: HeroService,
18+
private router: Router) {
1919
this.canVote = this.heroService.checkIfUserCanVote();
2020

2121
this.heroService.getAllHeroes().subscribe((heroes) => {
@@ -35,4 +35,10 @@ export class HeroTopComponent {
3535
});
3636
});
3737
}
38+
39+
seeHeroDetails(hero): void {
40+
if (hero.default) {
41+
this.router.navigate([AppConfig.routes.heroes + '/' + hero.id]);
42+
}
43+
}
3844
}

0 commit comments

Comments
 (0)