diff --git a/op/op.RemoveLog.php b/op/op.RemoveLog.php index 1372061e3..6a0dd9672 100644 --- a/op/op.RemoveLog.php +++ b/op/op.RemoveLog.php @@ -32,19 +32,27 @@ if (!$user->isAdmin()) { UI::exitError(getMLText("admin_tools"),getMLText("access_denied")); } -if (!isset($_POST["logname"]) || !file_exists($settings->_contentDir.$_POST["logname"]) ) { +if (!isset($_POST["lognames"]) || !is_array($_POST["lognames"])) { UI::exitError(getMLText("admin_tools"),getMLText("unknown_id")); } -if (@readlink($settings->_contentDir."current.log")==$settings->_contentDir.$_POST["logname"]){ - UI::exitError(getMLText("admin_tools"),getMLText("access_denied")); -} +$lognames = $_POST["lognames"]; +foreach($lognames as $file) { + if(!file_exists($settings->_contentDir.$file)) { + UI::exitError(getMLText("admin_tools"),getMLText("unknown_id")); + } + + if (@readlink($settings->_contentDir."current.log")==$settings->_contentDir.$file){ + UI::exitError(getMLText("admin_tools"),getMLText("access_denied")); + } -if (!SeedDMS_Core_File::removeFile($settings->_contentDir.$_POST["logname"])) { - UI::exitError(getMLText("admin_tools"),getMLText("error_occured")); + if (!SeedDMS_Core_File::removeFile($settings->_contentDir.$file)) { + UI::exitError(getMLText("admin_tools"),getMLText("error_occured")); + } } + -add_log_line("?logname=".$_POST["logname"]); +add_log_line("?logname=".implode(",", $_POST["lognames"])); header("Location:../out/out.LogManagement.php"); diff --git a/out/out.RemoveLog.php b/out/out.RemoveLog.php index 930d8ffe6..9456d80c7 100644 --- a/out/out.RemoveLog.php +++ b/out/out.RemoveLog.php @@ -26,14 +26,23 @@ if (!$user->isAdmin()) { UI::exitError(getMLText("admin_tools"),getMLText("access_denied")); } -if (!isset($_GET["logname"]) || !file_exists($settings->_contentDir.$_GET["logname"]) ) { +if (!isset($_GET["logname"])) { UI::exitError(getMLText("admin_tools"),getMLText("unknown_id")); } -$logname = sanitizeString($_GET["logname"]); +/* $_GET["logname"] can be a single file name or an array of file names */ +if(!is_array($_GET["logname"])) + $lognames = array($_GET["logname"]); +else + $lognames = $_GET["logname"]; +foreach($lognames as $file) { + if(!file_exists($settings->_contentDir.$file)) { + UI::exitError(getMLText("admin_tools"),getMLText("unknown_id")); + } +} $tmp = explode('.', basename($_SERVER['SCRIPT_FILENAME'])); -$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user, 'logname'=>$logname)); +$view = UI::factory($theme, $tmp[1], array('dms'=>$dms, 'user'=>$user, 'lognames'=>$lognames)); if($view) { $view->show(); exit; diff --git a/views/blue/class.RemoveLog.php b/views/blue/class.RemoveLog.php index 7b1f6eaef..650b93af1 100644 --- a/views/blue/class.RemoveLog.php +++ b/views/blue/class.RemoveLog.php @@ -34,7 +34,7 @@ class SeedDMS_View_RemoveLog extends SeedDMS_Blue_Style { function show() { /* {{{ */ $dms = $this->params['dms']; $user = $this->params['user']; - $logname = $this->params['logname']; + $lognames = $this->params['lognames']; $this->htmlStartPage(getMLText("backup_tools")); $this->globalNavigation(); @@ -44,8 +44,13 @@ class SeedDMS_View_RemoveLog extends SeedDMS_Blue_Style { ?>
- -

$logname));?>

+\n"; + + } +?> +

implode(', ', $lognames)));?>

">
\n"; print "\n"; print "\n\n"; + print "\n"; print "\n"; print "\n"; print "\n"; @@ -47,6 +49,7 @@ class SeedDMS_View_LogManagement extends SeedDMS_Bootstrap_Style { } print "\n"; + print "\n"; print "\n"; print "\n"; print "\n"; @@ -63,7 +66,7 @@ class SeedDMS_View_LogManagement extends SeedDMS_Bootstrap_Style { } if ($print_header) printMLText("empty_notify_list"); - else print "
".getMLText("name")."".getMLText("creation_date")."".getMLText("file_size")."
".$entry."".getLongReadableDate(filectime($this->contentdir.$entry))."
\n"; + else print "\n"; } /* }}} */ function show() { /* {{{ */ diff --git a/views/bootstrap/class.RemoveLog.php b/views/bootstrap/class.RemoveLog.php index 3b5c74977..c89e10923 100644 --- a/views/bootstrap/class.RemoveLog.php +++ b/views/bootstrap/class.RemoveLog.php @@ -34,7 +34,7 @@ class SeedDMS_View_RemoveLog extends SeedDMS_Bootstrap_Style { function show() { /* {{{ */ $dms = $this->params['dms']; $user = $this->params['user']; - $logname = $this->params['logname']; + $lognames = $this->params['lognames']; $this->htmlStartPage(getMLText("backup_tools")); $this->globalNavigation(); @@ -45,8 +45,13 @@ class SeedDMS_View_RemoveLog extends SeedDMS_Bootstrap_Style { ?>
- -

$logname));?>

+\n"; + + } +?> +

implode(', ', $lognames)));?>