LDAPAccountManager/lam/docs/devel/base_module.htm

75 lines
2.7 KiB
HTML

<!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>Base module</title>
<link rel="stylesheet" type="text/css" href="style/layout.css">
</head>
<body>
<h1 style="text-align: center;">Base module<br>
</h1>
<div style="text-align: center;"><img alt="base module"
src="images/lam_baseModule.png" style="width: 531px; height: 207px;"><br>
</div>
<div style="text-align: center;"><br>
<div style="text-align: left;">The <span style="font-weight: bold;">baseModule</span>
is the parent class of all account modules. <br>
It implements most functions of the <a
href="../modules-specification.htm">module interface</a> and provides
the possibility to use <span style="font-style: italic;">meta data</span>
for the module functions.<br>
There are also some class variables which are useful for the child
classes.<br>
<br>
<br>
<h2>Meta data</h2>
The <span style="font-weight: bold;">baseModule</span> allows you to
not implement the <a href="../modules-specification.htm">module
interface</a> directly but to provide <span style="font-style: italic;">meta
data</span> which is interpreted by the <span
style="font-weight: bold;">baseModule</span>.<br>
If you do not use certain functions of the interface the <span
style="font-weight: bold;">baseModule</span> also provides dummy
functions. E.g. if your module needs no configuration option you can
just skip this function in your code and the <span
style="font-weight: bold;">baseModule</span> will tell the
configuration part that there is no option.<br>
<br>
To <span style="font-style: italic;">define meta</span> data you have
to implement the function <span
style="font-weight: bold; font-style: italic;">get_metaData()</span>.
This function must return a hash array with the meta options as array
keys.<br>
Please refer to the <a href="../modules-specification.htm">module
interface</a> for details about the format of <span
style="font-style: italic;">meta data</span>.<br>
<br>
<br>
<h2>Functions<br>
</h2>
<span style="font-weight: bold;">get_scope():</span> This function
returns the account type ("user", "group", ...) of the module.<br>
<br>
For a list of <span style="font-style: italic;">meta data</span>
functions please refer to the <a href="../modules-specification.htm">module
interface</a>.<br>
<br>
<br>
<h2>Class variables</h2>
<span style="font-weight: bold;">$moduleSettings:</span> This variable
contains the configuration settings of all modules.<br>
<span style="font-weight: bold;">$base:</span> This is the name of the
parent <span style="font-style: italic;">accountContainer</span>
($_SESSION[$base]).<br>
<br>
<br>
<br>
<br>
<br>
<br>
</div>
</div>
</body>
</html>