You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

forms.py 1.8KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. from django import forms
  2. from django.db.models.loading import get_model
  3. ConditionalOffer = get_model('offer', 'ConditionalOffer')
  4. Condition = get_model('offer', 'Condition')
  5. Benefit = get_model('offer', 'Benefit')
  6. class MetaDataForm(forms.ModelForm):
  7. class Meta:
  8. model = ConditionalOffer
  9. fields = ('name', 'description', 'start_date', 'end_date',)
  10. class ConditionForm(forms.ModelForm):
  11. class Meta:
  12. model = Condition
  13. class BenefitForm(forms.ModelForm):
  14. class Meta:
  15. model = Benefit
  16. class PreviewForm(forms.Form):
  17. pass
  18. class OfferSearchForm(forms.Form):
  19. name = forms.CharField(required=False, label="Offer name")
  20. is_active = forms.BooleanField(required=False)
  21. def o():
  22. product_title = forms.CharField(required=False, label="Product name")
  23. product_id = forms.CharField(required=False, label="Product ID")
  24. status_choices = (('', '---------'),) + tuple([(v, v) for v in Order.all_statuses()])
  25. status = forms.ChoiceField(choices=status_choices, label="Status", required=False)
  26. date_formats = ('%d/%m/%Y',)
  27. date_from = forms.DateField(required=False, label="Date from", input_formats=date_formats)
  28. date_to = forms.DateField(required=False, label="Date to", input_formats=date_formats)
  29. voucher = forms.CharField(required=False, label="Voucher code")
  30. method_choices = (('', '---------'),) + tuple([(src.code, src.name) for src in SourceType.objects.all()])
  31. payment_method = forms.ChoiceField(label="Payment method", required=False,
  32. choices=method_choices)
  33. format_choices = (('html', 'HTML'),
  34. ('csv', 'CSV'),)
  35. response_format = forms.ChoiceField(widget=forms.RadioSelect,
  36. choices=format_choices, initial='html', label="Get results as")