forms.py 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153
  1. from django import forms
  2. from config.views import getConfig
  3. from utente.models import Utente
  4. from amministratore.models import Amministratore
  5. class formUtente(forms.Form):
  6. def __init__(self,*args,**kwargs):
  7. forms.Form.__init__(self,*args,**kwargs)
  8. self.fields['codicefiscale'] = forms.CharField(required=True)
  9. self.fields['nome'] = forms.CharField(required=True)
  10. self.fields['datanascita'] = forms.DateField(required=False) #,input_formats=['%d/%m/%Y',])
  11. self.fields['luogonascita'] = forms.CharField(required=False)
  12. self.fields['mail'] = forms.CharField(required=False)
  13. self.fields['cancellautente'] = forms.BooleanField(required=False)
  14. self.fields['pin'] = forms.CharField(required=True)
  15. self.fields['forzanuovapassword'] = forms.BooleanField(required=False)
  16. self.fields['cambiopassword'] = forms.BooleanField(required=False)
  17. self.fields['forzanuovapassword'] = forms.BooleanField(required=False)
  18. self.fields['otppassword'] = forms.BooleanField(required=False)
  19. self.fields['sede'] = forms.IntegerField(required=False)
  20. self.fields['enabled'] = forms.BooleanField(required=False)
  21. class formCerca(forms.Form):
  22. def __init__(self,*args,**kwargs):
  23. forms.Form.__init__(self,*args,**kwargs)
  24. self.fields['valoredacercare'] = forms.CharField(required=False)
  25. class formPinMail(forms.Form):
  26. def __init__(self,*args,**kwargs):
  27. forms.Form.__init__(self,*args,**kwargs)
  28. self.fields['mail'] = forms.CharField(required=False)
  29. self.fields['pin'] = forms.CharField(required=True)
  30. class formUpdatePasswordPrimoLogin(forms.Form):
  31. def __init__(self,*args,**kwargs):
  32. forms.Form.__init__(self,*args,**kwargs)
  33. self.fields['cfisc'] = forms.CharField(required=True)
  34. self.fields['uuid'] = forms.CharField(required=True)
  35. self.fields['pin0'] = forms.CharField(required=True)
  36. self.fields['pin1'] = forms.CharField(required=True)
  37. self.fields['pin2'] = forms.CharField(required=True)
  38. self.fields['lostpin'] = forms.CharField(required=False)
  39. def clean_pin1(self):
  40. print(dir(self))
  41. # validazione password
  42. if self.data['pin1'] != self.data['pin2']:
  43. # password non corrispondente
  44. raise forms.ValidationError("Le due password devono essere uguali")
  45. # nome uguale a login
  46. raise forms.ValidationError("La password non puo' essere uguale al login")
  47. if len(self.data['pin1']) < int(getConfig('PasswordMin')):
  48. # lunghezza minima della password
  49. raise forms.ValidationError("Password troppo corta")
  50. return self.data['pin1']
  51. class formUpdatePasswordLogin(forms.Form):
  52. def __init__(self,*args,**kwargs):
  53. forms.Form.__init__(self,*args,**kwargs)
  54. self.fields['uuid'] = forms.CharField(required=True)
  55. self.fields['pin1'] = forms.CharField(required=True)
  56. self.fields['pin2'] = forms.CharField(required=True)
  57. def clean_pin1(self):
  58. a = None
  59. d = None
  60. # 1 tentativo su utente
  61. try:
  62. a = Utente.objects.get(uuid=self.data['uuid'])
  63. d = 'u'
  64. except Utente.DoesNotExist as dne:
  65. print('informazione non trovata tra gli utenti')
  66. try:
  67. a = Amministratore.objects.get(uuid=self.data['uuid'])
  68. d = 'a'
  69. except Amministratore.DoesNotExist as dne:
  70. print('informazione non trovata tra i login amministratotore')
  71. if not a:
  72. raise forms.ValidationError("UUID Non Validato")
  73. # validazione password
  74. if self.data['pin1'] != self.data['pin2']:
  75. # password non corrispondente
  76. raise forms.ValidationError("Le due password devono essere uguali")
  77. if len(self.data['pin1']) < int(getConfig('PasswordMin')):
  78. # lunghezza minima della password
  79. raise forms.ValidationError("Password troppo corta")
  80. return self.data['pin1']
  81. def clean_uuid(self):
  82. a = None
  83. d = None
  84. # 1 tentativo su utente
  85. try:
  86. a = Utente.objects.get(uuid=self.data['uuid'])
  87. d = 'u'
  88. except Utente.DoesNotExist as dne:
  89. print('informazione non trovata tra gli utenti')
  90. try:
  91. a = Amministratore.objects.get(uuid=self.data['uuid'])
  92. d = 'a'
  93. except Amministratore.DoesNotExist as dne:
  94. print('informazione non trovata tra i login amministratotore')
  95. if not a:
  96. raise forms.ValidationError("UUID Non Validato")
  97. else:
  98. if a.uuid == self.data['uuid']:
  99. return self.data['uuid']
  100. raise forms.ValidationError("UUID non valido o scaduto")
  101. class formElementiDownload(forms.Form):
  102. def __init__(self,*args,lista=[],**kwargs):
  103. forms.Form.__init__(self,*args,**kwargs)
  104. self.fields['MultipleDocumentSelect'] = forms.MultipleChoiceField(required=False,widget=forms.CheckboxSelectMultiple(),choices=self.c(lista))
  105. def c(self,lista):
  106. print(len(lista))
  107. choices = list()
  108. for u in lista:
  109. choices.append((u.id,u.id),)
  110. print('choices',len(choices))
  111. return choices
  112. class formCancellaUtente(forms.Form):
  113. def __init__(self,*args,**kwargs):
  114. forms.Form.__init__(self,*args,**kwargs)
  115. self.fields['ConfermaCancellazioneUtente'] = forms.BooleanField(required=False,initial=False)
  116. class formIndiceUpload(forms.Form):
  117. def __init__(self,*args,**kwargs):
  118. forms.Form.__init__(self,*args,**kwargs)
  119. self.fields['indice'] = forms.FileField(required=True,initial='')
  120. class formMultipleCheckBoxCSVDOC(forms.Form):
  121. def __init__(self,*args,lista=[],**kwargs):
  122. forms.Form.__init__(self,*args,**kwargs)
  123. self.fields['MultipleCSVSelect'] = forms.MultipleChoiceField(required=False,widget=forms.CheckboxSelectMultiple(),choices=self.c(lista))
  124. def c(self,lista):
  125. print(len(lista))
  126. choices = list()
  127. for u in lista:
  128. choices.append((u.id,u.id),)
  129. print('choices',len(choices))
  130. return choices