diff options
Diffstat (limited to 'ishtar/furnitures/views.py')
| -rw-r--r-- | ishtar/furnitures/views.py | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/ishtar/furnitures/views.py b/ishtar/furnitures/views.py index f5bc8b5e4..03029cfe4 100644 --- a/ishtar/furnitures/views.py +++ b/ishtar/furnitures/views.py @@ -142,7 +142,7 @@ def autocomplete_operation(request, non_closed=True): for operation in operations]) return HttpResponse(data, mimetype='text/plain') -def autocomplete_organization(request): +def autocomplete_organization(request, orga_type=None): if not request.GET.get('term'): return HttpResponse(mimetype='text/plain') q = request.GET.get('term') @@ -150,6 +150,13 @@ def autocomplete_organization(request): for q in q.split(' '): extra = Q(name__icontains=q) query = query & extra + if orga_type: + try: + typs = [int(tp) for tp in orga_type.split('_') if tp] + typ = models.OrganizationType.objects.filter(pk__in=typs).all() + query = query & Q(organization_type__in=typ) + except (ValueError, ObjectDoesNotExist): + pass limit = 15 organizations = models.Organization.objects.filter(query)[:limit] data = json.dumps([{'id':org.pk, 'value':unicode(org)} |
