a
    ތxd\                     @   s   d dl 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 d dlmZ d dlmZ G dd	 d	eZed
d Zedd Zdd Zedd ZdS )    N)	AppConfig)settings)Warningregister)GZipMiddleware)import_string)gettext_lazyc                   @   s   e Zd ZdZedZdS )DebugToolbarConfigdebug_toolbarzDebug ToolbarN)__name__
__module____qualname__name_Zverbose_name r   r   J/var/www/html/Ranjet/env/lib/python3.9/site-packages/debug_toolbar/apps.pyr	      s   r	   c                 K   s   ddl m} g }d }g }tdr:|tdddd |S ttjD ],\}}tt	|r\|}qDt||rD|| qD|s|tdd	d
d nJt
|dkr|tdddd n(|d ur|d |k r|tdddd |S )Nr   )DebugToolbarMiddlewareZMIDDLEWARE_CLASSESz>debug_toolbar is incompatible with MIDDLEWARE_CLASSES setting.z,Use MIDDLEWARE instead of MIDDLEWARE_CLASSESzdebug_toolbar.W004hintidzKdebug_toolbar.middleware.DebugToolbarMiddleware is missing from MIDDLEWARE.zBAdd debug_toolbar.middleware.DebugToolbarMiddleware to MIDDLEWARE.zdebug_toolbar.W001   zTdebug_toolbar.middleware.DebugToolbarMiddleware occurs multiple times in MIDDLEWARE.zMLoad debug_toolbar.middleware.DebugToolbarMiddleware only once in MIDDLEWARE.zdebug_toolbar.W002zrdebug_toolbar.middleware.DebugToolbarMiddleware occurs before django.middleware.gzip.GZipMiddleware in MIDDLEWARE.zrMove debug_toolbar.middleware.DebugToolbarMiddleware to after django.middleware.gzip.GZipMiddleware in MIDDLEWARE.zdebug_toolbar.W003)Zdebug_toolbar.middlewarer   r   Zis_overriddenappendr   	enumerateZ
MIDDLEWAREis_middleware_classr   len)app_configskwargsr   errorsZ
gzip_indexZdebug_toolbar_indexesiZ
middlewarer   r   r   check_middleware   sV    


			r   c                 K   s:   ddl m} g }| D ]}| D ]}|| q$q|S )zOAllow each panel to check the toolbar's integration for their its own purposes.r   )DebugToolbar)Zdebug_toolbar.toolbarr    Zget_panel_classesZ
run_checksr   )r   r   r    r   Zpanel_classZcheck_messager   r   r   check_panel_configsP   s    r!   c                 C   s6   zt |}W n ty    Y d S 0 t|o4t|| S )N)r   ImportErrorinspectisclass
issubclass)Zmiddleware_classZmiddleware_pathZmiddleware_clsr   r   r   r   \   s    r   c                 K   s(   g }t  }|s$|tdddd |S )Nz&Setting DEBUG_TOOLBAR_PANELS is empty.zASet DEBUG_TOOLBAR_PANELS to a non-empty list in your settings.py.zdebug_toolbar.W005r   )dt_settingsZ
get_panelsr   r   )r   r   r   Zpanelsr   r   r   check_panelsf   s    r'   )r#   Zdjango.appsr   Zdjango.confr   Zdjango.core.checksr   r   Zdjango.middleware.gzipr   Zdjango.utils.module_loadingr   Zdjango.utils.translationr   r   r
   r&   r	   r   r!   r   r'   r   r   r   r   <module>   s   
=

