web/hdalab/views/ajax.py
changeset 212 3e1193c6dce3
parent 208 d4e3ea751966
child 232 eb02eed5f7d1
--- a/web/hdalab/views/ajax.py	Wed Jul 18 15:30:02 2012 +0200
+++ b/web/hdalab/views/ajax.py	Thu Jul 26 19:03:34 2012 +0200
@@ -132,6 +132,7 @@
     ROOT_MAX_TAG_ORDER = 5
     MAX_TAG_ORDER = 5
     MAX_LEVEL = 3
+    LEVEL_COEFF = 5
     label = request.GET.get('label', None)
     lowerlabel = label.lower()
     globtags = {}
@@ -155,7 +156,7 @@
         for ts in TaggedSheet.objects.select_related('tag','datasheet').filter(datasheet__id=datasheet.id,order__lte=MAX_TAG_ORDER):
             label = ts.tag.label
             if globtags.has_key(label):
-                score = 3 * globtags[label]['level'] - ts.order
+                score = LEVEL_COEFF * globtags[label]['level'] - ts.order
                 if score > maintagscore:
                     maintagscore = score
                     maintag = label
@@ -163,7 +164,14 @@
                 if label.lower() == lowerlabel:
                     rootscore = (ROOT_MAX_TAG_ORDER - ts.order)
         if maintag is not None:
-            globtags[maintag]['access']['contents'].append({'id': datasheet.id, 'title': datasheet.title, 'url': datasheet.url, 'score': (dsscore + rootscore)})
+            globtags[maintag]['access']['contents'].append({
+                'id': datasheet.id,
+                'title': datasheet.title,
+                'url': datasheet.url,
+                'description': datasheet.description,
+                'hda_id': datasheet.hda_id,
+                'score': (dsscore + rootscore)
+            })
     cleantags(resobj)
                     
 #        resobj['contents'] = [{'id': d.id, 'title': d.title, 'tags': [t.label for t in d.tags.filter(taggedsheet__order__lte=5)]} for d in datasheets]