ó
    ²Rjú   ã                   ó`   • S SK Jr  S SKJr  S SKJr  S SKJr  S SKJ	r	  SSK
Jr  SS	 jrSS
 jrg)é    )Úchain)Ú
MethodType)Úapps)Úsettings)Úchecksé   )Ú_get_builtin_permissionsNc           
      óš  ^• U c%  [         R                  " [        R                  5      mOO[        R                  R	                  S5      u  p#U  H&  nUR
                  U:X  d  M  UR                  U5      m  O   / $ / n[        TR                  [        [        45      (       d%  UR                  [        R                  " STSS95        TR                  TR                  ;   aC  UR                  [        R                  " SSTR                  < STR                  < S3TS	S
95        TR                  R                  TR                  5      R                   (       dÝ  [#        U4S jTR                  R$                   5       5      (       d¯  [        R&                  S/:X  aM  UR                  [        R                  " STR                  R(                  < STR                  < S3TSS95        OMUR                  [        R*                  " STR                  R(                  < STR                  < S3STSS
95        [        T" 5       R,                  [.        5      (       a(  UR                  [        R0                  " ST-  TSS95        [        T" 5       R2                  [.        5      (       a(  UR                  [        R0                  " ST-  TSS95        U$ )NÚ.z*'REQUIRED_FIELDS' must be a list or tuple.z	auth.E001©ÚobjÚidzjThe field named as the 'USERNAME_FIELD' for a custom user model must not be included in 'REQUIRED_FIELDS'.z*The 'USERNAME_FIELD' is currently set to 'z', you should remove 'z' from the 'REQUIRED_FIELDS'.z	auth.E002)Úhintr   r   c              3   óX   >#   • U  H  nUR                   TR                  4:H  v •  M!     g 7f©N)ÚfieldsÚUSERNAME_FIELD)Ú.0Ú
constraintÚclss     €ÚFD:\diplom_project\venv\Lib\site-packages\django/contrib/auth/checks.pyÚ	<genexpr>Ú#check_user_model.<locals>.<genexpr>7   s-   øé € ð Fâ<ˆJð 	×Ñ˜c×0Ñ0Ð2Ö2Ú<ùs   ƒ'*z)django.contrib.auth.backends.ModelBackendÚ'z=' must be unique because it is named as the 'USERNAME_FIELD'.z	auth.E003z9' is named as the 'USERNAME_FIELD', but it is not unique.zKEnsure that your authentication backend(s) can handle non-unique usernames.z	auth.W004z�%s.is_anonymous must be an attribute or property rather than a method. Ignoring this is a security issue as anonymous users will be treated as authenticated!z	auth.C009z¡%s.is_authenticated must be an attribute or property rather than a method. Ignoring this is a security issue as anonymous users will be treated as authenticated!z	auth.C010)r   Ú	get_modelr   ÚAUTH_USER_MODELÚsplitÚlabelÚ
isinstanceÚREQUIRED_FIELDSÚlistÚtupleÚappendr   ÚErrorr   Ú_metaÚ	get_fieldÚuniqueÚanyÚtotal_unique_constraintsÚAUTHENTICATION_BACKENDSÚobject_nameÚWarningÚis_anonymousr   ÚCriticalÚis_authenticated)Úapp_configsÚkwargsÚ	app_labelÚ
model_nameÚ
app_configÚerrorsr   s         @r   Úcheck_user_modelr6      sh  ø€ ØÑÜ�nŠnœX×5Ñ5Ó6‰ä (× 8Ñ 8× >Ñ >¸sÓ CÑˆ	Û%ˆJØ×Ñ 9Õ,Ø ×*Ñ*¨:Ó6�Ùñ &ð ˆIà€Fô �c×)Ñ)¬D´%¨=×9Ñ9Ø�‰Ü�LŠLØ<ØØñô	
ð ×Ñ˜S×0Ñ0Ó0Ø�‰Ü�LŠLñUð
 ×)Ô)¨3×+=Ô+=ð?ð Øñ
ô	
ð �9‰9×Ñ˜s×1Ñ1Ó2×9×9Ä#ô FàŸ)™)×<Ò<óF÷ Cñ Cô ×+Ñ+Ø7ð0
ó 
ð �M‰MÜ—“à+.¯9©9×+@Ô+@À#×BTÔBTðVàØ"ñ	õð �M‰MÜ—“à—y‘y×,Ô,¨c×.@Ô.@ðBð0ð Ø"ñ	ôô ‘#“%×$Ñ$¤j×1Ñ1Ø�‰Ü�OŠOð:à<?ñ@ð Øñô	
ô ‘#“%×(Ñ(¬*×5Ñ5Ø�‰Ü�OŠOð:à<?ñ@ð Øñô	
ð €Mó    c                 óð  • U c  [         R                  " 5       nO[        R                  " S U  5       5      n[         R                  " SS5      nUR
                  R                  S5      R                  nUR
                  R                  S5      R                  n/ nU GHU  nUR
                  n[        [        U5      5      n	U	(       a   [        S U	R                  5        5       5      OSn
X¤:”  aO  UU
[        UR                  5      -
  -
  nUR                  [        R                   " SUR"                  X´4-  US	S
95        U	(       a   [        S U	R%                  5        5       5      OSnXÅ:”  aP  UU[        UR&                  5      -
  -
  nUR                  [        R                   " SUR"                  UU4-  USS
95        [)        5       nUR*                   GH  u  nn[        U5      U:”  a5  UR                  [        R                   " SUUR"                  U4-  USS
95        [        U5      U:”  a5  UR                  [        R                   " SUUR"                  U4-  USS
95        Xù;   a9  UR                  [        R                   " SU< SUR"                  < S3USS
95        O=Xþ;   a8  UR                  [        R                   " SU< SUR"                  < S3USS
95        UR-                  U5        GM     GMX     U$ )Nc              3   ó@   #   • U  H  oR                  5       v •  M     g 7fr   )Ú
get_models)r   r4   s     r   r   Ú+check_models_permissions.<locals>.<genexpr>o   s   é € ð %
Ú6A¨
×!Ñ!×#Ð#²kùs   ‚ÚauthÚ
PermissionÚnameÚcodenamec              3   ó8   #   • U  H  n[        U5      v •  M     g 7fr   ©Úlen)r   r>   s     r   r   r;   }   s   é € ÐCÒ&B˜d”�D—	�	Ò&Bùó   ‚r   zzThe verbose_name of model '%s' must be at most %d characters for its builtin permission names to be at most %d characters.z	auth.E007r   c              3   ó8   #   • U  H  n[        U5      v •  M     g 7fr   rA   )r   r?   s     r   r   r;   ‘   s   é € ÐIÒ.H (”�H—�Ò.HùrC   zvThe name of model '%s' must be at most %d characters for its builtin permission codenames to be at most %d characters.z	auth.E011zEThe permission named '%s' of model '%s' is longer than %d characters.z	auth.E008zIThe permission codenamed '%s' of model '%s' is longer than %d characters.z	auth.E012zThe permission codenamed 'z/' clashes with a builtin permission for model 'z'.z	auth.E005z' is duplicated for model 'z	auth.E006)r   r:   r   Úfrom_iterabler   r%   r&   Ú
max_lengthÚdictr	   ÚmaxÚvaluesrB   Úverbose_name_rawr#   r   r$   r   Úkeysr3   ÚsetÚpermissionsÚadd)r0   r1   Úmodelsr=   Úpermission_name_max_lengthÚpermission_codename_max_lengthr5   ÚmodelÚoptsÚbuiltin_permissionsÚ"max_builtin_permission_name_lengthÚverbose_name_max_lengthÚ&max_builtin_permission_codename_lengthÚmodel_name_max_lengthÚ	codenamesr?   r>   s                    r   Úcheck_models_permissionsrZ   k   sð  € ØÑÜ—’Ó"‰ä×$Ò$ñ %
Ù6Aó%
ó 
ˆô —’ ¨Ó5€JØ!+×!1Ñ!1×!;Ñ!;¸FÓ!C×!NÑ!NÐØ%/×%5Ñ%5×%?Ñ%?À
Ó%K×%VÑ%VÐ"Ø€FäˆØ�{‰{ˆÜ"Ô#;¸DÓ#AÓBÐö #ô ÑCÐ&9×&@Ñ&@Ô&BÓCÔCàð 	+ð
 .ÓJØ&@Ø2´S¸×9NÑ9NÓ5OÑOñ'Ð#ð �M‰MÜ—’ð*ð —z‘zÐ#:ÐWñXð Ø"ñô	ö #ô ÑIÐ.A×.FÑ.FÔ.HÓIÔIàð 	/ð
 2ÓRØ$BØ6¼¸T¿_¹_Ó9MÑMñ%Ð!ð �M‰MÜ—’ð"ð Ÿ
™
Ø-Ø6ðñð Ø"ñôô “Eˆ	Ø"×.Õ.‰NˆH�dä�4‹yÐ5Ó5Ø—‘Ü—L’Lð.ð !Ø ŸJ™JØ6ðñð "Ø&ñ
ôô �8‹}Ð=Ó=Ø—‘Ü—L’Lð5ð %Ø ŸJ™JØ:ðñð "Ø&ñ
ôð Ó.Ø—‘Ü—L“Lã8@À$Ç*Ä*ðNà!Ø&ñ	õð Ó&Ø—‘Ü—L“Lã)1°4·:´:ð?à!Ø&ñ	ôð �M‰M˜(×#ôe /ña ðH €Mr7   r   )Ú	itertoolsr   Útypesr   Údjango.appsr   Údjango.confr   Údjango.corer   Ú
managementr	   r6   rZ   © r7   r   Ú<module>rb      s$   ðÝ Ý å Ý  Ý å 0ô]õ@qr7   