src/hdalab/views/renkan.py
changeset 290 fb86765b4c54
parent 289 eb479baeb2bf
child 291 44af3e5e4114
--- a/src/hdalab/views/renkan.py	Tue Jul 08 12:03:06 2014 +0200
+++ b/src/hdalab/views/renkan.py	Wed Jul 09 12:26:11 2014 +0200
@@ -5,12 +5,12 @@
 @author: tc
 '''
 from datetime import datetime
-from django.conf import settings
 from django.db.models import Q
 from django.http.response import HttpResponse
 from django.views.generic import View
 from django.views.decorators.csrf import csrf_exempt
-from hdabo.models import Tag, Datasheet, TaggedSheet
+from hdabo.models import Tag
+from hdalab.utils import LineNodePlacer
 from hdalab.views.ajax import filter_generic
 import json
 import uuid
@@ -51,37 +51,36 @@
         country_list = [c for c in countries if c!=""]
         all_tags = Tag.objects.filter( Q(label__in=label_list) | Q(dbpedia_uri__in=country_list) )
         
+        # Get datasheets from ajax filter search
+        filter_output = filter_generic(request.GET.get('lang',request.LANGUAGE_CODE), None, ",".join(label_list), ",".join(country_list))
+        filter_output = json.loads(filter_output)
+        
+        # Prepare Node placer :
+        np = LineNodePlacer()
+        np.init({"tags": len(all_tags), "datasheet":len(filter_output["contents"])})
+        
         project_id = unicode(uuid.uuid1())
         
-        for i,t in enumerate(all_tags):
+        for t in all_tags:
             content["nodes"].append({
               "id": unicode(uuid.uuid1()),
               "title": t.label,
               "description": t.dbpedia_uri,
               "uri": t.dbpedia_uri,
-              "position": {
-                "x": 0,
-                "y": 100*i
-              },
+              "position": np.get_place("tags"),
               "image": None,
               "size": 0,
               "project_id": project_id,
               #"created_by": "roster_user-84fe909f-ba37-48e6-a25f-9d2f129a95b7"
             })
         
-        # Get datasheets from ajax filter search
-        filter_output = filter_generic(request.GET.get('lang',request.LANGUAGE_CODE), None, ",".join(label_list), ",".join(country_list))
-        filter_output = json.loads(filter_output)
-        for i,c in enumerate(filter_output["contents"]):
+        for c in filter_output["contents"]  :
             content["nodes"].append({
               "id": unicode(uuid.uuid1()),
               "title": c["title"],
               "description": c["description"],
               "uri": c["url"],
-              "position": {
-                "x": 200,
-                "y": 100*i - 50
-              },
+              "position": np.get_place("datasheet"),
               "image": None,
               "size": 0,
               "project_id": project_id,
@@ -96,4 +95,5 @@
     def put(self, request):
         
         return HttpResponse("OK")
-    
+        
+    
\ No newline at end of file