î
ªÍ XI	  ã               @   sp   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
 Gd d „  d e	 ƒ Z d S)	é    )Úunicode_literals)Úapps)Úchecks)Úregistry)ÚBaseCommandÚCommandErrorc               @   s4   e  Z d  Z d Z d Z d d „  Z d d „  Z d S)ÚCommandz8Checks the entire Django project for potential problems.Fc          
   C   s±   | j  d d d d d ƒ| j  d d d d	 d
 d d d ƒ| j  d d d d
 d d d ƒ| j  d d d d
 d d d ƒ| j  d d d d d d d d d g d
 d d d ƒd  S)NÚargsÚmetavarÚ	app_labelÚnargsÚ*z--tagz-tÚactionÚappendÚdestÚtagsÚhelpz'Run only checks labeled with given tag.z--list-tagsÚ
store_trueÚ	list_tagszList available tags.z--deployÚdeployzCheck deployment settings.z--fail-levelÚdefaultÚERRORÚchoicesÚCRITICALÚWARNINGÚINFOÚDEBUGÚ
fail_levelz[Message level that will cause the command to exit with a non-zero status. Default is ERROR.)Úadd_argument)ÚselfÚparser© r!   úS/home/ubuntu/projects/ifolica/build/django/django/core/management/commands/check.pyÚadd_arguments   s     zCommand.add_argumentsc                sö   | d ‰  | d r@ |  j  j d j t t j ˆ  ƒ ƒ ƒ ƒ d  S| r\ d d „  | Dƒ } n d  } | d } | r½ y# t ‡  f d d †  | Dƒ ƒ } Wn t k
 r© Yq½ Xt d	 | ƒ ‚ n  |  j	 d
 | d | d d d ˆ  d t
 t | d ƒ ƒ d  S)Nr   r   Ú
c             S   s   g  |  ] } t  j | ƒ ‘ q Sr!   )r   Zget_app_config)Ú.0r   r!   r!   r"   ú
<listcomp>/   s   	 z"Command.handle.<locals>.<listcomp>r   c             3   s'   |  ] } t  j | ˆ  ƒ s | Vq d  S)N)r   Z
tag_exists)r%   Útag)Úinclude_deployment_checksr!   r"   ú	<genexpr>7   s    z!Command.handle.<locals>.<genexpr>z+There is no system check with the "%s" tag.Úapp_configsZdisplay_num_errorsTr(   r   )ÚstdoutÚwriteÚjoinÚsortedr   Ztags_availableÚnextÚStopIterationr   ÚcheckÚgetattrr   )r   Z
app_labelsÚoptionsr*   r   Zinvalid_tagr!   )r(   r"   Úhandle(   s*    

(
 	zCommand.handleN)Ú__name__Ú
__module__Ú__qualname__r   Zrequires_system_checksr#   r4   r!   r!   r!   r"   r   
   s   r   N)Ú
__future__r   Zdjango.appsr   Zdjango.corer   Zdjango.core.checks.registryr   Zdjango.core.management.baser   r   r   r!   r!   r!   r"   Ú<module>   s
   