diff --git a/oxdata/movie/models.py b/oxdata/movie/models.py index 3c95cbe..0e4767b 100644 --- a/oxdata/movie/models.py +++ b/oxdata/movie/models.py @@ -101,7 +101,7 @@ class Imdb(models.Model): episodeYear = models.CharField(max_length=4, blank=True, default='') episodeDirector = models.CharField(max_length=1000, blank=True, default='') seriesTitle = models.CharField(max_length=1000, blank=True, default='') - + invalid = models.BooleanField(default=False) patch = DictField(default=None, blank=True, null=True) diff --git a/oxdata/poster/models.py b/oxdata/poster/models.py index fe9b500..5dc1bed 100644 --- a/oxdata/poster/models.py +++ b/oxdata/poster/models.py @@ -19,6 +19,7 @@ import ox.web.piratecinema from lookup.models import MovieId + def getPosters(movie_id, url_prefix='', limit=lambda x, y: 0.3 < x/y < 1): if not movie_id: return {} @@ -174,3 +175,13 @@ def get_poster_urls(m): addPoster(data['poster'], 'apple.com', m.imdb_id) ''' #fixme: get 0xdb still, possibly imdb still as fallback? + + +def cache_all_posters(): + for p in PosterCache.objects.all().filter(failed=False, image='').order_by('-id'): + poster = p.get() + if poster and (not poster.width or not poster.height): + p.failed = True + p.status = "invalid image" + p.image.delete() + p.save()