diff --git a/lam/templates/config/confmodules.php b/lam/templates/config/confmodules.php index 53bf6e09..a64ba1b3 100644 --- a/lam/templates/config/confmodules.php +++ b/lam/templates/config/confmodules.php @@ -52,23 +52,35 @@ if (!isset($_SESSION['conf_config'])) { exit; } -$conf = &$_SESSION['conf_config']; - - -// user pressed submit/abort button -if (isset($_POST['submit'])) { - // save new module settings - $_SESSION['conf_accountTypesOld'] = $_SESSION['conf_accountTypes']; - $conf->set_typeSettings($_SESSION['conf_typeSettings']); - //selection ok, back to other settings - metarefresh('confmain.php?modulesback=true'); +// check if user canceled editing +if (isset($_POST['cancelSettings'])) { + metaRefresh("../login.php"); exit; } -elseif (isset($_POST['abort'])) { - // no changes - $_SESSION['conf_accountTypes'] = $_SESSION['conf_accountTypesOld']; - metarefresh('confmain.php?modulesback=true'); - exit; + +$conf = &$_SESSION['conf_config']; + +$errorsToDisplay = checkInput(); + +// check if button was pressed and if we have to save the settings or go to another tab +if (isset($_POST['saveSettings']) || isset($_POST['editmodules']) || isset($_POST['edittypes']) || isset($_POST['generalSettingsButton'])) { + if (sizeof($errorsToDisplay) == 0) { + // go to final page + if (isset($_POST['saveSettings'])) { + metaRefresh("confsave.php"); + exit; + } + // go to modules page + elseif (isset($_POST['edittypes'])) { + metaRefresh("conftypes.php"); + exit; + } + // go to types page + elseif (isset($_POST['generalSettingsButton'])) { + metaRefresh("confmain.php"); + exit; + } + } } $types = $conf->get_ActiveTypes(); @@ -85,10 +97,80 @@ echo "
\n"; echo "\n"; echo ("\n"); + +// print error messages +for ($i = 0; $i < sizeof($errorsToDisplay); $i++) call_user_func_array('StatusMessage', $errorsToDisplay[$i]); echo ("\n"; echo "\n"; @@ -136,43 +204,20 @@ echo "