
    wg.                         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	e          Z e             e            fd
ededefdZdS )    )settings)WorkEmailServiceInterface)#WorkEmailTemplateGeneratorInterface)SystemRepositoryInterface)BaseEmailService)!get_work_email_template_generator)get_system_repositoryc            
            e Zd ZU dej         dZeed<   dede	ddfdZ
dd	ed
edee         dz  dedz  f fdZddZddZddZddZdededdfdZddZ xZS )WorkEmailServicez
BankoMag <>sendertemplate_generator
repositoryreturnNc                 "    || _         || _        d S Nr   r   )selfr   r   s      S/var/www/html/cms/infrastructure/email_services/work_email_service/email_service.py__init__zWorkEmailService.__init__   s     #5$    subjhtml_messageemailsc                     |s| j                                         }|s| j        }t                                          ||||          S r   )r   get_system_emailsr   super
send_email)r   r   r   r   r   	__class__s        r   r   zWorkEmailService.send_email   sK     	9_6688F 	![Fww!!$EEEr   c                 V     | j         j        di |}|                     d|           d S )Nu;   Вход в администраторскую панель )r   (generate_success_login_in_admin_templater   r   kwargstemplates      r    send_success_admin_login_messagez1WorkEmailService.send_success_admin_login_message%   s:    S4*S]]V\]]UW_`````r   c                 V     | j         j        di |}|                     d|           d S )NuJ   Ошибка входа в администраторскую панельr!   )r   %generate_cant_login_in_admin_templater   r#   s      r   send_error_admin_login_messagez/WorkEmailService.send_error_admin_login_message)   s:    P4*PZZSYZZdfnooooor   c                 V     | j         j        di |}|                     d|           d S )Nu<   Попытка входа в имитацию админкиr!   )r   generate_login_in_fake_adminr   r#   s      r   send_fake_admin_login_messagez.WorkEmailService.send_fake_admin_login_message-   s9    G4*GQQ&QQVX`aaaaar   c                 V     | j         j        di |}|                     d|           d S )Nu    Ошибка на сервереr!   )r   generate_errror_messager   r#   s      r   send_error_emailsz"WorkEmailService.send_error_emails1   s8    B4*BLLVLL:HEEEEEr   emailcodec                 ^     | j         j        |fi |}|                     d||g           d S )NuG   Код для логина в панель администратора)r   )r   generate_login_coder   )r   r0   r1   r$   r%   s        r   send_code_to_login_in_adminz,WorkEmailService.send_code_to_login_in_admin5   sC    >4*>tNNvNNackuzt{|||||r   c                      | j         j        di |}|                     d|                    d           |           d S )Nu   Контакт с сайта 	site_namer!   )r   generate_feedback_emailr   getr#   s      r   send_feedback_emailz$WorkEmailService.send_feedback_email9   sM    B4*BLLVLLU&**[:Q:QUUW_`````r   )NN)r   N)__name__
__module____qualname__r   SYSTEM_EMAIL_HOST_USERr   str__annotations__r   r   r   listr   r&   r)   r,   r/   intr4   r9   __classcell__)r   s   @r   r   r      sq        Ax>AAAFCAAA%"E%Sl%	% % % %F Fs F# FtCy4?O F`cfj`j F F F F F Fa a a ap p p pb b b bF F F F} }C }d } } } }a a a a a a a ar   r   r   r   r   c                 "    t          | |          S r   )r   r   s     r   get_work_email_servicerD   >   s     .
;;;r   N)django.confr   Eapplication.email_services.work_email_service.email_service_interfacer   Japplication.email_services.work_email_service.template_generator_interfacer   domain.email.repositoryr   0infrastructure.email_services.base_email_servicer   Cinfrastructure.email_services.work_email_service.template_generatorr   9infrastructure.persistence.repositories.system_repositoryr	   r   rD   r!   r   r   <module>rL      sD                         > = = = = = M M M M M M          
(a (a (a (a (a')B (a (a (aX ?`>_>a>a,A,A,C,C< <;<)< < < < < < <r   