src/hdalab/views/ajax.py
changeset 289 eb479baeb2bf
parent 288 0bb9c29cd41d
child 290 fb86765b4c54
equal deleted inserted replaced
288:0bb9c29cd41d 289:eb479baeb2bf
   259     country = request.GET.get('country', None)
   259     country = request.GET.get('country', None)
   260     contentlist = request.GET.get('contentlist', None)
   260     contentlist = request.GET.get('contentlist', None)
   261     max_tag_order = int(request.GET.get('mto', '12'))
   261     max_tag_order = int(request.GET.get('mto', '12'))
   262     content_count = request.GET.get('contentcount', 12)
   262     content_count = request.GET.get('contentcount', 12)
   263     tag_count = request.GET.get('tagcount', 30)
   263     tag_count = request.GET.get('tagcount', 30)
       
   264     
       
   265     outputstr = filter_generic(lang, periode, label, country, contentlist, max_tag_order, content_count, tag_count)
       
   266         
       
   267     return HttpResponse(content=outputstr, mimetype='application/json')
       
   268 
       
   269 
       
   270 def filter_generic(lang="fr-fr", periode=None, label=None, country=None, contentlist=None, max_tag_order=12, content_count=12, tag_count=30):
       
   271     
   264     no_translate_langs = [ 'fr' ]
   272     no_translate_langs = [ 'fr' ]
   265     
   273     
   266     key_parts = ("filter",lang,periode,label,country,contentlist,max_tag_order,content_count,tag_count)
   274     key_parts = ("filter",lang,periode,label,country,contentlist,max_tag_order,content_count,tag_count)
   267     key_parts = [unicode(p).encode("ascii", "ignore") for p in key_parts]
   275     key_parts = [unicode(p).encode("ascii", "ignore") for p in key_parts]
   268     
   276     
   426                 tag_translations[t['label']] = t['translated_label']
   434                 tag_translations[t['label']] = t['translated_label']
   427         
   435         
   428         output = {'count': cont_count, 'contents': contenus, 'tags':tags, 'sparkline':yearchange, 'countries':countries, 'disciplines':disciplines, 'tagtranslations': tag_translations}
   436         output = {'count': cont_count, 'contents': contenus, 'tags':tags, 'sparkline':yearchange, 'countries':countries, 'disciplines':disciplines, 'tagtranslations': tag_translations}
   429         outputstr = json.dumps(output)
   437         outputstr = json.dumps(output)
   430         cache.set(cache_key, outputstr)
   438         cache.set(cache_key, outputstr)
   431         
   439     
   432     return HttpResponse(content=outputstr, mimetype='application/json')
   440     return outputstr
       
   441     
       
   442 
   433 
   443 
   434 def subtree(tree):
   444 def subtree(tree):
   435     MAX_TAG_ORDER = 16
   445     MAX_TAG_ORDER = 16
   436     label = tree['label']
   446     label = tree['label']
   437     sub = tree.get('contents',[])
   447     sub = tree.get('contents',[])