mirror of
https://github.com/Ombi-app/Ombi.git
synced 2025-08-21 05:43:19 -07:00
fix(images): Retry images with a backoff when we get a Too Many requests from TheMovieDb #4685
This commit is contained in:
parent
96b79cc361
commit
3f1f35df31
2 changed files with 14 additions and 2 deletions
|
@ -9,8 +9,7 @@
|
|||
<span class="indicator"></span><span class="indicator-text" id="availabilityStatus{{result.id}}">{{getAvailabilityStatus()}}</span>
|
||||
</div>
|
||||
</div>
|
||||
<img [routerLink]="generateDetailsLink()" id="cardImage" src="{{result.posterPath}}" class="image"
|
||||
alt="{{result.title}}">
|
||||
<img [routerLink]="generateDetailsLink()" id="cardImage" src="{{result.posterPath}}" class="image" (error)="onImageError($event)" alt="{{result.title}}">
|
||||
<div [ngClass]="result.posterPath.includes('images/') ? 'middle-show' : 'middle'">
|
||||
<a class="poster-overlay" [routerLink]="generateDetailsLink()">
|
||||
<div class="summary">
|
||||
|
|
|
@ -169,6 +169,19 @@ export class DiscoverCardComponent implements OnInit {
|
|||
}
|
||||
}
|
||||
|
||||
public onImageError(event: any) {
|
||||
const originalSrc = event.target.src;
|
||||
|
||||
// set to a placeholder
|
||||
event.target.src = "../../../images/default_movie_poster.png";
|
||||
|
||||
// Retry the original image
|
||||
const timeout = setTimeout(() => {
|
||||
event.target.src = originalSrc;
|
||||
clearTimeout(timeout);
|
||||
}, Math.floor(Math.random() * (7000 - 1000 + 1)) + 1000);
|
||||
}
|
||||
|
||||
private getExtraMovieInfo() {
|
||||
if (!this.result.imdbid) {
|
||||
this.searchService.getFullMovieDetails(+this.result.id)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue