class PatientSearchForm(forms.Form): name = forms.CharField(label='Name', required=False) village = forms.CharField( widget=widgets.JQueryAutoComplete('/autospel_name/ocemr/Village/'), required=False, ) pid = forms.IntegerField(label='Patient ID#', required=False)
class EditPatientVillageForm(forms.Form): village = forms.CharField( widget=widgets.JQueryAutoComplete('/autospel_name/ocemr/Village/')) def clean_village(self): data = self.cleaned_data['village'] from models import Village v, is_new = Village.objects.get_or_create(name=data) if is_new: v.save() return v
class MergeVillageForm(forms.Form): villageIncorrect = forms.CharField( label="Incorrect Village", widget=widgets.JQueryAutoComplete('/autospel_name/ocemr/Village/')) villageCorrect = forms.CharField( label="Correct Village", widget=widgets.JQueryAutoComplete('/autospel_name/ocemr/Village/')) def clean_villageIncorrect(self): data = self.cleaned_data['villageIncorrect'] from models import Village v, is_new = Village.objects.get_or_create(name=data) if is_new: raise forms.ValidationError( "The Incorrect Village name must exist!") return v def clean_villageCorrect(self): data = self.cleaned_data['villageCorrect'] from models import Village v, is_new = Village.objects.get_or_create(name=data) if is_new: v.save() return v
class NewPatientForm(forms.ModelForm): birthDate = forms.DateField(required=False, widget=widgets.CalendarWidget) village = forms.CharField( widget=widgets.JQueryAutoComplete('/autospel_name/ocemr/Village/')) createdBy = forms.ModelChoiceField(queryset=User.objects.all(), widget=forms.HiddenInput) def __init__(self, user, *args, **kwargs): super(NewPatientForm, self).__init__(*args, **kwargs) #raise(" | ".join(dir(self.fields['createdBy']))) self.fields['createdBy'].initial = user.id class Meta: model = get_model('ocemr', 'Patient') exclude = [ 'createdDateTime', 'status', 'scratchNote', ] def clean_birthYear(self): import datetime MAX_AGE = 160 CURRENT_YEAR = datetime.datetime.now().year data = self.cleaned_data['birthYear'] if data < MAX_AGE: new_data = CURRENT_YEAR - data elif data > (CURRENT_YEAR - MAX_AGE): new_data = data else: raise forms.ValidationError( "Birth Year must be less than %d or greater than %d." % (MAX_AGE, CURRENT_YEAR - MAX_AGE)) return new_data def clean_village(self): data = self.cleaned_data['village'] from models import Village v, is_new = Village.objects.get_or_create(name=data) if is_new: v.save() return v