HEX
Server: LiteSpeed
System: Linux php-prod-1.spaceapp.ru 5.15.0-157-generic #167-Ubuntu SMP Wed Sep 17 21:35:53 UTC 2025 x86_64
User: xnsbb3110 (1041)
PHP: 8.1.33
Disabled: NONE
Upload Files
File: //proc/self/root/usr/local/CyberCP/websiteFunctions/__pycache__/views.cpython-310.pyc
o

��h��@szddlmZddlmZmZddlmZddlmZddl	Z	ddl
mZddl
mZddlmZddlmZdd	lmZdd
lmZddlmZdd
lmZddlmZddlmZddl m!Z!ddl"Z"ddl#m#Z#m$Z$ddl%Z%ddl&m'Z'ddl(Z(ddl)Z)dd�Z*dd�Z+dd�Z,dd�Z-dd�Z.dd�Z/dd �Z0d!d"�Z1d#d$�Z2d%d&�Z3d'd(�Z4d)d*�Z5d+d,�Z6d-d.�Z7d/d0�Z8d1d2�Z9d3d4�Z:d5d6�Z;d7d8�Z<d9d:�Z=d;d<�Z>d=d>�Z?d?d@�Z@dAdB�ZAdCdD�ZBdEdF�ZCdGdH�ZDdIdJ�ZEdKdL�ZFdMdN�ZGdOdP�ZHdQdR�ZIdSdT�ZJdUdV�ZKdWdX�ZLdYdZ�ZMd[d\�ZNd]d^�ZOd_d`�ZPdadb�ZQdcdd�ZRdedf�ZSdgdh�ZTdidj�ZUdkdl�ZVdmdn�ZWdodp�ZXdqdr�ZYdsdt�ZZdudv�Z[dwdx�Z\dydz�Z]d{d|�Z^d}d~�Z_dd��Z`d�d��Zad�d��Zbd�d��Zcd�d��Zdd�d��Zed�d��Zfd�d��Zgd�d��Zhd�d��Zid�d��Zjd�d��Zkd�d��Zld�d��Zmd�d��Znd�d��Zod�d��Zpd�d��Zqd�d��Zrd�d��Zsd�d��Ztd�d��Zud�d��Zvd�d��Zwd�d��Zxd�d��Zyd�d��Zzd�d��Z{d�d��Z|d�d��Z}d�d��Z~d�d��Zd�d��Z�d�d„Z�d�dĄZ�d�dƄZ�d�dȄZ�d�dʄZ�ed�d̄�Z�d�d΄Z�d�dЄZ�d�d҄Z�d�dԄZ�d�dքZ�d�d؄Z�d�dڄZ�d�d܄Z�d�dބZ�d�d�Z�d�d�Z�d�d�Z�d�d�Z�d�d�Z�d�d�Z�d�d�Z�d�d�Z�d�d�Z�d�d�Z�d�d�Z�d�d��Z�d�d��Z�d�d��Z�d�d��Z�d�d��Z�d��d�Z��d�d�Z��d�d�Z��d�d�Z��d�d�Z��d	�d
�Z��d�d�Z��d
�d�Z��d�d�Z��d�d�Z�e�d�d��Z��d�d�Z��d�d�Z��d�d�Z��d�d�Z��d�d�Z��d�d �Z��d!�d"�Z��d#�d"�Z��d$�d%�Z��d&�d'�Z��d(�d)�Z��d*�d+�Z��d,�d-�Z��d.�d/�Z��d0�d1�Z��d2�d3�Z��d4�d5�Z��d6�d7�Z��d8�d9�Z�e�d:�d;��Ze�d<�d=��Ze�d>�d?��Ze�d@�dA��Z�e�dB�dC��Z��dD�dE�Z�dS(F�)�redirect)�HttpResponse�JsonResponse��
Administrator)�
loadLoginPageN��
ACLManager)�httpProc)�	wpplugins)�WebsiteManager)�
pluginManager)�csrf_exempt�)�startContainer)�
stopContainer)�restartContainer)�get_website_resource_usage��datetime�	timedelta)�ProcessUtilitiescCs2|jd}tjj|d�}t|dd|ji�}|��S)N�userID��pkzwebsiteFunctions/index.html�type)�sessionr�objects�getr
r�render)�request�val�admin�proc�r$�,/usr/local/CyberCP/websiteFunctions/views.py�loadWebsitesHomes
�r&cC�:z|jd}t�}|�||�WStytt�YSw�Nr)rr�
createWebsite�KeyErrorrr�r r�wmr$r$r%r)%�
�r)cCr'r()rr�WPCreater*rrr+r$r$r%r..r-r.cC�Hz|jd}|j�d�}t�}|�|||�WSty#tt�YSw�Nr�DeleteID)r�GETrr�ListWPSitesr*rr�r rr1r,r$r$r%r37s
�r3cC�Vz|jd}|j�d�}|j�d�}t�}|�||||�WSty*tt�YSw�Nr�IDr1)rr2rr�WPHomer*rr)r r�WPidr1r,r$r$r%r8A�
�r8cCr/)Nr�BackupID)rr2rr�RestoreHomer*rr)r rr;r,r$r$r%r<M�
�r<cCr/r0)rr2rr�RemoteBackupConfigr*rrr4r$r$r%r>Xr=r>cCr5r6)rr2rr�BackupfileConfigr*rr)r rr7r1r,r$r$r%r?cr:r?cCr5r6)rr2rr�AddRemoteBackupsiter*rr)r rr7�DeleteSiteIDr,r$r$r%r@or:r@cCr'r()rr�WordpressPricingr*rrr+r$r$r%rB{r-rBcCr/r0)rr2rr�RestoreBackupsr*rrr4r$r$r%rC�r=rCcCr'r()rr�	AutoLoginr*rrr+r$r$r%rD�s
�rDc
Cs�zP|jd}tjj|d�}|j�dd�}|dkrGztjj||d�}|��d}WntyF}ztj	�
d||f�d}WYd}~nd}~wwt�}|�||�WSt
y]tt�YSw)Nrr�delete)r�ownerrz%DeleteFileID ....... %s....msg.....%sr)rrrrr2rrE�
BaseException�logging�CyberCPLogFileWriter�writeToFiler�ConfigurePluginsr*rr)r r�userobj�DeleteFileID�jobobj�Deleted�msgr,r$r$r%rK�s&
���rKcCr'r()rr�Addnewpluginr*rrr+r$r$r%rQ�r-rQcC�xz.|jd}t�|�}|dkr|WSt�}|�|t�|j��}t�||�}|dkr,|WS|WSt	y;t
t�YSw�Nr��)rr
�preWebsiteCreationr�SearchOnkeyupPlugin�json�loads�body�postWebsiteCreationr*rr�r r�resultr,�
coreResultr$r$r%rV��

