<?php error_reporting(E_ALL & ~E_STRICT); ini_set('display_errors', true); /* ---------------------------------------------------------------------- MyOOS [Dumper] http://www.oos-shop.de/ Copyright (c) 2013 - 2022 by the MyOOS Development Team. ---------------------------------------------------------------------- Based on: MySqlDumper http://www.mysqldumper.de Copyright (C)2004-2011 Daniel Schlichtholz (admin@mysqldumper.de) ---------------------------------------------------------------------- Released under the GNU General Public License ---------------------------------------------------------------------- */ define('OOS_VALID_MOD', true); if (isset($_GET['action']) && 'dl' == $_GET['action']) { $download = true; } include './inc/header.php'; include_once './language/'.$config['language'].'/lang.php'; include_once './language/'.$config['language'].'/lang_dump.php'; include_once './language/'.$config['language'].'/lang_filemanagement.php'; include_once './language/'.$config['language'].'/lang_config_overview.php'; include_once './language/'.$config['language'].'/lang_main.php'; include_once './inc/functions_files.php'; include_once './inc/functions_sql.php'; $msg = ''; $dump = []; if (isset($config['auto_delete']) && (1 == $config['auto_delete'])) { $msg = AutoDelete(); } get_sql_encodings(); // get possible sql charsets and also get default charset //0=Datenbank 1=Struktur $action = (isset($_GET['action'])) ? $_GET['action'] : 'files'; $kind = (isset($_GET['kind'])) ? $_GET['kind'] : 0; $expand = (isset($_GET['expand'])) ? $_GET['expand'] : -1; $selectfile = (isset($_POST['selectfile'])) ? $_POST['selectfile'] : ''; $destfile = (isset($_POST['destfile'])) ? $_POST['destfile'] : ''; $compressed = (isset($_POST['compressed'])) ? $_POST['compressed'] : ''; $dk = (isset($_POST['dumpKommentar'])) ? $_POST['dumpKommentar'] : ''; $dk = str_replace(':', '|', $dk); // remove : because of statusline $dump['sel_dump_encoding'] = (isset($_POST['sel_dump_encoding'])) ? $_POST['sel_dump_encoding'] : get_index($config['mysql_possible_character_sets'], $config['mysql_standard_character_set']); $dump['dump_encoding'] = isset($config['mysql_possible_character_sets'][$dump['sel_dump_encoding']]) ? $config['mysql_possible_character_sets'][$dump['sel_dump_encoding']] : 0; if ('dl' == $action) { // Download of a backup file wanted $file = './'.$config['paths']['backup'].urldecode($_GET['f']); if (is_readable($file)) { header('Content-Description: File Transfer'); header('Content-Type: application/octet-stream'); header('Content-Disposition: attachment; filename='.basename($file)); header('Content-Transfer-Encoding: binary'); header('Expires: 0'); header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); header('Pragma: public'); header('Content-Length: '.(string) filesize($file)); flush(); $file = fopen($file, 'rb'); while (!feof($file)) { echo fread($file, round(100 * 1024)); flush(); } fclose($file); } //readfile($file); exit(); } if (!@ob_start('ob_gzhandler')) { @ob_start(); } echo MODHeader(); $toolboxstring = ''; $fpath = $config['paths']['backup']; $dbactiv = (isset($_GET['dbactiv'])) ? $_GET['dbactiv'] : $databases['db_actual']; $databases['multi'] = []; if ('' == $databases['multisetting']) { $databases['multi'][0] = $databases['db_actual']; } else { $databases['multi'] = explode(';', $databases['multisetting']); $multi_praefixe = []; $multi_praefixe = explode(';', $databases['multisetting_praefix']); $toolboxstring = '<br>'; if (is_array($databases['multi'])) { for ($i = 0; $i < sizeof($databases['multi']); ++$i) { if ($i > 0) { $toolboxstring .= ', '; } $toolboxstring .= $databases['multi'][$i]; if ($multi_praefixe[$i] > '') { $toolboxstring .= ' (<i>\''.$multi_praefixe[$i].'\'</i>)'; } } } } //*** Abfrage ob Dump nach Tabellenaufruf *** if (isset($_POST['dump_tbl'])) { $check_dirs = TestWorkDir(); if (true === !$check_dirs) { exit($check_dirs); } $databases['db_actual_tableselected'] = substr($_POST['tbl_array'], 0, strlen($_POST['tbl_array']) - 1); WriteParams(); $dump['fileoperations'] = 0; echo '<script>parent.MyOOS_Dumper_content.location.href="dump.php?comment='.urlencode($dk).'&sel_dump_encoding='.$dump['sel_dump_encoding'].'&config='.urlencode($config['config_file']).'";</script></body></html>'; exit(); } //*** Abfrage ob Dump *** if (isset($_POST['dump'])) { if (isset($_POST['tblfrage']) && 1 == $_POST['tblfrage']) { //Tabellenabfrage $tblfrage_refer = 'dump'; include 'inc/table_query.php'; exit(); } else { @$check_dir = TestWorkDir(); if (true === !$check_dir) { exit($check_dir); } $databases['db_actual_tableselected'] = ''; WriteParams(); $dump['fileoperations'] = 0; $sUrl = 'dump.php?comment='.urlencode($dk).'&sel_dump_encoding='.$dump['sel_dump_encoding'].'&config='.urlencode($config['config_file']); if ((isset($config['optimize_tables_beforedump']) && (1 == $config['optimize_tables_beforedump']))) { echo '<div id="pagetitle">'.$lang['L_DUMP_HEADLINE'].'</div><div id="content"><p>'; echo '<br><br><p>'.sprintf($lang['L_DUMP_INFO'], $sUrl).'</p></div>'; } echo '<script>parent.MyOOS_Dumper_content.location.href="dump.php?comment='.urlencode($dk).'&sel_dump_encoding='.$dump['sel_dump_encoding'].'&config='.urlencode($config['config_file']).'";</script></body></html>'; exit(); } } //*** Abfrage ob Restore nach Tabellenaufruf *** if (isset($_POST['restore_tbl'])) { $databases['db_actual_tableselected'] = substr($_POST['tbl_array'], 0, strlen($_POST['tbl_array']) - 1); WriteParams(); echo '<script>parent.MyOOS_Dumper_content.location.href="restore.php?filename='.urlencode($_POST['filename']).'";</script></body></html>'; exit(); } //*** Abfrage ob Restore *** if (isset($_POST['restore'])) { if (isset($_POST['file'])) { if (isset($_POST['tblfrage']) && 1 == $_POST['tblfrage']) { //Tabellenabfrage $tblfrage_refer = 'restore'; $filename = urldecode($_POST['file'][0]); include 'inc/table_query.php'; exit(); } else { $file = $_POST['file'][0]; $statusline = read_statusline_from_file($file); if (isset($_POST['sel_dump_encoding_restore'])) { $encodingstring = $config['mysql_possible_character_sets'][$_POST['sel_dump_encoding_restore']]; $encoding = explode(' ', $encodingstring); $dump_encoding = $encoding[0]; } else { if (!isset($statusline['charset']) || '?' == trim($statusline['charset'])) { echo headline($lang['L_FM_RESTORE'].': '.$file); // if we can't detect encoding ask user echo '<br>'.$lang['L_CHOOSE_CHARSET'].'<br><br>'; echo '<form action="filemanagement.php?action=restore&kind=0" method="POST">'; echo '<table><tr><td>'.$lang['L_FM_CHOOSE_ENCODING'].':</td><td>'; echo '<select name="sel_dump_encoding_restore">'; echo make_options($config['mysql_possible_character_sets'], $dump['sel_dump_encoding']); echo '</select></td></tr><tr><td>'; echo $lang['L_MYSQL_CONNECTION_ENCODING'].':</td><td><strong>'.$config['mysql_standard_character_set'].'</strong></td></tr>'; echo '<tr><td colspan="2"><br><input type="submit" name="restore" class="Formbutton" value="'.$lang['L_FM_RESTORE'].'">'; echo '<input type="hidden" name="file[0]" value="'.$file.'">'; echo '</td></tr></table></form></body></html>'; exit(); } else { $dump_encoding = $statusline['charset']; } } $databases['db_actual_tableselected'] = ''; WriteParams(); echo '<script>parent.MyOOS_Dumper_content.location.href="restore.php?filename='.$file.'&dump_encoding='.$dump_encoding.'&kind='.$kind.'";</script></body></html>'; exit(); } } else { $msg .= '<p class="error">'.$lang['L_FM_NOFILE'].'</p>'; } } //*** Abfrage ob Delete *** $del = []; if (isset($_POST['delete'])) { if (isset($_POST['file'])) { $delfiles = []; for ($i = 0; $i < count($_POST['file']); ++$i) { if (false === !strpos($_POST['file'][$i], '_part_')) { $delfiles[] = substr($_POST['file'][$i], 0, strpos($_POST['file'][$i], '_part_') + 6).'*'; } else { $delfiles[] = $_POST['file'][$i]; } } for ($i = 0; $i < count($delfiles); ++$i) { $del = array_merge($del, DeleteFilesM($fpath, $delfiles[$i])); } } else { $msg .= '<p class="error">'.$lang['L_FM_NOFILE'].'</p>'; } } if (isset($_POST['deleteauto'])) { $delete_result = AutoDelete(); if ($delete_result > '') { $msg .= '<p class="small">'.$delete_result.'</p>'; } } if (isset($_POST['deleteall']) || isset($_POST['deleteallfilter'])) { if (isset($_POST['deleteall'])) { $del = DeleteFilesM($fpath, '*.sql'); $del = array_merge($del, DeleteFilesM($fpath, '*.gz')); } else { $del = DeleteFilesM($fpath, $databases['db_actual'].'*'); } } // print file-delete-messages if (is_array($del) && sizeof($del) > 0) { foreach ($del as $filename => $success) { if ($success) { $msg .= '<span class="small">'; $msg .= $lang['L_FM_DELETE1'].' \''.$filename.'\' '.$lang['L_FM_DELETE2']; WriteLog("deleted '$filename'."); $msg .= '</span><br>'; } else { $msg .= '<span class="small error">'; $msg .= $lang['L_FM_DELETE1'].' \''.$filename.'\' '.$lang['L_FM_DELETE3']; WriteLog("deleted '$filename'."); $msg .= '</span><br>'; } } } // Upload if (isset($_POST['upload'])) { $error = false; if (!isset($_FILES['upfile']['name'])) { echo '<span class="error">'.$lang['L_FM_UPLOADFILEREQUEST'].'</span><br><br>'; } else { if (!file_exists($fpath.$_FILES['upfile']['name'])) { // Extension ermitteln -strrpos fängt hinten an und ermittelt somit den letzten Punkt $endung = strrchr($_FILES['upfile']['name'], '.'); $erlaubt = [ '.gz', '.sql', ]; if (!in_array($endung, $erlaubt)) { $msg .= '<font color="red">'.$lang['L_FM_UPLOADNOTALLOWED1'].'<br>'; $msg .= $lang['L_FM_UPLOADNOTALLOWED2'].'</font>'; } else { if (!$error) { if (move_uploaded_file($_FILES['upfile']['tmp_name'], $fpath.$_FILES['upfile']['name'])) { @chmod($fpath.$upfile_name, 0777); } else { $error .= '<font color="red">'.$lang['L_FM_UPLOADMOVEERROR'].'<br>'; } } if ($error) { $msg .= $error.'<font color="red">'.$lang['L_FM_UPLOADFAILED'].'</font><br>'; } } } else { $msg .= '<font color="red">'.$lang['L_FM_UPLOADFILEEXISTS'].'</font><br>'; } } } //Seitenteile vordefinieren $href = 'filemanagement.php?action='.$action.'&kind='.$kind; $tbl_abfrage = ''; if (isset($config['multi_dump']) && (0 == $config['multi_dump'])) { $tbl_abfrage = '<tr><td>'.$lang['L_FM_SELECTTABLES'].'</td><td><input type="checkbox" class="checkbox" name="tblfrage" value="1"></td></tr>'; } $dk = (isset($_POST['dumpKommentar'])) ? htmlentities($_POST['dumpKommentar']) : ''; $tbl_abfrage .= '<tr><td>'.$lang['L_FM_COMMENT'].':</td><td><input type="text" class="text" style="width:260px;" name="dumpKommentar" value="'.$dk.'"></td></tr>'; $autodel = '<p class="autodel">'.$lang['L_AUTODELETE'].': '; $autodel .= (isset($config['auto_delete']) && (0 == $config['auto_delete'])) ? $lang['L_NOT_ACTIVATED'] : $lang['L_ACTIVATED']; if (isset($config['max_backup_files'])) { $autodel .= ' ('.$config['max_backup_files'].' '.$lang['L_MAX_BACKUP_FILES_EACH2'].')'; } $autodel .= '</p>'; //Fallunterscheidung switch ($action) { case 'dump': $dbName = $databases['Name'][$databases['db_selected_index']]; if ((isset($config['multi_dump']) && (0 == $config['multi_dump'])) && in_array($dbName, $dontBackupDatabases)) { echo headline($lang['L_FM_DUMP_HEADER'].' <span class="small">("'.$lang['L_CONFIG_HEADLINE'].': '.$config['config_file'].'")</span>'); echo '<span class="error">'.sprintf($lang['L_BACKUP_NOT_POSSIBLE'], $dbName).'</span>'; break; } if (isset($config['multi_dump']) && (0 == $config['multi_dump'])) { DBDetailInfo($databases['db_selected_index']); } $cext = (isset($config['cron_extender']) && (0 == $config['cron_extender'])) ? 'pl' : 'cgi'; $actualUrl = substr($_SERVER['SCRIPT_NAME'], 0, strrpos($_SERVER['SCRIPT_NAME'], '/') + 1); if ('/' != substr($actualUrl, -1)) { $actualUrl .= '/'; } if ('/' != substr($actualUrl, 0, 1)) { $actualUrl = "/$actualUrl"; } $refdir = ('/' == substr($config['cron_execution_path'], 0, 1)) ? '' : $actualUrl; $scriptdir = $config['cron_execution_path'].'crondump.'.$cext; $sfile = $config['cron_execution_path']."perltest.$cext"; $simplefile = $config['cron_execution_path']."simpletest.$cext"; $scriptentry = Realpfad('./').$config['paths']['config']; $cronabsolute = ('/' == substr($config['cron_execution_path'], 0, 1)) ? $_SERVER['DOCUMENT_ROOT'].$scriptdir : Realpfad('./').$scriptdir; $confabsolute = $config['config_file']; $scriptref = getServerProtocol().$_SERVER['SERVER_NAME'].$refdir.$config['cron_execution_path'].'crondump.'.$cext.'?config='.$confabsolute; $cronref = 'perl '.$cronabsolute.' -config='.$confabsolute.' -html_output=0'; //Ausgabe echo headline($lang['L_FM_DUMP_HEADER'].' <span class="small">("'.$lang['L_CONFIG_HEADLINE'].': '.$config['config_file'].'")</span>'); if (!is_writable($config['paths']['backup'])) { exit('<span class="error">'.sprintf($lang['L_WRONG_RIGHTS'], 'work/backup', '777').'</span>'); } echo ($msg > '') ? $msg.'<br>' : ''; echo $autodel; //Auswahl echo '<div> <input type="button" value=" '.$lang['L_DUMP'].' PHP " class="Formbutton" onclick="document.getElementById(\'buperl\').style.display=\'none\';document.getElementById(\'buphp\').style.display=\'block\';"> <input type="button" value=" '.$lang['L_DUMP'].' PERL " class="Formbutton" onclick="document.getElementById(\'buphp\').style.display=\'none\';document.getElementById(\'buperl\').style.display=\'block\';"> </div>'; echo '<div id="buphp">'; //Dumpsettings echo '<h6>'.$lang['L_DUMP'].' (PHP)</h6>'; echo '<div><form name="fm" id="fm" method="post" action="'.$href.'">'; echo '<input class="Formbutton" name="dump" type="submit" value="'; echo $lang['L_FM_STARTDUMP'].'"><br>'; echo '<br><table>'; echo $tbl_abfrage; echo '<tr><td><label for="sel_dump_encoding">'.$lang['L_FM_CHOOSE_ENCODING'].'</label></td>'; echo '<td><select name="sel_dump_encoding" id="sel_dump_encoding">'; echo make_options($config['mysql_possible_character_sets'], $dump['sel_dump_encoding']); echo '</select></td></tr>'; echo '<tr><td>'.$lang['L_MYSQL_CONNECTION_ENCODING'].':</td><td><strong>'.$config['mysql_standard_character_set'].'</strong></td></tr>'; echo '</table>'; echo '</form><br></div>'; echo '<h6>'.$lang['L_FM_DUMPSETTINGS'].' (PHP)</h6>'; echo '<table>'; echo '<tr><td>'.$lang['L_DB'].':</td><td><strong>'; if (isset($config['multi_dump']) && (1 == $config['multi_dump'])) { echo 'Multidump ('.count($databases['multi']).' '.$lang['L_DBS'].')</strong>'; echo '<span class="small">'.$toolboxstring.'</span>'; } else { echo $databases['db_actual']; if (isset($databases['Detailinfo'])) { echo ' <span> ('.$databases['Detailinfo']['tables'].' Tables, '.$databases['Detailinfo']['records'].' Records, '.byte_output($databases['Detailinfo']['size']).')</span>'; } echo '</strong>'; } echo '</td></tr>'; if ((isset($config['multi_dump']) && (0 == $config['multi_dump'])) && $databases['praefix'][$databases['db_selected_index']] > '') { echo '<tr><td>'.$lang['L_PRAEFIX'].':</td><td><strong>'; echo $databases['praefix'][$databases['db_selected_index']]; echo '</strong></td></tr>'; } echo '<tr><td>'.$lang['L_GZIP'].':</td><td><strong>'.((isset($config['compression']) && (1 == $config['compression'])) ? $lang['L_ACTIVATED'] : $lang['L_NOT_ACTIVATED']); echo '</strong></td></tr>'; echo '<tr><td>'.$lang['L_MULTI_PART'].':</td><td><strong>'.((isset($config['multi_part']) && (1 == $config['multi_part'])) ? $lang['L_YES'] : $lang['L_NO']); echo '</strong></td></tr>'; if (isset($config['multi_part']) && (1 == $config['multi_part'])) { echo '<tr><td>'.$lang['L_MULTI_PART_GROESSE'].':</td><td><strong>'.byte_output($config['multipart_groesse']).'</strong></td></tr>'; } if (isset($config['send_mail']) && (1 == $config['send_mail'])) { $t = $config['email_recipient'].((1 == $config['send_mail_dump']) ? $lang['L_WITHATTACH'] : $lang['L_WITHOUTATTACH']); } echo '<tr><td>'.$lang['L_SEND_MAIL_FORM'].':</td><td><strong>'.((isset($config['send_mail']) && (1 == $config['send_mail'])) ? $t : $lang['L_NOT_ACTIVATED']); echo '</strong></td></tr>'; for ($x = 0; $x < 3; ++$x) { if (isset($config['ftp_transfer'][$x]) && $config['ftp_transfer'][$x] > 0) { echo table_output($lang['L_FTP_TRANSFER'], sprintf(str_replace('<br>', ' ', $lang['L_FTP_SEND_TO']), $config['ftp_server'][$x], $config['ftp_dir'][$x]), 1, 2); } if (isset($config['sftp_transfer'][$x]) && $config['sftp_transfer'][$x] > 0) { echo table_output($lang['L_SFTP_TRANSFER'], sprintf(str_replace('<br>', ' ', $lang['L_SFTP_SEND_TO']), $config['sftp_server'][$x], $config['sftp_dir'][$x]), 1, 2); } } //echo '</td></tr>'; echo '</table>'; echo '<div style="display:none"><img src="'.$config['files']['iconpath'].'progressbar_dump.gif" alt=""><br><img src="'.$config['files']['iconpath'].'progressbar_speed.gif" alt=""></div>'; echo '</div><div id="buperl" style="display:none;">'; //crondumpsettings echo '<h6>'.$lang['L_DUMP'].' (PERL)</h6>'; echo '<p><input class="Formbutton" type="Button" name="DoCronscript" value="'.$lang['L_DOCRONBUTTON'].'" onclick="self.location.href=\''.$scriptref.'\'"> '; echo '<input class="Formbutton" type="Button" name="DoPerlTest" value="'.$lang['L_DOPERLTEST'].'" onclick="self.location.href=\''.$sfile.'\'"> '; echo '<input class="Formbutton" type="Button" name="DoSimpleTest" value="'.$lang['L_DOSIMPLETEST'].'" onclick="self.location.href=\''.$simplefile.'\'"></p>'; echo '<h6>'.$lang['L_FM_DUMPSETTINGS'].' (PERL)</h6>'; if (-3 == $config['cron_dbindex']) { $cron_dbname = $lang['L_MULTIDUMPALL']; $cron_dbpraefix = ''; } elseif (-2 == $config['cron_dbindex']) { //$cron_dbname='Multidump ('.count($databases['multi']).' '.$lang['L_DBS'].')'; $cron_dbname = 'Multidump ('.count($databases['multi']).' '.$lang['L_DBS'].')</strong>'; $cron_dbname .= '<span class="small">'.$toolboxstring.'</span>'; $cron_dbpraefix = ''; } else { $cron_dbname = $databases['Name'][$config['cron_dbindex']]; $cron_dbpraefix = $databases['praefix'][$config['cron_dbindex']]; } echo '<table>'; echo '<tr><td>'.$lang['L_DB'].':</td><td><strong>'.$cron_dbname.'</strong></td></tr>'; if ($cron_dbpraefix > '') { echo '<tr><td>'.$lang['L_PRAEFIX'].':</td><td><strong>'; echo $cron_dbpraefix.'</strong></td></tr>'; } echo '<tr><td>'.$lang['L_GZIP'].':</td><td><strong>'.((isset($config['cron_compression']) && (1 == $config['cron_compression'])) ? $lang['L_ACTIVATED'] : $lang['L_NOT_ACTIVATED']); echo '</strong></td></tr>'; echo '<tr><td>'.$lang['L_MULTI_PART'].':</td><td><strong>'.((isset($config['multi_part']) && (1 == $config['multi_part'])) ? $lang['L_YES'] : $lang['L_NO']); echo '</strong></td></tr>'; if (isset($config['multi_part']) && (1 == $config['multi_part'])) { echo '<tr><td>'.$lang['L_MULTI_PART_GROESSE'].':</td><td><strong>'.byte_output($config['multipart_groesse']).'</td></tr>'; } echo '<tr><td>'.$lang['L_CRON_PRINTOUT'].':</td><td><strong>'.((isset($config['cron_printout']) && (1 == $config['cron_printout'])) ? $lang['L_ACTIVATED'] : $lang['L_NOT_ACTIVATED']).'</strong></td></tr>'; if (isset($config['send_mail']) && (1 == $config['send_mail'])) { $t = $config['email_recipient'].((1 == $config['send_mail_dump']) ? $lang['L_WITHATTACH'] : $lang['L_WITHOUTATTACH']); } echo '<tr><td>'.$lang['L_SEND_MAIL_FORM'].':</td><td><strong>'.((isset($config['send_mail']) && (1 == $config['send_mail'])) ? $t : $lang['L_NOT_ACTIVATED']).'</strong></td></tr>'; for ($x = 0; $x < 3; ++$x) { if (isset($config['ftp_transfer'][$x]) && $config['ftp_transfer'][$x] > 0) { echo table_output($lang['L_FTP_TRANSFER'], sprintf(str_replace('<br>', ' ', $lang['L_FTP_SEND_TO']), $config['ftp_server'][$x], $config['ftp_dir'][$x]), 1, 2); } if (isset($config['sftp_transfer'][$x]) && $config['sftp_transfer'][$x] > 0) { echo table_output($lang['L_SFTP_TRANSFER'], sprintf(str_replace('<br>', ' ', $lang['L_SFTP_SEND_TO']), $config['sftp_server'][$x], $config['sftp_dir'][$x]), 1, 2); } } //echo '</td></tr>'; echo '</table>'; // Eintraege fuer Perl echo '<br><p class="small">'.$lang['L_PERLOUTPUT1'].':<br> <strong>'.$scriptentry.'</strong><br>'; echo $lang['L_PERLOUTPUT2'].':<br> <strong>'.$scriptref.'</strong><br>'; echo $lang['L_PERLOUTPUT3'].':<br> <strong>'.$cronref.'</strong></p>'; echo '</div>'; break; case 'restore': echo headline(sprintf($lang['L_FM_RESTORE_HEADER'], $databases['db_actual'])); echo ($msg > '') ? $msg : ''; echo $autodel; echo '<form name="fm" id="fm" method="post" action="'.$href.'">'; echo '<div>'; echo '<input class="Formbutton" name="restore" type="submit" value="'.$lang['L_FM_RESTORE'].'" onclick="if (!confirm(\''.$lang['L_FM_ALERTRESTORE1'].' `'.$databases['db_actual'].'` '.$lang['L_FM_ALERTRESTORE2'].' `\' + GetSelectedFilename() + \'` '.$lang['L_FM_ALERTRESTORE3'].'\')) return false;">'; echo '<input class="Formbutton" name="restore" type="submit" value="'.$lang['L_RESTORE_OF_TABLES'].'" onclick="document.forms[0].tblfrage.value=1;">'; echo FileList(); echo '<input type="hidden" name="tblfrage" value="0">'; echo '</div></form>'; break; case 'files': $sysfedit = (isset($_POST['sysfedit'])) ? 1 : 0; $sysfedit = (isset($_GET['sysfedit'])) ? $_GET['sysfedit'] : $sysfedit; echo headline($lang['L_FILE_MANAGE']); echo ($msg > '') ? $msg.'<br>' : ''; echo $autodel; echo '<form name="fm" id="fm" method="post" action="'.$href.'">'; echo '<input class="Formbutton" name="delete" type="submit" value="'.$lang['L_FM_DELETE'].'" onclick="if (!confirm(\''.$lang['L_FM_ASKDELETE1'].'\n\' + GetSelectedFilename() + \'\n\n'.$lang['L_FM_ASKDELETE2'].'\')) return false;">'; echo '<input class="Formbutton" name="deleteauto" type="submit" value="'.$lang['L_FM_DELETEAUTO'].'" onclick="if (!confirm(\''.$lang['L_FM_ASKDELETE3'].'\')) return false;">'; echo '<input class="Formbutton" name="deleteall" type="submit" value="'.$lang['L_FM_DELETEALL'].'" onclick="if (!confirm(\''.$lang['L_FM_ASKDELETE4'].'\')) return false;">'; echo '<input class="Formbutton" name="deleteallfilter" type="submit" value="'.$lang['L_FM_DELETEALLFILTER'].$databases['db_actual'].$lang['L_FM_DELETEALLFILTER2'].'" onclick="if (!confirm(\''.$lang['L_FM_ASKDELETE5'].$databases['db_actual'].$lang['L_FM_ASKDELETE5_2'].'\')) return false;">'; echo FileList().'</form>'; echo '<h6>'.$lang['L_FM_FILEUPLOAD'].'</h6>'; echo '<div align="left"><form action="'.$href.'" method="POST" enctype="multipart/form-data">'; echo '<input type="file" name="upfile" class="Formtext" size="60">'; echo '<input type="submit" name="upload" value="'.$lang['L_FM_FILEUPLOAD'].'" class="Formbutton">'; echo '<br>'.$lang['L_MAX_UPLOAD_SIZE'].': <strong>'.$config['upload_max_filesize'].'</strong>'; echo '<br>'.$lang['L_MAX_UPLOAD_SIZE_INFO']; echo '</form></div>'; echo '<h6>Tools</h6><div align="left">'; echo '<input type="Button" onclick="document.location=\'filemanagement.php?action=convert\'" class="Formbutton" value="'.$lang['L_CONVERTER'].'">'; echo '</div>'; break; case 'convert': // Konverter echo headline($lang['L_CONVERTER']); echo '<br><br><form action="filemanagement.php?action=convert" method="post">'; echo '<table class="bdr"><tr><th colspan="2">'.$lang['L_CONVERT_TITLE'].'</th></tr>'; echo '<tr><td>'.$lang['L_CONVERT_FILE'].'</td><td>'.FilelisteCombo($config['paths']['backup'], $selectfile).'</td></tr>'; echo '<tr><td>'.$lang['L_CONVERT_FILENAME'].':</td><td><input type="text" name="destfile" size="50" value="'.$destfile.'"></td></tr>'; echo '<tr><td><input type="checkbox" name="compressed" value="1" '.((1 == $compressed) ? 'checked' : '').'> '.$lang['L_COMPRESSED'].'</td>'; echo '<td><input type="submit" name="startconvert" value=" '.$lang['L_CONVERT_START'].' " class="Formbutton"></td></tr>'; echo '</table></form><br>'; if (isset($_POST['startconvert'])) { //$destfile.=($compressed==1) ? ".sql.gz" : ".sql"; echo $lang['L_CONVERTING']." $selectfile ==> $destfile<br>"; if ('' != $selectfile && file_exists($config['paths']['backup'].$selectfile) && strlen($destfile) > 2) { Converter($selectfile, $destfile, $compressed); } else { echo $lang['L_CONVERT_WRONG_PARAMETERS']; } } } echo MODFooter(); ob_end_flush(); exit();