§ WèÄj ã ó¤ — d dl Z d dlZd dlZd dlZd dlmZmZ d dlmZ d dl m Z d dlmZ d dl mZ ddlmZmZ dd lmZ h d £Z G d„ d¦ « ZdS ) é N)ÚConfigParserÚSectionProxy)ÚEmailMessage)Úgethostname)ÚOptional)Úgettexté )Úmail_template_locationÚmail_scripts_location)ÚXRayMailerError> ÚPleskÚcPanelÚDirectAdminc óö — e Zd ZdZd„ Zedefd„¦ « Zedefd„¦ « Z defd„Z dee fd„Zdee fd„Z edd edefd„¦ « Zdedd fd„Zdedd fd„Zdedd fd„Z ddededd fd„Zd S )ÚMailerz0 Class contains X-Ray e-mail send logic c óF — t j d¦ « | _ d | _ d S )NÚmailer)ÚloggingÚ getLoggerÚloggerÚ_sender©Úselfs úM/opt/cloudlinux/venv/lib64/python3.11/site-packages/xray/continuous/mailer.pyÚ__init__zMailer.__init__ s € ÝÔ'¨Ñ1Ô1ˆŒØˆŒˆˆó Úreturnc ó — dS )z+ Local mail server address )Ú localhost© r s r Úmail_serverzMailer.mail_server! s € ð ˆr c óP — | j €| ¦ « | _ | j S )zG Retrieve 'From' mail address if it is not already set )r Úretrieve_mail_senderr s r Úsenderz Mailer.sender( s' € ð Œ<ÐØ×4Ò4Ñ6Ô6ˆDŒLØŒ|Ðr c óX — dt ¦ « › �}| ¦ « }|�|n|S )zC 'From' address (control panel admin or dummy one) zxray.continuous@)r Úadmin_email)r Ú dummy_mailÚ admin_mails r r# zMailer.retrieve_mail_sender1 s5 € ð 8© ¬ Ð7Ð7ˆ Ø×%Ò%Ñ'Ô'ˆ Ø'Ð3ˆzˆz¸ÐCr c óÚ — | ¦ « }|�Ôt › d|› d�} t j |gddd¬¦ « }|j ¦ « S # t j $ r4}| j d|t |¦ « ¦ « Y d}~dS d}~wt t t j f$ r4}| j d|t |¦ « ¦ « Y d}~dS d}~ww xY wdS )z< Try to retrieve control panel admin e-mail Nú/Ú_emailT)Úcapture_outputÚtextÚcheckz% script failed with: %sz Failed to run script %s with: %s) Úget_control_panelr Ú subprocessÚrunÚstdoutÚstripÚCalledProcessErrorr ÚerrorÚstrÚOSErrorÚ ValueErrorÚSubprocessError)r ÚpanelÚget_email_scriptÚpÚes r r&