�rVcCrRrS)rr
rUr�AddNewpluginAjaxrWrXrYrZr*rrr[r$r$r%r_�r^r_cCr/)Nrr7)rr2rr�
EidtPluginr*rr)r r�	pluginbIDr,r$r$r%r`�r=r`cCrRrS)rr
rUr�deletesPlginrWrXrYrZr*rrr[r$r$r%rb�r^rbcCrRrS)rr
rUr�
AddplugineidtrWrXrYrZr*rrr[r$r$r%rcr^rccCrRrS)rr
rUr�submitWorpressCreationrWrXrYrZr*rrr[r$r$r%rdr^rdcCrRrS)rr
rUr�FetchWPdatarWrXrYrZr*rrr[r$r$r%re.r^recCrRrS)rr
rUr�GetCurrentPluginsrWrXrYrZr*rrr[r$r$r%rfDs

�rfcCrRrS)rr
rUr�fetchstagingrWrXrYrZr*rrr[r$r$r%rg[r^rgcCrRrS)rr
rUr�
fetchDatabaserWrXrYrZr*rrr[r$r$r%rhqr^rhcCrRrS)rr
rUr�SaveUpdateConfigrWrXrYrZr*rrr[r$r$r%ri�r^ricC�Bz|jd}t�}|�|t�|j��WSty tt�YSwr()	rr�DeploytoProductionrWrXrYr*rrr+r$r$r%rk�s
�rkcCrRrS)rr
rUr�WPCreateBackuprWrXrYrZr*rrr[r$r$r%rl�r^rlcCrRrS)rr
rUr�RestoreWPbackupNowrWrXrYrZr*rrr[r$r$r%rm�r^rmcCrRrS)rr
rUr�SaveBackupConfigrWrXrYrZr*rrr[r$r$r%rn��

�rncCrRrS)rr
rUr�SaveBackupSchedulerWrXrYrZr*rrr[r$r$r%rp�rorpcCrRrS)rr
rUr�AddWPsiteforRemoteBackuprWrXrYrZr*rrr[r$r$r%rq	rorqcCrRrS)rr
rUr�UpdateRemoteschedulesrWrXrYrZr*rrr[r$r$r%rrrorrcCrRrS)rr
rUr�ScanWordpressSiterWrXrYrZr*rrr[r$r$r%rs3rorscCrRrS)rr
rUr�
installwpcorerWrXrYrZr*rrr[r$r$r%rtHr^rtcCrRrS)rr
rUr�
dataintegrityrWrXrYrZr*rrr[r$r$r%ru^r^rucCrRrS)rr
rUr�GetCurrentThemesrWrXrYrZr*rrr[r$r$r%rvtr^rvcC�Fz|jd}t�|j�}t�}|�||�WSty"tt�YSwr()	rrWrXrYr�UpdateWPSettingsr*rr�r r�datar,r$r$r%rx�s
�rxcCrRrS)rr
rUr�
UpdatePluginsrWrXrYrZr*rrr[r$r$r%r{�r^r{cCrRrS)rr
rUr�UpdateThemesrWrXrYrZr*rrr[r$r$r%r|�r^r|cCrRrS)rr
rUr�
DeletePluginsrWrXrYrZr*rrr[r$r$r%r}�r^r}cCrRrS)rr
rUr�DeleteThemesrWrXrYrZr*rrr[r$r$r%r~�r^r~cCrRrS)rr
rUr�ChangeStatusrWrXrYrZr*rrr[r$r$r%r�r^rcCrRrS)rr
rUr�ChangeStatusThemesrWrXrYrZr*rrr[r$r$r%�StatusThemesr^r�cCrRrS)rr
rUr�CreateStagingNowrWrXrYrZr*rrr[r$r$r%r�r^r�c
Cshz|jd}t�}|�||�WSty'}ztt|��WYd}~Sd}~wty3tt�YSwr()	rr�
modifyWebsiterGr�strr*rr)r rr,rPr$r$r%r�/s
��r�cCr'r()rr�
deleteWebsiter*rrr+r$r$r%r�;r-r�cCr'r()rr�CreateNewDomainr*rrr+r$r$r%r�Dr-r�cCr'r()rr�	siteStater*rrr+r$r$r%r�Mr-r�cCr'r()rr�listWebsitesr*rrr+r$r$r%r�Vr-r�cCr'r()rr�listChildDomainsr*rrr+r$r$r%r�_r-r�cCrRrS)rr
rUr�submitWebsiteCreationrWrXrYrZr*rrr[r$r$r%r�hr^r�cCrRrS)rr
�preDomainCreationr�submitDomainCreationrWrXrY�postDomainCreationr*rrr[r$r$r%r�~�

�r�cCrjr()	rr�fetchDomainsrWrXrYr*rrr+r$r$r%r���
�r�cCrjr()	rr�searchWebsitesrWrXrYr*rrr+r$r$r%r��r�r�cCrjr()	rr�searchChildsrWrXrYr*rrr+r$r$r%r��r�r�cCrjr()	rr�getFurtherAccountsrWrXrYr*rrr+r$r$r%r��r�r�cCrjr()	rr�fetchWebsitesListrWrXrYr*rrr+r$r$r%r��r�r�cCrjr()	rr�fetchChildDomainsMainrWrXrYr*rrr+r$r$r%r��r�r�cCrRrS)rr
�preWebsiteDeletionr�submitWebsiteDeletionrWrXrY�postWebsiteDeletionr*rrr[r$r$r%r��r�r�cCrRrS)rr
�preDomainDeletionr�submitDomainDeletionrWrXrY�postDomainDeletionr*rrr[r$r$r%r���

�r�cCs:z|jd}t�}|�||�WStytt�YSwr()rr�convertDomainToSiter*rrr+r$r$r%r��s
�r�cCrRrS)rr
�preWebsiteSuspensionr�submitWebsiteStatusrWrXrY�postWebsiteSuspensionr*rrr[r$r$r%r��r�r�cCrjr()	rr�submitWebsiteModifyrWrXrYr*rrr+r$r$r%r�s
�r�cCrRrS)rr
�preWebsiteModificationr�saveWebsiteChangesrWrXrY�postWebsiteModificationr*rrr[r$r$r%r�r�r�cCs�z8|jjs	d|j_||jd<t�|�}|dkr|WS|jd}t|�}|�||�}t�||�}|dkr6|WS|WStyEt	t
�YSw)NT�domainrTr)r2�_mutabler
�	preDomainrr�loadDomainHome�
postDomainr*rr)r r�r\rr,r]r$r$r%r�4s"


