From 4d958067fe2df642be9a28a2569baf20a26468b3 Mon Sep 17 00:00:00 2001 From: j <0x006A@0x2620.org> Date: Sun, 30 Oct 2011 13:31:04 +0100 Subject: [PATCH] add links --- oxdata/lookup/models.py | 13 +++++++++++++ oxdata/movie/views.py | 8 ++++++++ 2 files changed, 21 insertions(+) diff --git a/oxdata/lookup/models.py b/oxdata/lookup/models.py index 0c4ab21..9b45f78 100644 --- a/oxdata/lookup/models.py +++ b/oxdata/lookup/models.py @@ -119,6 +119,19 @@ class MovieId(models.Model): folder = stripAccents(directors[0].upper())[0] return os.path.join(folder, normalizePath(directors), normalizePath(title)) + def links(self): + links = [] + if self.imdb_id: + links.append({'source': 'IMDb', + 'url': ox.web.imdb.getUrl(self.imdb_id)}) + if self.wikipedia_id: + links.append({'source': 'Wikipedia', + 'url': ox.web.wikipedia.getUrl(self.wikipedia_id)}) + if self.criterion_id: + links.append({'source': 'Criterion', + 'url': ox.web.criterion.getUrl(self.criterion_id)}) + return links + def json(self): json = {} keys = [ diff --git a/oxdata/movie/views.py b/oxdata/movie/views.py index 7c235ae..acf7cae 100644 --- a/oxdata/movie/views.py +++ b/oxdata/movie/views.py @@ -20,6 +20,13 @@ def posters(request, imdbId): movie_id = getMovieIdByImdbId(imdb_id=imdbId) return getPosters(movie_id, request.build_absolute_uri('/')) +def links(request, imdbId): + movie_id = getMovieIdByImdbId(imdb_id=imdbId) + links = [] + if movie_id: + links = movie_id.links() + return links + def getId(request): data = json.loads(request.POST['data']) response = json_response() @@ -73,6 +80,7 @@ def getData(request): del data['reviews'] data['posters'] = posters(request, id) + data['links'] = links(request, id) response['data'] = data else: