o
    ×ŸŽi£  ã                   @   s¸  d dl Z d dlZd dl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 d dlmZ d dlmZmZ d d	lmZ d d
lmZmZ d dlmZ d dlmZ eƒ ZdhZee
ƒdd„ ƒZee
ƒdd„ ƒZee
ƒdd„ ƒZ ee
ƒdd„ ƒZ!ee
ƒdd„ ƒZ"ee
ƒdd„ ƒZ#ee
ƒdd„ ƒZ$ee
ƒdd„ ƒZ%ee
ƒdd„ ƒZ&ee
ƒd d!„ ƒZ'ee
ƒd"d#„ ƒZ(ee
ƒd$d%„ ƒZ)ee
ƒd&d'„ ƒZ*ee
ƒd(d)„ ƒZ+ee
ƒd*d+„ ƒZ,ee
ƒd,d-„ ƒZ-dS ).é    N)ÚLocal)Úapps)ÚImproperlyConfigured)Úsetting_changed)ÚconnectionsÚrouter)ÚConnectionRouter)ÚSignalÚreceiver)Útimezone©ÚFORMAT_SETTINGSÚreset_format_cache)Úempty)Úimport_stringZ	DATABASESc                 K   s@   | dkrddl m}m} |ƒ  | d ¡ |_|_tƒ |_d S d S )NZCACHESr   )ÚcachesÚclose_caches)Zdjango.core.cacher   r   Zconfigure_settingsZ	_settingsÚsettingsr   Z_connections)ÚsettingÚkwargsr   r   © r   ú]C:\Users\psant\Downloads\Anu Raj Backend\school\venv\Lib\site-packages\django/test/signals.pyÚclear_cache_handlers   s   ûr   c                 K   s^   | dkr-ddl m} | ¡  ddlm} | ¡  ddlm} | ¡  ddlm} i |_	d S d S )NÚINSTALLED_APPSr   ©Ú
get_finder)Úget_commands)Úget_app_template_dirs©Ú
trans_real)
Ú"django.contrib.staticfiles.findersr   Úcache_clearZdjango.core.managementr   Zdjango.template.utilsr   Údjango.utils.translationr   Ú_translations)r   r   r   r   r   r   r   r   r   Úupdate_installed_apps%   s   
ðr$   c              	   K   s¬   | dkr%t tdƒr |d r|d tjd< ntj dd ¡ t ¡  tj ¡  | dv rRt	j
dd�D ]$}z|`W n	 ty>   Y nw z|`W n	 tyL   Y nw | ¡  q/d S d S )NÚ	TIME_ZONEÚtzsetÚvalueZTZ>   ZUSE_TZr%   T)Zinitialized_only)ÚhasattrÚtimeÚosÚenvironÚpopr&   r   Zget_default_timezoner!   r   ÚallÚAttributeErrorZtimezone_nameZensure_timezone)r   r   Úconnr   r   r   Úupdate_connections_time_zone:   s,   

