Ë
    5åjÑ.  ã                   óD  — d Z ddlmZmZmZ ddlmZ ddlmZm	Z	 ddl
mZ  G d„ de«      Z G d	„ d
ee«      Z G d„ dej                  «      Z G d„ dej                  «      Z G d„ dej                  «      Z G d„ dej                  «      Z G d„ dej                  «      Zy)u¦   
app_nutzer/models.py

Models for persons (app users) and tenancy contracts.
Migrated from:
  app/Models/User.php     â†’ User
  app/Models/ReuMietV.php â†’ ReuMietV
é    )ÚAbstractBaseUserÚBaseUserManagerÚPermissionsMixin)Úmodels)Ú
RealEstateÚRealEstateUnité   )ÚANREDENc                   ó   — e Zd Zdd„Zdd„Zy)ÚUserManagerNc                 óÄ   — |st        d«      ‚| j                  |«      } | j                  dd|i|¤Ž}|j                  |«       |j	                  | j
                  ¬«       |S )Nz E-Mail-Adresse ist erforderlich.Úemail)Úusing© )Ú
ValueErrorÚnormalize_emailÚmodelÚset_passwordÚsaveÚ_db)Úselfr   ÚpasswordÚextra_fieldsÚusers        ú*/var/www/html/vportal/app_nutzer/models.pyÚcreate_userzUserManager.create_user   s^   € ÙÜÐ?Ó@Ð@Ø×$Ñ$ UÓ+ˆØˆt�z‰zÑ6 Ð6¨Ñ6ˆØ×Ñ˜(Ô#Ø�	‰	˜Ÿ™ˆ	Ô!Øˆó    c                 ór   — |j                  dd«       |j                  dd«        | j                  ||fi |¤ŽS )NÚis_staffTÚis_superuser)Ú
setdefaultr   )r   Úusernamer   r   s       r   Úcreate_superuserzUserManager.create_superuser   s<   € Ø×Ñ 
¨DÔ1Ø×Ñ °Ô5Øˆt×Ñ ¨(ÑC°lÑCÐCr   ©N)Ú__name__Ú
__module__Ú__qualname__r   r#   r   r   r   r   r      s   „ óôDr   r   c                   ó@  — e Zd Z ej                  dd¬«      Z ej                  ddd¬«      Z ej                  ddd¬«      Z ej                  ddd¬«      Z	 ej                  d¬«      Z ej                  ddd¬«      Z ej                  dd¬	«      Z ej                  ddd¬«      Z ej                  ddd¬«      Z ej"                  dd¬
«      Z ej&                  ddd¬«      Z ej                  ddd¬«      Z ej&                  dd¬	«      Z ej                  ddd¬«      Z ej0                  d¬«      Z ej0                  d¬«      Z ej&                  dd¬«      Z ej&                  dd¬«      ZdZg Z e«       Z  G d„ d«      Z!de"fd„Z#e$de"fd„«       Z%d„ Z&d„ Z'y)ÚUserTÚPersID©Úprimary_keyÚverbose_nameéÿ   )Ú
max_lengthÚblankÚnull)Úuniquer   )Údefaultr1   r0   ©r1   r0   )r0   r1   zLetzte Anmeldung©r1   r0   r-   é-   )r/   r1   r0   éd   ©r3   F©Úauto_now_addr1   ©Úauto_nowr1   r   c                   ó   — e Zd ZdZdZdZy)ú	User.MetaÚusersÚNutzerN©r%   r&   r'   Údb_tabler-   Úverbose_name_pluralr   r   r   ÚMetar>   A   s   „ ØˆØˆØ&Ñr   rD   Úreturnc                 ó®  — | j                   €t        d«      ‚| j                   }|t        j                  t        j                  fv r7| j
                  r| j
                  › d| j                  › �S | j                  xs dS |t        j                  t        j                  t        j                  fv r| j
                  xs dS |t        j                  t        j                  fv r| j                  xs dS |t        j                  k(  rd| j                  › �S |t        j                  k(  rd| j                  › �S |t        j                  k(  rt| j
                  rY| j
                  j!                  d«      }t#        |«      dkD  r|d   nd}t#        |«      dkD  r|d   nd}|› d	|› d| j                  › �S d
| j                  › �S |t        j$                  t        j&                  t        j(                  fv rn| j                  rS| j                  j!                  d«      \  }}|j!                  d«      \  }}|j!                  d«      \  }}|› d|› d	|› d|› �S d| j                  › �S |t        j*                  t        j,                  t        j.                  fv r| j0                  › d| j                  › �S |t        j2                  k(  rd| j                  › �S t5        d|› d�«      ‚)Nz#Keine Salutation/Anrede hinterlegt!ú Ú zWEG zWG ú|r   r	   ú u. z	Eheleute ú;zDatensatz fehlerhaft zErbengemeinschaft zBitte Salutation z implementieren)ÚSalutationIDr   r
   ÚHERR_PER_SIEÚFRAU_PER_SIEÚ	firstnameÚlastnameÚHERR_PER_DUÚFRAU_PER_DUÚNAT_PERSON_PER_DUÚFIRMAÚGENOSSENSCHAFTÚcompanynameÚWEGÚ
