calebasse/calebasse/dossiers/lookups.py @ bb269b6a
| 4376fbf4 | Jérôme Schneider | ||
from ajax_select import LookupChannel
|
|||
| 677c2c8d | Jérôme Schneider | from calebasse.dossiers.models import PatientRecord, PatientAddress
|
|
| 533ce0c8 | Benjamin Dauvergne | from django.core.exceptions import PermissionDenied
|
|
| 4376fbf4 | Jérôme Schneider | ||
class PatientRecordLookup(LookupChannel):
|
|||
model = PatientRecord
|
|||
search_field = 'display_name'
|
|||
def get_query(self,q,request):
|
|||
qs = super(PatientRecordLookup, self).get_query(q, request)
|
|||
if request.COOKIES.has_key('home-service'):
|
|||
| 8f89c608 | Jérôme Schneider | service = request.COOKIES['home-service'].upper().replace('-', ' ')
|
|
| 4376fbf4 | Jérôme Schneider | qs = qs.filter(service__name=service)
|
|
return qs
|
|||
| cffbd8a2 | Jérôme Schneider | def get_result(self,obj):
|
|
if obj.paper_id:
|
|||
return obj.display_name + u' (' + obj.paper_id + u')'
|
|||
else:
|
|||
return obj.display_name
|
|||
| 533ce0c8 | Benjamin Dauvergne | def check_auth(self, request):
|
|
if not request.user.is_authenticated():
|
|||
raise PermissionDenied
|
|||
| 677c2c8d | Jérôme Schneider | ||
class PatientAddressLookup(LookupChannel):
|
|||
model = PatientAddress
|
|||
search_field = 'display_name'
|
|||
def get_query(self, q, request):
|
|||
qs = super(PatientAddressLookup, self).get_query(q, request)
|
|||
if request.session.has_key('patientrecord_id'):
|
|||
qs = qs.filter(patientcontact__id=request.session['patientrecord_id'])
|
|||
return qs
|
|||
| 533ce0c8 | Benjamin Dauvergne | ||
def check_auth(self, request):
|
|||
if not request.user.is_authenticated():
|
|||
raise PermissionDenied
|