�r�cCs>z|jd}t||�}|�||�WStytt�YSwr()rr�launchChildr*rr�r r��childDomainrr,r$r$r%r�Ms

�r�cCrjr()	rr�getDataFromLogFilerWrXrYr*rrr+r$r$r%r�Vr�r�cCrjr()	rr�fetchErrorLogsrWrXrYr*rrr+r$r$r%r�_r�r�cCrjr()	rr�getDataFromConfigFilerWrXrYr*rrr+r$r$r%r�hr�r�cCrRrS)rr
�preSaveConfigsToFiler�saveConfigsToFilerWrXrY�postSaveConfigsToFiler*rrr[r$r$r%r�qr�r�cCrjr()	rr�getRewriteRulesrWrXrYr*rrr+r$r$r%r��r�r�cCrRrS)rr
�preSaveRewriteRulesr�saveRewriteRulesrWrXrY�postSaveRewriteRulesr*rrr[r$r$r%r��r�r�cCrRrS)rr
�
preSaveSSLr�saveSSLrWrXrY�postSaveSSLr*rrr[r$r$r%r��r�r�cCrRrS)rr
�preChangePHPr�	changePHPrWrXrY�
postChangePHPr*rrr[r$r$r%r��r�r�cCr'r()rr�listCronr*rrr+r$r$r%r��r-r�cCrjr()	rr�getWebsiteCronrWrXrYr*rrr+r$r$r%r��r�r�cCrjr()	rr�
getCronbyLinerWrXrYr*rrr+r$r$r%r��r�r�cCrjr()	rr�saveCronChangesrWrXrYr*rrr+r$r$r%r��r�r�cCrRrS)rr
�preRemCronbyLiner�
remCronbyLinerWrXrY�postRemCronbyLiner*rrr[r$r$r%r��r�r�cCrRrS)rr
�
preAddNewCronr�
addNewCronrWrXrY�postAddNewCronr*rrr[r$r$r%r�
r�r�cC�<z|jd}t|�}|�||�WStytt�YSwr()rr�domainAliasr*rr�r r�rr,r$r$r%r��
�r�cCrRrS)rr
�preSubmitAliasCreationr�submitAliasCreationrWrXrY�postSubmitAliasCreationr*rrr[r$r$r%r�'r�r�cCrjr()	rr�
issueAliasSSLrWrXrYr*rrr+r$r$r%r�;r�r�cCrRrS)rr
�preDelateAliasr�delateAliasrWrXrY�postDelateAliasr*rrr[r$r$r%r�Dr�r�cCrRrS)rr
�preChangeOpenBasedirr�changeOpenBasedirrWrXrY�postChangeOpenBasedirr*rrr[r$r$r%r�Xr�r�cCr�r()rr�wordpressInstallr*rrr�r$r$r%r�nr�r�cCrjr()	rr�installWordpressrWrXrYr*rrr+r$r$r%r�wr�r�cCrjr()	rr�installWordpressStatusrWrXrYr*rrr+r$r$r%r��r�r�cCr�r()rr�
joomlaInstallr*rrr�r$r$r%r��r�r�cCrjr()	rr�
installJoomlarWrXrYr*rrr+r$r$r%r��r�r�cCr�r()rr�setupGitr*rrr�r$r$r%r��r�r�cCrjr()	rr�setupGitReporWrXrYr*rrr+r$r$r%r��r�r�cCs.z	t|�}|��WStytt�YSw�N)r�	gitNotifyr*rr�r r�r,r$r$r%r��s
�r�cCrjr()	rr�
detachReporWrXrYr*rrr+r$r$r%r��r�r�cCrjr()	rr�changeBranchrWrXrYr*rrr+r$r$r%r��r�r�cCr�r()rr�installPrestaShopr*rrr�r$r$r%r��r�r�cCr�r()rr�installMagentor*rrr�r$r$r%r��r�r�cCrjr()	rr�magentoInstallrWrXrYr*rrr+r$r$r%r��r�r�cCr�r()rr�
installMauticr*rrr�r$r$r%r��r�r�cCrjr()	rr�
mauticInstallrWrXrYr*rrr+r$r$r%r��r�r�cCrjr()	rr�prestaShopInstallrWrXrYr*rrr+r$r$r%r��r�r�cCr�r()rr�	sshAccessr*rrr�r$r$r%r��s
4�r�cCrjr()	rr�saveSSHAccessChangesrWrXrYr*rrr+r$r$r%r�:r�r�cCr�r()rr�setupStagingr*rrr�r$r$r%r�Cr�r�cCrjr()	rr�startCloningrWrXrYr*rrr+r$r$r%r�Lr�r�cCs@z|jd}t|�}|�||d|�WStytt�YSwr()rr�syncToMasterr*rrr�r$r$r%r�Us
�r�cCrjr()	rr�	startSyncrWrXrYr*rrr+r$r$r%r�^r�r�cCsVz|jjs	d|j_||jd<|jd}t|�}|�||�WSty*tt�YSw)NTr�r)r2r�rr�	manageGITr*rrr�r$r$r%r�is

