3
g                 @   sP   d dl Z d dlmZ d dlmZmZ d dlmZ d dlm	Z	 G dd deZ
dS )    N)settings)BaseCommandCommandError)apps)signalcommandc                   s,   e Zd ZdZ fddZedd Z  ZS )Commandz7Set parameters of the default django.contrib.sites Sitec                sH   t  j| |jddd dd |jddd dd |jdd	d
ddd d S )Nz--name	site_namezUse this as site name.)destdefaulthelpz--domainsite_domainzUse this as site domain.z--system-fqdnset_as_system_fqdnF
store_truezmUse the systems FQDN (Fully Qualified Domain Name) as name and domain. Can be used in combination with --name)r	   r
   actionr   )superadd_argumentsadd_argument)selfparser)	__class__ t/var/www/tester-filtro-web/env/lib/python3.6/site-packages/django_extensions/management/commands/set_default_site.pyr      s    zCommand.add_argumentsc       	      O   sN  t jdstdddlm} y|jjtjd}W n$ |j	k
rV   tdtj Y nX |d }|d }|d	 }t
||grtd
|rtj }|std|d kr|}i }|r||jkr||d< |r||jkr||d< |r|jjtjdjf | |jjtjd}td ntd td td|j  td|j  td|j  d S )Nzdjango.contrib.sitesz%The sites framework is not installed.r   )Site)pkz&Default site with pk=%s does not existr   r   r   z9The set_as_system_fqdn cannot be used with domain option.zCannot find systems FQDNnamedomainzXUpdated default site. You might need to restart django as sites are cached aggressively.z>Nothing to update (need --name, --domain and/or --system-fqdn)zDefault Site:z	id = %sz
	name = %sz	domain = %s)r   is_installedr   Zdjango.contrib.sites.modelsr   Zobjectsgetr   ZSITE_IDZDoesNotExistallsocketgetfqdnr   r   filterupdateprintid)	r   argsoptionsr   siter   r   r   Zupdate_kwargsr   r   r   handle   sF    

zCommand.handle)__name__
__module____qualname__r   r   r   r(   __classcell__r   r   )r   r   r      s   r   )r   Zdjango.confr   Zdjango.core.management.baser   r   Zdjango.appsr   Z"django_extensions.management.utilsr   r   r   r   r   r   <module>   s
   