diff options
author | Étienne Loks <etienne.loks@iggdrasil.net> | 2018-11-29 19:34:31 +0100 |
---|---|---|
committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2018-11-29 19:34:31 +0100 |
commit | afd7fb9c2be01a44a45f582eebdf02632a10be99 (patch) | |
tree | 05cdd1da4246ddb4e3e8b69c9a968f3e0d14d7b9 /ishtar_common/views.py | |
parent | c0c093276dec2a34c5702711e3c3147b98ca4df8 (diff) | |
download | Ishtar-afd7fb9c2be01a44a45f582eebdf02632a10be99.tar.bz2 Ishtar-afd7fb9c2be01a44a45f582eebdf02632a10be99.zip |
Basket: manage basket share (ro and edit) - manage alt query own
Diffstat (limited to 'ishtar_common/views.py')
-rw-r--r-- | ishtar_common/views.py | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/ishtar_common/views.py b/ishtar_common/views.py index 3d64535d4..bc9c9432a 100644 --- a/ishtar_common/views.py +++ b/ishtar_common/views.py @@ -527,6 +527,29 @@ def autocomplete_user(request): return HttpResponse(data, content_type='text/plain') +def autocomplete_ishtaruser(request): + if not request.user.has_perm('ishtar_common.view_person', models.Person): + return HttpResponse('[]', content_type='text/plain') + q = request.GET.get('term') + limit = request.GET.get('limit', 20) + try: + limit = int(limit) + except ValueError: + return HttpResponseBadRequest() + query = Q() + for q in q.split(' '): + qu = (Q(person__name__icontains=q) | + Q(person__surname__icontains=q) | + Q(person__raw_name__icontains=q)) + query = query & qu + users = models.IshtarUser.objects.filter(query)[:limit] + data = json.dumps([ + {'id': user.pk, + 'value': unicode(user)} + for user in users]) + return HttpResponse(data, content_type='text/plain') + + def autocomplete_person(request, person_types=None, attached_to=None, is_ishtar_user=None, permissive=False): all_items = request.user.has_perm('ishtar_common.view_person', |