From 97979c7570a3f3a2d6417aee2210e42328f9d38b Mon Sep 17 00:00:00 2001 From: sanj Date: Thu, 2 Dec 2010 17:19:52 +0100 Subject: [PATCH] audios --- vurbanism/flyovers/models.py | 29 +++++++++++++++++++++++++++++ vurbanism/static/js/vurbanism.js | 4 ++++ vurbanism/templates/flyovers.html | 18 +++++++++++++++++- 3 files changed, 50 insertions(+), 1 deletion(-) diff --git a/vurbanism/flyovers/models.py b/vurbanism/flyovers/models.py index 8d89831..e08ef6e 100644 --- a/vurbanism/flyovers/models.py +++ b/vurbanism/flyovers/models.py @@ -7,6 +7,9 @@ try: except: import simplejson as json from oxweb import youtube +from settings import MEDIA_URL +from os.path import join + flickr.API_KEY = settings.FLICKR_API_KEY flickr.SECRET = settings.FLICKR_SECRET @@ -159,6 +162,18 @@ class Audio(models.Model): def __unicode__(self): return self.caption + " - " + self.category.name + def get_dict(self): + path = join(MEDIA_URL, self.fil.url) + info = dict(title=self.caption, url=path) + return { + 'info': info, + 'flyover': { + 'id': self.flyover.id, + 'name': self.flyover.name + } + } + + class AudioCategory(models.Model): name = models.CharField(max_length=255) description = models.TextField(blank=True, null=True) @@ -166,6 +181,20 @@ class AudioCategory(models.Model): def __unicode__(self): return self.name + def get_dict(self): + audios = [] + flyovers = [] + for a in Audio.objects.filter(category=self): + audios.append(a.get_dict()) + flyovers.append(a.flyover.geojson_as_dict()) + return { + 'audios': audios, + 'flyovers': { + 'type': 'FeatureCollection', + 'features': flyovers + } + } + class Text(models.Model): # url = models.URLField("FlickR URL") text = models.TextField() diff --git a/vurbanism/static/js/vurbanism.js b/vurbanism/static/js/vurbanism.js index 0f0c1db..9534cbe 100644 --- a/vurbanism/static/js/vurbanism.js +++ b/vurbanism/static/js/vurbanism.js @@ -218,6 +218,10 @@ $(function() { var html = tmpl("tmpl_texts", {'texts': json.texts}); $('#media').html(html); + case "audio": + var html = tmpl("tmpl_audios", {'audios': json.audios}); + $('#media').html(html); + default: $.noop(); } diff --git a/vurbanism/templates/flyovers.html b/vurbanism/templates/flyovers.html index a326986..bf0f0fc 100644 --- a/vurbanism/templates/flyovers.html +++ b/vurbanism/templates/flyovers.html @@ -54,6 +54,22 @@ + +