WG_NEUTRALÚEHELEUTE_W_MÚsplitÚlenÚWG_W_MÚWG_W_WÚWG_M_MÚFREIINÚFREIFRAUÚFREIHERRÚSaAnredeÚERBENGEMEINSCHAFTÚNotImplementedError)	r   ÚsidÚpartsÚvn1Úvn2Úp1Úp2Únn1Únn2s	            r   Úget_namezUser.get_nameH   s‰  € Ø×ÑÐ$ÜÐBÓCÐCà×Ñˆà”7×'Ñ'¬×)=Ñ)=Ð>Ñ>Ø�~Š~ØŸ.™.Ð)¨¨4¯=©=¨/Ð:Ð:Ø—=‘=Ò& BÐ&à”W×(Ñ(¬'×*=Ñ*=¼w×?XÑ?XÐYÑYØ—>‘>Ò' RÐ'à”W—]‘]¤G×$:Ñ$:Ð;Ñ;Ø×#Ñ#Ò) rÐ)à”G—K‘KÒØ˜$×*Ñ*Ð+Ð,Ð,à”G×&Ñ&Ò&Ø˜×)Ñ)Ð*Ð+Ð+à”G×(Ñ(Ò(Ø�~Š~ØŸ™×,Ñ,¨SÓ1�Ü"% e£*¨q¢.�e˜A’h°b�Ü"% e£*¨q¢.�e˜A’h°b�Ø˜˜d 3 % q¨¯©¨Ð8Ð8Ø˜tŸ}™}˜oÐ.Ð.à”W—^‘^¤W§^¡^´W·^±^ÐDÑDØ×ÒØ×+Ñ+×1Ñ1°#Ó6‘��BØŸ8™8 C›=‘��SØŸ8™8 C›=‘��SØ˜˜a ˜u D¨¨¨Q¨s¨eÐ4Ð4Ø*¨4×+;Ñ+;Ð*<Ð=Ð=à”W—^‘^¤W×%5Ñ%5´w×7GÑ7GÐHÑHØ—m‘m�_ A d§m¡m _Ð5Ð5à”G×-Ñ-Ò-Ø'¨×(8Ñ(8Ð'9Ð:Ð:ô &Ð(9¸#¸¸oÐ&NÓOÐOr   c                 ó"   — | j                  «       S r$   )rm   ©r   s    r   ÚfullNamezUser.fullNamex   s   € à�}‰}‹Ðr   c                 óþ  — | j                   }|dv r%| j                  xs d› d| j                  xs d› �}�n­|dk(  r| j                  xs d}�n–|dk(  r�| j                  r`| j                  j                  d«      }t        |«      dkD  r|d   nd}t        |«      dkD  r|d   nd}d	|› d
|› d| j                  xs d› �}�n%d	| j                  xs d› �}�n|dv rÑ| j                  xs d}	 |j                  d«      }|d   j                  d«      d   }|d   j                  d«      d   }|d   j                  d«      d   }|d   j                  d«      d   }| j                  xs d}	|	j                  d|«      j                  d|«      j                  d|«      j                  d|«      }n;|dv r5| j                  xs d› d| j                  xs d› d| j                  xs d› �}nd}d|› �S # t        t        f$ r |}Y Œw xY w)z‡
        Migrated from MietVController::getNameForBriefkopf().
        Returns the salutation name for correspondence headers.
        )r	   é   é   é   rH   rG   é
   é   rI   r   r	   z	Eheleute
