D7net
Home
Console
Upload
information
Create File
Create Folder
About
Tools
:
/
opt
/
imunify360
/
venv
/
lib
/
python3.11
/
site-packages
/
im360
/
simple_rpc
/
Filename :
hosting_panel.py
back
Copy
from defence360agent.rpc_tools import ValidationError from defence360agent.rpc_tools.lookup import RootEndpoints, bind from defence360agent.subsys.panels.base import PanelException from defence360agent.utils import Scope from im360.subsys.panels import hosting_panel from im360.subsys.panels.base import use_modsec_lock from im360.simple_rpc.unavailable_on_freemium import unavailable_on_freemium class HostingPanelEndpoints(RootEndpoints): SCOPE = Scope.IM360 @bind("install-vendors") @unavailable_on_freemium @use_modsec_lock async def install_vendors(self): try: return await self.hosting_panel.install_settings() except PanelException as e: raise ValidationError(str(e)) @bind("uninstall-vendors") @use_modsec_lock async def uninstall_vendors(self): try: return await self.hosting_panel.revert_settings() except PanelException as e: raise ValidationError(str(e)) @bind("admin-emails") async def get_admin_emails(self): return await self.hosting_panel.get_admin_emails() @property def hosting_panel(self): try: return hosting_panel.HostingPanel() except PanelException as e: raise ValidationError(str(e))