modify urls to prepare for moving segments views in ldt V00.07
authorymh <ymh.work@gmail.com>
Fri, 29 Jan 2010 05:57:15 +0100
changeset 18 6c2a86612031
parent 17 dc40652282ad
child 19 8a2f6d79fd63
modify urls to prepare for moving segments views in ldt
web/blinkster/__init__.py
web/blinkster/urls.py
web/blinkster/views.py
--- 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})