Current Path: > > opt > cloudlinux > venv > lib64 > python3.11 > > site-packages > clcommon
Operation : Linux premium131.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64 Software : Apache Server IP : 162.0.232.56 | Your IP: 216.73.216.111 Domains : 1034 Domain(s) Permission : [ 0755 ]
Name | Type | Size | Last Modified | Actions |
---|---|---|---|---|
__pycache__ | Directory | - | - | |
cpapi | Directory | - | - | |
lib | Directory | - | - | |
public_hooks | Directory | - | - | |
__init__.py | File | 1406 bytes | June 23 2025 12:47:48. | |
clcagefs.py | File | 11255 bytes | June 23 2025 12:47:48. | |
clcaptain.py | File | 2003 bytes | June 23 2025 12:47:48. | |
clconfig.py | File | 1724 bytes | June 23 2025 12:47:48. | |
clconfpars.py | File | 12376 bytes | June 23 2025 12:47:48. | |
clcustomscript.py | File | 1184 bytes | June 23 2025 12:47:48. | |
cldebug.py | File | 905 bytes | June 23 2025 12:47:48. | |
clemail.py | File | 1693 bytes | June 23 2025 12:47:48. | |
clexception.py | File | 1165 bytes | June 23 2025 12:47:48. | |
clfunc.py | File | 6623 bytes | June 23 2025 12:47:48. | |
clhook.py | File | 3956 bytes | June 23 2025 12:47:48. | |
cllog.py | File | 1488 bytes | June 23 2025 12:47:48. | |
cloutput.py | File | 471 bytes | June 23 2025 12:47:48. | |
clproc.py | File | 4146 bytes | June 23 2025 12:47:48. | |
clpwd.py | File | 7929 bytes | June 23 2025 12:47:48. | |
clquota.py | File | 1296 bytes | June 23 2025 12:47:48. | |
clsec.py | File | 657 bytes | June 23 2025 12:47:48. | |
clwpos_lib.py | File | 17003 bytes | June 23 2025 12:47:48. | |
const.py | File | 277 bytes | June 23 2025 12:47:48. | |
evr_utils.py | File | 3638 bytes | June 23 2025 12:47:48. | |
features.py | File | 5130 bytes | June 23 2025 12:47:48. | |
group_info_reader.py | File | 5413 bytes | June 23 2025 12:47:48. | |
lock.py | File | 1041 bytes | June 23 2025 12:47:48. | |
mail_helper.py | File | 4557 bytes | June 23 2025 12:47:48. | |
mysql_lib.py | File | 5984 bytes | June 23 2025 12:47:48. | |
php_conf_reader.py | File | 10000 bytes | June 23 2025 12:47:48. | |
sysctl.py | File | 7792 bytes | June 23 2025 12:47:48. | |
ui_config.py | File | 3198 bytes | June 23 2025 12:47:48. | |
utils.py | File | 33921 bytes | June 23 2025 12:47:48. | |
utils_cmd.py | File | 2771 bytes | June 23 2025 12:47:48. |
# -*- 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)
SILENT KILLER Tool