forms.py 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. from django.utils import timezone
  2. from django import forms
  3. from django.contrib.auth.models import User
  4. from name_extractor.models import Staff
  5. from django.contrib.auth.forms import UserCreationForm
  6. from tempus_dominus.widgets import DatePicker
  7. NOW = timezone.now()
  8. TODAY = NOW.date().strftime('%Y-%m-%d')
  9. ONE_MONTH_BEFORE = (NOW - timezone.timedelta(days=30)).replace(day=NOW.day).date().strftime('%Y-%m-%d')
  10. class UserRegisterForm(UserCreationForm):
  11. email = forms.EmailField()
  12. class Meta:
  13. model = User
  14. fields = ['username', 'email', 'password1', 'password2']
  15. class StaffRegistrationForm(forms.ModelForm):
  16. class Meta:
  17. model = Staff
  18. fields = ['name', 'department', 'nick_names']
  19. class StaffSheetDateForm(forms.Form):
  20. start_date = forms.DateField(
  21. required=True,
  22. widget=DatePicker(
  23. options={
  24. 'minDate': '2012-01-01',
  25. 'maxDate': TODAY,
  26. },
  27. attrs={
  28. 'append': 'fa fa-calendar',
  29. 'icon_toggle': True,
  30. }
  31. ),
  32. initial=ONE_MONTH_BEFORE,
  33. )
  34. end_date = forms.DateField(
  35. required=True,
  36. widget=DatePicker(
  37. options={
  38. 'minDate': '2012-01-01',
  39. 'maxDate': TODAY,
  40. },
  41. attrs={
  42. 'append': 'fa fa-calendar',
  43. 'icon_toggle': True,
  44. }
  45. ),
  46. initial=TODAY,
  47. )