--- a/web/blinkster/__init__.py Fri Jan 29 05:14:15 2010 +0100
+++ b/web/blinkster/__init__.py Fri Jan 29 05:57:15 2010 +0100
@@ -1,3 +1,3 @@
-VERSION = (0,6)
+VERSION = (0,7)
VERSION_STR = unicode(".".join(map(lambda i:"%02d" % (i,), VERSION)))
--- a/web/blinkster/urls.py Fri Jan 29 05:14:15 2010 +0100
+++ b/web/blinkster/urls.py Fri Jan 29 05:57:15 2010 +0100
@@ -40,9 +40,9 @@
#(r'^.*(?P<content>flvplayer|mp3player|ClearExternalAllBlue)\.swf$','django.views.generic.simple.redirect_to', {'url':blinkster.settings.BASE_URL+'/static/swf/ldt/pkg/%(content)s.swf'}),
(r'^roi/list/$', 'blinkster.views.roi_list'),
(r'^poi/list/(?P<roi_sid>.*)/$', 'blinkster.views.poi_list'),
- (r'^segment/detail/(?P<iri_id>.*)/(?P<ensemble_id>.*)/(?P<cutting_id>.*)/(?P<element_id>.*)/$', 'blinkster.views.segment_detail'),
- (r'^segment/search/$','blinkster.views.segment_search_post'),
- (r'^segment/search/(?P<field>tags|title|abstract|all)/(?P<operator>or|and)/(?P<query>.*)/$','blinkster.views.segment_search_get'),
+ (r'^ldt/segment/detail/(?P<iri_id>.*)/(?P<ensemble_id>.*)/(?P<cutting_id>.*)/(?P<element_id>.*)/$', 'blinkster.views.segment_detail'),
+ (r'^ldt/segment/search/$','blinkster.views.segment_search_post'),
+ (r'^ldt/segment/search/(?P<field>tags|title|abstract|all)/(?P<operator>or|and)/(?P<query>.*)/$','blinkster.views.segment_search_get'),
(r'^photologue/', include('photologue.urls')),
)
--- a/web/blinkster/views.py Fri Jan 29 05:14:15 2010 +0100
+++ b/web/blinkster/views.py Fri Jan 29 05:57:15 2010 +0100
@@ -29,23 +29,35 @@
def roi_list(request):
- content_type = request.GET.get("content-type", "application/json; charset=utf-8")
+ content_type = request.GET.get("content-type")
+ content_type_req = ""
+ if content_type is None:
+ content_type = u"application/json; charset=utf-8"
+ else:
+ content_type_req = "?content-type=" + urllib2.quote(content_type)
+
response = HttpResponse(content_type=str(content_type))
results = []
for roi_dict in [roi.serialize_to_dict() for roi in Roi.objects.all()]:
- roi_dict["poi_list_url"] = unicode(settings.WEB_URL.rstrip('/') + reverse('blinkster.views.poi_list',args=[roi_dict["sid"]]))
+ roi_dict["poi_list_url"] = unicode(settings.WEB_URL.rstrip('/') + reverse('blinkster.views.poi_list',args=[roi_dict["sid"]])+content_type_req)
results.append(roi_dict)
return serialize_queryset_to_json(response, results)
def poi_list(request, roi_sid):
- content_type = request.GET.get("content-type", "application/json; charset=utf-8")
+ content_type = request.GET.get("content-type")
+ content_type_req = ""
+ if content_type is None:
+ content_type = u"application/json; charset=utf-8"
+ else:
+ content_type_req = "?content-type=" + urllib2.quote(content_type)
+
response = HttpResponse(content_type=str(content_type))
roi = get_object_or_404(Roi, sid=roi_sid)
results = []
- for poi_dict in [poi.serialize_to_dict() for poi in Poi.objects.filter(roi=roi)]:
- poi_dict["segment_search_url"] = unicode(settings.WEB_URL.rstrip('/') + reverse('blinkster.views.segment_search_get',args=[u"tags",u"or",urllib2.quote(poi_dict["tags"].encode("utf-8"))]))
+ for poi_dict in [poi.serialize_to_dict() for poi in Poi.objects.filter(roi=roi)]:
+ poi_dict["segment_search_url"] = unicode(settings.WEB_URL.rstrip('/') + reverse('blinkster.views.segment_search_get',args=[u"tags",u"or",urllib2.quote(poi_dict["tags"].encode("utf-8"))]) + content_type_req)
results.append(poi_dict)
return serialize_queryset_to_json(response, results)
@@ -64,8 +76,12 @@
def segment_search_get(request, query, field = u"tags", operator=u"or"):
-
- content_type = request.GET.get("content-type", "application/json; charset=utf-8")
+ content_type = request.GET.get("content-type")
+ content_type_req = ""
+ if content_type is None:
+ content_type = u"application/json; charset=utf-8"
+ else:
+ content_type_req = "?content-type=" + urllib2.quote(content_type)
response = HttpResponse(content_type=str(content_type))
@@ -86,7 +102,7 @@
del seg["content_id"]
del seg["id"]
res = dict(res, **seg)
- res["segment_detail_url"] = unicode(settings.WEB_URL.rstrip('/') + reverse('blinkster.views.segment_detail',args=[res["iri_id"], res["ensemble_id"], res["cutting_id"], res["element_id"]]))
+ res["segment_detail_url"] = unicode(settings.WEB_URL.rstrip('/') + reverse('blinkster.views.segment_detail',args=[res["iri_id"], res["ensemble_id"], res["cutting_id"], res["element_id"]]) + content_type_req)
results.append(res)
return serialize_queryset_to_json(response, results, {u"query" : query, u"field": field, u"operator":operator, u"final_query": query_str})