summaryrefslogtreecommitdiffstats
path: root/modules-available/sysconfig/addmodule_screensaver.inc.php
diff options
context:
space:
mode:
Diffstat (limited to 'modules-available/sysconfig/addmodule_screensaver.inc.php')
-rw-r--r--modules-available/sysconfig/addmodule_screensaver.inc.php25
1 files changed, 17 insertions, 8 deletions
diff --git a/modules-available/sysconfig/addmodule_screensaver.inc.php b/modules-available/sysconfig/addmodule_screensaver.inc.php
index 7417c200..b8e5d3cd 100644
--- a/modules-available/sysconfig/addmodule_screensaver.inc.php
+++ b/modules-available/sysconfig/addmodule_screensaver.inc.php
@@ -12,7 +12,10 @@ class Screensaver_Start extends AddModule_Base
protected function preprocessInternal()
{
/* Load or initialise session data */
- if ($this->edit !== false) {
+ if (Request::get('back', 'false', 'string') !== 'false')
+ /* If coming via the back button, load the session data */
+ $this->session_data = Session::get('data');
+ elseif ($this->edit !== false) {
$this->session_data = array(
'title' => $this->edit->title(),
'qss' => $this->edit->getData('qss'),
@@ -62,7 +65,6 @@ class Screensaver_Start extends AddModule_Base
'qss' => $this->session_data['qss'],
));
}
-
}
class Screensaver_Text extends AddModule_Base
@@ -85,6 +87,13 @@ class Screensaver_Text extends AddModule_Base
Session::set('data', $this->session_data);
Session::save();
+
+ $next = Request::post('next', '', 'string');
+
+ if ($next === '')
+ Util::redirect('?do=SysConfig&action=addmodule&step=Screensaver_Finish');
+ elseif ($next === 'start')
+ Util::redirect('?do=SysConfig&action=addmodule&step=Screensaver_Start&back=true');
}
protected function renderInternal()
@@ -113,15 +122,18 @@ class Screensaver_Text extends AddModule_Base
$data['text_value'] = $this->session_data['texts']['text-' . $next];
$data['text_locked_value'] = $this->session_data['texts']['text-' . $next . '-locked'];
$data['inherit_locked'] = $this->session_data['texts'][$next . '-inherit'];
+ $data['step'] = 'Screensaver_Text';
+ /* Set next and prev pages */
if ($next === 'idle-kill') {
$data['next'] = 'no-timeout';
- $data['step'] = 'Screensaver_Text';
+ $data['prev'] = 'start';
} elseif ($next === 'no-timeout') {
$data['next'] = 'shutdown';
- $data['step'] = 'Screensaver_Text';
+ $data['prev'] = 'idle-kill';
} elseif ($next === 'shutdown') {
- $data['step'] = 'Screensaver_Finish';
+ $data['next'] = '';
+ $data['prev'] = 'no-timeout';
$data['lastStep'] = true;
}
@@ -136,9 +148,6 @@ class Screensaver_Finish extends AddModule_Base
/* Get session data */
$session_data = Session::get('data');
- /* Process the last step */
- Screensaver_Helper::processScreensaverText($session_data, Request::post('id', '', 'string'));
-
if (empty($session_data['title'])) {
Message::addError('missing-title');
Util::redirect('?do=SysConfig');