
    ug                        d dl mZ d dlmZ d dlmZmZ d dlmZ d dl	m
Z
 d dlmZ d dlmZ d dlmZmZmZmZmZ  G d	 d
e      Z G d dej.                        Z G d dej.                        Z ej4                  eedd      Z G d dej.                        Z ej4                  eedd      Z G d dej.                        Z G d dej.                        Z G d dej.                        Z  G d dejB                        Z" G d dej.                        Z# G d dejB                        Z$ G d  d!ejB                        Z%y")#    )forms)password_validation)PasswordResetFormSetPasswordForm)ValidationError)	FileInput)RegistrationForm)gettext)ProfileQualificationWorkExperienceReviewUserActivationCodec                   Z    e Zd Z ej                  dd ej
                               Zd Zy)	MyRegForm   F)
max_lengthrequiredwidgetc                 B    | j                   d   }|| j                   d<   |S )Nemailusername)cleaned_data)selfr   s     8/var/www/peopleoo.sandbox-dev.co.uk/apps/carers/forms.pyclean_emailzMyRegForm.clean_email   s'    !!'*(-*%    N)__name__
__module____qualname__r   	CharFieldHiddenInputr   r    r   r   r   r      s'    u#FWeFWFWFYZHr   r   c                       e Zd Z ej                  dd      Z ej                  dd      Z ej                  dd      Z ej                  dd      Z ej                  dd      Z
 G d	 d
      Zy)SetUpFlowOneFormzYour First NameT)labelr   zMiddle Name(s)FzYour Last Namez3Where do you work (Care home name or Company name)?zjWould you like to automatically notify your employer when you get a compliment? 
