Project

General

Profile

Download (1.15 KB) Statistics
| Branch: | Tag: | Revision:

calebasse / calebasse / dossiers / lookups.py @ 533ce0c8

1

    
2
from ajax_select import LookupChannel
3
from calebasse.dossiers.models import PatientRecord, PatientAddress
4
from django.core.exceptions import PermissionDenied
5

    
6
class PatientRecordLookup(LookupChannel):
7
    model = PatientRecord
8
    search_field = 'display_name'
9

    
10
    def get_query(self,q,request):
11
        qs = super(PatientRecordLookup, self).get_query(q, request)
12
        if request.COOKIES.has_key('home-service'):
13
            service = request.COOKIES['home-service'].upper().replace('-', ' ')
14
            qs = qs.filter(service__name=service)
15
        return qs
16

    
17
    def check_auth(self, request):
18
        if not request.user.is_authenticated():
19
            raise PermissionDenied
20

    
21
class PatientAddressLookup(LookupChannel):
22
    model = PatientAddress
23
    search_field = 'display_name'
24

    
25
    def get_query(self, q, request):
26
        qs = super(PatientAddressLookup, self).get_query(q, request)
27
        if request.session.has_key('patientrecord_id'):
28
            qs = qs.filter(patientcontact__id=request.session['patientrecord_id'])
29
        return qs
30

    
31
    def check_auth(self, request):
32
        if not request.user.is_authenticated():
33
            raise PermissionDenied
(4-4/9)