rJ   )é   é   rK   z#NN1z#NN2z#VN2z#VN1)é   é   é   )rL   rb   rP   rV   rO   rZ   r[   ÚSaBriefkopfÚreplaceÚ
IndexErrorÚAttributeErrorÚSaAnschrift)
r   re   Únamerf   rg   rh   Úcnrk   rl   Útemplates
             r   Úget_name_for_briefkopfzUser.get_name_for_briefkopf|   s  € ð
 ×Ñˆà�,ÑØ—m‘mÒ) rÐ*¨!¨D¯M©MÒ,?¸RÐ+@ÐAŠDØ�BŠYØ×#Ñ#Ò) rŠDØ�BŠYØ�~Š~ØŸ™×,Ñ,¨SÓ1�Ü"% e£*¨q¢.�e˜A’h°b�Ü"% e£*¨q¢.�e˜A’h°b�Ø# C 5¨¨S¨E°°4·=±=Ò3FÀBÐ2GÐH’à# D§M¡MÒ$7°RÐ#8Ð9’Ø�H‰_Ø×!Ñ!Ò' RˆBð	ØŸ™ ›�Ø˜A‘h—n‘n SÓ)¨!Ñ,�Ø˜A‘h—n‘n SÓ)¨!Ñ,�Ø˜A‘h—n‘n SÓ)¨!Ñ,�Ø˜A‘h—n‘n SÓ)¨!Ñ,�Ø×+Ñ+Ò1¨r�Ø×'Ñ'¨°Ó4×<Ñ<¸VÀSÓI×QÑQÐRXÐZ]Ó^×fÑfÐgmÐorÓs‘ð �LÑ Ø×&Ñ&Ò,¨"Ð-¨Q¨t¯~©~Ò/CÀÐ.DÀAÀdÇmÁmÒFYÐWYÐEZÐ[‰DàˆDà�4�&ˆzÐøô ¤Ð/ò Ø’ðús   Ã(B?G( Ç(G<Ç;G<c                 ó   — | j                   S r$   )r   ro   s    r   Ú__str__zUser.__str__¢   s   € Ø�z‰zÐr   N)(r%   r&   r'   r   ÚPositiveIntegerFieldÚ