Enter their email if yes.c                   2    e Zd ZeZg dZd eddi      iZy)SetUpFlowOneForm.Meta)
first_namemiddle_names	last_namepreferred_nameemployer_nameemployer_emailavatarenabled_privacy_moder/   acceptzimage/*attrsN)r   r   r    r   modelfieldsr   widgetsr#   r   r   Metar(      s%     Uix&;<
r   r7   N)r   r   r    r   r!   r)   r*   r+   r-   
EmailFieldr.   r7   r#   r   r   r%   r%      sv     '84HJ"5??)9EJL&6FI#EOO*_jopM%U%%{  GLMN
 
r   r%   c                   >     e Zd Z G d d      Z fdZd fd	Z xZS )QualificationFormc                       e Zd ZeZdgZddiZy)QualificationForm.MetanamezQualification NameN)r   r   r    r   r4   r5   labelsr#   r   r   r7   r<   '   s     (
r   r7   c                 R    |j                  dd       | _        t        |   |i | y NuserpoprA   super__init__r   argskwargs	__class__s      r   rE   zQualificationForm.__init__/   '    JJvt,	$)&)r   c                 n    t         |   d      }| j                  |_        |r|j                          |S NFcommitrD   saverA   )r   rN   qualificationrI   s      r   rP   zQualificationForm.save3   s4    E2!YY r   Tr   r   r    r7   rE   rP   __classcell__rI   s   @r   r:   r:   &   s    
 
* r   r:   )r=      )formr5   extrac                   >     e Zd Z G d d      Z fdZd fd	Z xZS )WorkExperienceFormc                       e Zd ZeZdgZddiZy)WorkExperienceForm.Metar=   z%Where did you work / what did you do?N)r   r   r    r   r4   r5   r>   r#   r   r   r7   r\   D   s     ;
r   r7   c                 R    |j                  dd       | _        t        |   |i | y r@   rB   rF   s      r   rE   zWorkExperienceForm.__init__L   rJ   r   c                 n    t         |   d      }| j                  |_        |r|j                          |S rL   rO   )r   rN   
experiencerI   s      r   rP   zWorkExperienceForm.saveP   s1    W\\/
))
OOr   rR   rS   rU   s   @r   rZ   rZ   C   s    
 
* r   rZ   c                        e Zd Z G d d      Zy)HobbiesFormc                       e Zd ZeZdgZddiZy)HobbiesForm.MetahobbieszYour hobbiesNr   r   r    r   r4   r5   r>   r#   r   r   r7   rc   a   s    ~
r   r7   Nr   r   r    r7   r#   r   r   ra   ra   `       
 
r   ra   c                        e Zd Z G d d      Zy)ExtraInfoFormc                       e Zd ZeZdgZddiZy)ExtraInfoForm.Meta
extra_textz	About YouNre   r#   r   r   r7   rk   j   s    +
r   r7   Nrf   r#   r   r   ri   ri   i   rg   r   ri   c                   |     e Zd Z ej                  d ej
                         d      Z G d d      Zd fd	Z xZ	S )
AvatarFormTF)initialr   r   c                   F    e Zd ZeZddgZddiZd ej                         iZ	y)AvatarForm.Metar/   has_completed_setupzUpload an imageN)
r   r   r    r   r4   r5   r>   r   r"   r6   r#   r   r   r7   rq   z   s9    12'

 "#45#4#4#6
r   r7   c                 Z    t         |   d      }d|_        |r|j                          |S )NFrM   T)rD   rP   rr   )r   rN   instancerI   s      r   rP   zAvatarForm.save   s,    7<u<-'+$MMOr   rR   )
r   r   r    r   BooleanFieldr"   rr   r7   rP   rT   rU   s   @r   rn   rn   r   s>    ,%,, u  "	
 	
 r   rn   c                   2    e Zd Z ej                  d      Zy)CarerSearchFormT)r   N)r   r   r    r   r!   searchr#   r   r   rw   rw      s    U__d+Fr   rw   c                   2     e Zd Z G d d      Z fdZ xZS )
ReviewFormc                   f    e Zd ZeZg dZ ej                          ej                  ddi      dZ	y)ReviewForm.Meta)	ratingtextreviewer_namereviewer_first_namereviewer_last_namereviewer_phonereviewer_emailrelationship_to_userdisplay_initials_onlyrows   r2   )r}   r~   N)
r   r   r    r   r4   r5   r   r"   Textarear6   r#   r   r   r7   r|      s6     w'e'')"ENN&!5
r   r7   c                 t    t        |   |i | d| j                  d   _        d| j                  d   _        y )NTr   r   )rD   rE   r5   r   rF   s      r   rE   zReviewForm.__init__   s9    $)&)6:)*359()2r   )r   r   r    r7   rE   rT   rU   s   @r   rz   rz      s    
 
: :r   rz   c                   .    e Zd Z ej                         Zy)FileUploadFormN)r   r   r    r   	FileFieldfiler#   r   r   r   r      s    5??Dr   r   c                   L   e Zd ZdZ ej
                   ej                               Zd ed      iZ	 ej                   ed       ej                  ddi      d	 ej                         
      Z ej                   ed      d	 ej                  ddi            Zd Zd Zy)ActivationPasswordFormzN
    A form that lets a user set their password and activate the account.
    )r   password_mismatchu'   The two password fields didn’t match.zNew passwordautocompleteznew-passwordr2   F)r&   r   strip	help_textzNew password confirmation)r&   r   r   c                     | j                   j                  d      }| j                   j                  d      }|r!|r||k7  rt        | j                  d   d      t	        j
                  |       |S )Nnew_password1new_password2r   )code)r   getr   error_messagesr   validate_password)r   	password1	password2s      r   clean_new_password2z*ActivationPasswordForm.clean_new_password2   so    %%))/:	%%))/:	yI'=!##$78(  	--i8r   c                     | j                   d   }t        j                  j                  |      j	                         r|S t        d      )Nuuid)r   zInvalid UUID)r   r   objectsfilterexistsr   )r   datas     r   
clean_uuidz!ActivationPasswordForm.clean_uuid   sB      (%%,,$,7>>@K!.11r   N)r   r   r    __doc__r   	UUIDFieldr"   r   _r   r!   PasswordInputr   "password_validators_help_text_htmlr   r   r   r   r#   r   r   r   r      s     5??"3%"3"3"56D 	QHIN $EOO"u""..)IJH%HHJ	M $EOO+,"u""..)IJM	2r   r   N)&djangor   django.contrib.authr   django.contrib.auth.formsr   r   django.core.exceptionsr   django.forms.widgetsr   registration.formsr	   django.utils.translationr
   r   apps.carers.modelsr   r   r   r   r   r   	ModelFormr%   r:   modelformset_factoryQualificationFormSetrZ   WorkExperienceFormSetra   ri   rn   Formrw   rz   r   r   r#   r   r   <module>r      s    3 H 2 * / 1 b a  
u 
  * 2u11	
	  * 322	
	 
%// 

EOO 
 6,ejj ,: : UZZ 
&2UZZ &2r   