diff options
Diffstat (limited to 'archaeological_operations/views.py')
| -rw-r--r-- | archaeological_operations/views.py | 28 | 
1 files changed, 27 insertions, 1 deletions
| diff --git a/archaeological_operations/views.py b/archaeological_operations/views.py index d6e97b1d9..f48c55f57 100644 --- a/archaeological_operations/views.py +++ b/archaeological_operations/views.py @@ -26,7 +26,7 @@ from django.shortcuts import render_to_response  from django.template.defaultfilters import slugify  from django.utils.translation import ugettext_lazy as _ -from ishtar_common.views import get_item, show_item, revert_item +from ishtar_common.views import get_item, show_item, revert_item, new_item  from ishtar_common.wizards import SearchWizard  from wizards import *  from forms import * @@ -54,6 +54,32 @@ def autocomplete_patriarche(request, non_closed=True):                           for operation in operations])      return HttpResponse(data, mimetype='text/plain') +def autocomplete_archaeologicalsite(request): +    if (not request.user.has_perm( +                      'archaeological_operations.view_archaeologicalsite', +                      models.ArchaeologicalSite) +        and not request.user.has_perm( +                      'archaeological_operations.view_own_archaeologicalsite', +                      models.ArchaeologicalSite)): +        return HttpResponse(mimetype='text/plain') +    if not request.GET.get('term'): +        return HttpResponse(mimetype='text/plain') +    q = request.GET.get('term') +    query = Q() +    for q in q.split(' '): +        qt = Q(reference__icontains=q) | Q(name__icontains=q) +        query = query & qt +    limit = 15 +    sites = models.ArchaeologicalSite.objects.filter(query +                                        ).order_by('reference')[:limit] +    data = json.dumps([{'id':site.pk, +                        'value':unicode(site)[:60]} +                         for site in sites]) +    return HttpResponse(data, mimetype='text/plain') + +new_archaeologicalsite = new_item(models.ArchaeologicalSite, +                                  ArchaeologicalSiteForm) +  def autocomplete_operation(request, non_closed=True):      person_types = request.user.ishtaruser.person.person_type      if (not request.user.has_perm('ishtar_common.view_operation', | 