ÿÿ
ör0   c                 K   s   | dkrt ƒ jt_d S d S )NZDATABASE_ROUTERS)r   Zroutersr   ©r   r   r   r   r   Úclear_routers_cacheV   s   ÿr2   c                 K   sn   | dv r5ddl m} z|`W n	 ty   Y nw d |_i |_ddlm} |j 	¡  ddl
m} | 	¡  d S d S )N>   ÚDEBUGr   Z	TEMPLATESr   )Úengines)ÚEngine)Úget_default_renderer)Zdjango.templater4   Z	templatesr.   Z
_templatesZ_enginesZdjango.template.enginer5   Zget_defaultr!   Zdjango.forms.renderersr6   )r   r   r4   r5   r6   r   r   r   Úreset_template_engines\   s   ÿ
îr7   c                 K   s`   ddl m} ddlm}m} | dv r.z|`W n	 ty   Y nw d |_i |_t	|_
t	|_
d S d S )Nr   ©Ústaticfiles_storage©Údefault_storageÚstorages)ZSTORAGESÚSTATIC_ROOTÚ
STATIC_URL)Ú"django.contrib.staticfiles.storager9   Údjango.core.files.storager;   r<   Úbackendsr.   Z	_backendsÚ	_storagesr   Ú_wrapped)r   r   r9   r;   r<   r   r   r   Ústorages_changeds   s   ÿ
órD   c                 K   s"   | dkrddl m} i |_d S d S )NZSERIALIZATION_MODULESr   )Úserializers)Zdjango.corerE   Z_serializers)r   r   rE   r   r   r   Úclear_serializers_cacheˆ   s   
ýrF   c                 K   sN   | dv rddl m} d |_tƒ |_| dv r%ddl m} i |_|j ¡  d S d S )N>   Ú	LANGUAGESZLANGUAGE_CODEÚLOCALE_PATHSr   r   >   rG   rH   )r"   r   Ú_defaultr   Ú_activer#   Zcheck_for_languager!   )r   r   r   r   r   r   Úlanguage_changed�   s   ürK   c                 K   s   | t v s| dkrtƒ  d S d S )NZUSE_THOUSAND_SEPARATORr   r1   r   r   r   Úlocalize_settings_changedž   s   
ÿrL   c                 K   sb   | dkr/ddl m} ddlm}m} z|`W n	 ty   Y nw t|d ƒƒ |j|< t	|_
d S d S )NZDEFAULT_FILE_STORAGEr   )ÚDEFAULT_STORAGE_ALIASr:   r'   )Údjango.confrM   r@   r;   r<   rA   r.   r   rB   r   rC   )r   r   rM   r;   r<   r   r   r   Úfile_storage_changed¥   s   ÿ
÷rO   c                 K   s.   | r|t v rtjd|› d�dd� d S d S d S )NzOverriding setting z! can lead to unexpected behavior.é   )Ú
stacklevel)ÚCOMPLEX_OVERRIDE_SETTINGSÚwarningsÚwarn)Zenterr   r   r   r   r   Úcomplex_setting_changed³   s   

þýrU   c                 K   s.   | dkrddl m}m} |ƒ  |d ƒ d S d S )NZROOT_URLCONFr   )Úclear_url_cachesÚset_urlconf)Zdjango.urlsrV   rW   )r   r   rV   rW   r   r   r   Úroot_urlconf_changed¾   s
   ürX   c                 K   sr   | dv rddl m} t|_| dkr7ddlm} ddlm} z|`W n	 t	y*   Y nw t
|d ƒƒ |j|< d S d S )N>   r>   r=   ÚSTATICFILES_STORAGEr   r8   rY   )ÚSTATICFILES_STORAGE_ALIAS)r<   r'   )r?   r9   r   rC   rN   rZ   r@   r<   rA   r.   r   rB   )r   r   r9   rZ   r<   r   r   r   Ústatic_storage_changedÇ   s   ÿør[   c                 K   s$   | dv rddl m} | ¡  d S d S )N>   r=   ZSTATICFILES_DIRSr   r   )r    r   r!   )r   r   r   r   r   r   Ústatic_finders_changedÞ   s   úr\   c                 K   s$   | dkrddl m} | ¡  d S d S )NZAUTH_PASSWORD_VALIDATORSr   )Úget_default_password_validators)Z'django.contrib.auth.password_validationr]   r!   )r   r   r]   r   r   r   Ú auth_password_validators_changedé   s   ûr^   c           	      K   sž   | dkrMt  ¡  zddlm} |ƒ }W n
 ty   Y d S w ddlm} ||_ddlm} ||_ddlm	} ||_ddl
m} ||_ddlm} ||_d S d S )	NZAUTH_USER_MODELr   )Úget_user_model)rA   )Úforms)Úmodwsgi)Úchangepassword)Úviews)r   Úclear_cacheZdjango.contrib.authr_   r   rA   Ú	UserModelr`   Zdjango.contrib.auth.handlersra   Z'django.contrib.auth.management.commandsrb   rc   )	r   r   r_   re   rA   r`   ra   rb   rc   r   r   r   Úuser_model_swappedó   s&   
þ
ärf   ).r*   r)   rS   Zasgiref.localr   Zdjango.appsr   Zdjango.core.exceptionsr   Zdjango.core.signalsr   Z	django.dbr   r   Zdjango.db.utilsr   Zdjango.dispatchr	   r
   Zdjango.utilsr   Zdjango.utils.formatsr   r   Zdjango.utils.functionalr   Zdjango.utils.module_loadingr   Ztemplate_renderedrR   r   r$   r0   r2   r7   rD   rF   rK   rL   rO   rU   rX   r[   r\   r^   rf   r   r   r   r   Ú<module>   s`    
	















	