�r�cCrjr()	rr�fetchFolderDetailsrWrXrYr*rrr+r$r$r%r�yr�r�cCrjr()	rr�initReporWrXrYr*rrr+r$r$r%r��r�r�cCrjr()	rr�setupRemoterWrXrYr*rrr+r$r$r%r��r�r�cCrjr()	rr�changeGitBranchrWrXrYr*rrr+r$r$r%r��r�r�cCrjr()	rr�createNewBranchrWrXrYr*rrr+r$r$r%r��r�r�cCrjr()	rr�
commitChangesrWrXrYr*rrr+r$r$r%r��r�r�cCrjr()	rr�gitPullrWrXrYr*rrr+r$r$r%r��r�r�cCrjr()	rr�gitPushrWrXrYr*rrr+r$r$r%r��r�r�cCrjr()	rr�
attachRepoGITrWrXrYr*rrr+r$r$r%r��r�r�cCrjr()	rr�removeTrackingrWrXrYr*rrr+r$r$r%r��r�r�cCrjr()	rr�fetchGitignorerWrXrYr*rrr+r$r$r%r��r�r�cCrjr()	rr�
saveGitIgnorerWrXrYr*rrr+r$r$r%r��r�r�cCrjr()	rr�fetchCommitsrWrXrYr*rrr+r$r$r%r��r�r�cCrjr()	rr�
fetchFilesrWrXrYr*rrr+r$r$r%r��r�r�cCrjr()	rr�fetchChangesInFilerWrXrYr*rrr+r$r$r%r��r�r�cCrjr()	rr�saveGitConfigurationsrWrXrYr*rrr+r$r$r%r�r�r�cCrjr()	rr�fetchGitLogsrWrXrYr*rrr+r$r$r%r�	r�r�cCrjr()	rr�
getSSHConfigsrWrXrYr*rrr+r$r$r%r�r�r�cCrjr()	rr�deleteSSHKeyrWrXrYr*rrr+r$r$r%rr�rcCrjr()	rr�	addSSHKeyrWrXrYr*rrr+r$r$r%r$r�rcCs8zt�}|�|t�|j��WStytt�YSwr�)r�webhookrWrXrYr*rrr�r$r$r%r-s�rcCr�r()rr�
ApacheManagerr*rrr�r$r$r%r6r�rcCrjr()	rr�getSwitchStatusrWrXrYr*rrr+r$r$r%r?r�rcCrjr()	rr�switchServerrWrXrYr*rrr+r$r$r%rHr�rcCs`z"|jd}t�|j�}ddlm}tjj|d�}|||�}|�	�WSt
y/tt�YSw)Nrr)�CloudManagerr)
rrWrXrY�cloudAPI.cloudManagerrrrr�
statusFuncr*rr)r rrzrr"�cmr$r$r%rQs


�rcCrwr()	rrWrXrYr�tuneSettingsr*rrryr$r$r%r
]�
�r
cCrwr()	rrWrXrYr�saveApacheConfigsToFiler*rrryr$r$r%rgrrc
Csbz|jd}tjj|d�}t|dd|ji�}|��WSty0}z
t|�WYd}~Sd}~ww)Nrrz)websiteFunctions/CreateDockerPackage.htmlr)	rrrrr
rrrGr)r r!r"r#rPr$r$r%�CreateDockerPackageqs
�
��r
cC�Jz|jd}|j�d�}t�}|�||d|�WSty$tt�YSwr0)rr2rrr
r*rrr4r$r$r%r
|�
�cCrr0)rr2rr�
AssignPackager*rrr4r$r$r%r�rrcCr'r()rr�CreateDockersiter*rrr+r$r$r%r�r-rcCrwr()	rrWrXrYr�AddDockerpackager*rrryr$r$r%r�rrcCrwr()	rrWrXrYr�
Getpackager*rrryr$r$r%r�rrcCrwr()	rrWrXrYr�
Updatepackager*rrryr$r$r%r�rrcCrwr()	rrWrXrYr�
AddAssignmentr*rrryr$r$r%r�rrcCrwr()	rrWrXrYr�submitDockerSiteCreationr*rrryr$r$r%r�rrcCrr0)rr2rr�ListDockerSitesr*rrr4r$r$r%r�rrcCrwr()	rrWrXrYr�fetchDockersiter*rrryr$r$r%r�rrcCs>z|jd}t|�}|�||d�WStytt�YSwr()rr�Dockersitehomer*rr)r �	dockerapprr,r$r$r%r�s
�rcCsJz|jd}d|j�d�i}t�}|�||�WSty$tt�YSw)Nrr�)r�POSTrr�fetchWPSitesForDomainr*rrryr$r$r%�fetchWPDetails�s
��rcC�:z|jdkrt|�WStd�WStytt�YSw�NrzNot allowed)�method�docker_startContainerrr*rr�r r$r$r%r��


�rcCrr)r �docker_stopContainerrr*rrr"r$r$r%r�r#rcCrr)r �docker_restartContainerrr*rrr"r$r$r%rr#rc

Cs0zqt�|j�}|d}z|jd}tjj|d�}Wn
tddd��YWSt�	|�}ddl
m}z	|jj|d�}Wn|jyMtdd	d��YWSwt�
|||�d
krXnt��WSt|j�}|ddkrmt|�WSt|�WSty�}	ztj�dt|	����tdt|	�d��WYd}	~	Sd}	~	ww)
Nr�rrrzUnauthorized access��status�
error_message��Websites�r��Website not foundrr'z Error in get_website_resources: )rWrXrYrrrrrr	�	loadedACL�websiteFunctions.modelsr*�DoesNotExist�checkOwnership�	loadErrorr�externalApprGrHrIrJr�)
r rzr�rr"�
currentACLr*�website�
resource_datarPr$r$r%�get_website_resourcess6

�



��r6c
Cs�ddl}|�d�}�zM|�d�|�d|j���t�|j�}|�d�}|�d|���|s;|�d�tddd	��WS|j�d
�}|�d|���|sX|�d�tdd
d	��WSddl	m
}ddlm}ddl
m}|jj|d�}	|�|�}
|�||	|
�dkr�|�d�tddd	��WSz	|jj|d�}Wn|jy�|�d�tddd	��YWSw|j}|�d|���|s�|�d�tddd	��WSddlm}
m}ddl}d}z<t�d�}|��D]0}t�d|�}|�r|�d�dk�r|�d�}tj�tj ��r
ddl!m"}|�#d|���nq�Wnt$�y,}z|�d |���WYd}~nd}~ww|�s2d!}|||
�%�|d"d#�d$�}|j&||d%d&�}|�d'|���td||d(��WSt$�y}}z|�d)t'|����tdt'|�d	��WYd}~Sd}~ww)*Nrzcyberpanel.ssh.jwtzget_terminal_jwt calledzRequest body: r�zDomain: zNo domain providedzDomain requiredr&rzUser ID from session: zUser not authenticatedzNot authenticatedr)rrrrzUser not authorized for domainzNot authorizedr+r,z
SSH user: z.SSH user is empty or not set for this website.z)SSH user not configured for this website.rz,cat /usr/local/CyberCP/fastapi_ssh_server.pyz"\s*JWT_SECRET\s*=\s*[\'"](.+)[\'"]�REPLACE_ME_WITH_INSTALLER)rIzJWT_SECRET: zCould not read JWT_SECRET: �YOUR_SECRET_KEY�
)�minutes)�user_id�ssh_user�exp�HS256)�	algorithmzJWT generated: )r'�tokenr<zException in get_terminal_jwt: )(rH�	getLogger�errorrYrWrXrrrr.r*�plogical.aclr	�loginSystem.modelsrrr-r0r/r2rr�jwtr�outputExecutioner�
splitlines�re�match�group�os�path�exists�	debugPath�plogical.CyberCPLogFileWriterrI�writeLog�	Exception�utcnow�encoder�)r rH�loggerrzr�r;r*r	rr"r3r4r<rr�pyjwt�
jwt_secret�content�line�mrI�e�payloadr@r$r$r%�get_terminal_jwt9s�







�


������r\cCrRrS)rr
rUr�fetchWPBackupsrWrXrYrZr*rrr[r$r$r%r]|ror])��django.shortcutsr�django.httprrrDr�loginSystem.viewsrrWrOrIrHrCr	�plogical.httpProcr
r.r�websiteFunctions.websiter�websiteFunctions.pluginManagerr
�django.views.decorators.csrfr�dockerviewsrr!rr$rr%�resource_monitoringrrErr�OpenSSL�plogical.processUtilitiesrrKrHr&r)r.r3r8r<r>r?r@rBrCrDrKrQrVr_r`rbrcrdrerfrgrhrirkrlrmrnrprqrrrsrtrurvrxr{r|r}r~rr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rrrrrrrr
rr
rrrrrrrrrrrr6r\r]r$r$r$r%�<module>sn		
	
																														
								<													
														



	






				&B