<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html; charset=ISO-8859-15"
 http-equiv="content-type">
  <title>LAM - Configuration pages</title>
  <link rel="stylesheet" type="text/css" href="style/layout.css">
</head>
<body>
<div style="text-align: center;">
<h1>Configuration pages</h1>
</div>
<br>
<div style="text-align: center;"><img
 style="width: 620px; height: 319px;" alt="configuration"
 src="images/lam_config.png"><br>
<div style="text-align: left;">
<h2>Configuration - Login (conflogin.php):</h2>
This is the start page of the configuration editor. The user can select
a profile for editing or go to the profile management page.<br>
Each account profile is protected with a password which is stored in
the profile.<br>
The list of possible profiles is returned by <span
 style="font-style: italic; font-weight: bold;">getConfigProfiles()</span>
in config.inc, the default profile is returned by an object of class <span
 style="font-weight: bold; font-style: italic;">CfgMain</span> from
config.inc.<br>
<br>
<br>
<h2>Configuration - Profile management (profmanage.php):</h2>
Here the user can add and modify configuration profiles or change the
configuration master password. <br>
The configuration master password prevents unauthorised users from
changing the profiles. The password is saved in config/config.cfg and
managed via the <span style="font-style: italic; font-weight: bold;">CfgMain</span>
class.<br>
<br>
<br>
<h2>Configuration - Main page (confmain.php):</h2>
This page presents all configuration settings for editing.<br>
Some of the settings are module independent (e.g. server settings,
language, ...) and displayed always.<br>
The others are set up by the account modules. Only settings of
currently selected modules are displayed.<br>
Users may also change the profile password on this page.<br>
<br>
<br>
<h2>Configuration - Module selection (confmodules.php):<br>
</h2>
On this page the user can select which account modules LAM should use.<br>
The list of possible modules is returned by <span
 style="font-style: italic; font-weight: bold;">getAvailableModules()</span>
in modules.inc and checked for dependencies/conflicts with <span
 style="font-weight: bold; font-style: italic;">check_module_depends()</span>
and <span style="font-weight: bold; font-style: italic;">check_module_conflicts()</span>.<br>
<br>
Each account type needs exactly one <span style="font-style: italic;">base
module</span>
which is the base of a account by providing a structural object class.<br>
<br>
<br>
<h2>Configuration - Save settings (confsave.php):<br>
</h2>
This script checks the input and displays possible error messages or an
overview of the saved settings.<br>
The static settings are set and checked with an object of class <span
 style="font-style: italic; font-weight: bold;">Config</span> from
config.inc.<br>
The account modules manage the input validation for their fields and
are also able to return error messages. This is done with <span
 style="font-weight: bold; font-style: italic;">checkConfigOptions()</span>
from modules.inc.<br>
<br>
</div>
</div>
</body>
</html>