§ ;Š»jz+ ã óº — d dl Z d dlmZ d dlmZ d dlmZ d dlmZ d dl m Z d dlmZ d dl mZ e j d ¦ « d k Z G d„ de¦ « ZdS ) é N)ÚFeature)Úexec_utility)Údefaultdict)ÚClPwd)Úlvectl_custompanel_script)ÚGeneralPanelPluginV1)ÚCPAPIExternalProgramFailedÚ USE_ENCHANCED_CUSTOM_LONG_SCRIPTÚ1c ó¼ ‡ — e Zd Zˆ fd„Zd„ Zd„ Z dd„Z dˆ fd „ Zd„ Zdˆ fd„ Z d „ Z d„ Zd„ Zd„ Z d„ Zdd„Zdd„Zd„ Zd„ Zˆ fd„Zdd„Zdee fd„Zˆ xZS )ÚPanelPluginc ó| •— t ¦ « ¦ « t ¦ « | _ d| _ d S )NÚUnknown)ÚsuperÚ__init__r Ú_custom_script_nameÚ_cp_name)ÚselfÚ __class__s €ú¦/builddir/build/BUILDROOT/alt-python27-cllib-3.4.44-1.el8.cloudlinux.x86_64/opt/cloudlinux/venv/lib/python3.11/site-packages/clcommon/cpapi/plugins/backward_plugin.pyr zPanelPlugin.__init__ s2 ø€ Ý ‰Œ×ÒÑÔÐÝ#<Ñ#>Ô#>ˆÔ Ø!ˆŒ ˆ ˆ ó c ó — | j S )z4 Return panel name :return: )r ©r s r Ú getCPNamezPanelPlugin.getCPName s € ð Œ}Ðr c ó* — | j �| j dddœS dS )zÆ Retrieve panel name and it's version :return: dict: { 'name': 'panel_name', 'version': 'panel_version', 'additional_info': 'add_info'} or None if can't get info NÚ0)ÚnameÚversionÚadditional_info)r r r s r Úget_cp_descriptionzPanelPlugin.get_cp_description s$ € ð Ô#Ð/Ø œM°cÈdÐSÐSÐSàˆtr N©ÚcploginÚpackageÚmailÚresellerÚdnsÚlocaleTc ó2 — | |||¬¦ « S )N)ÚkeylsÚsearch_sys_users)Ú_cpinfo)r Úcpuserr) r* s r ÚcpinfozPanelPlugin.cpinfo, s € à�|Š|˜F¨%ÐBRˆ|ÑSÔSÐSr ©r" r# r$ r% r&