OXIESEC PANEL
- Current Dir:
/
/
opt
/
cloudlinux
/
venv
/
lib
/
python3.11
/
site-packages
/
clcommon
Server IP: 2a02:4780:11:1084:0:327f:3464:10
Upload:
Create Dir:
Name
Size
Modified
Perms
📁
..
-
09/05/2025 09:34:06 AM
rwxr-xr-x
📄
__init__.py
1.37 KB
06/23/2025 12:47:48 PM
rw-r--r--
📁
__pycache__
-
09/05/2025 09:30:59 AM
rwxr-xr-x
📄
clcagefs.py
10.99 KB
06/23/2025 12:47:48 PM
rw-r--r--
📄
clcaptain.py
1.96 KB
06/23/2025 12:47:48 PM
rw-r--r--
📄
clconfig.py
1.68 KB
06/23/2025 12:47:48 PM
rw-r--r--
📄
clconfpars.py
12.09 KB
06/23/2025 12:47:48 PM
rw-r--r--
📄
clcustomscript.py
1.16 KB
06/23/2025 12:47:48 PM
rw-r--r--
📄
cldebug.py
905 bytes
06/23/2025 12:47:48 PM
rw-r--r--
📄
clemail.py
1.65 KB
06/23/2025 12:47:48 PM
rw-r--r--
📄
clexception.py
1.14 KB
06/23/2025 12:47:48 PM
rw-r--r--
📄
clfunc.py
6.47 KB
06/23/2025 12:47:48 PM
rw-r--r--
📄
clhook.py
3.86 KB
06/23/2025 12:47:48 PM
rw-r--r--
📄
cllog.py
1.45 KB
06/23/2025 12:47:48 PM
rw-r--r--
📄
cloutput.py
471 bytes
06/23/2025 12:47:48 PM
rw-r--r--
📄
clproc.py
4.05 KB
06/23/2025 12:47:48 PM
rw-r--r--
📄
clpwd.py
7.74 KB
06/23/2025 12:47:48 PM
rw-r--r--
📄
clquota.py
1.27 KB
06/23/2025 12:47:48 PM
rw-r--r--
📄
clsec.py
657 bytes
06/23/2025 12:47:48 PM
rw-r--r--
📄
clwpos_lib.py
16.6 KB
06/23/2025 12:47:48 PM
rw-r--r--
📄
const.py
277 bytes
06/23/2025 12:47:48 PM
rw-r--r--
📁
cpapi
-
09/05/2025 09:31:00 AM
rwxr-xr-x
📄
evr_utils.py
3.55 KB
06/23/2025 12:47:48 PM
rw-r--r--
📄
features.py
5.01 KB
06/23/2025 12:47:48 PM
rw-r--r--
📄
group_info_reader.py
5.29 KB
06/23/2025 12:47:48 PM
rw-r--r--
📁
lib
-
09/05/2025 09:30:59 AM
rwxr-xr-x
📄
lock.py
1.02 KB
06/23/2025 12:47:48 PM
rw-r--r--
📄
mail_helper.py
4.45 KB
06/23/2025 12:47:48 PM
rw-r--r--
📄
mysql_lib.py
5.84 KB
06/23/2025 12:47:48 PM
rw-r--r--
📄
php_conf_reader.py
9.77 KB
06/23/2025 12:47:48 PM
rw-r--r--
📁
public_hooks
-
09/05/2025 09:30:59 AM
rwxr-xr-x
📄
sysctl.py
7.61 KB
06/23/2025 12:47:48 PM
rw-r--r--
📄
ui_config.py
3.12 KB
06/23/2025 12:47:48 PM
rw-r--r--
📄
utils.py
33.13 KB
06/23/2025 12:47:48 PM
rw-r--r--
📄
utils_cmd.py
2.71 KB
06/23/2025 12:47:48 PM
rw-r--r--
Editing: clemail.py
Close
# -*- coding: utf-8 -*- # Copyright © Cloud Linux GmbH & Cloud Linux Software, Inc 2010-2018 All Rights Reserved # # Licensed under CLOUD LINUX LICENSE AGREEMENT # http://cloudlinux.com/docs/LICENSE.TXT # import os import jinja2 # Subject line prefix in template file SUBJECT_LINE_PREFIX = 'Subject:' # TODO: looks like this class is used only in lve-stats # and we should move it there class ClEmail: """ class for generation email messages """ def __init__(self): pass @staticmethod def generate_mail_jinja2(template_path, templ_data, subject=None): """ Generates email message using jinja2 template engine :param template_path: path to jinja2 template :param templ_data: Data to fill template using jinja2 :param subject: Email subject to use if it not found in template :return: Cortege (email_subject, email_body) """ # load and render template templ_loader = jinja2.FileSystemLoader(os.path.dirname(template_path)) templ_envir = jinja2.Environment(loader=templ_loader) message_lines = templ_envir.get_template( os.path.basename(template_path) ).render( templ_data ).split('\n') # Search subject string in template content if len(message_lines) > 2 and message_lines[0].startswith(SUBJECT_LINE_PREFIX) and message_lines[1] == '': subject = message_lines[0].replace(SUBJECT_LINE_PREFIX, '').strip() # Remove Subject line and separator (empty line) from message body message_lines.pop(1) message_lines.pop(0) return subject, '\n'.join(message_lines)