PersonenIDÚ	CharFieldrP   rO   rV   Ú
EmailFieldr   ÚIntegerFieldÚVISysEMailPreferencerL   r€   rb   Ú	TextFieldr|   ÚDateTimeFieldÚ
last_loginÚlast_login_ipÚemail_verified_atÚremember_tokenÚBooleanFieldÚ	is_activer   Ú
created_atÚ
updated_atÚUSERNAME_FIELDÚREQUIRED_FIELDSr   ÚobjectsrD   Ústrrm   Úpropertyrp   r„   r†   r   r   r   r)   r)   (   sÉ  „ Ø,�×,Ñ,¸ÈHÔU€JØˆv×Ñ¨3°dÀÔF€HØ �× Ñ ¨C°tÀ$ÔG€IØ"�&×"Ñ"¨c¸ÀDÔI€KØˆF×Ñ TÔ*€EØ.˜6×.Ñ.°q¸tÈ4ÔPÐØ&�6×&Ñ&¨D¸Ô=€LØ"�&×"Ñ"¨c¸ÀDÔI€KØˆv×Ñ¨3°dÀÔF€HØ"�&×"Ñ"¨°DÔ9€KØ%�×%Ñ%¨4°tÐJ\Ô]€JØ$�F×$Ñ$°¸ÀTÔJ€MØ,˜×,Ñ,°$¸dÔCÐØ%�V×%Ñ%°¸DÀtÔL€NØ#�×#Ñ#¨DÔ1€IØ"ˆv×"Ñ"¨5Ô1€HØ%�×%Ñ%°4¸dÔC€JØ%�×%Ñ%¨t¸$Ô?€Jà€NØ€Oá‹m€G÷'ñ 'ð.P˜#ó .Pð` ð˜#ò ó ðò$óLr   r)   c                   óV  — e Zd Z ej                  d¬«      Z ej                  ed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 ej                  dd¬«      Z G d„ d	«      Zd
„ Zy)ÚReuMietVT)r,   ÚREUID)Ú	db_columnÚ	on_deleter1   r0   r4   r9   r;   c                   ó   — e Zd ZdZdZdZy)úReuMietV.MetaÚreu_miet_v_su   MietverhÃ¤ltnissu   MietverhÃ¤ltnisseNrA   r   r   r   rD   r¢   ¹   s   „ Ø!ˆØ)ˆØ1Ñr   rD   c                 ó    — d| j                   › �S )NzMietVID )ÚMietVIDro   s    r   r†   zReuMietV.__str__¿   s   € Ø˜$Ÿ,™,˜Ð(Ð(r   N)r%   r&   r'   r   r‹   r¥   Ú
ForeignKeyr   ÚCASCADErž   ÚMieterIDÚ	DateFieldÚContractValidFromÚContractValidUntilrŽ   r•   r–   rD   r†   r   r   r   r�   r�   ª   s°   „ Ø!ˆf×!Ñ!¨dÔ3€GØˆF×ÑØØØ—.‘.ØØô€Eð #ˆv×"Ñ"¨°DÔ9€HØ(˜×(Ñ(¨d¸$Ô?ÐØ)˜×)Ñ)¨t¸4Ô@ÐØ%�×%Ñ%°4¸dÔC€JØ%�×%Ñ%¨t¸$Ô?€J÷2ñ 2ó)r   r�   c            	       ó`  — e Zd Z ej                  dd¬«      Z ej                  edej                  dddd¬«      Z	 ej                  dd¬«      Z ej                  ddd	¬
«      Z ej                  ddd¬
«      Z ej                  dd¬«      Z ej                  dd¬«      Z G d„ d«      Zd„ Zy)ÚReuEigentuemerTzEigentums-IDr+   rž   ÚeigentumsverhaeltnisseÚNutzungseinheit)rŸ   r    r1   r0   Úrelated_namer-   r4   zGueltig vonr5   zGueltig bisr9   r;   c                   ón   — e Zd ZdZdZdZ ej                  ddgd¬«       ej                  dgd¬«      gZy	)
úReuEigentuemer.MetaÚreu_eigentuemerÚEigentumsverhaeltnisÚEigentumsverhaeltnisserž   ÚEigentuemerIDÚreu_eig_reu_person_idx©Úfieldsr�   Úreu_eig_person_idxN)	r%   r&   r'   rB   r-   rC   r   ÚIndexÚindexesr   r   r   rD   r²   ê   sC   „ Ø$ˆØ-ˆØ6ÐàˆF�L‰L ¨/Ð :ÐAYÔZØˆF�L‰L Ð 1Ð8LÔMð
‰r   rD   c                 ó    — d| j                   › �S )NzEigentumID )Ú
EigentumIDro   s    r   r†   zReuEigentuemer.__str__ó   s   € Ø˜TŸ_™_Ð-Ð.Ð.r   N)r%   r&   r'   r   r‹   r¾   r¦   r   r§   rž   r‡   r¶   r©   Ú	ValidFromÚ
ValidUntilrŽ   r•   r–   rD   r†   r   r   r   r­   r­   Ù   sº   „ Ø$�×$Ñ$°ÀNÔS€JØˆF×ÑØØØ—.‘.ØØØ-Ø&ô€Eð 0�F×/Ñ/°TÀÔF€MØ �× Ñ  d°$À]ÔS€IØ!�×!Ñ! t°4ÀmÔT€JØ%�×%Ñ%°4¸dÔC€JØ%�×%Ñ%¨t¸$Ô?€J÷
ñ 
ó/r   r­   c                   óš   — e Zd Z ej                  d¬«      Z ej                  dd¬«      Z ej                  d¬«      Z	 G d„ d«      Z
d„ Zy)	ÚNutzerAnmeldungT©Údb_index)r:   rÄ   r8   c                   ó   — e Zd ZdZdZdZy)úNutzerAnmeldung.MetaÚnutzer_anmeldungÚ	AnmeldungÚAnmeldungenNrA   r   r   r   rD   rÆ   
  s   „ Ø%ˆØ"ˆØ+Ñr   rD   c                 ó:   — | j                   › d| j                  d›�S )NrG   z%Y-%m-%d %H:%M)rˆ   Ú	zeitpunktro   s    r   r†   zNutzerAnmeldung.__str__  s   € Ø—/‘/Ð" ! D§N¡N°>Ð#BÐCÐCr   N)r%   r&   r'   r   r‡   rˆ   rŽ   rË   r“   ÚerfolgreichrD   r†   r   r   r   rÂ   rÂ     sJ   „ Ø,�×,Ñ,°dÔ;€JØ$�×$Ñ$°$ÀÔF€IØ%�&×%Ñ%¨dÔ3€K÷,ñ ,ó
