o
    h                     @   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 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*dS )+    N)Local)apps)ImproperlyConfigured)setting_changed)connectionsrouter)ConnectionRouter)Signalreceiver)timezoneFORMAT_SETTINGSreset_format_cache)emptyZ	DATABASESc                  K   sD   | d dkr ddl m}m} |  |d  |_|_t |_d S d S )NsettingZCACHESr   )cachesclose_caches)Zdjango.core.cacher   r   Zconfigure_settingsZ	_settingssettingsr   Z_connections)kwargsr   r    r   [/var/www/html/magazine_api/magazine_env/lib/python3.10/site-packages/django/test/signals.pyclear_cache_handlers   s   r   c                  K   sb   | d dkr/ddl m} |  ddlm} |  ddlm} |  ddlm} i |_	d S d S )Nr   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   update_installed_apps#   s   
r#   c               	   K   s   | d dkr't tdr"| d r| d tjd< ntjdd  t  tj  | d dv rTt	
 D ]$}z|`W n	 ty@   Y nw z|`W n	 tyN   Y nw |  q1d S d S )Nr   	TIME_ZONEtzsetvalueZTZ>   r$   ZUSE_TZ)hasattrtimeosenvironpopr%   r   Zget_default_timezoner    r   allAttributeErrorZtimezone_nameZensure_timezone)r   connr   r   r   update_connections_time_zone4   s,   


r/   c                  K   s   | d dkrt  jt_d S d S )Nr   ZDATABASE_ROUTERS)r   Zroutersr   r   r   r   r   clear_routers_cacheP   s   r1   c                  K   sr   | d dv r7d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 )Nr   >   Z	TEMPLATESDEBUGr   r   )engines)Engine)get_default_renderer)Zdjango.templater3   Z	templatesr-   Z
_templatesZ_enginesZdjango.template.enginer4   get_defaultr    Zdjango.forms.renderersr5   )r   r3   r4   r5   r   r   r   reset_template_enginesV   s   
r7   c                  K   s&   | d dkrddl m} i |_d S d S )Nr   ZSERIALIZATION_MODULESr   )serializers)Zdjango.corer8   Z_serializers)r   r8   r   r   r   clear_serializers_cachej      
r9   c                  K   sV   | d dv rddl m} d |_t |_| d dv r)ddl m} i |_|j  d S d S )Nr   >   LOCALE_PATHS	LANGUAGESZLANGUAGE_CODEr   r   >   r;   r<   )r!   r   _defaultr   _activer"   Zcheck_for_languager    )r   r   r   r   r   language_changedq   s   r?   c                  K   s&   | d t v s| d dkrt  d S d S )Nr   ZUSE_THOUSAND_SEPARATORr   r0   r   r   r   localize_settings_changed}   s   
r@   c                  K   s&   | d dkrddl m} t|_d S d S )Nr   ZDEFAULT_FILE_STORAGEr   )default_storage)Zdjango.core.files.storagerA   r   _wrapped)r   rA   r   r   r   file_storage_changed   r:   rC   c                  K   s6   | d r| d t v rtjd| d  dd d S d S d S )NZenterr   z6Overriding setting %s can lead to unexpected behavior.   )
stacklevel)COMPLEX_OVERRIDE_SETTINGSwarningswarnr0   r   r   r   complex_setting_changed   s   
rI   c                  K   s2   | d dkrddl m}m} |  |d  d S d S )Nr   ZROOT_URLCONFr   )clear_url_cachesset_urlconf)Zdjango.urlsrJ   rK   )r   rJ   rK   r   r   r   root_urlconf_changed   s
   rL   c                  K   s&   | d dv rddl m} t|_d S d S )Nr   >   STATIC_ROOTZ
STATIC_URLZSTATICFILES_STORAGEr   )staticfiles_storage)Z"django.contrib.staticfiles.storagerN   r   rB   )r   rN   r   r   r   static_storage_changed   s   
rO   c                  K   s(   | d dv rddl m} |  d S d S )Nr   >   rM   ZSTATICFILES_DIRSr   r   )r   r   r    )r   r   r   r   r   static_finders_changed   s   rP   c                  K   s(   | d dkrddl m} |  d S d S )Nr   ZAUTH_PASSWORD_VALIDATORSr   )get_default_password_validators)Z'django.contrib.auth.password_validationrQ   r    )r   rQ   r   r   r    auth_password_validators_changed   s   rR   c                  K   s   | d dkrOt   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 )
Nr   ZAUTH_USER_MODELr   )get_user_model)backends)forms)modwsgi)changepassword)views)r   clear_cacheZdjango.contrib.authrS   r   rT   	UserModelrU   Zdjango.contrib.auth.handlersrV   Z'django.contrib.auth.management.commandsrW   rX   )r   rS   rZ   rT   rU   rV   rW   rX   r   r   r   user_model_swapped   s&   

r[   )+r)   r(   rG   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template_renderedrF   r   r#   r/   r1   r7   r9   r?   r@   rC   rI   rL   rO   rP   rR   r[   r   r   r   r   <module>   sZ    













	
