summaryrefslogtreecommitdiffstats
path: root/modules-available/sysconfig/page.inc.php
diff options
context:
space:
mode:
Diffstat (limited to 'modules-available/sysconfig/page.inc.php')
-rw-r--r--modules-available/sysconfig/page.inc.php34
1 files changed, 19 insertions, 15 deletions
diff --git a/modules-available/sysconfig/page.inc.php b/modules-available/sysconfig/page.inc.php
index c015d059..c9d63a27 100644
--- a/modules-available/sysconfig/page.inc.php
+++ b/modules-available/sysconfig/page.inc.php
@@ -42,7 +42,7 @@ class Page_SysConfig extends Page
// Location valid?
if ($this->currentLoc !== 0 && !isset($this->locations[$this->currentLoc])) {
Message::addError('locations.invalid-location-id', $this->currentLoc);
- Util::redirect('?do=sysconfig');
+ Util::redirect('?do=sysconfig', 404);
}
// Action handling
@@ -256,7 +256,7 @@ class Page_SysConfig extends Page
$row = Database::queryFirst("SELECT title, filepath FROM configtgz_module WHERE moduleid = :moduleid LIMIT 1", array('moduleid' => $moduleid));
if ($row === false) {
Message::addError('config-invalid', $moduleid);
- Util::redirect('?do=sysconfig&locationid=' . $this->currentLoc);
+ Util::redirect('?do=sysconfig&locationid=' . $this->currentLoc, 404);
}
// find files in that archive
@@ -267,7 +267,7 @@ class Page_SysConfig extends Page
$status = Taskmanager::waitComplete($status, 4000);
if (!Taskmanager::isFinished($status) || Taskmanager::isFailed($status)) {
Taskmanager::addErrorMessage($status);
- Util::redirect('?do=sysconfig&locationid=' . $this->currentLoc);
+ Util::redirect('?do=sysconfig&locationid=' . $this->currentLoc, 500);
}
$list = SysConfig::archiveContentsFromTask($status);
@@ -283,7 +283,7 @@ class Page_SysConfig extends Page
$config = Database::queryFirst("SELECT title FROM configtgz WHERE configid = :configid LIMIT 1", array('configid' => $configid));
if ($config === false) {
Message::addError('config-invalid', $configid);
- Util::redirect('?do=sysconfig&locationid=' . $this->currentLoc);
+ Util::redirect('?do=sysconfig&locationid=' . $this->currentLoc, 404);
}
// fetch the data
$res = Database::simpleQuery("SELECT module.moduleid, module.title AS moduletitle"
@@ -316,7 +316,7 @@ class Page_SysConfig extends Page
$row = Database::queryFirst("SELECT title, filepath FROM configtgz WHERE configid = :configid LIMIT 1", array('configid' => $configid));
if ($row === false) {
Message::addError('config-invalid', $configid);
- Util::redirect('?do=sysconfig&locationid=' . $this->currentLoc);
+ Util::redirect('?do=sysconfig&locationid=' . $this->currentLoc, 404);
}
}
$locationid = $this->currentLoc;
@@ -340,7 +340,7 @@ class Page_SysConfig extends Page
$config = ConfigTgz::get($configid);
if ($config === null) {
Message::addError('config-invalid', $configid);
- Util::redirect('?do=sysconfig&locationid=' . $this->currentLoc);
+ Util::redirect('?do=sysconfig&locationid=' . $this->currentLoc, 404);
}
$ret = $config->generate(false, 500); // TODO
if ($ret === true)
@@ -358,7 +358,7 @@ class Page_SysConfig extends Page
$module = Database::queryFirst("SELECT title, filepath FROM configtgz_module WHERE moduleid = :moduleid LIMIT 1", array('moduleid' => $moduleid));
if ($module === false) {
Message::addError('config-invalid', $moduleid);
- Util::redirect('?do=sysconfig');
+ Util::redirect('?do=sysconfig', 404);
}
// Get config.tgz using this module *before* deleting it
$existing = Database::simpleQuery("SELECT configid FROM configtgz_x_module
@@ -392,10 +392,10 @@ class Page_SysConfig extends Page
$row = Database::queryFirst("SELECT title, filepath FROM configtgz_module WHERE moduleid = :moduleid LIMIT 1", array('moduleid' => $moduleid));
if ($row === false) {
Message::addError('config-invalid', $moduleid);
- Util::redirect('?do=sysconfig');
+ Util::redirect('?do=sysconfig', 404);
}
if (!Util::sendFile($row['filepath'], $row['title'] . '.tgz'))
- Util::redirect('?do=sysconfig');
+ Util::redirect('?do=sysconfig', 500);
exit(0);
}
@@ -405,15 +405,18 @@ class Page_SysConfig extends Page
$module = ConfigModule::get($moduleid);
if ($module === null) {
Message::addError('config-invalid', $moduleid);
- Util::redirect('?do=sysconfig');
+ Util::redirect('?do=sysconfig', 404);
}
$ret = $module->generate(false, null, 500);
- if ($ret === true)
- Message::addSuccess('module-rebuilt', $module->title());
- elseif ($ret === false)
+ if ($ret === false) {
Message::addError('module-rebuild-failed', $module->title());
- else
+ Util::redirect('?do=sysconfig', 500);
+ }
+ if ($ret === true) {
+ Message::addSuccess('module-rebuilt', $module->title());
+ } else {
Message::addInfo('module-rebuilding', $module->title());
+ }
Util::redirect('?do=sysconfig');
}
@@ -423,10 +426,11 @@ class Page_SysConfig extends Page
$config = ConfigTgz::get($configid);
if ($config === null) {
Message::addError('config-invalid', $configid);
- Util::redirect('?do=sysconfig&locationid=' . $this->currentLoc);
+ Util::redirect('?do=sysconfig&locationid=' . $this->currentLoc, 404);
}
if ($config->delete() === false) {
Message::addError('config-delete-error', Database::lastError());
+ Audit::overrideResponseCode(500);
} else {
Message::addSuccess('config-deleted', $config->title());
}