Dr   rÂ   c                   ó°   — e Zd Z ej                  eej                  dd¬«      Z ej                  d¬«      Z	 ej                  ddd¬«      Z
 G d	„ d
«      Zy)ÚNutzerAnmeldungIPTÚip_info)r    r,   r°   r6   )r/   r.   rH   )r/   r0   r3   c                   ó   — e Zd ZdZdZdZy)úNutzerAnmeldungIP.MetaÚnutzer_anmeldung_ipzAnmeldung-IPzAnmeldung-IPsNrA   r   r   r   rD   rÑ     s   „ Ø(ˆØ%ˆØ-Ñr   rD   N)r%   r&   r'   r   ÚOneToOneFieldrÂ   r§   Ú	anmeldungr‰   ÚipÚ
user_agentrD   r   r   r   rÎ   rÎ     sX   „ Ø$�×$Ñ$ØØ—.‘.ØØô	€Ið 
ˆ×	Ñ	 RÔ	(€BØ!�×!Ñ!¨S¸ÀbÔI€J÷.ò .r   rÎ   c                   óŽ   — e Zd Z ej                  «       Z ej                  d¬«      Z ej                  d¬«      Z	 G d„ d«      Z
y)ÚNutzerBesuchTrÃ   )r:   c                   óF   — e Zd ZdZdZdZ ej                  ddgd¬«      gZy)	úNutzerBesuch.MetaÚnutzer_besuchÚBesuchÚBesucherˆ   ÚtagÚnutzer_besuch_person_tag_uniqr¸   N)	r%   r&   r'   rB   r-   rC   r   ÚUniqueConstraintÚconstraintsr   r   r   rD   rÚ   (  s1   „ Ø"ˆØˆØ'Ðà#ˆF×#Ñ#¨L¸%Ð+@ÐGfÔgð
‰r   rD   N)r%   r&   r'   r   r‡   rˆ   r©   rÞ   rŽ   Úerster_zugriffrD   r   r   r   rØ   rØ   #  s@   „ Ø,�×,Ñ,Ó.€JØ
ˆ&×
Ñ
 DÔ
)€CØ)�V×)Ñ)°tÔ<€N÷
ò 
r   rØ   N)Ú__doc__Údjango.contrib.auth.modelsr   r   r   Ú	django.dbr   Úapp_real_estate.modelsr   r   Ú	constantsr
   r   r)   ÚModelr�   r­   rÂ   rÎ   rØ   r   r   r   ú<module>ré      s‘   ðñ÷ [Ñ ZÝ ç =å ôD�/ô Dô*{ÐÐ-ô {ôD)ˆv�|‰|ô )ô^/�V—\‘\ô /ôXD�f—l‘lô Dô.˜Ÿ™ô .ô 
�6—<‘<õ 
r   