src/jocondelab/views/front_office.py
changeset 185 373b9af60d65
parent 176 aa4d01f2adb7
child 195 0b189e9c7b68
equal deleted inserted replaced
184:d9cd6f19850e 185:373b9af60d65
    62         querystr = request.GET.get('q', "")
    62         querystr = request.GET.get('q', "")
    63         is_ajax = request.is_ajax()
    63         is_ajax = request.is_ajax()
    64         queryterms = [s.strip(" ") for s in querystr.split(";") if s.strip(" ")]
    64         queryterms = [s.strip(" ") for s in querystr.split(";") if s.strip(" ")]
    65         dbpedia_uri = request.GET.get('dbpedia_uri', "")
    65         dbpedia_uri = request.GET.get('dbpedia_uri', "")
    66         dbpedia_uris = [s.strip(" ") for s in dbpedia_uri.split(";") if s.strip(" ")]
    66         dbpedia_uris = [s.strip(" ") for s in dbpedia_uri.split(";") if s.strip(" ")]
       
    67         thesaurus = request.GET.get('thesaurus', None)
    67         from_year = request.GET.get('from_year', None)
    68         from_year = request.GET.get('from_year', None)
    68         to_year = request.GET.get('to_year', from_year)
    69         to_year = request.GET.get('to_year', from_year)
    69         show_years = request.GET.get('show_years',False)
    70         show_years = request.GET.get('show_years',False)
    70         emptysearch = ((not queryterms) and (not dbpedia_uri) and (not from_year))
    71         emptysearch = ((not queryterms) and (not dbpedia_uri) and (not from_year))
    71         npp = request.GET.get('count', 12 if emptysearch else 30)
    72         npp = request.GET.get('count', 12 if emptysearch else 30)
   116                         uri_cache[firstres.label.lower()] = firstres.dbpedia_uri
   117                         uri_cache[firstres.label.lower()] = firstres.dbpedia_uri
   117                         if i == 0 and page == 1 and len(dbpedia_uris) == 1:
   118                         if i == 0 and page == 1 and len(dbpedia_uris) == 1:
   118                             context["wkinfo"] = firstres
   119                             context["wkinfo"] = firstres
   119                     fs = fs.values('term_id').distinct()
   120                     fs = fs.values('term_id').distinct()
   120                     qs = qs.filter(noticeterm__term__in=fs)
   121                     qs = qs.filter(noticeterm__term__in=fs)
       
   122                     if thesaurus:
       
   123                         if thesaurus == 'REPR':
       
   124                             qs = qs.filter(noticeterm__term__thesaurus__label__in=['REPR','SREP'])
       
   125                         else:
       
   126                             qs = qs.filter(noticeterm__term__thesaurus__label=thesaurus)
   121             elif queryterms:
   127             elif queryterms:
   122                 searchterms = queryterms
   128                 searchterms = queryterms
   123                 queryobj = {'q': querystr}
   129                 queryobj = {'q': querystr}
   124                 for i, term in enumerate(queryterms):
   130                 for i, term in enumerate(queryterms):
   125                     fs = DbpediaFields.objects.filter(label=term, language_code=lang)
   131                     fs = DbpediaFields.objects.filter(label=term, language_code=lang)