equal
deleted
inserted
replaced
48 wikipedia_label = resobj['translated_label'] |
48 wikipedia_label = resobj['translated_label'] |
49 else: |
49 else: |
50 wikipedia_label = label |
50 wikipedia_label = label |
51 wikipedia_label = wikipedia_label[0].capitalize() + wikipedia_label[1:] |
51 wikipedia_label = wikipedia_label[0].capitalize() + wikipedia_label[1:] |
52 resobj["wikipedia_url"] = "http://%s.wikipedia.org/wiki/%s" % (request.LANGUAGE_CODE,wikipedia_label.replace(' ', '_')) |
52 resobj["wikipedia_url"] = "http://%s.wikipedia.org/wiki/%s" % (request.LANGUAGE_CODE,wikipedia_label.replace(' ', '_')) |
53 |
53 # We don't use links at the moment, so I'll comment this line to speed up requests |
54 resobj["links"] = [{'subject':tl.subject.label, 'object':tl.object.label} for tl in TagLinks.objects.select_related().filter(Q(subject__label__iexact = label) | Q(object__label__iexact = label))] |
54 # resobj["links"] = [{'subject':tl.subject.label, 'object':tl.object.label} for tl in TagLinks.objects.select_related().filter(Q(subject__label__iexact = label) | Q(object__label__iexact = label))] |
55 |
55 |
56 return HttpResponse(content=json.dumps(resobj), mimetype='application/json') |
56 return HttpResponse(content=json.dumps(resobj), mimetype='application/json') |
57 |
57 |
58 |
58 |
59 def tagtranslation(request): |
59 def tagtranslation(request): |
123 |
123 |
124 |
124 |
125 def tagsearch(request): |
125 def tagsearch(request): |
126 |
126 |
127 q = request.GET.get('term',None) |
127 q = request.GET.get('term',None) |
128 qs = Tag.objects.filter(label__icontains = q) if q else Tag.objects.all() |
128 if q: |
129 res = qs.annotate(nb=Count('datasheet')).order_by('-nb')[:20] |
129 lq = q.lower() |
130 |
130 qs = Tag.objects.filter( Q(label__icontains = q ) | Q(dbpedia_fields__translations__label__icontains = q, dbpedia_fields__translations__language_code=request.LANGUAGE_CODE)) if q else Tag.objects.all() |
131 return HttpResponse(content=json.dumps([{'label':t.label,'nb':t.nb} for t in res]), mimetype='application/json') |
131 qs = qs.annotate(nb=Count('datasheet')).order_by('-nb')[:20] |
|
132 res = [] |
|
133 |
|
134 for t in qs: |
|
135 resobj = {'value':t.label,'nb':t.nb} |
|
136 transqs = DbpediaFieldsTranslation.objects.filter(master__tag = t, language_code=request.LANGUAGE_CODE)[0:1] |
|
137 if transqs: |
|
138 resobj['label'] = transqs.get().label |
|
139 else: |
|
140 resobj['label'] = t.label |
|
141 if q is None or resobj['label'].lower().find(lq) != -1: |
|
142 res.append(resobj) |
|
143 |
|
144 return HttpResponse(content=json.dumps(res), mimetype='application/json') |
132 |
145 |
133 |
146 |
134 def filter(request): |
147 def filter(request): |
135 periode = request.GET.get('period',None) |
148 periode = request.GET.get('period',None) |
136 label = request.GET.get('label', None) |
149 label = request.GET.get('label', None) |