Ich hab jetzt mal gegooglet und nix derartiges gefunden, nur so fertig "Web FTP" Seiten, welche man dann wie ein FTP Client nutzt. Etwas ähnliches wie in deinem Panel vorhanden ist hab ich nicht gefunden.
Hab mir auch mal Westi's Panel angeschaut und festgestellt das man ohne weiteres das da gar nicht so einfach raus bekommt, dann frag ich mich wieso du dir soviel mühe machst um sowas angeblich rauszubauen anstatt einfach selbst etwas zu machen, wenn der rest ja sowieso von dir ist...
Hey,
ich gebe nicht an ein eigenes gemacht zu haben, das WebFTP script von Westi blieb so wie es war nur ein wenig ein dem Quellentext (style Mäsig) editiert.
Ich habe viele dinge neu geschrieben und natürlich auch verändert.
Ich werde später dir das Web FTP geschichten zeugs von dort raus kopieren 
Neuer demo Link:
http://95.115.255.24/555/index.php?mode=login
Die WebFTP Funktion: (Hoffe das sie dir was bringt)
class FileManagerCore
{
function RemoveFolder($dir, $DeleteMe = true)
{
if(!$dh = @opendir($dir)) return;
while(false !== ($obj = readdir($dh)))
{
if($obj == '.'
 $obj == '..') continue;
 $obj == '..') continue;if(!@unlink($dir.'/'.$obj)) FileManagerCore::RemoveFolder($dir.'/'.$obj, true);
}
if ($DeleteMe)
{
@rmdir($dir);
}
}
{
$filepath = $folder.'/'.$path;
$filepath = str_replace("../", "", $filepath);
MiscCore::SuccessFunc('Die Datei wurde erfolgreich gelöscht. ('.$path.') <br /><a href="?mode=files&dir='.$_GET['redir'].'">Zurück</a><br />');
}
function EditFiles($path, $file, $returnurl = false)
{
if(!isset($file)
 !isset($path))
 !isset($path)){
MiscCore::ErrorFunc('Diese Datei existiert nicht.');
}
 !FileManagerCore::CheckBlackList($dir[1]))
 !FileManagerCore::CheckBlackList($dir[1])){
MiscCore::ErrorFunc("Sie können diese Datei nicht bearbeiten.");
}
$filepath = str_replace("../", "", $filepath);
{
MiscCore::ErrorFunc("Diese Datei existiert nicht.", true);
}
{
if(!isset($_POST['newfile']))
{
MiscCore::ErrorFunc('Bitte geben sie neue Daten für diese Datei ein.');
}
{
MiscCore::ErrorFunc("Diese Datei existiert nicht.", true);
}
$result = stripslashes($_POST['newfile']);
fwrite($f, $result);
fclose($f);
}
else
{
if(!file_exists($filepath))
{
MiscCore::ErrorFunc("Diese Datei existiert nicht.", true);
}
$data = @fread($f, filesize($filepath));
fclose($f);
echo '<textarea name="newfile" rows="20" cols="78" style="font-family: Consolas, \'Courier New\'; font-size: 12px;">'.htmlentities($data).'</textarea>';
echo '<br />';
echo '<input type="submit" class="button" name="submit" value="Speichern" />  <a href="?mode=files&dir='.$_GET['redir'].'"><span class="button">Abbrechen</span></a>';
echo '</form>';
}
}
{
$filepath = $basedir.'/'.$path;
$filepath = str_replace("../", "", $filepath);
fwrite($handle, '');
fclose($handle);
}
{
$oldumask = umask(0);
mkdir ($path.''.$folder, 0777);
umask($oldumask);
}
{
$returnage = "";
{
if (isset($_FILES['file']) == false OR $_FILES['file']['error'] == UPLOAD_ERR_NO_FILE)
{
MiscCore::ErrorFunc('Sie haben keine Datei zum Hochladen ausgewählt.');
}
 !FileManagerCore::CheckExtBlackList($_FILES['file']['name']))
 !FileManagerCore::CheckExtBlackList($_FILES['file']['name'])){
$_SESSION['file_error'] = true;
MiscCore::ErrorFunc('Die Datei die sie Hochladen wollen ist zu groß.', true);
}
move_uploaded_file($_FILES['file']['tmp_name'], $newfile);
}
else
{
$returnage .= '<form action="" method="POST" enctype="multipart/form-data">';
$returnage .= '<input type="file" name="file" size="30">';
$returnage .= '<input type="submit" class="button" value="Datei Hochladen" />';
$returnage .= '</form>';
return $returnage;
}
}
{
$backup = $basedir.'/'.$file;
header('Content-type: application/octet-stream');
header("Content-Length: ".filesize($backup));
header('Content-Disposition: attachment; filename="'.$file.'"');
readfile($backup);
exit;
}
{
rename($oldpath, $newpath);
}
{
global $file_folder_blacklist;
$path = MiscCore::WeedKiller($path, $disallowed);
print '<a href="?mode=files">~</a>/';
$string = "";
$msg = "";
$i = 0;
{
str_replace("/", "", $content);
$i++;
if($i == 1) $string .= $content;
else $string .= '/'.$content;
$msg .= '<a href="?mode=files&dir='.$string.'">'.$content.'</a>/';
}
{
if(!FileManagerCore::CheckBlackList($blocked)) MiscCore::ErrorFunc("Der Zugang zu diesem Bereich ist von ihrer Ip Adresse verweigert!", true);
}
echo '<div id="filemgr_toolbar" style="display:none;">';
<label>Name: <input type="text" name="textfield">   </label>
<label>Ordner: <input name="result" type="radio" value="folder">   </label>
<label>Datei: <input name="result" type="radio" value="file">   </label>
<input name="create" type="submit" value="Erstellen" class="button">
</form>'.
FileManagerCore::UploadFiles($_SESSION['f_folder']));
echo "<br /><strong>Hilfe:</strong> Öffne die Option in dem sie auf das Bild klicken. <br />Schliese die Option in dem sie nochmals auf das Bild klicken.";
echo "</div>";
if($handle = @opendir($path))
{
echo '<br /><br />'; /*<strong>Directories</strong><br />';*/
while(false !== ($file = readdir($handle)))
{
if ($file != "." && $file != "..")
{
$fName = $file;
if(is_dir($path.'/'.$file))
{
if(!FileManagerCore::CheckBlackList($fName)) continue;
if(!FileManagerCore::CheckExtBlackList($fName)) continue;
if(!is_readable($path.'/'.$file)
 !is_writeable($path.'/'.$file)) continue;
 !is_writeable($path.'/'.$file)) continue;echo '<table width="570" border="0" cellpadding="3" cellspacing="0">
<tr>
<td width="4%">
<div id="fileicon-a'.$index.'" style="display: block;">
<a style="cursor: crosshair;" alt="Klicken sie hier um die Optionen zu zeigen." onclick="ShowBoxRaw(\'filecontent-'.$index.'\', this, \'block\'); ShowBoxRaw(\'fileicon-a'.$index.'\', this, \'none\'); ShowBoxRaw(\'fileicon-b'.$index.'\', this, \'block\');">
<img src="index.php?image_create=folder" alt="" style="border: 0px; padding: 0px; margin: 0px;" />
</a>
</div>
<div id="fileicon-b'.$index.'" style="display: none;">
<a style="cursor: crosshair;" alt="Klicken sie hier um die Optionen zu schließen." onclick="ShowBoxRaw(\'filecontent-'.$index.'\', this, \'none\'); ShowBoxRaw(\'fileicon-a'.$index.'\', this, \'block\'); ShowBoxRaw(\'fileicon-b'.$index.'\', this, \'none\');">
<img src="index.php?image_create=folder" alt="" style="border: 0px; padding: 0px; margin: 0px;" />
</a>
</div>
</td>
<td width="96%"><a href="?mode=files&dir='.$_GET['dir'].'/'.$file.'">'.$file.'</a></td>
</table>';
"\n".'<div class="filepadding"><table width="290" border="0" cellspacing="0" cellpadding="2">'.
"\n".'<tr>'.
"\n".'<td width="16"><a href="?mode=files&fdelete='.$_GET['dir'].'/'.$file.'&redir='.$_GET['dir'].'"><img src="index.php?image_create=_delete" alt="Löschen" style="border: 0px; padding: 0px; margin: 0px; a:link { border: 0px; }" /></a></td>'.
"\n".'<td width="65">Löschen</td>'.
"\n".'<td><strong>Bearbeitet am:</strong> '.date("d/m/Y H:i:s", filemtime(_DIRECTORY.'/'.$_GET['dir'].'/'.$file)).'</td>'.
"\n".'</tr><tr>'.
"\n".'<td width="16"><a href="?mode=files&dir='.$_GET['dir'].'/'.$file.'"><img src="index.php?image_create=folder" alt="" style="border: 0px; padding: 0px; margin: 0px;" /></a></td>'.
"\n".'<td width="65">Öffnen</td>'.
"\n".'<td><strong>Dateiberechtigung:</strong> '.FileManagerCore::ViewPermsColour(_DIRECTORY.'/'.$_GET['dir'].'/'.$file).'</td>'.
"\n".'</tr><tr>'.
"\n".'<td width="16"></td>'.
"\n".'<td width="65"></td>'.
"\n".'<td> </td>'.
"\n".'</tr>'.
"\n".'</table></div>'.
"\n".'</div>';
$index++;
}
}
}
closedir($handle);
}
{
//echo '<br /><strong>Files</strong><br />';
echo "<br />";
while($file = readdir($handle))
{
if ($file != "." && $file != "..")
{
$fName = $file;
/* Getting teh files */
if(!is_dir($path.'/'.$file))
{
if(!FileManagerCore::CheckBlackList($fName)) continue;
if(!FileManagerCore::CheckExtBlackList($fName)) continue;
if(!is_readable($path.'/'.$file)
 !is_writeable($path.'/'.$file)) continue;
 !is_writeable($path.'/'.$file)) continue;echo '<table width="570" border="0" cellpadding="3" cellspacing="0">
<tr>
<td width="4%">
<div id="fileicon-a'.$index.'" style="display: block;">
<a style="cursor: crosshair;" alt="Klicken sie hier um die Optionen zu zeigen." onclick="ShowBoxRaw(\'filecontent-'.$index.'\', this, \'block\'); ShowBoxRaw(\'fileicon-a'.$index.'\', this, \'none\'); ShowBoxRaw(\'fileicon-b'.$index.'\', this, \'block\');">
<img src="index.php?image_create='.MiscCore::ReturnExtension($fName).'" alt="" style="border: 0px; padding: 0px; margin: 0px;" />
</a>
</div>
<div id="fileicon-b'.$index.'" style="display: none;">
<a style="cursor: crosshair;" alt="Klicken sie hier um die Optionen zu schließen." onclick="ShowBoxRaw(\'filecontent-'.$index.'\', this, \'none\'); ShowBoxRaw(\'fileicon-a'.$index.'\', this, \'block\'); ShowBoxRaw(\'fileicon-b'.$index.'\', this, \'none\');">
<img src="index.php?image_create='.MiscCore::ReturnExtension($fName).'" alt="" style="border: 0px; padding: 0px; margin: 0px;" />
</a>
</div>
</td>
<td width="96%">'.$fName.'</td>
</tr>
</table>';
echo '<div class="filecontent" id="filecontent-'.$index.'" ondblclick="ShowBoxRaw(\'filecontent-'.$index.'\', this, \'none\'); ShowBoxRaw(\'fileicon-a'.$index.'\', this, \'block\'); ShowBoxRaw(\'fileicon-b'.$index.'\', this, \'none\');">'.
'<div class="filepadding"><table width="290" border="0" cellspacing="0" cellpadding="2">'.
'<tr>'.
'<td width="16"><a href="?mode=files&download='.$_GET['dir'].'/'.$file.'"><img src="index.php?image_create=_download" alt="Download File" style="border: 0px; padding: 0px; margin: 0px; a:link { border: 0px; }" /></a></td>'.
'<td width="65">Download</td>'.
'<td><strong>Größe:</strong> '.FileManagerCore::GetFileSize(_DIRECTORY.'/'.$_GET['dir'].'/'.$file).'</td>'.
'</tr><tr>'.
'<td width="16"><a href="?mode=files&edit='.$_GET['dir'].'/'.$file.'&redir='.$_GET['dir'].'"><img src="index.php?image_create=_edit" alt="Edit File" style="border: 0px; padding: 0px; margin: 0px; a:link { border: 0px; }" /></a></td>'.
'<td width="65">Bearbeiten</td>'.
'<td><strong>Bearbeitet am:</strong> '.date("d/m/Y H:i:s", filemtime(_DIRECTORY.'/'.$_GET['dir'].'/'.$file)).'</td>'.
'</tr><tr>'.
'<td width="16"><a href="?mode=files&delete='.$_GET['dir'].'/'.$file.'&redir='.$_GET['dir'].'"><img src="index.php?image_create=_delete" alt="Delete File" style="border: 0px; padding: 0px; margin: 0px;" /></a></td>'.
'<td width="65">Löschen</td>'.
'<td><strong>Dateiberechtigung:</strong> '.FileManagerCore::ViewPermsColour(_DIRECTORY.'/'.$_GET['dir'].'/'.$file).'</td>'.
'</tr>'.
'</table></div>'.
'</div>';
$index++;
}
}
}
closedir($handle);
}
else
{
MiscCore::ErrorFunc("Die Konfigurationen/Einstellungen sind nicht abgeschlossen!<br>
Bitte Überprüfen sie ihre einstellungen.");
}
}
{
if (FILEBLACKLIST != "")
{
$blacklist = explode(" ", FILEBLACKLIST);
else return true;
}
else return true;
}
{
if (EXTBLACKLIST != "")
{
$blacklist = explode(" ", EXTBLACKLIST);
{
if(preg_match("/$black\$/i", $file))
{
return false;
}
}
return true;
}
else return true;
}
{
if($_GET['create']
 $_GET['delete']
 $_GET['delete']  $_GET['edit']
 $_GET['edit']  $_GET['copy']
 $_GET['copy']  $_GET['dir']) return 0;
 $_GET['dir']) return 0;else return 1;
}
{
if (($mode & 0xC000) === 0xC000) {$t = "s";}
elseif (($mode & 0x4000) === 0x4000) {$t = "d";}
elseif (($mode & 0xA000) === 0xA000) {$t = "l";}
elseif (($mode & 0x8000) === 0x8000) {$t = "-";}
elseif (($mode & 0x6000) === 0x6000) {$t = "b";}
elseif (($mode & 0x2000) === 0x2000) {$t = "c";}
elseif (($mode & 0x1000) === 0x1000) {$t = "p";}
else {$t = "?";}
$o["r"] = ($mode & 00400) > 0; $o["w"] = ($mode & 00200) > 0; $o["x"] = ($mode & 00100) > 0;
$g["r"] = ($mode & 00040) > 0; $g["w"] = ($mode & 00020) > 0; $g["x"] = ($mode & 00010) > 0;
$w["r"] = ($mode & 00004) > 0; $w["w"] = ($mode & 00002) > 0; $w["x"] = ($mode & 00001) > 0;
return array("t"=>$t,"o"=>$o,"g"=>$g,"w"=>$w);
}
{
if (($mode & 0xC000) === 0xC000) {$type = "s";}
elseif (($mode & 0x4000) === 0x4000) {$type = "d";}
elseif (($mode & 0xA000) === 0xA000) {$type = "l";}
elseif (($mode & 0x8000) === 0x8000) {$type = "-";}
elseif (($mode & 0x6000) === 0x6000) {$type = "b";}
elseif (($mode & 0x2000) === 0x2000) {$type = "c";}
elseif (($mode & 0x1000) === 0x1000) {$type = "p";}
else {$type = "?";}
$owner["write"] = ($mode & 00200)?"w":"-";
$owner["execute"] = ($mode & 00100)?"x":"-";
$group["read"] = ($mode & 00040)?"r":"-";
$group["write"] = ($mode & 00020)?"w":"-";
$group["execute"] = ($mode & 00010)?"x":"-";
$world["read"] = ($mode & 00004)?"r":"-";
$world["write"] = ($mode & 00002)? "w":"-";
$world["execute"] = ($mode & 00001)?"x":"-";
if ($mode & 0x400) {$group["execute"] = ($group["execute"] == "x")?"s":"S";}
if ($mode & 0x200) {$world["execute"] = ($world["execute"] == "x")?"t":"T";}
}
{
$o = $file;
if(!is_readable($o)) { return "<font color=red><acronym title=\"Diese Datei ist nicht lesbar!\">".FileManagerCore::ViewPerms(fileperms($o))."</acronym></font>"; }
elseif(!is_writable($o)) { return "<font color=white><acronym title=\"Diese Datei ist nicht schreibbar!\">".FileManagerCore::ViewPerms(fileperms($o))."</acronym></font>"; }
else { return "<font color=green><acronym title=\"Diese Datei ist nicht les- und schreibbar.\">".FileManagerCore::ViewPerms(fileperms($o))."</acronym></font>"; }
}
{
global $base64redirects, $base64images;
{
if(in_array($type, $rawnames))
{
$type = $extension; $found = true;
break;
}
}
if(!$found) $type = "unknown";
header("Cache-control: public");
header("Expires: ".date("r",mktime(0,0,0,1,1,2030)));
header("Cache-control: max-age=".(60*60*24*7));
header("Last-Modified: ".date("r", filemtime(__FILE__)));
echo base64_decode($image);
exit;
}
{
$size = filesize($file);
if (!is_numeric($size))
{
return false;
}
else
{
if ($size >= 1073741824) {$size = round($size/1073741824*100)/100 ." GB";}
elseif ($size >= 1048576) {$size = round($size/1048576*100)/100 ." MB";}
elseif ($size >= 1024) {$size = round($size/1024*100)/100 ." KB";}
else {$size = $size . " B";}
return $size;
}
}
}
 
		 
		
		
	



 (apt get install usw)
 (apt get install usw)