
    wg                         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 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  G d de          ZdS )    )datetime)Any)TemplateView)GetSettingsget_get_settings_interactor)DomainRepositoryInterface)DocumentRepositoryInterface)get_document_repository)get_domain_repository)RequestInterface)UrlParserInterface)get_url_parserc                        e Zd ZU  e            Zeed<    e            Ze	ed<    e
            Zeed<    e            Zeed<   d Zdeeef         f fdZ xZS )SettingsMixindomain_repositoryget_settings_interactordocument_repository
url_parserc                 &   | j         }| j                            |j                  ri S i }| j                                        }|j        dk    rd}||d<   |                     |j        |j        |j        dd          |          |d<   | j        	                                |d<   |j
        |d<   | j                            d	          |d
<   | j                            d          |d<   t          t          j                    j                  |d<   |S )N	localhostzlocalhost:8000domain   )r   	subdomainpathrequestsettings	site_namepartner_domainprivacypolicyprivacytermsofservicetermsyear)r   r   	is_sourcer   r   get_domain_stringr   r   r   get_site_namer   r   getstrr   nowr#   )selfr   contextr   s       6/var/www/html/cms/web/settings/views/settings_mixin.pyget_settings_context_dataz'SettingsMixin.get_settings_context_data   s   $(L?$$W\22 	I'99;;>[((%F""::>W->W\RSRURUEV`g ; 
 

  $5CCEE$+$: !!599/JJ	3778HIIhlnn122    returnc                 h     t                      j        di |}|                                 }||z  S )N )superget_context_datar-   )r*   argskwargsr+   settings_context	__class__s        r,   r3   zSettingsMixin.get_context_data5   s=    *%''*44V4499;;)))r.   )__name__
__module____qualname__r   r   r   __annotations__r   r   r   r
   r   r	   r   r   r   r-   dictr(   r   r3   __classcell__)r7   s   @r,   r   r      s         3H3H3J3J0JJJ+F+F+H+H[HHH7N7N7P7P4PPP%3^%5%5J"555  0*4S> * * * * * * * * * *r.   r   N)r   typingr   django.views.genericr   (application.usecases.public.get_settingsr   r    domain.domains.domain_repositoryr   domain.materials.repositoryr	   ;infrastructure.persistence.repositories.document_repositoryr
   9infrastructure.persistence.repositories.domain_repositoryr   )infrastructure.requests.request_interfacer   )infrastructure.url_parser.base_url_parserr   $infrastructure.url_parser.url_parserr   r   r1   r.   r,   <module>rH      s3               - - - - - -        G F F F F F C C C C C C           G F F F F F H H H H H H ? ? ? ? ? ?!* !* !* !* !*L !* !* !* !* !*r.   