class Meta: model = Quiz widgets = {'start': widgets.DateTimePicker(options={"format": "YYYY-MM-DD HH:mm:ss"}), 'end': widgets.DateTimePicker(options={"format": "YYYY-MM-DD HH:mm:ss"}) } exclude = ['owner', 'players', 'status', 'tags']
class Meta: model = Quest widgets = { 'start': widgets.DateTimePicker(options={"format": "YYYY-MM-DD HH:mm:ss"}), 'end': widgets.DateTimePicker(options={"format": "YYYY-MM-DD HH:mm:ss"}) } exclude = ( 'order', 'registered', )
class ReceiptForm(forms.ModelForm): datetime = forms.DateTimeField( input_formats=['%Y-%m-%d %I:%M %p'], widget=bs3_widgets.DateTimePicker( options={"format": "YYYY-MM-DD hh:mm a"}, attrs={ "class": "form-control", # am/pm -> AM/PM "style": "text-transform: uppercase; float: none;" }, div_attrs={ 'class': 'input-group', } ) ) class Meta: model = clients_models.Receipt exclude = ['claim'] def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) self.fields['MID'].help_text = \ 'Ex. 8027813602' self.fields['TID'].help_text = \ 'Ex. 0089250008027813602107' self.fields['REF'].help_text = \ 'Ex. 00000001' self.fields['batch'].help_text = \ 'Ex. 138' self.fields['RRN'].help_text = \ 'Ex. 00046752128 (for DEBIT)' self.fields['APPR'].help_text = \ 'Ex. 035787' self.fields['trace'].help_text = \ 'Ex. 1' self.fields['card_number'].help_text = \ 'Ex. 1234' self.fields['AID'].help_text = \ 'Ex. A0000000031010 (for CHIP)' self.fields['TVR'].help_text = \ 'Ex. 00 80 00 80 00 (for CHIP)' self.fields['TSI'].help_text = \ 'Ex. F8 00 (for CHIP)'
class ClaimForm(forms.ModelForm): submitted_datetime = forms.DateTimeField( label="Submitted Datetime", input_formats=['%Y-%m-%d %I:%M %p'], widget=bs3_widgets.DateTimePicker( options={"format": "YYYY-MM-DD hh:mm a"}, attrs={ "class": "form-control", # am/pm -> AM/PM "style": "text-transform: uppercase; float: none;" }, div_attrs={ 'class': 'input-group', } ) ) claim_package = utils_fields.MultiFileField( label="Claim Package", required=False, max_file_size=7.0 * 1024 * 1024, # mb*kb*b help_text=( 'Hold Ctrl (on Windows) or Cmd (on a Mac) to select multiple files' ) ) class Meta: model = models.Claim exclude = ('coverages',) def __init__(self, *args, **kwargs): client_id = kwargs.pop('client_id', None) if not client_id: if 'instance' not in kwargs: raise Exception( 'Please provide a client_id kwarg or provide an instance' ) client_id = kwargs.get('instance').patient.get_client().id client = models.Client.objects.get(id=client_id) super().__init__(*args, **kwargs) file_list = [ claim_attachment.attachment for claim_attachment in self.instance.claimattachment_set.all() ] files = kwargs.get('files', None) if files: # value can be set to None # temp files (UploadedFile) require attr url to be displayed for key in files: if 'claim_package' == key: _file_list = files.get(key) for _file in _file_list: # /media/temp/ (from CreateClaimWizard.file_storage) _file.url = '/media/temp/' + _file.name file_list.append(_file) claim_package = self.fields['claim_package'] claim_package.widget = \ utils_widgets.ConfirmClearableMultiFileMultiWidget( form_id="claim_form", # html form=self, field_name='claim_package', file_count=len(file_list) ) self.initial['claim_package'] = file_list self.client = client patients = [] spouse = None for dependent in client.dependent_set.all(): if dependent.relationship == models.Dependent.SPOUSE: spouse = dependent.id patients.append(dependent.id) patients.append(client.id) patient = self.fields['patient'] patient.queryset = models.Person.objects.filter(id__in=patients) patient.label_from_instance = ( lambda obj: "Client - %s" % obj.full_name() if obj.id == client.id else "Spouse - %s" % obj.full_name() if obj.id == spouse else "Child - %s" % obj.full_name() ) insurance = self.fields['insurance'] insurance.queryset = models.Insurance.objects.filter( main_claimant__pk__in=patients) insurance.label_from_instance = ( lambda obj: "%s - Spouse - %s" % ( obj.provider, obj.main_claimant.full_name() ) if obj.main_claimant.pk == spouse else "%s - Client - %s" % ( obj.provider, obj.main_claimant.full_name()) ) insurance.widget.attrs['class'] = 'insurance_trigger'