LAM homepage

This commit is contained in:
Roland Gruber 2006-07-09 14:14:57 +00:00
parent 181e0fe51b
commit 357b976e39
339 changed files with 92269 additions and 0 deletions

251
lam-web/apt-get/index.htm Executable file
View File

@ -0,0 +1,251 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="../style/layout.css">
</head>
<body>
<!-- begin navigation menu -->
<table width="100%" border=0 class="main">
<tr>
<td class="menu" width=180>
<script type="text/javascript" language="javascript">
<!--
// mouseOver function
function list_over(list) {
list.setAttribute('class','nav-over', 0);
}
// mouseOut function
function list_out(list) {
list.setAttribute('class','nav', 0);
}
//-->
</script>
<center><a href="http://lam.sourceforge.net/index.htm"><img
alt="LDAP Account Manager" src="http://lam.sourceforge.net/images/lam_logo.jpg"
style="border: 0px solid;"></a></center>
<p></p>
<table class="nav" border="1" cellspacing="0" width="95%">
<tbody>
<tr>
<th class="nav" colspan="2" align="left" valign="center"
width="100%">General Infos</th>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/index.htm'" class="nav">- <a
class="nav" href="http://lam.sourceforge.net/index.htm">Home</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/news/index.htm'" class="nav">-
<a class="nav" href="http://lam.sourceforge.net/news/index.htm">News</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/screenshots/index.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/screenshots/index.htm"
>Screenshots</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/documentation/index.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/documentation/index.htm"
>Documentation</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/changelog/index.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/changelog/index.htm"
>Changelog</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/todo/index.htm'" class="nav">-
<a class="nav" href="http://lam.sourceforge.net/todo/index.htm">ToDo</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/sponsors/donations.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/sponsors/donations.htm">Donations</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/sponsors/index.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/sponsors/index.htm">Sponsors</a></td>
</tr>
</tbody>
</table>
<p> </p>
<table class="nav" border="1" cellspacing="0" width="95%">
<tbody>
<tr>
<th class="nav" colspan="2" align="left" valign="center"
width="100%">Download</th>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/download/index.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/download/index.htm">Releases</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/download/rpm.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/download/rpm.htm">RPM packages</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/apt-get/index.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/apt-get/index.htm">Debian
packages</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/freebsd/index.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/freebsd/index.htm">FreeBSD
port</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/cvs-access/index.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/cvs-access/index.htm"
>CVS access</a></td>
</tr>
</tbody>
</table>
<p> </p>
<table class="nav" border="1" cellspacing="0" width="95%">
<tbody>
<tr>
<th class="nav" colspan="2" align="left" valign="center"
width="100%">Developers</th>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/developers/docs.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/developers/docs.htm">Documentation</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/i18n/index.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/i18n/index.htm">Translations</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="window.open('http://www.sourceforge.net/projects/lam', '_blank')"
class="nav">- <a class="nav"
href="http://www.sourceforge.net/projects/lam" target="_blank">LAM at
SourceForge</a></td>
</tr>
</tbody>
</table>
<p> </p>
<table class="nav" border="1" cellspacing="0" width="95%">
<tbody>
<tr>
<th class="nav" colspan="2" align="left" valign="center"
width="100%">Specials</th>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/live-demo/index.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/live-demo/index.htm"
>LAM-Live-Demo</a></td>
</tr>
</tbody>
</table>
<p> </p>
<table class="nav" border="1" cellspacing="0" width="95%">
<tbody>
<tr>
<th class="nav" colspan="2" align="left" valign="center"
width="100%">Communication</th>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="window.open('http://sourceforge.net/tracker/?group_id=73243', '_blank')"
class="nav">- <a class="nav"
href="http://sourceforge.net/tracker/?group_id=73243" target="_blank">Trackers</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/mailinglists/index.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/mailinglists/index.htm"
>Mailing lists</a></td>
</tr>
</tbody>
</table>
<p><br>
<br>
</p>
<center>
<a href="http://sourceforge.net"><img src="http://sflogo.sourceforge.net/sflogo.php?group_id=73243&amp;type=1" width="88" height="31" border="0" alt="SourceForge.net Logo" /></a>
</center>
</td>
<td width=20>&nbsp;</td>
<!-- end navigation menu -->
<td class="mainarea">
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<h1>Debian packages</h1>
<br>
<p>
<table class="debian" width="100%">
<tr>
<td class="debian" width="70"><img class="aptget" src="../images/openlogo-nd-50.png"></td>
<td class="debian" width="*">
Debian users can get LDAP Account Manager by using the the official unstable branch of Debian or on our download page.<br>
LDAP Account Manager can be installed with "apt-get install ldap-account-manager".<br>
<br>The package is maintained by Roland Gruber (post@rolandgruber.de).<br>Thanks to Fabio Tranchitella who is sponsoring the package.</td>
</tr>
</table>
</p>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</td></tr></table>
</body>
</html>

875
lam-web/changelog/index.htm Normal file
View File

@ -0,0 +1,875 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="../style/layout.css">
</head>
<body>
<!-- begin navigation menu -->
<table width="100%" border=0 class="main">
<tr>
<td class="menu" width=180>
<script type="text/javascript" language="javascript">
<!--
// mouseOver function
function list_over(list) {
list.setAttribute('class','nav-over', 0);
}
// mouseOut function
function list_out(list) {
list.setAttribute('class','nav', 0);
}
//-->
</script>
<center><a href="http://lam.sourceforge.net/index.htm"><img
alt="LDAP Account Manager" src="http://lam.sourceforge.net/images/lam_logo.jpg"
style="border: 0px solid;"></a></center>
<p></p>
<table class="nav" border="1" cellspacing="0" width="95%">
<tbody>
<tr>
<th class="nav" colspan="2" align="left" valign="center"
width="100%">General Infos</th>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/index.htm'" class="nav">- <a
class="nav" href="http://lam.sourceforge.net/index.htm">Home</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/news/index.htm'" class="nav">-
<a class="nav" href="http://lam.sourceforge.net/news/index.htm">News</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/screenshots/index.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/screenshots/index.htm"
>Screenshots</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/documentation/index.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/documentation/index.htm"
>Documentation</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/changelog/index.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/changelog/index.htm"
>Changelog</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/todo/index.htm'" class="nav">-
<a class="nav" href="http://lam.sourceforge.net/todo/index.htm">ToDo</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/sponsors/donations.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/sponsors/donations.htm">Donations</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/sponsors/index.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/sponsors/index.htm">Sponsors</a></td>
</tr>
</tbody>
</table>
<p> </p>
<table class="nav" border="1" cellspacing="0" width="95%">
<tbody>
<tr>
<th class="nav" colspan="2" align="left" valign="center"
width="100%">Download</th>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/download/index.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/download/index.htm">Releases</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/download/rpm.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/download/rpm.htm">RPM packages</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/apt-get/index.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/apt-get/index.htm">Debian
packages</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/freebsd/index.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/freebsd/index.htm">FreeBSD
port</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/cvs-access/index.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/cvs-access/index.htm"
>CVS access</a></td>
</tr>
</tbody>
</table>
<p> </p>
<table class="nav" border="1" cellspacing="0" width="95%">
<tbody>
<tr>
<th class="nav" colspan="2" align="left" valign="center"
width="100%">Developers</th>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/developers/docs.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/developers/docs.htm">Documentation</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/i18n/index.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/i18n/index.htm">Translations</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="window.open('http://www.sourceforge.net/projects/lam', '_blank')"
class="nav">- <a class="nav"
href="http://www.sourceforge.net/projects/lam" target="_blank">LAM at
SourceForge</a></td>
</tr>
</tbody>
</table>
<p> </p>
<table class="nav" border="1" cellspacing="0" width="95%">
<tbody>
<tr>
<th class="nav" colspan="2" align="left" valign="center"
width="100%">Specials</th>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/live-demo/index.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/live-demo/index.htm"
>LAM-Live-Demo</a></td>
</tr>
</tbody>
</table>
<p> </p>
<table class="nav" border="1" cellspacing="0" width="95%">
<tbody>
<tr>
<th class="nav" colspan="2" align="left" valign="center"
width="100%">Communication</th>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="window.open('http://sourceforge.net/tracker/?group_id=73243', '_blank')"
class="nav">- <a class="nav"
href="http://sourceforge.net/tracker/?group_id=73243" target="_blank">Trackers</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/mailinglists/index.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/mailinglists/index.htm"
>Mailing lists</a></td>
</tr>
</tbody>
</table>
<p><br>
<br>
</p>
<center>
<a href="http://sourceforge.net"><img src="http://sflogo.sourceforge.net/sflogo.php?group_id=73243&amp;type=1" width="88" height="31" border="0" alt="SourceForge.net Logo" /></a>
</center>
</td>
<td width=20>&nbsp;</td>
<!-- end navigation menu -->
<td class="mainarea">
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<h1>Changelog</h1>
<br>
<p> </p>
<table cellspacing="0" width="100%">
<tbody>
<tr>
<th colspan="2">Wednesday 5th July 2006 - 1.0.3</th>
</tr>
<tr>
<td>
<ul>
<li>fixed bugs:</li>
<ul>
<li>Kolab: fixed problem with message about missing password</li>
<li>Unix groups: fixed auto GID</li>
<li>Unix users/groups: fixed silent unlocking of passwords</li>
<li>Unix users/groups: removed invalid password option</li>
<li>Shadow: account expiration date was incorrect in some time zones</li>
<li>User list: fixed problems when deleting users and translated GIDs are activated (1503367)</li>
</ul>
</ul>
</td>
</tr>
</tbody>
</table>
<p> </p>
<table cellspacing="0" width="100%">
<tbody>
<tr>
<th colspan="2">Wednesday 24th May 2006 - 1.0.2</th>
</tr>
<tr>
<td>
<ul>
<li>security enhancements: session timeout, logging, host restrictions</li>
<li>handle LDAP attribute aliases correctly</li>
<li>fixed bugs:</li>
<ul>
<li>PDF creation bug when GID translation is activated (1477111)</li>
<li>allow "@" in passwords (1477878)</li>
<li>Samba 2/3: fixed NT hashes</li>
<li>fixed handling of multi-value attributes (e.g. in inetLocalMailRecipient)</li>
</ul>
</ul>
</td>
</tr>
</tbody>
</table>
<p> </p>
<table cellspacing="0" width="100%">
<tbody>
<tr>
<th colspan="2">Wednesday 12th April 2006 - 1.0.1</th>
</tr>
<tr>
<td>
<ul>
<li>LAM can now be installed with "configure" and "make install"</li>
<li>added workaround for misspelled object classes (e.g. sambaSAMAccount by smbldap-tools)</li>
<li>Unix: merged password hash settings for Unix users and groups</li>
<li>Samba 3: added Windows group to profile options</li>
<li>security: LAM checks the session id and client IP</li>
<li>fixed bugs:</li>
<ul>
<li>Samba 3: hash values were wrong in some rare cases (1440021)</li>
<li>Samba 3: readded time zone selection for logon hours (1407761)</li>
<li>Unix: call of unknown function (1450464)</li>
</ul>
</ul>
</td>
</tr>
</tbody>
</table>
<p> </p>
<table cellspacing="0" width="100%">
<tbody>
<tr>
<th colspan="2">Wednesday 1st March 2006 - 1.0.0</th>
</tr>
<tr>
<td>
<ul>
<li>new architecture with support for more account types</li>
<li>new translations: Traditional Chinese, Dutch</li>
<li>fixed bugs:</li>
<ul>
<li>Samba groups: editing of special groups fixed</li>
<li>changed check for mail addresses (patch 1403922)</li>
<li>fixed JPG upload when MCrypt is enabled</li>
<li>fixed login problems for AD servers</li>
<li>improved sorting of account lists</li>
<li>fixed language setting in default configuration profile</li>
<li>fixed PHP5 warnings (getdate() and mktime())</li>
<li>error messages in Samba domain module (1437425)</li>
<li>fixed expired passwords with shadowAccount module</li>
<li>added lamdaemon.pl compatibility and security patches by Tim Rice</li>
</ul>
</ul>
</td>
</tr>
</tbody>
</table>
<p> </p>
<table cellspacing="0" width="100%">
<tbody>
<tr>
<th colspan="2">Wednesday 8th February 2006 - 1.0.rc2</th>
</tr>
<tr>
<td>
<ul>
<li>new translation: Dutch</li>
<li>fixed bugs:</li>
<ul>
<li>changed check for mail addresses (patch 1403922)</li>
<li>fixed JPG upload when MCrypt is enabled</li>
<li>fixed login problems for AD servers</li>
</ul>
</ul>
</td>
</tr>
</tbody>
</table>
<p> </p>
<table cellspacing="0" width="100%">
<tbody>
<tr>
<th colspan="2">Wednesday 11th January 2006 - 1.0.rc1</th>
</tr>
<tr>
<td>
<ul>
<li>new architecture with support for more account types</li>
<li>new translation: Traditional Chinese</li>
<li>fixed bugs:</li>
<ul>
<li>Samba groups: editing of special groups fixed</li>
</ul>
</ul>
</td>
</tr>
</tbody>
</table>
<p> </p>
<table cellspacing="0" width="100%">
<tbody>
<tr>
<th colspan="2">Wednesday 14th December 2005 - 0.5.3</th>
</tr>
<tr>
<td>
<ul>
<li>accounts are now deleted with subentries</li>
<li>big update for Italian translation</li>
<li>inetOrgPerson: support jpegPhoto images</li>
<li>less restrictive input checks</li>
<li>fixed bugs:</li>
<ul>
<li>fixed problems with case-insensitive DNs</li>
<li>file upload did not work when max_execution_time=0 (1367957)</li>
<li>posixGroup: fixed help entries</li>
</ul>
</ul>
</td>
</tr>
</tbody>
</table>
<p> </p>
<table cellspacing="0" width="100%">
<tbody>
<tr>
<th colspan="2">Wednesday 16th November 2005 - 0.5.2</th>
</tr>
<tr>
<td>
<ul>
<li>new module for SSH public keys</li>
<li>check file permissions on login page</li>
<li>fixed bugs:</li>
<ul>
<li>creation of home directories did not work</li>
<li>allow spaces in profile names (1333058)</li>
<li>fixed problem with magic_quotes_gpc in profile editor (1333069)</li>
<li>inetOrgPerson: deletion of postal address and fax number now works</li>
</ul>
</ul>
</td>
</tr>
</tbody>
</table>
<p> </p>
<table cellspacing="0" width="100%">
<tbody>
<tr>
<th colspan="2">Wednesday 19th October 2005 - 0.5.1</th>
</tr>
<tr>
<td>
<ul>
<li>Samba 3: added support for account expiration</li>
<li>fixed bugs:</li>
<ul>
<li>automatic UID/GID assignment did not fully work</li>
<li>PDF: additional groups for Unix users</li>
<li>inetOrgPerson: fixed mobile number</li>
<li>Samba 2/3: passwords fixed for file uploads (1311561)</li>
<li>Samba 3: fixed logon hours (patch 1311915)</li>
<li>Samba 3: loading of domain setting from profile did not work</li>
<li>Quota: profile settings fixed</li>
<li>reduced memory usage</li>
</ul>
</ul>
</td>
</tr>
</tbody>
</table>
<p> </p>
<table cellspacing="0" width="100%">
<tbody>
<tr>
<th colspan="2">Wednesday 28th September 2005 - 0.5.0</th>
</tr>
<tr>
<td>
<ul>
<li>new architecture:</li>
<ul>
<li>possibility to create Unix-only accounts</li>
<li>enhanced PDF output</li>
<li>enhanced file upload</li>
<li>enhanced editor for account profiles</li>
<li>dynamic configuration options (based on modules)</li>
</ul>
<li>new plugin for managing NIS mail aliases (RFE 1050036)</li>
<li>new plugin for managing mail routing with inetLocalMailRecipient (RFE 1092137)</li>
<li>new plugin for managing MAC addresses (RFE 926017)</li>
<li>tree view</li>
<li>schema browser</li>
<li>added developer documentation</li>
<li>all pages in UTF-8</li>
</ul>
</td>
</tr>
</tbody>
</table>
<p> </p>
<table cellspacing="0" width="100%">
<tbody>
<tr>
<th colspan="2">Thursday 8th September 2005 - 0.5.rc3</th>
</tr>
<tr>
<td>
<ul>
<li> INFO messages no longer prevent changing to subpages of a
module </li>
<li>fixed bugs:</li>
<ul>
<li>buttons on account page are better sorted<br>
</li>
<li>account module: some problems solved when used for user
accounts</li>
<li>nisMailAlias: fixed missing RDN possibility</li>
<li>fixed conflicts when accounts were built with other base
modules</li>
<li>Samba 2/3: setting allowed workstations failed</li>
<li>magic_quotes_gpc = Off prevented editing of accounts</li>
<li>fixed help links on Samba and Unix pages<br>
</li>
</ul>
</ul>
</td>
</tr>
</tbody>
</table>
<p> </p>
<table cellspacing="0" width="100%">
<tbody>
<tr>
<th colspan="2">Thursday 18th August 2005 - 0.5.rc2</th>
</tr>
<tr>
<td>
<ul>
<li>allow user accounts based only on "account" module</li>
<li>inetOrgPerson: allow setting a password if posixAccount is
not active</li>
<li>fixed bugs:</li>
<ul>
<li>removed Blowfish encryption (bad performance)</li>
<li>Kolab now complains if no user password is set</li>
</ul>
</ul>
</td>
</tr>
</tbody>
</table>
<br>
<p> </p>
<table cellspacing="0" width="100%">
<tbody>
<tr>
<th colspan="2">Monday 8th August 2005 - 0.5.rc1</th>
</tr>
<tr>
<td>
<ul>
<li>Kolab 2 support</li>
<li>added manager and post office box for inetOrgPerson</li>
<li>Samba 3: added support for logon hours</li>
<li>Samba 3: added sambaSID as possible RDN attribute</li>
<li>improved error handling in profile editor</li>
<li>now quotas can be set on CSV upload</li>
<li>new logo</li>
<li>fixed bugs:</li>
<ul>
<li>several fixes for PHP5</li>
<li>fixes for PDF editor and output</li>
<li>password changing in tree view did not work</li>
<li>fixed changing of group memberships for users</li>
</ul>
</ul>
</td>
</tr>
</tbody>
</table>
<br>
<p> </p>
<table cellspacing="0" width="100%">
<tbody>
<tr>
<th colspan="2">Thursday 28th July 2005 - 0.4.10</th>
</tr>
<tr>
<td>
<ul>
<li>added PHP5 support</li>
</ul>
</td>
</tr>
</tbody>
</table>
<br>
<p> </p>
<table cellspacing="0" width="100%">
<tbody>
<tr>
<th colspan="2">Thursday 30th June 2005 - 0.5.alpha2</th>
</tr>
<tr>
<td>
<ul>
<li>added documentation about schemas</li>
<li>PDF now uses UTF-8 fonts</li>
<li>added possibility to create plain inetOrgPerson accounts</li>
<li>fixed bugs:</li>
<ul>
<li>set DN suffix and RDN on profile loading</li>
<li>several fixes for PDF editor</li>
<li>creating Samba hosts now works</li>
</ul>
</ul>
</td>
</tr>
</tbody>
</table>
<br>
<p> </p>
<table cellspacing="0" width="100%">
<tbody>
<tr>
<th colspan="2">Wednesday 11th May 2005 - 0.5.alpha1</th>
</tr>
<tr>
<td>
<ul>
<li>new plugin based architecture</li>
<ul>
<li>Unix accounts no longer depend on Samba parts</li>
<li>management of more objectClasses (ieee802Device,
nisMailAlias,
inetLocalMailRecipient, ...)</li>
</ul>
<li>file upload for all account types</li>
<li>schema browser</li>
<li>tree view<br>
</li>
<li>more translations (currently 8)</li>
</ul>
</td>
</tr>
</tbody>
</table>
<br>
<p> </p>
<table cellspacing="0" width="100%">
<tbody>
<tr>
<th colspan="2">Wednesday 9th March 2005 - 0.4.9</th>
</tr>
<tr>
<td> - fixed bugs:<br>
&nbsp;&nbsp;-&gt; fixed error messages when moving an user account<br>
&nbsp;&nbsp;-&gt; fixed problem with special group SIDs<br>
&nbsp;&nbsp;-&gt; lamdaemon.pl security fix<br>
</td>
</tr>
</tbody>
</table>
<br>
<p> </p>
<table cellspacing="0" width="100%">
<tbody>
<tr>
<th colspan="2">Wednesday 26th January 2005 - 0.4.8</th>
</tr>
<tr>
<td> - allow "%" at the beginning of Samba home/profile path
(1107998)<br>
- fixed bugs:<br>
&nbsp;&nbsp;-&gt; fixed IE fix ;-)<br>
&nbsp;&nbsp;-&gt; no more warnings for profiles with no additional
groups set<br>
</td>
</tr>
</tbody>
</table>
<br>
<p> </p>
<table cellspacing="0" width="100%">
<tbody>
<tr>
<th colspan="2">Saturday 18th December 2004 - 0.4.7</th>
</tr>
<tr>
<td> - Added "*.exe" to Samba logon script regex (1081715)<br>
- fixed bugs:<br>
&nbsp;&nbsp;-&gt; Fixed doctype of main frame<br>
&nbsp;&nbsp;-&gt; Removed syntax check for LDAP suffixes<br>
&nbsp;&nbsp;-&gt; Fixed IE bug at login<br>
&nbsp;&nbsp;-&gt; Fixed encoding in HTTP header<br>
&nbsp;&nbsp;-&gt; Passwords with "'" are now handled correctly at login
(1081460)<br>
&nbsp;&nbsp;-&gt; Fixed Samba flags if multiple hosts were created<br>
&nbsp;&nbsp;-&gt; Updated .htaccess files to be compatible with newer
Apache versions<br>
</td>
</tr>
</tbody>
</table>
<br>
<p> </p>
<table cellspacing="0" width="100%">
<tbody>
<tr>
<th colspan="2">Thuesday 28th May 2004 - 0.4.6</th>
</tr>
<tr>
<td> - fixed bugs:<br>
&nbsp;&nbsp;-&gt; Password hashes were not disabled correctly<br>
&nbsp;&nbsp;-&gt; Street was copied to postal code on modify (938502)<br>
&nbsp;&nbsp;-&gt; Samba host passwords were still wrong<br>
&nbsp;&nbsp;-&gt; Underscore was not allowed for host names (934445)<br>
&nbsp;&nbsp;-&gt; Deleting postal address or facsimile number failed
(948616)<br>
&nbsp;&nbsp;-&gt; TLS error handling (958497)<br>
&nbsp;&nbsp;-&gt; Smaller fixes on personal settings page<br>
</td>
</tr>
</tbody>
</table>
<br>
<p> </p>
<table cellspacing="0" width="100%">
<tbody>
<tr>
<th colspan="2">Sunday 21th March 2004 - 0.4.5</th>
</tr>
<tr>
<td> - added French translation<br>
- fixed bugs:<br>
&nbsp;&nbsp;-&gt; StatusMessages with additional variables did not work<br>
&nbsp;&nbsp;-&gt; Samba hosts had unnecessary objectClass shadowAccount
(910084)<br>
&nbsp;&nbsp;-&gt; Samba host passwords were still wrong<br>
&nbsp;&nbsp;-&gt; LAM had problems with non-standard spelled object
classes (907636)<br>
&nbsp;&nbsp;-&gt; Perl scripts did not work if Perl is not installed in
/usr/bin/perl (913554)<br>
&nbsp;&nbsp;-&gt; roblems when cn!=uid (915041)<br>
&nbsp;&nbsp;-&gt; home directories were not deleted by lamdaemon.pl
(913552)<br>
</td>
</tr>
</tbody>
</table>
<br>
<p> </p>
<table cellspacing="0" width="100%">
<tbody>
<tr>
<th colspan="2">Sunday 29th February 2004 - 0.4.4</th>
</tr>
<tr>
<td> - fixed bugs:<br>
&nbsp;&nbsp;-&gt; plain posix groups could not be used as Samba 3
primary group<br>
&nbsp;&nbsp;-&gt; if magic_quotes_gpc in php.ini is was set to "Off",
several pages did not work<br>
&nbsp;&nbsp;-&gt; some smaller bugs in mass upload<br>
&nbsp;&nbsp;-&gt; Samba hash values for hosts were not correct<br>
&nbsp;&nbsp;-&gt; Unix passwords could be disabled but not reenabled<br>
&nbsp;&nbsp;-&gt; fixed problem with eval() in status.inc (894433)<br>
</td>
</tr>
</tbody>
</table>
<br>
<p> </p>
<table cellspacing="0" width="100%">
<tbody>
<tr>
<th colspan="2">Monday 9th February 2004 - 0.4.3</th>
</tr>
<tr>
<td> - new login layout<br>
- added Hungarian and Japanese translations<br>
- fixed bugs:<br>
&nbsp;&nbsp;-&gt; Samba paswords were sometimes empty for new users
(892272)<br>
&nbsp;&nbsp;-&gt; links in list views may not work with web servers
other than Apache<br>
</td>
</tr>
</tbody>
</table>
<br>
<p> </p>
<table cellspacing="0" width="100%">
<tbody>
<tr>
<th colspan="2">Wednesday 21th January 2004 - 0.4.2</th>
</tr>
<tr>
<td> - added config wizard<br>
- MHash is only needed for PHP &lt; 4.3<br>
- use Blowfish for encryption instead of MCrypt<br>
</td>
</tr>
</tbody>
</table>
<br>
<p> </p>
<table cellspacing="0" width="100%">
<tbody>
<tr>
<th colspan="2">Monday 29th December 2003 - 0.4.1</th>
</tr>
<tr>
<td> - better error handling at login<br>
- support spaces in DNs<br>
- PDF text for users<br>
- create missing OUs recursivly<br>
- fixed bugs:<br>
&nbsp;&nbsp;-&gt; SMD5 passwords were wrong<br>
&nbsp;&nbsp;-&gt; primaryGroupSID wrong if SID has no relation to
Algorithmic RID Base<br>
&nbsp;&nbsp;-&gt; Samba 2 accounts could not be created </td>
</tr>
</tbody>
</table>
<br>
<p> </p>
<table cellspacing="0" width="100%">
<tbody>
<tr>
<th colspan="2">Wednesday 29th October 2003 - 0.4 (Beta 1)</th>
</tr>
<tr>
<td> - improved design<br>
- improved documentation<br>
- Fixed possible error which could delete entries if objectclass didn't
fit<br>
- Fixed many samba 3.0 related bugs, most related to SIDs<br>
- edit group members directly<br>
- support for several password hashes (CRYPT/SHA/SSHA/MD5/SMD5/PLAIN)<br>
- PDF output for groups and hosts<br>
</td>
</tr>
</tbody>
</table>
<br>
<p> </p>
<table cellspacing="0" width="100%">
<tbody>
<tr>
<th colspan="2">Sunday 31th August 2003 - 0.3 (Alpha 3)</th>
</tr>
<tr>
<td> - Samba 3 support<br>
- manage Samba 3 domains<br>
- multiple configuration files<br>
- PDF output<br>
- better mass creation </td>
</tr>
</tbody>
</table>
<br>
<p> </p>
<table cellspacing="0" width="100%">
<tbody>
<tr>
<th colspan="2">Saturday 5th June 2003 - 0.2 (Alpha 2)</th>
</tr>
<tr>
<td> - support for multiple OUs + OU-Editor<br>
- account creation via file upload<br>
- profile editor<br>
- experimental Samba 3 support<br>
- fixed a lot of bugs </td>
</tr>
</tbody>
</table>
<br>
<p> </p>
<table cellspacing="0" width="100%">
<tbody>
<tr>
<th colspan="2">Saturday 24th May 2003 - 0.1 (Alpha 1)</th>
</tr>
<tr>
<td> Initial release </td>
</tr>
</tbody>
</table>
<br>
<br>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</td></tr></table>
</body>
</html>

246
lam-web/cvs-access/index.htm Executable file
View File

@ -0,0 +1,246 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="../style/layout.css">
</head>
<body>
<!-- begin navigation menu -->
<table width="100%" border=0 class="main">
<tr>
<td class="menu" width=180>
<script type="text/javascript" language="javascript">
<!--
// mouseOver function
function list_over(list) {
list.setAttribute('class','nav-over', 0);
}
// mouseOut function
function list_out(list) {
list.setAttribute('class','nav', 0);
}
//-->
</script>
<center><a href="http://lam.sourceforge.net/index.htm"><img
alt="LDAP Account Manager" src="http://lam.sourceforge.net/images/lam_logo.jpg"
style="border: 0px solid;"></a></center>
<p></p>
<table class="nav" border="1" cellspacing="0" width="95%">
<tbody>
<tr>
<th class="nav" colspan="2" align="left" valign="center"
width="100%">General Infos</th>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/index.htm'" class="nav">- <a
class="nav" href="http://lam.sourceforge.net/index.htm">Home</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/news/index.htm'" class="nav">-
<a class="nav" href="http://lam.sourceforge.net/news/index.htm">News</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/screenshots/index.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/screenshots/index.htm"
>Screenshots</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/documentation/index.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/documentation/index.htm"
>Documentation</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/changelog/index.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/changelog/index.htm"
>Changelog</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/todo/index.htm'" class="nav">-
<a class="nav" href="http://lam.sourceforge.net/todo/index.htm">ToDo</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/sponsors/donations.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/sponsors/donations.htm">Donations</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/sponsors/index.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/sponsors/index.htm">Sponsors</a></td>
</tr>
</tbody>
</table>
<p> </p>
<table class="nav" border="1" cellspacing="0" width="95%">
<tbody>
<tr>
<th class="nav" colspan="2" align="left" valign="center"
width="100%">Download</th>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/download/index.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/download/index.htm">Releases</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/download/rpm.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/download/rpm.htm">RPM packages</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/apt-get/index.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/apt-get/index.htm">Debian
packages</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/freebsd/index.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/freebsd/index.htm">FreeBSD
port</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/cvs-access/index.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/cvs-access/index.htm"
>CVS access</a></td>
</tr>
</tbody>
</table>
<p> </p>
<table class="nav" border="1" cellspacing="0" width="95%">
<tbody>
<tr>
<th class="nav" colspan="2" align="left" valign="center"
width="100%">Developers</th>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/developers/docs.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/developers/docs.htm">Documentation</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/i18n/index.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/i18n/index.htm">Translations</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="window.open('http://www.sourceforge.net/projects/lam', '_blank')"
class="nav">- <a class="nav"
href="http://www.sourceforge.net/projects/lam" target="_blank">LAM at
SourceForge</a></td>
</tr>
</tbody>
</table>
<p> </p>
<table class="nav" border="1" cellspacing="0" width="95%">
<tbody>
<tr>
<th class="nav" colspan="2" align="left" valign="center"
width="100%">Specials</th>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/live-demo/index.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/live-demo/index.htm"
>LAM-Live-Demo</a></td>
</tr>
</tbody>
</table>
<p> </p>
<table class="nav" border="1" cellspacing="0" width="95%">
<tbody>
<tr>
<th class="nav" colspan="2" align="left" valign="center"
width="100%">Communication</th>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="window.open('http://sourceforge.net/tracker/?group_id=73243', '_blank')"
class="nav">- <a class="nav"
href="http://sourceforge.net/tracker/?group_id=73243" target="_blank">Trackers</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/mailinglists/index.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/mailinglists/index.htm"
>Mailing lists</a></td>
</tr>
</tbody>
</table>
<p><br>
<br>
</p>
<center>
<a href="http://sourceforge.net"><img src="http://sflogo.sourceforge.net/sflogo.php?group_id=73243&amp;type=1" width="88" height="31" border="0" alt="SourceForge.net Logo" /></a>
</center>
</td>
<td width=20>&nbsp;</td>
<!-- end navigation menu -->
<td class="mainarea">
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<h1>CVS-Access</h1>
<p>There are basically two ways of accessing the LDAP Account Manager (LAM) CVS repository.<br><br>
The first one is through <a href="http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/lam" target="_self">WebCVS</a>.
You can view all LAM CVS files by simply browsing the archive with your browser.<br>
The second way is through anonymous CVS access with a CVS client of your choice. The commands are:<br><br>
<b>cvs -d:pserver:anonymous@lam.cvs.sourceforge.net:/cvsroot/lam login</b><br>
<b>cvs -z3 -d:pserver:anonymous@lam.cvs.sourceforge.net:/cvsroot/lam co lam</b><br><br><br>
More information concerning LAM and CVS can be found at <a href="http://sourceforge.net/cvs/?group_id=73243" target="_blank">http://sourceforge.net/cvs/?group_id=73243</a>.</p>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</td></tr></table>
</body>
</html>

View File

@ -0,0 +1,23 @@
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Format: 1.0
Source: ldap-account-manager
Version: 1.0.3-1
Binary: ldap-account-manager
Maintainer: Roland Gruber <post@rolandgruber.de>
Architecture: all
Standards-Version: 3.7.2
Build-Depends: debhelper (>= 4.1.16)
Build-Depends-Indep: po-debconf
Files:
6d1ebee537b61a8aae9237cbc4d49747 1544041 ldap-account-manager_1.0.3.orig.tar.gz
4a420d161edfbb2bab96c0c99c97a669 15176 ldap-account-manager_1.0.3-1.diff.gz
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.3 (GNU/Linux)
iD8DBQFEqXkOq/ywNCsrGZ4RAmiSAJ9sqRmkMfWv3/0Jzv2Nv/60p6WKMACfaaBe
039i0NOZoZC1s3zDoelcI8A=
=UL26
-----END PGP SIGNATURE-----

View File

@ -0,0 +1,40 @@
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Format: 1.7
Date: Mon, 3 Jul 2006 22:01:54 +0200
Source: ldap-account-manager
Binary: ldap-account-manager
Architecture: source all
Version: 1.0.3-1
Distribution: unstable
Urgency: low
Maintainer: Roland Gruber <post@rolandgruber.de>
Changed-By: Roland Gruber <post@rolandgruber.de>
Description:
ldap-account-manager - webfrontend for managing accounts in an LDAP directory
Closes: 368804 368805 368806 373181 375452 375453
Changes:
ldap-account-manager (1.0.3-1) unstable; urgency=low
.
* Updated to new upstream release.
* Account expiration date wierdness (Closes: #368806)
* Incorrect display of password encryption (Closes: #368805)
* [intl:fr] ldap-account-manager debconf templates translation
(Closes: #373181)
* Invalid/Lock password auto reverts (Closes: #375453)
* Invalid/Lock password options conflict (Closes: #375452)
* Ack NMU. (Closes: #368804)
Files:
9e1e279b26be5f77c8de52da443d8898 651 web extra ldap-account-manager_1.0.3-1.dsc
6d1ebee537b61a8aae9237cbc4d49747 1544041 web extra ldap-account-manager_1.0.3.orig.tar.gz
4a420d161edfbb2bab96c0c99c97a669 15176 web extra ldap-account-manager_1.0.3-1.diff.gz
8577bbe85e84e878a6ac3db561db7a15 1503036 web extra ldap-account-manager_1.0.3-1_all.deb
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.3 (GNU/Linux)
iD8DBQFEqXkTq/ywNCsrGZ4RArGGAJ4iaWB+20ZzR7henaiQZXhoKdLljACfaXdp
wzgGXdmjeLsq8w0wiZmY750=
=K4rn
-----END PGP SIGNATURE-----

View File

@ -0,0 +1,149 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Developer FAQ</title>
<link rel="stylesheet" type="text/css" href="style/layout.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<div style="text-align: center;">
<h1>Developer FAQ<br>
</h1>
<br>
<div style="text-align: left;"><big><span style="font-weight: bold;">Q:
Where is the ldap/config object?</span></big><br>
<br>
<big><span style="font-weight: bold;">A:</span></big> The ldap object
is in <span style="color: rgb(204, 0, 0); font-weight: bold;">$_SESSION['ldap']</span>
and the config object in <span
style="font-weight: bold; color: rgb(204, 0, 0);">$_SESSION['config']</span>.<br>
<br>
<br>
</div>
<div style="text-align: left;"><br>
</div>
<div style="text-align: left;"><big><span style="font-weight: bold;">Q:
How can I make LDAP operations, where is the user name and password?</span></big><br>
<br>
<span style="font-weight: bold;"><big>A:</big> </span>LAM
automatically reconnects to the LDAP server on every page load. You can
use <span style="font-weight: bold; color: rgb(204, 0, 0);">$_SESSION['ldap']-&gt;server</span>
which is the LDAP server handle.<br>
Be sure to include ldap.inc before (automatically included for account
modules).<br>
<br>
<span style="font-weight: bold;">Example:</span> ldap_search(<span
style="font-weight: bold; color: rgb(204, 0, 0);">$_SESSION['ldap']-&gt;server</span><span
style="color: rgb(204, 0, 0);"></span>, $suffix, $filter, $attributes)<br>
<br>
<br>
<br>
<big><span style="font-weight: bold;">Q: What is the LDAP suffix for
the different account types?</span></big><br>
<br>
<big><span style="font-weight: bold;">A:</span></big> Just call <span
style="font-weight: bold; color: rgb(204, 0, 0);">$_SESSION['config']-&gt;get_Suffix($scope)</span>
where $scope is the account type (user,group, ...).<br>
Be sure to include ldap.inc before (automatically included for account
modules).<br>
<br>
<span style="font-weight: bold;">Example:</span> $suffix = <span
style="font-weight: bold; color: rgb(204, 0, 0);">$_SESSION['config']-&gt;get_Suffix('user')</span><br>
<br>
<br>
<br>
<big><span style="font-weight: bold;">Q: How can I check if the user is
really logged in and not calling the scripts by hand?</span></big><br>
<br>
<big><span style="font-weight: bold;">A:</span></big> After the user
successfully logged in to LAM the variable <span
style="font-weight: bold; color: rgb(204, 0, 0);">$_SESSION['loggedIn']</span>
is set to true.<br>
<br>
<big><span style="font-weight: bold;"><br>
<br>
Q: What is the command for these error/warning/info messages?</span></big><br>
<br>
<big><span style="font-weight: bold;">A:</span></big> Your script must
include status.inc (automatically included for account
modules) to display these messages.<br>
The command is <span style="font-weight: bold;">StatusMessage(&lt;type&gt;,
&lt;headline&gt;, &lt;text&gt;[, &lt;variables&gt;])</span>.<br>
<br>
<span style="font-weight: bold;">Parameters:</span><br>
<ul>
<li><span style="font-weight: bold;">&lt;type&gt;:</span> message
type ("ERROR", "WARN", "INFO")</li>
<li><span style="font-weight: bold;">&lt;headline&gt;:</span>
headline for the message (may include format tags)<br>
</li>
<li><span style="font-weight: bold;">&lt;type&gt;:</span> text for
the message (may include format tags)</li>
<li><span style="font-weight: bold;">&lt;variables&gt;:</span>
optional, array of variables to include in headline/text<br>
The positions in headline/text must be marked with %s before.</li>
</ul>
<br>
<span style="font-weight: bold;">Format of special tags:</span><br>
<ul>
<li><span style="font-weight: bold;">{bold}</span>text<span
style="font-weight: bold;">{endbold}:</span> "text" is printed bold</li>
<li><span style="font-weight: bold;">{color=#123456}</span>text<span
style="font-weight: bold;">{endcolor}:</span> "text" is printed in
given color</li>
<li><span style="font-weight: bold;">{link=http://nodomain.org}</span>text<span
style="font-weight: bold;">{endlink}:</span> This will add a link to
http://nodomain.org which will be labeled "text"<br>
</li>
</ul>
<br>
<br>
<br>
</div>
</div>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,94 @@
<!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>Account modules</title>
<link rel="stylesheet" type="text/css" href="style/layout.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<h1 style="text-align: center;">Account modules<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 account modules control all the
functionality which is specific for LDAP accounts or parts of them.
E.g. they define the account detail pages where the user can edit
accounts, the profile editor sections and much more. They are the core
of LAM.<br>
<br>
All account modules are saved in <span style="font-weight: bold;">lib/modules/</span>.<br>
If your module needs any include files etc. please save it in <span
style="font-weight: bold;">lib/modules/&lt;name of your module&gt;.</span><br>
<br>
Please take a look at the <a href="mod_index.htm">module HowTo</a> for
an example to write your own modules.<br>
The complete specification for the module interface can be found <a
href="modules-specification.htm">here</a>.<br>
<br>
<h2>Superclass</h2>
All <span style="font-weight: bold;">account modules</span> should be
subclasses of the <a href="base_module.htm">baseModule</a>.<br>
This allows them to benefit from the meta data in the baseModule and
reduces very much the code since not the complete module interface has
to be implemented.<br>
<br>
<br>
<h2>Module detection</h2>
New modules can simply be copied to <span style="font-weight: bold;">lib/modules</span>.
LAM will check what files are inside the directory and provide the user
new modules automatically.<br>
There is no extra configuration file.<br>
<br>
<br>
</div>
</div>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,187 @@
<!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>Account modules (modules.inc)</title>
<link rel="stylesheet" type="text/css" href="style/layout.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<h1 style="text-align: center;">Account modules (modules.inc)<br>
</h1>
<br>
<span style="font-style: italic;">Modules.inc</span> provides the
interface to all module specific functions. It includes a list of
account independent function and the <span style="font-weight: bold;">accountContainer</span>
class. This class represents an LDAP account.<br>
You should never call module functions directly, always use a function
in <span style="font-style: italic;">modules.inc</span>.<br>
<br>
<h2>Account independent functions:</h2>
<br>
<h3>General functions:</h3>
<span style="font-weight: bold;">getModuleAlias:</span> This returns
the alias name of a module. It is used to label buttons or fieldsets.<br>
<br>
<span style="font-weight: bold;">parseHtml:</span> Converts the LAM
meta HTML code to real HTML code.<br>
<span style="font-weight: bold;"></span><br>
<br>
<h3>Functions for LAM configuration:</h3>
<span style="font-weight: bold;">is_base_module:</span> When the given
module is a <span style="font-style: italic;">base module</span> then
this returns <span style="font-style: italic;">true</span>. Every
account type needs exactly one <span style="font-style: italic;">base
module</span>.<br>
<br>
<span style="font-weight: bold;">getModulesDependencies:</span> Account
modules can specify dependencies to other modules. E.g. Samba accounts
always need a Unix part.<br>
<br>
<span style="font-weight: bold;">check_module_depends/check_module_conflicts:</span>
This function checks if all module dependencies are satisfied.<br>
<br>
<span style="font-weight: bold;">getAvailableModules:</span> Returns a
list of available modules. If you need a list of all active modules use
<span style="font-weight: bold;">$_SESSION['config']-&gt;</span><span
class="method-title"><span style="font-weight: bold;">get_AccountModules()</span>.</span><br>
<br>
<span style="font-weight: bold;">getConfigOptions:</span> Returns a
list of all configuration options which were defined by the modules.<br>
<br>
<span style="font-weight: bold;">getConfigDescriptions:</span> Returns
a list of all configuration descriptions and titles for the fieldsets.<br>
<br>
<span style="font-weight: bold;">checkConfigOptions:</span> Checks if
the user filled in valid values for each option.<br>
<br>
<br>
<h3>Account list functions:</h3>
<span style="font-weight: bold;">get_ldap_filter:</span> Each account
list shows only entries which match a given LDAP search filter.<br>
<br>
<br>
<h3>Profile/account pages:</h3>
<span style="font-weight: bold;">getRDNAttributes:</span> This returns
a list of possible LDAP <span style="font-style: italic;">RDN</span>
attributes. LAM needs this to build the <span
style="font-style: italic;">DN</span> for new accounts.<br>
<br>
<span style="font-weight: bold;">getProfileOptions:</span> Returns a
list of all profile options which were defined by the account modules.<br>
<br>
<span style="font-weight: bold;">checkProfileOptions:</span> Checks if
all module options are correct.<br>
<br>
<br>
<h3>Help functions:</h3>
<span style="font-weight: bold;">getHelp:</span> Returns a module help
entry.<br>
<br>
<br>
<h3>PDF functions:</h3>
<span style="font-weight: bold;">getAvailablePDFFields:</span> Returns
a list of possible PDF fields.<br>
<br>
<br>
<h3>Upload functions:</h3>
<span style="font-weight: bold;">getUploadColumns:</span> Returns a
list of possible upload columns and additional information like a
description, help entry and example value.<br>
<br>
<span style="font-weight: bold;">buildUploadAccounts:</span> Takes the
input of the CSV file and builds the LDAP accounts.<br>
<br>
<span style="font-weight: bold;">doUploadPostActions:</span> Manages
the execution of actions which need to be done after the accounts are
created.<br>
<br>
<br>
<h2>Class accountContainer:</h2>
This class represents a complete LDAP account. It manages all functions
which concern a specific LDAP entry.<br>
<br>
<h4>Important variables:</h4>
There are some class variables which can be of important use in the
account modules.<br>
<br>
<span style="font-weight: bold;">module:</span> List of account modules
(array('name' =&gt; 'object')).<br>
<br>
<span style="font-weight: bold;">isNewAccount:</span> This variable is <span
style="font-style: italic;">true</span> when the account is newly
created, <span style="font-style: italic;">false</span> if loaded from
LDAP.<br>
<br>
<h4>Function list:</h4>
<span style="font-weight: bold;">continue_main:</span> This function is
called when an account page is displayed. It generates the HTML code
for the account pages.<br>
<br>
<span style="font-weight: bold;">get_module_attributes:</span> Returns
all attributes of a given object class.<br>
<br>
<span style="font-weight: bold;">save_module_attributes:</span> Finds
differences between current and original account.<br>
<br>
<span style="font-weight: bold;">load_account:</span> Loads an LDAP
account.<br>
<br>
<span style="font-weight: bold;">new_account:</span> Creates a new
account.<br>
<br>
<span style="font-weight: bold;">save_account:</span> Saves an account
to LDAP.<br>
<br>
<span style="font-weight: bold;">get_pdfEntries:</span> Returns the PDF
values of an account.<br>
<br>
<br>
<br>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,76 @@
<!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>Account pages</title>
<link rel="stylesheet" type="text/css" href="style/layout.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<h1 style="text-align: center;">Account pages<br>
</h1>
<br>
The account pages are the user interface to create/modify LDAP
accounts. It allows setting basic attributes like the LDAP suffix and
is responsible to show module specific pages. <br>
<br>
<br>
The main script for the account pages is located in <span
style="font-style: italic;">templates/account/edit.php</span>. It has
a very simple content. If the page is loaded for the first time it
creates a new <span style="font-weight: bold;">accountContainer</span>
inside the session and tells it to load/create an LDAP account. Then it
calles the <span style="font-weight: bold;">continue_main()</span>
function of the <span style="font-weight: bold;">accountContainer</span>
object which prints all HTML output.<br>
<br>
Managing of user input etc. is completly made by the <span
style="font-weight: bold;">accountContainer</span>.<br>
<br>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,91 @@
<!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>Account types</title>
<link rel="stylesheet" type="text/css" href="style/layout.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<h1 style="text-align: center;">Account types<br>
</h1>
<div style="text-align: center;"><img alt="base module"
src="images/lam_baseType.png"><br>
</div>
<div style="text-align: center;"><br>
<div style="text-align: left;">The account types define what kind of
accounts can be managed with LAM. If you want to create a new account
module which does not fit in the existing classes of users, groups and
hosts then you need your own account type.<br>
<br>
All account types are saved in <span style="font-weight: bold;">lib/types/</span>.<br>
<br>
Please take a look at the <a href="type_index.htm">type HowTo</a> for
an example to write your own types.<br>
The complete specification for the type interface can be found <a
href="types-specification.htm">here</a>.<br>
<br>
<h2>Superclass</h2>
All <span style="font-weight: bold;">account types</span> should be
subclasses of the <a href="base_type.htm">baseType</a>.<br>
This reduces very much the code since not the complete type interface
has
to be implemented.<br>
<br>
<br>
<h2>Type detection</h2>
New types can simply be copied to <span style="font-weight: bold;">lib/types</span>.
LAM will check what files are inside the directory and provide the user
new types automatically.<br>
There is no extra configuration file.<br>
<br>
<br>
</div>
</div>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,87 @@
<!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>Account types (types.inc)</title>
<link rel="stylesheet" type="text/css" href="style/layout.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<h1 style="text-align: center;">Account types (types.inc)<br>
</h1>
<br>
<span style="font-style: italic;">Types.inc</span> is the interface to
the account types. It provides information about the type alias names,
descriptions and other things.<br>
<br>
<h2>Functions:</h2>
<br>
<h3>General functions:</h3>
<span style="font-weight: bold;">getAlias:</span> This returns
the alias name of a type. It is used to label buttons or fieldsets.<br>
<br>
<span style="font-weight: bold;">getDescription:</span> Returns a
description for the account type.<br>
<span style="font-weight: bold;"></span><br>
<br>
<h3>Functions for list views:</h3>
<span style="font-weight: bold;">getListClassName:</span> Here you can
specify your own class to handle the list view.&nbsp; This is needed to
label the buttons in the list view.<br>
<br>
<span style="font-weight: bold;">getDefaultListAttributes:</span>
Returns the default setting for the displayed list attributes. It is
used as default for the LAM configuration.<br>
<br>
<span style="font-weight: bold;">getListAttributeDescriptions:</span>
Returns a hash array which contains predefined, translated descriptions
of LDAP attributes.<br>
<br>
<span style="font-weight: bold;"></span><br>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,119 @@
<!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>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<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>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,71 @@
<!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 type</title>
<link rel="stylesheet" type="text/css" href="style/layout.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<h1 style="text-align: center;">Base type<br>
</h1>
<div style="text-align: center;"><img alt="base type"
src="images/lam_baseType.png"><br>
</div>
<div style="text-align: center;"><br>
<div style="text-align: left;">The <span style="font-weight: bold;">baseType</span>
is the parent class of all account types. <br>
It implements all functions of the <a href="types-specification.htm">type
interface</a>.<br>
<br>
However, you surely want to override most of the functions in your
account type class.<br>
</div>
</div>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,106 @@
<!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>config.inc</title>
<link rel="stylesheet" type="text/css" href="style/layout.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<h1 style="text-align: center;">config.inc</h1>
<br>
<br>
This file includes all functions needed to manage configuration
profiles. It includes classes for the profiles itself and the master
configuration (default profile, master password, etc.).<br>
<br>
There are also two global functions for general use: <span
style="font-style: italic;">setlanguage</span> and <span
style="font-style: italic;">metarefresh</span><br>
<br>
<h2>Meta refresh</h2>
The global function <span
style="font-weight: bold; font-style: italic;">metaRefresh()</span>
takes an URL as argument and prints all HTML code needed for a meta
refresh to this URL.<br>
<br>
<h2>Language</h2>
LAM uses <span style="font-style: italic;">gettext</span> to translate
the HTML pages to the different languages. Therefore some preferences
need to be set on every page load. This is done by <span
style="font-style: italic; font-weight: bold;">setlanguage()</span>.<br>
The function should be called directly after starting the session.<br>
<br>
The list of possible languages is stored in <span
style="font-style: italic;">config/language</span>. It includes the
locale name, the character encoding an the language name.<br>
All languages use UTF-8 as encoding because LDAP also stores values in
this format.<br>
<br>
<h2>Configuration profiles</h2>
Each configuration profile is saved in a single file in <span
style="font-weight: bold;">config/</span>.<br>
<br>
There are two types of configuration options:<br>
<ul>
<li>Static options (LDAP server settings, etc.)<br>
</li>
<li>Module options (UID/GID ranges)<br>
</li>
</ul>
All static options have a describing comment in the configuration file
to make it easier for the user to modify the values. The dynamic
options provided by the modules do not include a comment.<br>
<br>
<h2>Master configuration file</h2>
LAM stores the default configuartion profile and a master password in <span
style="font-style: italic;">config/config.cfg</span>.<br>
The master password is verified when the user wants to create/delete
configuration profiles.<br>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,89 @@
<!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>Configuration profiles</title>
<link rel="stylesheet" type="text/css" href="style/layout.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<h1 style="text-align: center;">Configuration profiles</h1>
<br>
LAM allows the user to store the configuration settings in <span
style="font-weight: bold;">profiles</span>. This makes it easy to
manage different LDAP servers. All profile files ae stored in <span
style="font-weight: bold;">config/</span> and are named <span
style="font-weight: bold;"><span style="font-style: italic;">&lt;name&gt;</span>.conf</span>.<br>
The <span style="font-weight: bold;">master configuration</span> file <span
style="font-style: italic;">config/config.cfg</span> only stores the
default profile and master password. It has the same file format as the
profiles.<br>
<br>
<h2>File format</h2>
LAM allows to store values and comments in the configuration files.
Only one type per line is allowed, it is not possible to mix comments
and values in the same line.<br>
<br>
<h3>Settings<br>
</h3>
<span style="font-weight: bold;">&lt;identifier&gt;: &lt;value&gt;<br>
<br>
</span>The first word in the line is taken as identifier for the
setting. It must be followed by a <span style="font-weight: bold;">":"</span>
and a space.<br>
The rest of the line is taken as the value for this setting.<br>
<br>
<h3>Comments</h3>
<span style="font-weight: bold;"># Comment</span><br
style="font-weight: bold;">
<br>
Comments always start with a <span style="font-weight: bold;">"#"</span>
as first character and end at the line end. LAM will ignore all lines
starting with a <span style="font-style: italic;">"#"</span>.<br>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,122 @@
<!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>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<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>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,157 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>LAM development documentation</title>
<link rel="stylesheet" type="text/css" href="style/layout.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<div style="text-align: center;">
<h1>LDAP Account Manager - Code overview</h1>
These documents are supposed to give developers who want to modify LAM
an overview of the codebase. It focuses mainly on what is done to
generate the HTML output and the most important functions provided by
the library files.<br>
<br>
<br>
<img src="images/lam_overview.png" alt="overview" align="middle"
border="0"><br>
<br>
<br>
<br>
<div style="text-align: left;">
<table style="text-align: left; width: 100%;" border="0" cellpadding="2"
cellspacing="2">
<tbody>
<tr>
<td style="vertical-align: top; width: 33%;">
<h2>Web pages:</h2>
<ul>
<li><a href="login.htm">Login</a><br>
</li>
<li><a href="config_pages.htm">Configuration</a></li>
<li><a href="lists.htm">Account
lists</a></li>
<li><a href="tree_schema.htm">Tree view</a><br>
</li>
<li><a href="account_pages.htm">Account pages</a></li>
<li>Tools</li>
<ul>
<li><a href="profile_editor.htm">Profile editor</a></li>
<li><a href="samba_domains.htm">Samba 3 domains</a></li>
<li><a href="upload.htm">File upload</a></li>
<li><a href="ou-edit.htm">OU editor</a></li>
<li><a href="pdf_editor.htm">PDF editor</a><br>
</li>
</ul>
</ul>
</td>
<td style="vertical-align: top; width: 33%;">
<h2>Libraries:</h2>
<ul>
<li><a href="account_modules_lib.htm">Account modules
(modules.inc)</a></li>
<li><a href="account_types_lib.htm">Account types (types.inc)</a><br>
</li>
<li><a href="pdf_libs.htm">PDF (pdf.inc, pdfstruct.inc)</a><br>
</li>
<li><a href="profiles.htm">Account profiles (profiles.inc)</a><br>
</li>
<li><a href="config.htm">Configuration (config inc)</a><br>
</li>
<li><a href="ldap.htm">LDAP
(ldap.inc)</a><br>
</li>
<li><a href="other_libs.htm">other libraries</a></li>
<ul>
<li><a href="other_libs.htm#lamdaemon">Lamdaemon</a><br>
</li>
</ul>
<ul>
<li><a href="other_libs.htm#cache">LDAP cache</a></li>
<li><a href="other_libs.htm#lists">Account lists</a></li>
<li><a href="other_libs.htm#status">Status messages</a></li>
<li><a href="other_libs.htm#treeSchema">Tree view and schema
browser</a><br>
</li>
</ul>
</ul>
</td>
<td style="vertical-align: top; width: 33%;">
<h2>Configuration files:</h2>
<ul>
<li><a href="base_module.htm">Base module</a></li>
<li><a href="base_type.htm">Base type</a><br>
</li>
<li><a href="account_modules.htm">Account modules</a></li>
<li><a href="account_types.htm">Account types</a><br>
</li>
<li><a href="pdf_profiles.htm">PDF templates</a></li>
<li><a href="profile_files.htm">Account profiles</a></li>
<li><a href="config_files.htm">Configuration profiles</a><br>
</li>
</ul>
</td>
</tr>
</tbody>
</table>
<br>
<br>
<h2>Howtos</h2>
<ul>
<li><a href="mod_index.htm">Writing account modules</a></li>
<li><a href="type_index.htm">Defining other account types</a><br>
</li>
</ul>
<br>
<h2><a href="FAQ.htm">FAQ</a></h2>
<br>
<br>
</div>
</div>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,99 @@
<!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>ldap.inc</title>
<link rel="stylesheet" type="text/css" href="style/layout.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<h1 style="text-align: center;">ldap.inc</h1>
<br>
<br>
This library provides the access to the LDAP server and its content.<br>
The <span style="font-weight: bold; font-style: italic;">$_SESSION['ldap']</span>
object reconnects automatically to the LDAP server on every page load.<br>
<br>
<br>
<h2>1. Server handle</h2>
All PHP functions which access LDAP require a server handle as
parameter. This is managed by ldap.inc.<br>
You can access it with <span
style="font-weight: bold; font-style: italic;">$_SESSION['ldap']-&gt;server</span>.<br>
<br>
<br>
<h2>2. Object classes</h2>
Account modules may want to check if the current LDAP server supports
all required object classes.<br>
<span style="font-weight: bold; font-style: italic;">$_SESSION['ldap']-&gt;objectClasses
</span>contains a list of object classes and their attributes which is
read from the LDAP server.<br>
<br>
<br>
<h2>3. En-/Decryption</h2>
For security reasons sensitive data like user passwords should be
encrypted before storing in session.<br>
<span style="font-weight: bold; font-style: italic;">$_SESSION['ldap']-&gt;encrypt(&lt;string&gt;)</span>
encrypts a string and returns a binary object. This can be decrypted
with <span style="font-weight: bold; font-style: italic;">$_SESSION['ldap']-&gt;decrypt(&lt;object&gt;)</span><br>
<br>
Ldap.inc will take care for the crypotographic key.<br>
<br>
<br>
<h2>4. Random values</h2>
Ldap.inc contains a random integer value which is much more secure than
calling <span style="font-style: italic;">mt_rand()</span>. The value
changes on every page load and is accessible in <span
style="font-weight: bold; font-style: italic;">$_SESSION['ldap']-&gt;rand</span><span
style="font-style: italic;">.</span><br>
If you need multiple values you can get a new value by calling <span
style="font-weight: bold; font-style: italic;">$_SESSION['ldap']-&gt;new_rand()</span><span
style="font-style: italic;">.</span><br>
<br>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,148 @@
<!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 - Account lists</title>
<link rel="stylesheet" type="text/css" href="style/layout.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<h1 style="text-align: center;">Account lists</h1>
<br>
<div style="text-align: center;"><img
style="width: 496px; height: 177px;" alt="Account lists"
src="images/lam_lists.png"><br>
</div>
<br>
<br>
<br>
The account lists are all built after the same schema. They provide a
list of found accounts which can be restricted by LDAP filters and the
LDAP OU (Organizational Unit).<br>
<br>
The list of LDAP attributes and thus table columns is taken from the
configuration profile (<span
style="font-weight: bold; font-style: italic;">get_...listAttributes()</span>
in config.inc). Each account list has a separate list of attributes.<br>
Only these attributes are given the LDAP search as attribute parameter.<br>
There is also a predefined description list for the attributes in
lists.inc. The user may use other values by setting them in the
configuration profile.<br>
<br>
The number of accounts per page is limited in the configuration profile
(<span style="font-weight: bold; font-style: italic;">get_MaxListEntries()</span>
in config.inc). There will be links at the beginning and end of the
list if more accounts were found.<br>
<br>
Several common helper functions for sorting and some page elements
reside in lists.inc.<br>
<br>
<h2>1. Getting accounts from LDAP</h2>
Each account list has its own LDAP suffix which is saved in the
configuration profile. This is used as search base.<br>
The account modules provide an LDAP filter (<span
style="font-weight: bold; font-style: italic;">get_ldap_filter()</span>
in modules.inc) to get only accounts of a special type.<br>
<br>
This list can be further reduced if the user provides an additional
LDAP filter with the filter boxes or selects another LDAP OU with the
drop-down-box.<br>
<br>
<h2>2. Caching LDAP accounts</h2>
The lists usually do not ask the LDAP server for an account list every
time the user changes the page. The accounts are cached in the session.<br>
<br>
A new LDAP search is done if the user:<br>
<ul>
<li>changes to another account list or tool</li>
<li>adds/modifies an account</li>
<li>selects the "refresh" button</li>
<li>adds additional LDAP filters or changes the LDAP OU<br>
</li>
</ul>
<br>
It is <span style="font-style: italic;">not</span> done if the user:<br>
<ul>
<li>changes the list pages if there are more accounts than what can
be shown</li>
<li>sorts the list</li>
</ul>
<br>
<h2>3. Adding/Editing accounts</h2>
There are buttons at the end of the page to add/delete accounts. Adding
accounts is done by account/edit.php and deleting by delete.php.<br>
<br>
The user can use the link in each account row to modify (in
accounts/edit.php) the account. This can also be done by double
clicking the row if Java Script is enabled.<br>
<br>
<br>
<h2>4. Export to PDF</h2>
The user can generate PDF files for the accounts. This is done by the <span
style="font-style: italic; font-weight: bold;">createModulePDF()</span>
function from pdf.inc.<br>
<br>
<br>
<h2>5. Special abilities of some lists</h2>
<h3>5.1. The user list</h3>
If the attribute <span style="font-style: italic;">gidNumber</span> is
shown as table column then there will be an additional checkbox to
translate the GID to the group name.<br>
This checkbox is hidden if <span style="font-style: italic;">gidNumber</span>
is not part of the attribute list.<br>
<br>
<h3>5.2. The group list</h3>
If the attribute memberUID is shown as table column then all values of
this attribute are shown as links.<br>
These links redirect to userlink.php which tries to find the given user
and redirects to account/edit.php for account modifying.<br>
<br>
<br>
<br>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,115 @@
<!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>Login</title>
<link rel="stylesheet" type="text/css" href="style/layout.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<h1 style="text-align: center;">Login<br>
</h1>
<div style="text-align: center;"><br>
</div>
<div style="text-align: center;"><br>
<div style="text-align: left;">The <span style="font-style: italic;">login</span>
page is the first page the user sees when opening LAM. It manages LDAP
authentication and checks the environment of the user.<br>
<br>
<br>
<h2>login.php</h2>
The login page offers authentication, language selection and profile
selection. There are also some environment checks.<br>
<br>
<h3>Authentication</h3>
The list of possible users is loaded from the current active profile.
Only the RDN value is offered for selection by the user.<br>
When the user submits his password then a new <span
style="font-style: italic;">Ldap</span> object is created and LAM
tries to connect to the LDAP server.<br>
If the connection was successful the user is forwarded to the main
frame (main.php). The session variable <span
style="font-weight: bold; font-style: italic;">$_SESSION['loggedIn']</span>
is set to <span style="font-style: italic;">true</span>. This informs
the other PHP scripts that a valid user is connected (e.g. the user is
allowed to create account profiles).<br>
<br>
<h3>Language selection</h3>
The list of possible languages is read from <span
style="font-weight: bold;">config/language</span>. The current active
profile defines the preselected language and the language of the login
page itself.<br>
<br>
<h3>Profile selection<br>
</h3>
The user can change the active configuration profile at login. A list
of possible profiles is retrieved by <span
style="font-weight: bold; font-style: italic;">getConfigProfiles()</span>.<br>
If the profile is changed then the login replaces the config object in <span
style="font-weight: bold; font-style: italic;">$_SESSION['config']</span>
by a new one. Then the main login page is loaded and uses the new
values.<br>
<br>
<h3>Environment checks</h3>
LAM checks if all needed PHP extensions are installed.<br>
<ul>
<li><span style="font-weight: bold;">LDAP:</span> PHP needs LDAP
support</li>
<li><span style="font-weight: bold;">MHash:</span> needed for
password creation</li>
<li><span style="font-weight: bold;">Gettext:</span> needed for
translation<br>
</li>
</ul>
<br>
<br>
<br>
</div>
</div>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,464 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Module HowTo - Account pages</title>
<link rel="stylesheet" type="text/css" href="style/layout.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<div style="text-align: center;">
<h1>Module HowTo - Account pages<br>
</h1>
<br>
<br>
<div style="text-align: left;"><br>
<h2>1. Loading the LDAP attributes<br>
</h2>
Every time the user selects an existing account to modify LAM will load
the complete LDAP entry of it. Your module then should select the
attributes which are useful for it.<br>
There are two variables in <span style="font-style: italic;">baseModule</span>
which should be used to store the attributes. The <span
style="font-weight: bold;">$attributes</span> variable stores the
current attributes including changes the user made. The <span
style="font-weight: bold;">$orig</span> variable stores the attributes
as they were originally when the account was loaded. This allows you to
see what changes were made.<br>
<br>
The <span style="font-weight: bold;">load_attributes()</span> function
in your module gets the complete attribute list from LDAP.<br>
<br>
<span style="font-weight: bold; text-decoration: underline;">Example:</span><br
style="font-weight: bold; text-decoration: underline;">
<br>
The <span style="font-style: italic;">ieee802Device</span> uses an
object class and the <span style="font-style: italic;">'macAddress'</span>
attribute. Therefore we will save this two values.<br>
<br>
<table style="width: 100%; text-align: left;" class="mod-code"
border="0" cellpadding="2" cellspacing="2">
<tbody>
<tr>
<td style="vertical-align: top;">&nbsp;&nbsp;&nbsp; /**<br>
&nbsp;&nbsp;&nbsp; * This function loads all needed attributes into the
object.<br>
&nbsp;&nbsp;&nbsp; *<br>
&nbsp;&nbsp;&nbsp; * @param array $attr an array as it is retured from
ldap_get_attributes<br>
&nbsp;&nbsp;&nbsp; */<br>
&nbsp;&nbsp;&nbsp; <span style="font-weight: bold;">function</span> <span
style="color: rgb(255, 0, 0);">load_attributes</span>($attr) {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
$this-&gt;attributes['objectClass'] = array();<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
$this-&gt;attributes['macAddress'] = array();<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $this-&gt;orig['objectClass'] =
array();<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $this-&gt;orig['macAddress'] =
array();<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if (isset($attr['objectClass'])) {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
unset($attr['objectClass']['count']);<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
$this-&gt;attributes['objectClass'] = $attr['objectClass'];<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
$this-&gt;orig['objectClass'] = $attr['objectClass'];<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if (isset($attr['macAddress'])) {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
unset($attr['macAddress']['count']);<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
$this-&gt;attributes['macAddress'] = $attr['macAddress'];<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
$this-&gt;orig['macAddress'] = $attr['macAddress'];<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; return 0;<br>
&nbsp;&nbsp;&nbsp; }<br>
</td>
</tr>
</tbody>
</table>
<br>
<br>
<h2>2. Page display</h2>
Now that you have defined your subpages you will need one function for
each page to display it. The function must return <span
style="font-style: italic;">meta HTML code</span> as defined in the <span
style="font-style: italic;">modules specification</span>.<br>
This function is called <span style="font-weight: bold;">display_html_&lt;page
name&gt;()</span> where <span style="font-style: italic;">&lt;page
name&gt;</span> is the name of your subpage.<br>
<br>
<span style="font-weight: bold; text-decoration: underline;">Example:</span><br
style="font-weight: bold; text-decoration: underline;">
<br>
The
<span style="font-style: italic;">ieee802Device</span>
module has only one subpage called <span style="font-style: italic;">'attributes'</span>.<br>
<br>
The first half of the code displays the existing MAC addresses and the
second an input field for new values.<br>
The variable <span style="font-style: italic;">$this-&gt;attributes</span>
contains the LDAP attributes which are useful for this module.<br>
<br>
<table style="width: 100%; text-align: left;" class="mod-code"
border="0" cellpadding="2" cellspacing="2">
<tbody>
<tr>
<td style="vertical-align: top;">&nbsp;&nbsp;&nbsp; /**<br>
&nbsp;&nbsp;&nbsp; * This function will create the meta HTML code to
show a page with all attributes.<br>
&nbsp;&nbsp;&nbsp; *<br>
&nbsp;&nbsp;&nbsp; * @param array $post HTTP-POST values<br>
&nbsp;&nbsp;&nbsp; */<br>
&nbsp;&nbsp;&nbsp; <span style="font-weight: bold;">function</span> <span
style="color: rgb(255, 0, 0);">display_html_attributes</span>($post) {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $return = array();<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; // list current MACs<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for ($i = 0; $i &lt;
sizeof($this-&gt;attributes['macAddress']); $i++) {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $return[] =
array(<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp; 0 =&gt; array('kind' =&gt; 'text', 'text' =&gt;
_('MAC address')),<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp; 1 =&gt; array('kind' =&gt; 'input', 'name' =&gt;
'macAddress' . $i, 'type' =&gt; 'text', 'size' =&gt; '17', 'maxlength'
=&gt; '17', 'value' =&gt; $this-&gt;attributes['macAddress'][$i]),<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp; 2 =&gt; array('kind' =&gt; 'input', 'type' =&gt;
'submit', 'name' =&gt; 'delMAC' . $i, 'value' =&gt; _("Remove")),<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp; 3 =&gt; array('kind' =&gt; 'help', 'value' =&gt;
'mac'));<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; // input box for new MAC<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $return[] = array(<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; 0 =&gt;
array('kind' =&gt; 'text', 'text' =&gt; _('New MAC address')),<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; 1 =&gt;
array('kind' =&gt; 'input', 'name' =&gt; 'macAddress', 'type' =&gt;
'text', 'size' =&gt; '17', 'maxlength' =&gt; '17', 'value' =&gt; ''),<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; 2 =&gt;
array('kind' =&gt; 'input', 'type' =&gt; 'submit', 'name' =&gt;
'addMAC', 'value' =&gt; _("Add")),<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; 3 =&gt;
array('kind' =&gt; 'help', 'value' =&gt; 'mac'),<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; 4 =&gt;
array('kind' =&gt; 'input', 'type' =&gt; 'hidden', 'value' =&gt;
sizeof($this-&gt;attributes['macAddress']), 'name' =&gt; 'mac_number'));<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; return $return;<br>
&nbsp;&nbsp;&nbsp; }<br>
</td>
</tr>
</tbody>
</table>
<br>
<br>
<h2>3. Processing input data<br>
</h2>
Every time the user clicks on a submit button while your page is
displayed LAM will call a function in your module.<br>
This function is called <span style="font-weight: bold;">process_&lt;page
name&gt;()</span> where <span style="font-style: italic;">&lt;page
name&gt;</span> is the name of your subpage.<br>
<br>
If all input data is ok then return "0" or an array containing no error
message. If you return one or more error messages then the user will be
redirected to your page.<br>
<br>
<span style="font-weight: bold; text-decoration: underline;">Example:</span><br
style="font-weight: bold; text-decoration: underline;">
<br>
The
<span style="font-style: italic;">ieee802Device</span>
module has only one subpage called <span style="font-style: italic;">'attributes'</span>
and therefore only <span style="font-style: italic;">process_attributes()</span>.<br>
<br>
The function checks the input fields and fills the LDAP attributes. If
all is ok it will enable the user to move to another module page.<br>
<br>
<table style="width: 100%; text-align: left;" class="mod-code"
border="0" cellpadding="2" cellspacing="2">
<tbody>
<tr>
<td style="vertical-align: top;">&nbsp;&nbsp;&nbsp; /**<br>
&nbsp;&nbsp;&nbsp; * Write variables into object and do some regex
checks<br>
&nbsp;&nbsp;&nbsp; *<br>
&nbsp;&nbsp;&nbsp; * @param array $post HTTP-POST values<br>
&nbsp;&nbsp;&nbsp; */<br>
&nbsp;&nbsp;&nbsp; <span style="font-weight: bold;">function</span> <span
style="color: rgb(255, 0, 0);">process_attributes</span>($post) {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $this-&gt;triggered_messages =
array();<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
$this-&gt;attributes['macAddress'] = array();<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; // check old MACs<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if (isset($post['mac_number'])) {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for ($i = 0;
$i &lt; $post['mac_number']; $i++) {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp; if (isset($post['delMAC' . $i])) continue;<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp; if (isset($post['macAddress' . $i]) &amp;&amp;
($post['macAddress' . $i] != "")) {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; // check if address has correct
format<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if (!get_preg($post['macAddress'
. $i], 'macAddress')) {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $message =
$this-&gt;messages['mac'][0];<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $message[] =
$post['macAddress' . $i];<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
$this-&gt;triggered_messages[] = array($message);<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
$this-&gt;attributes['macAddress'][] = $post['macAddress' . $i];<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp; }<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; // check new MAC<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if (isset($post['macAddress'])
&amp;&amp; ($post['macAddress'] != "")) {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; // check if
address has correct format<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if
(get_preg($post['macAddress'], 'macAddress')) {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp; $this-&gt;attributes['macAddress'][] =
$post['macAddress'];<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; else {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $message =
$this-&gt;messages['mac'][0];<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $message[] = $post['macAddress'];<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $this-&gt;triggered_messages[] =
array($message);<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
$this-&gt;attributes['macAddress'] =
array_unique($this-&gt;attributes['macAddress']);<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if
(sizeof($this-&gt;triggered_messages) &gt; 0) {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
$this-&gt;inputCorrect = false;<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; return
$this-&gt;triggered_messages;<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; else {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
$this-&gt;inputCorrect = true;<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; return 0;<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>
&nbsp;&nbsp;&nbsp; }<br>
</td>
</tr>
</tbody>
</table>
<br>
<br>
<h2>4. Defining that your module is ready for user input and LDAP
add/modify</h2>
In most cases you will not need to implement these functions. The <span
style="font-style: italic;">baseModule</span> will return <span
style="font-style: italic;">true</span> for both functions.<br>
<br>
<span style="text-decoration: underline;"><br>
There are two functions which control the module status:</span><br
style="text-decoration: underline;">
<br>
The <span style="font-weight: bold;">module_ready()</span> function
has to
return <span style="font-style: italic;">true</span> if the user may
move to your module page. If it is <span style="font-style: italic;">false</span>
the user will be shown an error message that your module is not yet
ready. You can use this if your module depends on input data from other
modules (e.g. you need the user name from posixAccount first).<br>
<br>
The second function is
<span style="font-weight: bold;">module_complete()</span>. The user
cannot do the LDAP operation if one or more modules return <span
style="font-style: italic;">false</span>. This defines if all needed
input data for your module was entered.<br>
Use this function if you want to check that all required attributes are
set.<br>
<br>
<span style="font-weight: bold; text-decoration: underline;">Example:</span><br
style="font-weight: bold; text-decoration: underline;">
<br>
The <span style="font-style: italic;">sambaSamAccount</span>
module needs the user's <span style="font-style: italic;">uidNumber</span>
and <span style="font-style: italic;">gidNumber</span> before it can
accept input and the account needs a <span style="font-style: italic;">sambaSID</span>
before it can be saved.<br>
<br>
<table style="width: 100%; text-align: left;" class="mod-code"
border="0" cellpadding="2" cellspacing="2">
<tbody>
<tr>
<td style="vertical-align: top;">&nbsp;&nbsp;&nbsp; /**<br>
&nbsp;&nbsp;&nbsp; * This function is used to check if this module page
can be displayed.<br>
&nbsp;&nbsp;&nbsp; * It returns false if a module depends on data from
other modules which was not yet entered.<br>
&nbsp;&nbsp;&nbsp; *<br>
&nbsp;&nbsp;&nbsp; * @return boolean true, if page can be displayed<br>
&nbsp;&nbsp;&nbsp; */<br>
&nbsp;&nbsp;&nbsp; <span style="font-weight: bold;">function</span> <span
style="color: rgb(255, 0, 0);">module_ready</span>() {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if
($_SESSION[$this-&gt;base]-&gt;module['posixAccount']-&gt;attributes['gidNumber'][0]=='')
return false;<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if
($_SESSION[$this-&gt;base]-&gt;module['posixAccount']-&gt;attributes['uidNumber'][0]=='')
return false;<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if
($this-&gt;attributes['uid'][0]=='') return false;<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; return true;<br>
&nbsp;&nbsp;&nbsp; }<br>
<br>
&nbsp;&nbsp;&nbsp; /**<br>
&nbsp;&nbsp;&nbsp; * This functions is used to check if all settings
for this module have been made.<br>
&nbsp;&nbsp;&nbsp; *<br>
&nbsp;&nbsp;&nbsp; * @return boolean true, if settings are complete<br>
&nbsp;&nbsp;&nbsp; */<br>
&nbsp;&nbsp;&nbsp; <span style="font-weight: bold;">function</span> <span
style="color: rgb(255, 0, 0);">module_complete</span>() {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if (!$this-&gt;module_ready())
return false;<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if
($this-&gt;attributes['sambaSID'][0] == '') return false;<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; return true;<br>
&nbsp;&nbsp;&nbsp; }<br>
<br>
</td>
</tr>
</tbody>
</table>
<br>
<br>
<h2>5. Saving the LDAP attributes<br>
</h2>
In most cases you will not have to implement this option if you use <span
style="font-weight: bold;">$this-&gt;attributes</span> and <span
style="font-weight: bold;">$this-&gt;orig</span> to manage the LDAP
attributes. The <span style="font-style: italic;">baseModule</span>
will generate the save comands for you.<br>
<br>
When all modules report that they are ready for LDAP add/modify and the
user clicks on the add/modify button your module will be asked what
changes have to be made.<br>
This is done in the function <span style="font-weight: bold;">save_attributes()</span>.<br>
<br>
<span style="font-weight: bold; text-decoration: underline;">Example:</span><br
style="font-weight: bold; text-decoration: underline;">
<br>
The <span style="font-style: italic;">kolabUser</span> module uses
this function to make sure that its object class is saved. Other
modules (e.g. quota) use it build the lamdaemon commands.<br>
<br>
<table style="width: 100%; text-align: left;" class="mod-code"
border="0" cellpadding="2" cellspacing="2">
<tbody>
<tr>
<td style="vertical-align: top;">&nbsp;&nbsp;&nbsp; /**<br>
&nbsp;&nbsp;&nbsp; * Returns a list of modifications which have to be
made to the LDAP account.<br>
&nbsp;&nbsp;&nbsp; *<br>
&nbsp;&nbsp;&nbsp; * @return array list of modifications<br>
&nbsp;&nbsp;&nbsp; * &lt;br&gt;This function returns an array with 3
entries:<br>
&nbsp;&nbsp;&nbsp; * &lt;br&gt;array( DN1 ('add' =&gt; array($attr),
'remove' =&gt; array($attr), 'modify' =&gt; array($attr)), DN2 .... )<br>
&nbsp;&nbsp;&nbsp; * &lt;br&gt;DN is the DN to change. It may be
possible to change several DNs (e.g. create a new user and add him to
some groups via attribute memberUid)<br>
&nbsp;&nbsp;&nbsp; * &lt;br&gt;"add" are attributes which have to be
added to LDAP entry<br>
&nbsp;&nbsp;&nbsp; * &lt;br&gt;"remove" are attributes which have to be
removed from LDAP entry<br>
&nbsp;&nbsp;&nbsp; * &lt;br&gt;"modify" are attributes which have to
been modified in LDAP entry<br>
&nbsp;&nbsp;&nbsp; */<br>
&nbsp;&nbsp;&nbsp; function save_attributes() {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; // add object class if needed<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if
(!isset($this-&gt;attributes['objectClass']) ||
!in_array('kolabInetOrgPerson', $this-&gt;attributes['objectClass'])) {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
$this-&gt;attributes['objectClass'][] = 'kolabInetOrgPerson';<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; return parent::save_attributes();<br>
&nbsp;&nbsp;&nbsp; }<br>
</td>
</tr>
</tbody>
</table>
<br>
<br>
<span style="font-weight: bold;"></span>
<h2><span style="font-weight: bold;"></span></h2>
</div>
</div>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,154 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Module HowTo - Basic concepts</title>
<link rel="stylesheet" type="text/css" href="style/layout.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<div style="text-align: center;">
<h1>Module HowTo - Basic concepts<br>
</h1>
<br>
<br>
<div style="text-align: left;"><br>
<h2>1. Licensing</h2>
LAM is licensed under the <a href="http://www.gnu.org/licenses/gpl.txt">GNU
General Public License</a>. This means your plugins need a compatible
license.<br>
LAM is distributed with a copy of the GPL license.<br>
<br>
<h2>2. Naming and position in directory structure</h2>
<br>
Module names are usually named after the object class they manage.
However, you can use any name you want, it should be short and
containing only a-z and 0-9. The module name is only shown in the
configuration dialog, on all other pages LAM will show a provided <span
style="font-style: italic;">alias</span> name.<br>
All account modules are stored in <span style="font-weight: bold;">lib/modules</span>.
The filename must end with <span style="font-weight: bold;">.inc</span>
and the file must have the same name as its inside class.<br>
<br>
<span style="font-weight: bold; text-decoration: underline;">Example:</span>
Our example module will provide the <span style="font-weight: bold;">class
ieee802Devic</span><span style="font-style: italic; font-weight: bold;">e</span>,
therefore the file will be called <span style="font-weight: bold;">lib/modules/ieee802Devic</span><span
style="font-style: italic; font-weight: bold;">e.inc</span>.<span
style="font-style: italic;"></span><br>
<br>
<br>
<h2>3. Defining the class</h2>
All module classes have <span style="font-weight: bold;">baeModule</span>
as parent class. This provides common functionality and dummy functions
for all required class functions.<br>
<br>
<span style="font-weight: bold;">Example:</span><br>
<br>
<table style="width: 100%; text-align: left;" class="mod-code"
border="0" cellpadding="2" cellspacing="2">
<tbody>
<tr>
<td style="vertical-align: top;">/**<br>
* Provides MAC addresses for hosts.<br>
*<br>
* @package modules<br>
*/<span style="font-weight: bold;"><br>
class</span> <span style="color: rgb(255, 0, 0);">ieee802Device</span>
<span style="font-style: italic;">extends </span><span
style="font-weight: bold;">baseModule</span> {<br>
<br>
}<br>
</td>
</tr>
</tbody>
</table>
<br>
<h2>4. Meta data</h2>
The module interface inludes a lot of required and optional functions.
Many of these functions do not need to be implemented directly in the
module, you can define <span style="font-weight: bold;">meta data</span>
for them and the <span style="font-weight: bold;">baseModule</span>
will do the rest.<br>
Providing <span style="font-weight: bold;">meta data</span> is
optional, you can implement the required functions in your class, too.<br>
<br>
The <span style="font-weight: bold;">baseModule</span> reads the <span
style="font-weight: bold;">meta data</span> by calling <span
style="font-weight: bold;">get_metaData()</span> in your class.<br>
<br>
<span style="font-weight: bold; text-decoration: underline;">Example:</span><br>
<br>
<table style="width: 100%; text-align: left;" class="mod-code"
border="0" cellpadding="2" cellspacing="2">
<tbody>
<tr>
<td style="vertical-align: top;">&nbsp;&nbsp;&nbsp; /**<br>
&nbsp;&nbsp;&nbsp; * Returns meta data that is interpreted by parent
class<br>
&nbsp;&nbsp;&nbsp; *<br>
&nbsp;&nbsp;&nbsp; * @return array array with meta data<br>
&nbsp;&nbsp;&nbsp; */<br>
&nbsp;&nbsp;&nbsp; <span style="font-weight: bold;">function</span> <span
style="color: rgb(255, 0, 0);">get_metaData</span>() {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $return = array();<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; // manages host accounts<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $return["account_types"] =
array("host");<br>
&nbsp;&nbsp;&nbsp; }<br>
</td>
</tr>
</tbody>
</table>
<br>
You will see this functions several times in the next parts of this
HowTo.<br>
<br>
<h2><span style="font-weight: bold;"></span></h2>
</div>
</div>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,298 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Module HowTo - Configuration options</title>
<link rel="stylesheet" type="text/css" href="style/layout.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<div style="text-align: center;">
<h1>Module HowTo - Configuration options<br>
</h1>
<div style="text-align: left;"><br>
There might be situations where you want to give the user the
possibility to make general settings which are not useful to place on
the account detail pages or profile editor.<br>
Therefore LAM allows the modules to define their own configuration
options. E.g. the <span style="font-style: italic;">posixAccount</span>
module uses this to define the ranges for the UIDs.<br>
LAM will display your configuration options only if the user also
selected your module.<br>
</div>
<div style="text-align: left;"><br>
<h2>1. Defining configuration options<br>
</h2>
First you have to define what options you want to offer the user. LAM
will display all options in one fieldset for each module. Please notice
that there will be no separation on account types if you module is
suitable for different account types.<br>
<br>
The configuration options are specified with <span
style="font-weight: bold;">get_configOptions()</span>
or <span style="font-weight: bold;">meta['config_options']</span>.<br>
<br>
<span style="font-weight: bold; text-decoration: underline;">Example:</span><br
style="font-weight: bold; text-decoration: underline;">
<br>
The <span style="font-style: italic;">posixGroup</span> module offers
three configuration options. The min/maximum values for GIDs and the
password hash type.<br>
<br>
<table style="width: 100%; text-align: left;" class="mod-code"
border="0" cellpadding="2" cellspacing="2">
<tbody>
<tr>
<td style="vertical-align: top;">&nbsp;&nbsp;&nbsp; /**<br>
&nbsp;&nbsp;&nbsp; * Returns meta data that is interpreted by parent
class<br>
&nbsp;&nbsp;&nbsp; *<br>
&nbsp;&nbsp;&nbsp; * @return array array with meta data<br>
&nbsp;&nbsp;&nbsp; */<br>
&nbsp;&nbsp;&nbsp;<span style="font-weight: bold;"> function</span>
get_metaData() {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $return = array();<br>
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp; // configuration options<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;$return[<span
style="color: rgb(255, 0, 0);">'config_options'</span>][<span
style="color: rgb(255, 0, 0);">'group'</span>] = array(<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;array(<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;0 =&gt; array('kind' =&gt; 'text', 'text' =&gt; '&lt;b&gt;' .
_('Minimum GID number') . " *: &lt;/b&gt;"),<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;1 =&gt; array('kind' =&gt; 'input', 'name' =&gt;
'posixGroup_minGID', 'type' =&gt; 'text', 'size' =&gt; '10',
'maxlength' =&gt; '255'),<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;2 =&gt; array('kind' =&gt; 'text', 'value' =&gt; '&amp;nbsp;'),<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;3 =&gt; array('kind' =&gt; 'text', 'text' =&gt; '&lt;b&gt;' .
_('Maximum GID number') . " *: &lt;/b&gt;"),<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;4 =&gt; array('kind' =&gt; 'input', 'name' =&gt;
'posixGroup_maxGID', 'type' =&gt; 'text', 'size' =&gt; '10',
'maxlength' =&gt; '255'),<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;5 =&gt; array('kind' =&gt; 'help', 'value' =&gt; 'minMaxGID')),<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;array(<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;0 =&gt; array('kind' =&gt; 'text', 'text' =&gt; '&lt;b&gt;' .
_("Password hash type") . ': &amp;nbsp;&lt;/b&gt;'),<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;1 =&gt; array('kind' =&gt; 'select', 'name' =&gt;
'posixGroup_pwdHash', 'size' =&gt; '1',<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;'options' =&gt; array("CRYPT", "SHA", "SSHA", "MD5", "SMD5",
"PLAIN"), 'options_selected' =&gt; array('SSHA')),<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;2 =&gt; array('kind' =&gt; 'text', 'value' =&gt; '&amp;nbsp;'),<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;3 =&gt; array('kind' =&gt; 'text', 'value' =&gt; '&amp;nbsp;'),<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;4 =&gt; array('kind' =&gt; 'text', 'value' =&gt; '&amp;nbsp;'),<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;5 =&gt; array('kind' =&gt; 'help', 'value' =&gt; 'pwdHash'))<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;);<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [...]<br>
</td>
</tr>
</tbody>
</table>
<br>
The min/maximum GID numbers are defined with simple text boxes. The
password hash is selected with a drop down box and SSHA as default
value.<br>
You should make sure that the column count (here: 6) is the same for
each row. Otherwise the configuration page might be badly rendered by
the browser.<br>
<br>
<h2>2. Checking user input</h2>
Probably you also want to check if the input data is syntactically
correct.<br>
The <span style="font-style: italic;">baseModule</span> already
provides different checks which can be activated with <span
style="font-style: italic;">meta data</span>. However you can also do
the checking in the module.<br>
Implementing the function <span style="font-weight: bold;">check_configOptions()</span>
in your module will allow you to do the checks yourself. Basic checks
can be defined with <span style="font-weight: bold;">meta['config_checks']</span>.<br>
<br>
<span style="font-weight: bold; text-decoration: underline;">Example:</span><br
style="font-weight: bold; text-decoration: underline;">
<br>
The <span style="font-style: italic;">posixGroup</span> module only
needs to check if the GID numbers are correct. The password hash type
needs not to be checked as it is a selection.<br>
<br>
<table style="width: 100%; text-align: left;" class="mod-code"
border="0" cellpadding="2" cellspacing="2">
<tbody>
<tr>
<td style="vertical-align: top;">&nbsp; &nbsp; /**<br>
&nbsp;&nbsp;&nbsp; * Returns meta data that is interpreted by parent
class<br>
&nbsp;&nbsp;&nbsp; *<br>
&nbsp;&nbsp;&nbsp; * @return array array with meta data<br>
&nbsp;&nbsp;&nbsp; */<br>
&nbsp;&nbsp;&nbsp;<span style="font-weight: bold;"> function</span>
get_metaData() {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $return = array();<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; // configuration checks<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;$return[<span
style="color: rgb(255, 0, 0);">'config_checks'</span>][<span
style="color: rgb(255, 0, 0);">'group'</span>]['posixGroup_minGID'] =
array (<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;'type' =&gt;
'ext_preg',<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;'regex' =&gt;
'digit',<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;'required'
=&gt; true,<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;'required_message' =&gt; $this-&gt;messages['gidNumber'][5],<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;'error_message' =&gt; $this-&gt;messages['gidNumber'][5]);<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;$return[<span
style="color: rgb(255, 0, 0);">'config_checks'</span>][<span
style="color: rgb(255, 0, 0);">'group'</span>]['posixGroup_maxGID'] =
array (<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;'type' =&gt;
'ext_preg',<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;'regex' =&gt;
'digit',<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;'required'
=&gt; true,<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;'required_message' =&gt; $this-&gt;messages['gidNumber'][6],<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;'error_message' =&gt; $this-&gt;messages['gidNumber'][6]);<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;$return[<span
style="color: rgb(255, 0, 0);">'config_checks'</span>][<span
style="color: rgb(255, 0, 0);">'group'</span>]['cmpGID'] = array (<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;'type' =&gt;
'int_greater',<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;'cmp_name1'
=&gt; 'posixGroup_maxGID',<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;'cmp_name2'
=&gt; 'posixGroup_minGID',<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;'error_message' =&gt; $this-&gt;messages['gidNumber'][7]);<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [...]<br>
</td>
</tr>
</tbody>
</table>
<br>
The type <span style="font-weight: bold;">"ext_preg"</span> means that
the <span style="font-style: italic;">baseModule</span> will use the <span
style="font-style: italic;">get_preg()</span> function in <span
style="font-style: italic;">lib/account.inc</span> for the syntax
check. This function already contains regular expressions for the most
common cases.<br>
To check if the minimum GID is smaller than the maximum GID we define a
check for the nonexistant option "cmpGID" and define it as optional.
This will do the comparison check.<br>
<br>
<br>
<h2>3. Descriptions</h2>
What is still missing is a descriptive title for the fieldset in the
configuration editor and a description for each configuration option
which is displayed when the user saves the settings.<br>
<br>
These descriptions are defined with <span style="font-weight: bold;">get_configDescriptions()</span>
or <span style="font-weight: bold;">meta['config_descriptions']</span>.<br>
<br>
<span style="font-weight: bold; text-decoration: underline;">Example:</span><br
style="font-weight: bold; text-decoration: underline;">
<br>
The <span style="font-style: italic;">posixGroup</span> module will
set a title for the fieldset and a description for the three
configuration options.<br>
<br>
<table style="width: 100%; text-align: left;" class="mod-code"
border="0" cellpadding="2" cellspacing="2">
<tbody>
<tr>
<td style="vertical-align: top;">&nbsp; &nbsp; /**<br>
&nbsp;&nbsp;&nbsp; * Returns meta data that is interpreted by parent
class<br>
&nbsp;&nbsp;&nbsp; *<br>
&nbsp;&nbsp;&nbsp; * @return array array with meta data<br>
&nbsp;&nbsp;&nbsp; */<br>
&nbsp;&nbsp;&nbsp;<span style="font-weight: bold;"> function</span>
get_metaData() {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $return = array();<br>
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp; // configuration descriptions<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;$return[<span
style="color: rgb(255, 0, 0);">'config_descriptions'</span>] = array(<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;'legend' =&gt;
_("GID ranges for Unix groups"),<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;'descriptions'
=&gt; array(<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;'posixGroup_minGID' =&gt; _("Minimum GID number for Unix groups"),<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;'posixGroup_maxGID' =&gt; _("Maximum GID number for Unix groups"),<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;'posixGroup_pwdHash' =&gt; _("Password hash type for Unix
groups"),<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;)<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;);<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [...]<br>
</td>
</tr>
</tbody>
</table>
<br>
This will set the fieldset title to "GID ranges for Unix groups" and
the descriptions for the settings list.<br>
<span style="font-weight: bold;"></span>
<h2><span style="font-weight: bold;"></span></h2>
</div>
</div>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,287 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Module HowTo - General module options</title>
<link rel="stylesheet" type="text/css" href="style/layout.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<div style="text-align: center;">
<h1>Module HowTo - General module options<br>
</h1>
<br>
<br>
<div style="text-align: left;"><br>
<h2>1. Account types<br>
</h2>
LAM currently provides three account types: <span
style="font-weight: bold;">users, groups, hosts<br>
</span>A module can manage one or more account types.<br>
<br>
The types are specified with <span style="font-weight: bold;">can_manage()</span>
or <span style="font-weight: bold;">meta['account_types']</span>.<br>
<br>
<span style="font-weight: bold; text-decoration: underline;">Example:</span><br
style="font-weight: bold; text-decoration: underline;">
<br>
Our <span style="font-style: italic;">ieee802Device</span>
module will be used only for host accounts.<br>
<br>
<table style="width: 100%; text-align: left;" class="mod-code"
border="0" cellpadding="2" cellspacing="2">
<tbody>
<tr>
<td style="vertical-align: top;">&nbsp;&nbsp;&nbsp; /**<br>
&nbsp;&nbsp;&nbsp; * Returns meta data that is interpreted by parent
class<br>
&nbsp;&nbsp;&nbsp; *<br>
&nbsp;&nbsp;&nbsp; * @return array array with meta data<br>
&nbsp;&nbsp;&nbsp; */<br>
&nbsp;&nbsp;&nbsp; <span style="font-weight: bold;">function</span>
get_metaData() {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $return = array();<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; // manages host accounts<br>
<span style="color: rgb(255, 0, 0);">&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp; $return["account_types"] = array("host");</span><br
style="color: rgb(255, 0, 0);">
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; return $return;<br>
&nbsp;&nbsp;&nbsp; }<br>
</td>
</tr>
</tbody>
</table>
<br>
<br>
<h2>2. Base modules<br>
</h2>
In LDAP every entry needs exactly one <span style="font-style: italic;">structural
object class</span>. Therefore all modules which provide a <span
style="font-style: italic;">structural object class</span> are marked
as <span style="font-weight: bold;">base module</span>.<br>
<br>
This is done with <span style="font-weight: bold;">is_base_module()</span>
or <span style="font-weight: bold;">meta['is_base']</span>.<br>
<br>
<span style="font-weight: bold; text-decoration: underline;">Example:</span><br
style="font-weight: bold; text-decoration: underline;">
<br>
The <span style="font-style: italic;">inetOrgPerson</span>
module manages the structural object class "inetOrgPerson" and
therefore is a <span style="font-weight: bold;">base module</span>.<br>
If your module is not a base module you can skip the meta data for
this, default is <span style="font-style: italic;">false</span>.<br>
<br>
<table style="width: 100%; text-align: left;" class="mod-code"
border="0" cellpadding="2" cellspacing="2">
<tbody>
<tr>
<td style="vertical-align: top;">&nbsp;&nbsp;&nbsp; /**<br>
&nbsp;&nbsp;&nbsp; * Returns meta data that is interpreted by parent
class<br>
&nbsp;&nbsp;&nbsp; *<br>
&nbsp;&nbsp;&nbsp; * @return array array with meta data<br>
&nbsp;&nbsp;&nbsp; */<br>
&nbsp;&nbsp;&nbsp; <span style="font-weight: bold;">function</span>
get_metaData() {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $return = array();<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; // base module<br>
<span style="color: rgb(255, 0, 0);">&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp; $return["is_base"] = true;</span><br
style="color: rgb(255, 0, 0);">
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; return $return;<br>
&nbsp;&nbsp;&nbsp; }<br>
</td>
</tr>
</tbody>
</table>
<br>
<br>
<h2>3. Alias name</h2>
The module name is very limited, therefore every module has an <span
style="font-style: italic;">alias name</span>. This <span
style="font-style: italic;">alias name</span> has no limitations and
can be translated. It may contain special characters but make sure that
it does not contain HTML special characters like "&lt;".<br>
The <span style="font-style: italic;">alias name </span>can be the
same for all managed <span style="font-style: italic;">account types</span>
or differ for each type.<br>
<br>
The <span style="font-style: italic;">alias name</span> is specified
with <span style="font-weight: bold;">get_alias()</span>
or <span style="font-weight: bold;">meta['alias']</span>.<br>
<br>
<span style="font-weight: bold; text-decoration: underline;">Example:</span><br
style="font-weight: bold; text-decoration: underline;">
<br>
Our <span style="font-style: italic;">ieee802Device</span>
module will get the alias MAC address.<br>
<br>
<table style="width: 100%; text-align: left;" class="mod-code"
border="0" cellpadding="2" cellspacing="2">
<tbody>
<tr>
<td style="vertical-align: top;">&nbsp;&nbsp;&nbsp; /**<br>
&nbsp;&nbsp;&nbsp; * Returns meta data that is interpreted by parent
class<br>
&nbsp;&nbsp;&nbsp; *<br>
&nbsp;&nbsp;&nbsp; * @return array array with meta data<br>
&nbsp;&nbsp;&nbsp; */<br>
&nbsp;&nbsp;&nbsp; <span style="font-weight: bold;">function</span>
get_metaData() {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $return = array();<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; // manages host accounts<br>
<span style="color: rgb(255, 0, 0);">&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp; </span>$return["account_types"] = array("host");<br
style="color: rgb(255, 0, 0);">
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; // alias name<br>
<span style="color: rgb(255, 0, 0);">&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp; &nbsp;$return["alias"] = _("MAC address");</span><br
style="color: rgb(255, 0, 0);">
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; return $return;<br>
&nbsp;&nbsp;&nbsp; }<br>
</td>
</tr>
</tbody>
</table>
<br>
<br>
<h2>4. Dependencies</h2>
Modules can depend on eachother. This is useful if you need to access
attributes from other modules or the managed object classes of your
module are not structural.<br>
<br>
The dependencies are specified with <span style="font-weight: bold;">get_dependencies()</span>
or <span style="font-weight: bold;">meta['dependencies']</span>.<br>
<br>
<span style="font-weight: bold; text-decoration: underline;">Example:</span><br
style="font-weight: bold; text-decoration: underline;">
<br>
Our <span style="font-style: italic;">ieee802Device</span>
module depends on the account module (because it is the only structural
module at this time).<br>
<br>
<table style="width: 100%; text-align: left;" class="mod-code"
border="0" cellpadding="2" cellspacing="2">
<tbody>
<tr>
<td style="vertical-align: top;">&nbsp;&nbsp;&nbsp; /**<br>
&nbsp;&nbsp;&nbsp; * Returns meta data that is interpreted by parent
class<br>
&nbsp;&nbsp;&nbsp; *<br>
&nbsp;&nbsp;&nbsp; * @return array array with meta data<br>
&nbsp;&nbsp;&nbsp; */<br>
&nbsp;&nbsp;&nbsp; <span style="font-weight: bold;">function</span>
get_metaData() {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $return = array();<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; // manages host accounts<br>
<span style="color: rgb(255, 0, 0);">&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp; </span>$return["account_types"] = array("host");<br
style="color: rgb(255, 0, 0);">
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; // alias name<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;$return["alias"] = _("MAC
address");<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; // module dependencies<br>
<span style="color: rgb(255, 0, 0);">&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp; &nbsp;$return['dependencies'] = array('depends' =&gt;
array('account'), 'conflicts' =&gt; array());</span><br
style="color: rgb(255, 0, 0);">
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; return $return;<br>
&nbsp;&nbsp;&nbsp; }<br>
</td>
</tr>
</tbody>
</table>
<br>
<br>
<h2>5. Messages</h2>
There are many situations where you will display messages to the user.
The modules should define such messages at a common place to make it
easier to modify them without searching the complete file.<br>
The <span style="font-style: italic;">baseModule</span> offers the $<span
style="font-weight: bold;">messages</span> variable for this. It
should be filled by a function called <span style="font-weight: bold;">load_Messages()</span>.<br>
The <span style="font-style: italic;">baseModule</span> will
automatically check if you have implemented this function and call it
at construction time.<br>
<br>
<span style="font-weight: bold; text-decoration: underline;">Example:</span><br
style="font-weight: bold; text-decoration: underline;">
<br>
Now let our <span style="font-style: italic;">ieee802Device</span>
module define a message.<br>
<br>
<table style="width: 100%; text-align: left;" class="mod-code"
border="0" cellpadding="2" cellspacing="2">
<tbody>
<tr>
<td style="vertical-align: top;">&nbsp;&nbsp;&nbsp; /**<br>
&nbsp;&nbsp;&nbsp; * This function fills the error message array with
messages<br>
&nbsp;&nbsp;&nbsp; */<br>
&nbsp;&nbsp;&nbsp; <span style="font-weight: bold;">function</span> <span
style="color: rgb(255, 0, 0);">load_Messages</span>() {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $this-&gt;messages['mac'][0] =
array('ERROR', 'MAC address is invalid!');&nbsp; // third array value
is set dynamically<br>
&nbsp;&nbsp;&nbsp; }<br>
</td>
</tr>
</tbody>
</table>
<br>
<br>
<h2><br>
</h2>
<h2></h2>
<br>
<br>
<span style="font-weight: bold;"></span>
<h2><span style="font-weight: bold;"></span></h2>
</div>
</div>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,133 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Module HowTo - Help entries</title>
<link rel="stylesheet" type="text/css" href="style/layout.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<div style="text-align: center;">
<h1>Module HowTo - Help entries<br>
</h1>
<br>
<br>
<div style="text-align: left;"><br>
<h2>1. Defining help entries<br>
</h2>
Your module should provide help for all input fields and other
important things.<br>
The LAM help system defines an extra ID range for each module. So you
are free in defining your own IDs.<br>
<br>
The help entries are specified with <span style="font-weight: bold;">get_help()</span>
or <span style="font-weight: bold;">meta['help']</span>.<br>
<br>
<span style="font-weight: bold; text-decoration: underline;">Example:</span><br
style="font-weight: bold; text-decoration: underline;">
<br>
The <span style="font-style: italic;">ieee802Device</span>
module needs help entries for the MAC address.<br>
<br>
<table style="width: 100%; text-align: left;" class="mod-code"
border="0" cellpadding="2" cellspacing="2">
<tbody>
<tr>
<td style="vertical-align: top;">&nbsp;&nbsp;&nbsp; /**<br>
&nbsp;&nbsp;&nbsp; * Returns meta data that is interpreted by parent
class<br>
&nbsp;&nbsp;&nbsp; *<br>
&nbsp;&nbsp;&nbsp; * @return array array with meta data<br>
&nbsp;&nbsp;&nbsp; */<br>
&nbsp;&nbsp;&nbsp; <span style="font-weight: bold;">function</span>
get_metaData() {<br>
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp; $return = array();<br>
<span style="color: rgb(255, 0, 0);">&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp;&nbsp; // help Entries</span><br
style="color: rgb(255, 0, 0);">
<span style="color: rgb(255, 0, 0);">&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp; &nbsp;$return['help'] = array(</span><br
style="color: rgb(255, 0, 0);">
<span style="color: rgb(255, 0, 0);">&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;'mac' =&gt; array(</span><br
style="color: rgb(255, 0, 0);">
<span style="color: rgb(255, 0, 0);">&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;"Headline"
=&gt; _("MAC address"),</span><br style="color: rgb(255, 0, 0);">
<span style="color: rgb(255, 0, 0);">&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;"Text" =&gt;
_("This is the MAC address of the network card of the device (e.g.
00:01:02:DE:EF:18).")</span><br style="color: rgb(255, 0, 0);">
<span style="color: rgb(255, 0, 0);">&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;),</span><br
style="color: rgb(255, 0, 0);">
<span style="color: rgb(255, 0, 0);">&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;'macList' =&gt; array(</span><br
style="color: rgb(255, 0, 0);">
<span style="color: rgb(255, 0, 0);">&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;"Headline"
=&gt; _("MAC address list"),</span><br style="color: rgb(255, 0, 0);">
<span style="color: rgb(255, 0, 0);">&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;"Text" =&gt;
_("This is a comma separated list of MAC addresses.")</span><br
style="color: rgb(255, 0, 0);">
<span style="color: rgb(255, 0, 0);">&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;));</span><br
style="color: rgb(255, 0, 0);">
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; return $return;<br>
&nbsp;&nbsp;&nbsp; }<br>
</td>
</tr>
</tbody>
</table>
<br>
<br>
<span style="font-weight: bold;"></span>
<h2><span style="font-weight: bold;"></span></h2>
</div>
</div>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,103 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>LAM module HowTo</title>
<link rel="stylesheet" type="text/css" href="style/layout.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<div style="text-align: center;">
<h1>Module HowTo</h1>
<br>
<br>
<div style="text-align: left;">
<h2>Basic functions</h2>
<br>
</div>
<div style="text-align: left;">LAM can be easily extended to support
additional LDAP object classes and attributes.<br>
This document provides a step-by-step description to build an account
module. The <span style="font-style: italic;">ieee802Device</span>
module which provides MAC addresses for hosts is used as example.<br>
<br>
<h3><a href="mod_basics.htm">1. Basic concepts</a><br>
</h3>
<br>
<h3><a href="mod_general.htm">2. General module options</a></h3>
<br>
<h3><a href="mod_accountPages.htm">3. Account pages</a></h3>
<br>
<h3><a href="mod_help.htm">4. Help entries<br>
</a></h3>
<br>
<h3><a href="mod_pdf.htm">5. PDF output<br>
</a></h3>
<br>
<h3><a href="mod_upload.htm">6. File upload</a></h3>
<br>
<br>
<br>
<hr style="width: 100%; height: 2px;"><br>
<br>
<h2>Advanced functions</h2>
This part covers additional functionality of the modules which are only
needed by a minority of modules. The examples are taken from different
existing modules.<br>
<br>
<h3><a href="mod_profiles.htm">1. Account profiles</a></h3>
<br>
<h3><a href="mod_config.htm">2. Configuration options</a></h3>
<br>
<h3><a href="mod_upload2.htm">3. Advanced upload options</a></h3>
<br>
<h3><a href="mod_rdn.htm">4. Defining the RDN</a></h3>
<br>
<br>
</div>
</div>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,151 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Module HowTo - PDF output</title>
<link rel="stylesheet" type="text/css" href="style/layout.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<div style="text-align: center;">
<h1>Module HowTo - PDF output<br>
</h1>
<br>
<br>
<div style="text-align: left;"><br>
<h2>1. Defining possible PDF values<br>
</h2>
The first step to PDF output is defining what values your module
provides. This is needed for the PDF editor, otherwise the user will
not be able to select values from your module.<br>
<br>
The PDF values are specified with <span style="font-weight: bold;">get_pdfFields()</span>
or <span style="font-weight: bold;">meta['PDF_fields']</span>.<br>
<br>
<span style="font-weight: bold; text-decoration: underline;">Example:</span><br
style="font-weight: bold; text-decoration: underline;">
<br>
The <span style="font-style: italic;">ieee802Device</span>
module has only one attribute and therefore one PDF value: the MAC
address.<br>
<br>
<table style="width: 100%; text-align: left;" class="mod-code"
border="0" cellpadding="2" cellspacing="2">
<tbody>
<tr>
<td style="vertical-align: top;">&nbsp;&nbsp;&nbsp; /**<br>
&nbsp;&nbsp;&nbsp; * Returns meta data that is interpreted by parent
class<br>
&nbsp;&nbsp;&nbsp; *<br>
&nbsp;&nbsp;&nbsp; * @return array array with meta data<br>
&nbsp;&nbsp;&nbsp; */<br>
&nbsp;&nbsp;&nbsp; <span style="font-weight: bold;">function</span>
get_metaData() {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $return = array();<br>
[...]<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; // available PDF fields<br>
<span style="color: rgb(255, 0, 0);">&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp; $return['PDF_fields'] = array(</span><br
style="color: rgb(255, 0, 0);">
<span style="color: rgb(255, 0, 0);">&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; 'macAddress'</span><br
style="color: rgb(255, 0, 0);">
<span style="color: rgb(255, 0, 0);">&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp; );</span><br style="color: rgb(255, 0, 0);">
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; return $return;<br>
&nbsp;&nbsp;&nbsp; }<br>
<br>
</td>
</tr>
</tbody>
</table>
<br>
<br>
<h2>2. Providing data to put into the PDF file<br>
</h2>
When the user wants to create a PDF file the LDAP account is loaded and
you module is asked for data to put into the PDF file.<br>
<br>
This is done with <span style="font-weight: bold;">get_pdfEntries()</span>.<br>
<br>
<span style="font-weight: bold; text-decoration: underline;">Example:</span><br
style="font-weight: bold; text-decoration: underline;">
<br>
The <span style="font-style: italic;">ieee802Device</span>
module will return the MAC address list of the account.<br>
<br>
<table style="width: 100%; text-align: left;" class="mod-code"
border="0" cellpadding="2" cellspacing="2">
<tbody>
<tr>
<td style="vertical-align: top;">&nbsp; &nbsp; /**<br>
&nbsp;&nbsp;&nbsp; * Returns a list of PDF entries<br>
&nbsp;&nbsp;&nbsp; */<br>
&nbsp;&nbsp;&nbsp; function get_pdfEntries() {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $return = array();<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if
(sizeof($this-&gt;attributes['macAddress']) &gt; 0) {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
$return['ieee802Device_macAddress'] = '&lt;block&gt;&lt;key&gt;' .
_('MAC address list') . '&lt;/key&gt;&lt;value&gt;' . implode(', ',
$this-&gt;attributes['macAddress']) . '&lt;/value&gt;&lt;/block&gt;';<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; return $return;<br>
&nbsp;&nbsp;&nbsp; }<br>
</td>
</tr>
</tbody>
</table>
<br>
<br>
<br>
<br>
<span style="font-weight: bold;"></span>
<h2><span style="font-weight: bold;"></span></h2>
</div>
</div>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,253 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Module HowTo - Account profiles</title>
<link rel="stylesheet" type="text/css" href="style/layout.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<div style="text-align: center;">
<h1>Module HowTo - Account profiles<br>
</h1>
<div style="text-align: left;"><br>
Account profiles make it easy to set default values for new accounts
and even to reset an existing account to default values.<br>
Your module should provide the possibility to define default values for
all attributes which do not differ for each account.<br>
</div>
<div style="text-align: left;"><br>
<h2>1. Defining possible profile options<br>
</h2>
The first step to account profiles is defining the attributes for which
the user can set default values. You will also have to define the type
(text, checkbox, ...) of the profile options.<br>
The profile editor then will display a fieldset for each module
containing its profile options.<br>
<br>
The profile options are specified with <span style="font-weight: bold;">get_profileOptions()</span>
or <span style="font-weight: bold;">meta['profile_options']</span>.<br>
<br>
<span style="font-weight: bold; text-decoration: underline;">Example:</span><br
style="font-weight: bold; text-decoration: underline;">
<br>
The <span style="font-style: italic;">inetOrgPerson</span>
module has only two attributes which may be set to a default value: job
title and employee type.<br>
The other attributes are account specific and not useful as profile
options.<br>
<br>
<table style="width: 100%; text-align: left;" class="mod-code"
border="0" cellpadding="2" cellspacing="2">
<tbody>
<tr>
<td style="vertical-align: top;">&nbsp;&nbsp;&nbsp; /**<br>
&nbsp;&nbsp;&nbsp; * Returns meta data that is interpreted by parent
class<br>
&nbsp;&nbsp;&nbsp; *<br>
&nbsp;&nbsp;&nbsp; * @return array array with meta data<br>
&nbsp;&nbsp;&nbsp; */<br>
&nbsp;&nbsp;&nbsp; <span style="font-weight: bold;">function</span>
get_metaData() {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $return = array();<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; // profile elements<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $return[<span
style="color: rgb(255, 0, 0);">'profile_options'</span>] = array(<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; array(<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp; 0 =&gt; array('kind' =&gt; 'text', 'text' =&gt;
_('Job title') . ":"),<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp; 1 =&gt; array('kind' =&gt; 'input', 'name' =&gt;
'inetOrgPerson_title', 'type' =&gt; 'text', 'size' =&gt; '30',
'maxlength' =&gt; '255'),<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp; 2 =&gt; array('kind' =&gt; 'help', 'value' =&gt;
'title')),<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; array(<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp; 0 =&gt; array('kind' =&gt; 'text', 'text' =&gt;
_('Employee type') . ":"),<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp; 1 =&gt; array('kind' =&gt; 'input', 'name' =&gt;
'inetOrgPerson_employeeType', 'type' =&gt; 'text', 'size' =&gt; '30',
'maxlength' =&gt; '255'),<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp; 2 =&gt; array('kind' =&gt; 'help', 'value' =&gt;
'employeeType'))<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; );<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [...]<br>
</td>
</tr>
</tbody>
</table>
<br>
This defines two text boxes in the profile editor, one for the job
title and one for the employee type.<br>
Your profile options should also provide a help link if the description
of the input element might be not enough.<br>
<br>
<br>
<h2>2. Checking user input</h2>
Probably you also want to check if the input data is syntactically
correct.<br>
The <span style="font-style: italic;">baseModule</span> already
provides different checks which can be activated with <span
style="font-style: italic;">meta data</span>. However you can also do
the checking in the module.<br>
Implementing the function <span style="font-weight: bold;">check_profileOptions()</span>
in your module will allow you to do the checks yourself. Basic checks
can be defined with <span style="font-weight: bold;">meta['profile_checks']</span>.<br>
<br>
<span style="font-weight: bold; text-decoration: underline;">Example:</span><br
style="font-weight: bold; text-decoration: underline;">
<br>
The <span style="font-style: italic;">inetOrgPerson</span> module only
needs some regular expression checks on the input. This can be done by
the <span style="font-style: italic;">baseModule</span>.<br>
<br>
<table style="width: 100%; text-align: left;" class="mod-code"
border="0" cellpadding="2" cellspacing="2">
<tbody>
<tr>
<td style="vertical-align: top;">&nbsp;&nbsp;&nbsp; /**<br>
&nbsp;&nbsp;&nbsp; * Returns meta data that is interpreted by parent
class<br>
&nbsp;&nbsp;&nbsp; *<br>
&nbsp;&nbsp;&nbsp; * @return array array with meta data<br>
&nbsp;&nbsp;&nbsp; */<br>
&nbsp;&nbsp;&nbsp; <span style="font-weight: bold;">function</span>
get_metaData() {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $return = array();<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; // profile checks<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;$return[<span
style="color: rgb(255, 0, 0);">'profile_checks'</span>][<span
style="color: rgb(255, 0, 0);">'inetOrgPerson_title'</span>] = array(<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;'type' =&gt;
'ext_preg',<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;'regex' =&gt;
'title',<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;'error_message' =&gt; $this-&gt;messages['title'][0]);<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;$return[<span
style="color: rgb(255, 0, 0);">'profile_checks'</span>][<span
style="color: rgb(255, 0, 0);">'inetOrgPerson_employeeType'</span>] =
array(<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;'type' =&gt;
'ext_preg',<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;'regex' =&gt;
'employeeType',<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;'error_message' =&gt; $this-&gt;messages['employeeType'][0]);<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [...]<br>
</td>
</tr>
</tbody>
</table>
<br>
The type <span style="font-weight: bold;">"ext_preg"</span> means that
the <span style="font-style: italic;">baseModule</span> will use the <span
style="font-style: italic;">get_preg()</span> function in <span
style="font-style: italic;">lib/account.inc</span> for the syntax
check. This function already contains regular expressions for the most
common cases.<br>
<br>
<br>
<h2>3. Loading an account profile</h2>
When an account profile is loaded the modules have to check what values
they need for their internal data structures.<br>
The <span style="font-style: italic;">baseModule</span> already
provides the possibility to store profile values directly as LDAP
attributes in <span style="font-style: italic;">$this-&gt;attributes</span>.
This is done by defining profile-attribute mappings in <span
style="font-weight: bold;">meta['profile_mappings']</span>.<br>
If you have other values than LDAP attributes or need some post
processing you can implement the function <span
style="font-weight: bold;">load_profile()</span> in your module.<br>
<br>
<span style="font-weight: bold; text-decoration: underline;">Example:</span><br
style="font-weight: bold; text-decoration: underline;">
<br>
The <span style="font-style: italic;">inetLocalMailRecipient</span>
module only
needs a static mapping. This can be done by
the <span style="font-style: italic;">baseModule</span>.<br>
<br>
<table style="width: 100%; text-align: left;" class="mod-code"
border="0" cellpadding="2" cellspacing="2">
<tbody>
<tr>
<td style="vertical-align: top;">&nbsp;&nbsp;&nbsp; /**<br>
&nbsp;&nbsp;&nbsp; * Returns meta data that is interpreted by parent
class<br>
&nbsp;&nbsp;&nbsp; *<br>
&nbsp;&nbsp;&nbsp; * @return array array with meta data<br>
&nbsp;&nbsp;&nbsp; */<br>
&nbsp;&nbsp;&nbsp; <span style="font-weight: bold;">function</span>
get_metaData() {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $return = array();<br>
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp; // profile mappings<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;$return[<span
style="color: rgb(255, 0, 0);">'profile_mappings'</span>] = array(<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;'inetLocalMailRecipient_host' =&gt; 'mailHost'<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;);<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [...]<br>
</td>
</tr>
</tbody>
</table>
<br>
In this example the profile option "inetLocalMailRecipient_host" is
stored as LDAP attribute "mailHost".<br>
<br>
<br>
<span style="font-weight: bold;"></span>
<h2><span style="font-weight: bold;"></span></h2>
</div>
</div>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,104 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Module HowTo - Defining the RDN</title>
<link rel="stylesheet" type="text/css" href="style/layout.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<div style="text-align: center;">
<h1>Module HowTo - Defining the RDN<br>
</h1>
<div style="text-align: left;"><br>
Every LDAP DN starts with a RDN (relative DN). This is the value of a
LDAP attribute. Users usually use "uid", groups use "cn".<br>
You can provide a list of suitable RDN attributes for your module and
give them a priority, too.<br>
<br>
</div>
<div style="text-align: left;">You will need to implement the function <span
style="font-weight: bold;">get_RDNAttributes()</span> or use <span
style="font-weight: bold;">meta['RDN']</span>.<br>
<br>
<span style="font-weight: bold; text-decoration: underline;">Example:</span><br
style="font-weight: bold; text-decoration: underline;">
<br>
The <span style="font-style: italic;">posixAccount</span> module
offers to create accounts with DNs uid=foo,dc=.... and cn=foo,dc=...<br>
The uid attribute has a higher priority as it is the usual attribute
for Unix accounts.<br>
<br>
<table style="width: 100%; text-align: left;" class="mod-code"
border="0" cellpadding="2" cellspacing="2">
<tbody>
<tr>
<td style="vertical-align: top;">&nbsp;&nbsp;&nbsp; /**<br>
&nbsp;&nbsp;&nbsp; * Returns meta data that is interpreted by parent
class<br>
&nbsp;&nbsp;&nbsp; *<br>
&nbsp;&nbsp;&nbsp; * @return array array with meta data<br>
&nbsp;&nbsp;&nbsp; */<br>
&nbsp;&nbsp;&nbsp;<span style="font-weight: bold;"> function</span>
get_metaData() {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $return = array();<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; // RDN attributes<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;$return["RDN"] = array("uid"
=&gt; "normal", "cn" =&gt; "low");<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [...]<br>
</td>
</tr>
</tbody>
</table>
<br>
<br>
<br>
<span style="font-weight: bold;"></span>
<h2><span style="font-weight: bold;"></span></h2>
</div>
</div>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,216 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Module HowTo - File upload</title>
<link rel="stylesheet" type="text/css" href="style/layout.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<div style="text-align: center;">
<h1>Module HowTo - File upload<br>
</h1>
<br>
<br>
<div style="text-align: left;"><br>
<h2>1. Defining upload columns<br>
</h2>
If you want to support account creation via file upload you have to
define columns in the CSV file.<br>
Each column has an non-translated identifier, a description, help entry
and several other values.<br>
<br>
The upload columns are specified with <span style="font-weight: bold;">get_uploadColumns()</span>
or <span style="font-weight: bold;">meta['upload_columns']</span>.<br>
<br>
<span style="font-weight: bold; text-decoration: underline;">Example:</span><br
style="font-weight: bold; text-decoration: underline;">
<br>
The <span style="font-style: italic;">ieee802Device</span>
module has only one attribute and therefore one column: the MAC address.<br>
<br>
<table style="width: 100%; text-align: left;" class="mod-code"
border="0" cellpadding="2" cellspacing="2">
<tbody>
<tr>
<td style="vertical-align: top;">&nbsp;&nbsp;&nbsp; /**<br>
&nbsp;&nbsp;&nbsp; * Returns meta data that is interpreted by parent
class<br>
&nbsp;&nbsp;&nbsp; *<br>
&nbsp;&nbsp;&nbsp; * @return array array with meta data<br>
&nbsp;&nbsp;&nbsp; */<br>
&nbsp;&nbsp;&nbsp; <span style="font-weight: bold;">function</span>
get_metaData() {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $return = array();<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; // manages host accounts<br>
&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp; $return["account_types"] = array("host");<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; // upload fields<br>
<span style="color: rgb(255, 0, 0);">&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp; $return['upload_columns'] = array(</span><br
style="color: rgb(255, 0, 0);">
<span style="color: rgb(255, 0, 0);">&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;array(</span><br
style="color: rgb(255, 0, 0);">
<span style="color: rgb(255, 0, 0);">&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;'name' =&gt;
'ieee802Device_mac',</span><br style="color: rgb(255, 0, 0);">
<span style="color: rgb(255, 0, 0);">&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;'description'
=&gt; _('MAC address'),</span><br style="color: rgb(255, 0, 0);">
<span style="color: rgb(255, 0, 0);">&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;'help' =&gt;
'mac',</span><br style="color: rgb(255, 0, 0);">
<span style="color: rgb(255, 0, 0);">&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;'example'
=&gt; '00:01:02:DE:EF:18'</span><br style="color: rgb(255, 0, 0);">
<span style="color: rgb(255, 0, 0);">&nbsp;&nbsp;&nbsp;
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp; )</span><br
style="color: rgb(255, 0, 0);">
<span style="color: rgb(255, 0, 0);">&nbsp;&nbsp; &nbsp;
&nbsp;&nbsp; );</span><br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; return $return;<br>
&nbsp;&nbsp;&nbsp; }<br>
</td>
</tr>
</tbody>
</table>
<br>
<br>
<h2>2. Building the accounts<br>
</h2>
When the user has uploaded the CSV file the modules have to transform
the input data to LDAP accounts.<br>
<br>
This is done with <span style="font-weight: bold;">build_uploadAccounts()</span>.
The function gets the input data and a list of LDAP accounts as
parameter.<br>
<br>
<span style="font-weight: bold; text-decoration: underline;">Example:</span><br
style="font-weight: bold; text-decoration: underline;">
<br>
The <span style="font-style: italic;">ieee802Device</span>
module has only one LDAP attribute - <span style="font-style: italic;">'macAddress'</span>
- and the <span style="font-style: italic;">'ieee802Device'</span>
objectClass which is added to all accounts.<br>
<br>
<table style="width: 100%; text-align: left;" class="mod-code"
border="0" cellpadding="2" cellspacing="2">
<tbody>
<tr>
<td style="vertical-align: top;">&nbsp;&nbsp;&nbsp; /**<br>
&nbsp;&nbsp;&nbsp; * In this function the LDAP account is built up.<br>
&nbsp;&nbsp;&nbsp; *<br>
&nbsp;&nbsp;&nbsp; * @param array $rawAccounts list of hash arrays
(name =&gt; value) from user input<br>
&nbsp;&nbsp;&nbsp; * @param array $partialAccounts list of hash arrays
(name =&gt; value) which are later added to LDAP<br>
&nbsp;&nbsp;&nbsp; * @param array $ids list of IDs for column position
(e.g. "posixAccount_uid" =&gt; 5)<br>
&nbsp;&nbsp;&nbsp; * @return array list of error messages if any<br>
&nbsp;&nbsp;&nbsp; */<br>
&nbsp;&nbsp;&nbsp; <span style="font-weight: bold;">function</span> <span
style="color: rgb(255, 0, 0);">build_uploadAccounts</span>($rawAccounts,
$ids, &amp;$partialAccounts) {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $messages = array();<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; for ($i = 0; $i &lt;
sizeof($rawAccounts); $i++) {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; // add object
class<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if
(!in_array("ieee802Device", $partialAccounts[$i]['objectClass']))
$partialAccounts[$i]['objectClass'][] = "ieee802Device";<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; // add MACs<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if
($rawAccounts[$i][$ids['ieee802Device_mac']] != "") {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp; $macs = explode(',',
$rawAccounts[$i][$ids['ieee802Device_mac']]);<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp; // check format<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp; for ($m = 0; $m &lt; sizeof($macs); $m++) {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; if (get_preg($macs[$m],
'macAddress')) {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
$partialAccounts[$i]['macAddress'][] = $macs[$m];<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; else {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $errMsg =
$this-&gt;messages['mac'][1];<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
array_push($errMsg, array($i));<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $messages[] =
$errMsg;<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
&nbsp;&nbsp;&nbsp; }<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; return $messages;<br>
&nbsp;&nbsp;&nbsp; }<br>
</td>
</tr>
</tbody>
</table>
<br>
<br>
<br>
<br>
<span style="font-weight: bold;"></span>
<h2><span style="font-weight: bold;"></span></h2>
</div>
</div>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,167 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Module HowTo - Advanced upload options</title>
<link rel="stylesheet" type="text/css" href="style/layout.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<div style="text-align: center;">
<h1>Module HowTo - Advanced upload options<br>
</h1>
<div style="text-align: left;"><br>
The <span style="font-style: italic;">ieee802Device</span> module only
needs the basic upload functions for its functionality.<br>
However there are more possibilities for the modules to control the
file upload.<br>
</div>
<div style="text-align: left;"><br>
<h2>1. Module order<br>
</h2>
Your module might depend on the input values of another module. In this
case you probably want that your module is called as the second one.<br>
<br>
You can define dependencies to other modules with the function <span
style="font-weight: bold;">get_uploadPreDepends()</span> or <span
style="font-weight: bold;">meta['upload_preDepends']</span>.<br>
<br>
<span style="font-weight: bold; text-decoration: underline;">Example:</span><br
style="font-weight: bold; text-decoration: underline;">
<br>
The <span style="font-style: italic;">sambaGroupMapping</span> module
needs the group name to set the default <span
style="font-style: italic;">displayName</span>. Therefore it depends
on the <span style="font-style: italic;">posixGroup</span> module<br>
<br>
<table style="width: 100%; text-align: left;" class="mod-code"
border="0" cellpadding="2" cellspacing="2">
<tbody>
<tr>
<td style="vertical-align: top;">&nbsp;&nbsp;&nbsp; /**<br>
&nbsp;&nbsp;&nbsp; * Returns meta data that is interpreted by parent
class<br>
&nbsp;&nbsp;&nbsp; *<br>
&nbsp;&nbsp;&nbsp; * @return array array with meta data<br>
&nbsp;&nbsp;&nbsp; */<br>
&nbsp;&nbsp;&nbsp;<span style="font-weight: bold;"> function</span>
get_metaData() {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $return = array();<br>
&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp; // upload dependencies<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;$return[<span
style="color: rgb(255, 0, 0);">'upload_preDepends'</span>] =
array('posixGroup');<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [...]<br>
</td>
</tr>
</tbody>
</table>
<br>
<br>
<h2>2. Upload post actions<br>
</h2>
If your module does not only create an account but relates the account
with other existing LDAP entries you can do these modifications after
the account was created.<br>
This is useful for adding users to groups or setting quotas.<br>
<br>
You have to implement the function <span style="font-weight: bold;">doUploadPostActions()</span>
in your module. Since post actions are very special there is no <span
style="font-style: italic;">meta data</span> for this.<br>
<br>
<span style="font-weight: bold; text-decoration: underline;">Example:</span><br
style="font-weight: bold; text-decoration: underline;">
<br>
The <span style="font-style: italic;">posixAccount</span> module
offers to put the user account in additional groups. This is done in
the post actions.<br>
<br>
<table style="width: 100%; text-align: left;" class="mod-code"
border="0" cellpadding="2" cellspacing="2">
<tbody>
<tr>
<td style="vertical-align: top;">&nbsp;&nbsp;&nbsp; /**<br>
&nbsp;&nbsp;&nbsp; * This function executes one post upload action.<br>
&nbsp;&nbsp;&nbsp; *<br>
&nbsp;&nbsp;&nbsp; * @param array $data array containing one account in
each element<br>
&nbsp;&nbsp;&nbsp; * @param array $ids array(&lt;column_name&gt; =&gt;
&lt;column number&gt;)<br>
&nbsp;&nbsp;&nbsp; * @param array $failed list of accounts which were
not created successfully<br>
&nbsp;&nbsp;&nbsp; * @param array $temp variable to store temporary
data between two post actions<br>
&nbsp;&nbsp;&nbsp; * @return array current status<br>
&nbsp;&nbsp;&nbsp; * &lt;br&gt; array (<br>
&nbsp;&nbsp;&nbsp; * &lt;br&gt;&nbsp; 'status' =&gt; 'finished' |
'inProgress'<br>
&nbsp;&nbsp;&nbsp; * &lt;br&gt;&nbsp; 'progress' =&gt; 0..100<br>
&nbsp;&nbsp;&nbsp; * &lt;br&gt;&nbsp; 'errors' =&gt; array (&lt;array
of parameters for StatusMessage&gt;)<br>
&nbsp;&nbsp;&nbsp; * &lt;br&gt; )<br>
&nbsp;&nbsp;&nbsp; */<br>
&nbsp;&nbsp;&nbsp; <span style="font-weight: bold;">function</span> <span
style="color: rgb(255, 0, 0);">doUploadPostActions</span>($data, $ids,
$failed, &amp;$temp) {<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [...]<br>
&nbsp;&nbsp;&nbsp; }<br>
</td>
</tr>
</tbody>
</table>
<br>
Please make sure that the actions in one call of <span
style="font-weight: bold;">doUploadPostActions()</span> are not very
time consuming (only one LDAP operation). Your function will be called
repeatedly until you give back the status "finished".<br>
This allows LAM to avoid running longer than the maximum execution time
by sending meta refreshes to the browser.<br>
<span style="font-weight: bold;"></span>
<h2><span style="font-weight: bold;"></span></h2>
</div>
</div>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,95 @@
<!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>Other libraries</title>
<link rel="stylesheet" type="text/css" href="style/layout.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<h1 style="text-align: center;">Other libraries<br>
</h1>
<br>
<h2><a name="lamdaemon"></a>Lamdaemon (lamdaemon.pl)<br>
</h2>
<br>
<h2><a name="cache"></a>LDAP cache (cache.inc)</h2>
<br>
<h2><a name="lists"></a>Account lists (lists.inc)</h2>
This file provides basic functions used by the account lists. They
cover major parts of the HTML output.<br>
There is also one list of LDAP attribute descriptions per account type.
They allow to have translated descriptions of the most common
attributes.<br>
<br>
<h2><a name="status"></a>Status messages (status.inc)</h2>
Status.inc provides the function <span
style="font-weight: bold; font-style: italic;">StatusMessage()</span>
which can be used to display error, warning and information messages.<br>
The function uses preg_replace() to convert the special tags to HTML
tags. The message variables are included with printf().<br>
<br>
The parameters of <span style="font-weight: bold; font-style: italic;">StatusMessage()
</span>are described in the developer FAQ.<br>
<br>
<h2><a name="treeSchema"></a>Tree view and schema browser</h2>
The files tree.inc and schema.inc contain functions which are needed by
the tree view and the schema browser.<br>
These functions were copied from <a
href="http://sourceforge.net/projects/phpldapadmin/">phpLDAPadmin</a>
(PLA).<br>
<br>
<ul>
<li><span style="font-weight: bold;">tree.inc:</span> tree functions
(from functions.php and some other files in PLA)</li>
<li><span style="font-weight: bold;">schema.inc:</span> for schema
browser (from schema_functions.php in PLA)<br>
</li>
</ul>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,76 @@
<!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>OU editor</title>
<link rel="stylesheet" type="text/css" href="style/layout.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<h1 style="text-align: center;">OU editor<br>
</h1>
<br>
<br>
This is a simple tool for creating and deleting organizational units
(OU) inside the LDAP tree.<br>
OUs can be managed for the LDAP suffixes of all account types.<br>
<br>
<h2>1. Creating OUs<br>
</h2>
<span style="font-weight: bold; font-style: italic;"></span>The user
provides the name of the new OU which can include a-z, 0-9, "_", "-"
and " ".<br>
LAM will then create a new OU object under the selected LDAP suffix.<br>
<br>
<h2>2. Deleting OUs</h2>
If the user selects to delete an OU he will be asked if he is really
sure and then the OU is deleted.<br>
There is no recursive deletion.<br>
<br>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,152 @@
<!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>PDF editor</title>
<link rel="stylesheet" type="text/css" href="style/layout.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<h1 style="text-align: center;">PDF editor<br>
</h1>
<div style="text-align: center;"><br>
<img alt="" src="images/lam_pdfEditor.png"
style="width: 443px; height: 162px;"><br>
</div>
<div style="text-align: center;"><br>
<br>
<div style="text-align: left;">The <span style="font-style: italic;">PDF
editor</span> allows the user to create templates for the PDF output.<br>
These templates are saved as files in <span style="font-weight: bold;">config/pdf</span>.<br>
<br>
<h2>Pdfmain.php<br>
</h2>
This is the start page of the <span style="font-style: italic;">PDF
editor</span>. The user can select to add/modify/remove selected PDF
profiles.<br>
<br>
The list of existing PDF profiles is returned by <span
style="font-weight: bold;">getPDFStructureDefinitions()</span> in <span
style="font-style: italic;">pdfstruct.inc</span>. It includes all
structure names without file extensions for a given account type.<br>
<br>
Depending on the selection of the user he is forwarded to pdfpage.php
or pdfdelete.php.<br>
<br>
<h2>Pdfpage.php<br>
</h2>
The user can edit the PDF structures on this page.<br>
<br>
The structure is loaded with <span style="font-weight: bold;">loadPDFStructureDefinitions()</span>
from <span style="font-style: italic;">pdfstruct.inc</span>. If it
does not yet exist then the default structure is loaded.<br>
It is stored in <span style="font-weight: bold; font-style: italic;">$_SESSION['currentPDFStructure']</span>
(sections) and <span style="font-weight: bold; font-style: italic;">$_SESSION['currentPageDefinitions']</span>
(head line and logo).<br>
<br>
At the top of the page the head line and logo can be edited. The list
of available logos is retrieved with <span style="font-weight: bold;">getAvailableLogos()</span>
from <span style="font-style: italic;">pdfstruct.inc</span>.<br>
<br>
The sections on the left side are displayed like they are defined in <span
style="font-weight: bold; font-style: italic;">$_SESSION['currentPDFStructure']</span>.
Each item has links to move or delete it. Section titles may be changed.<br>
<br>
The list of available PDF entries on the right side is retrieved from <span
style="font-weight: bold;">getAvailablePDFFields()</span> in <span
style="font-style: italic;">modules.inc</span>.<br>
<br>
Near the bottom there the user can add a new section. The list of
available PDF entries is retrieved as above.<br>
<br>
When the user pushes one of the buttons or clicks on a link then there
are several actions:<br>
<ul>
<li><span style="font-weight: bold;">Abort button:</span> The user is
redirected back to <span style="font-style: italic;">pdfmain.php</span>.<br>
</li>
<li><span style="font-weight: bold;">Save button:</span> The
structure name is checked for correctness and the file is saved with <span
style="font-weight: bold;">savePDFStructureDefinitions()</span>
from <span style="font-style: italic;">pdfstruct.inc</span><span
style="font-weight: bold;">.</span></li>
<li><span style="font-weight: bold;">Add section button:</span> LAM
adds a static text or section to the structure.</li>
<li><span style="font-weight: bold;">Add entry button:</span> Adds a
new entry to the selected section.</li>
<li><span style="font-weight: bold;">Change name button:</span>
Changes the name of the section title or the section attribute.</li>
<li><span style="font-weight: bold;">Remove entry link:</span> If the
entry is a section then all parts of this section are removed.
Otherwise a single entry is removed.</li>
<li><span style="font-weight: bold;">Move up/down links:</span> The
entry or section is moved up or down.</li>
</ul>
<br>
<span style="font-weight: bold; font-style: italic;">$_SESSION['currentPDFStructure']</span>
is an array that contains all XML tags of the PDF structure. If you
want to modify the structure always remember to put the opening and
closing tags at the right place.<br>
<br>
<h2>Pdfdelete.php</h2>
When the user selected to delete a structure in <span
style="font-style: italic;">pdfmain.php</span> he is redirected to
this page.<br>
<br>
LAM will ask once again if the user is sure to delete the structure. If
this is the case the structure will be deleted with <span
style="font-weight: bold;">deletePDFStructureDefinition()</span> from <span
style="font-style: italic;">pdfstruct.inc</span>.<br>
<br>
<br>
<br>
<br>
</div>
</div>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,85 @@
<!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>PDF (pdf.inc, pdfstruct.inc)</title>
<link rel="stylesheet" type="text/css" href="style/layout.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<h1 style="text-align: center;">PDF (pdf.inc, pdfstruct.inc)<br>
</h1>
<br>
These files control the management of PDF structures and creation of
PDF files.<br>
<br>
<br>
<h2>pdfstruct.inc</h2>
This file includes all functions which are needed to manage the PDF
structures. You can load/save/delete structures, get a list of
available structures and logos.<br>
<br>
<br>
<h2>pdf.inc</h2>
The pdf.inc library is used to create a PDF file. <br>
<br>
<span style="font-weight: bold;">createModulePDF()</span> takes a list
of <span style="font-style: italic;">accountContainer</span> objects
and a PDF structure as parameters. The function then creates a PDF
file, saves it to the <span style="font-style: italic;">tmp</span>
folder and returns the file name.<br>
<br>
<br>
The <span style="font-weight: bold;">lamPDF</span> class extends the <span
style="font-style: italic;">UFPDF</span> class and adds the LAM
specific header and footer.<br>
It also defines the used font. Currently only Bitstream-Vera is
supported.<br>
<br>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,144 @@
<!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>PDF templates</title>
<link rel="stylesheet" type="text/css" href="style/layout.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<h1 style="text-align: center;">PDF templates<br>
</h1>
<br>
Every PDF structure is saved as a single file in <span
style="font-weight: bold;">config/pdf</span>. The
file extension is the account type (user, group, ...) plus ".xml" (e.g.
default.user.xml).<br>
<br>
<h2>Format</h2>
The root tag is <span style="font-weight: bold;">&lt;pdf&gt;</span>
with the attributes <span
style="font-weight: bold; font-style: italic;">filename</span> for the
logo and <span style="font-weight: bold; font-style: italic;">headline</span>
for the title.<br>
<br>
There are two types of subentries in &lt;pdf&gt;:<br>
<ul>
<li>sections</li>
<li>text<br>
</li>
</ul>
<h3>Sections:</h3>
Sections are parts of the PDF file where data from the account profiles
(e.g. LDAP attributes) is shown. Each section has a title and a list of
entries.<br>
<br>
The title is defined with the <span
style="font-weight: bold; font-style: italic;">name</span> attribute
inside the section tag. If the title begins with a "_" then LAM
interprets it as entry. This means that LAM will insert the value part
of this entry here.<br>
<br>
Each section has a list of subentries which are defined with the <span
style="font-weight: bold;">&lt;entry&gt;</span> tag. The have only one
attribute which is <span style="font-weight: bold;">name</span> and
contains the identifier of this entry.<br>
<br>
<h3>Text:</h3>
LAM allows to display a fixed text in the PDF which is defined with the
<span style="font-weight: bold;">&lt;text&gt;</span> tag. The text is
just written inside the tags.<br>
<br>
<br>
<br>
<span style="font-weight: bold;">Example:</span><br
style="font-weight: bold;">
<br>
&lt;pdf type="user" filename="printLogo.jpg" headline="LDAP Account
Manager"&gt;<br>
&nbsp;&nbsp;&nbsp; &lt;text&gt;This document includes your personal
account settings.&lt;/text&gt;<br>
&nbsp;&nbsp;&nbsp; &lt;section name="Personal User Infos"&gt;<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;entry
name="inetOrgPerson_givenName" /&gt;<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;entry name="inetOrgPerson_sn"
/&gt;<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;entry
name="inetOrgPerson_street" /&gt;<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;entry
name="inetOrgPerson_postalCode" /&gt;<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;entry
name="inetOrgPerson_postalAddress" /&gt;<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;entry
name="inetOrgPerson_mail" /&gt;<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;entry
name="inetOrgPerson_telephoneNumber" /&gt;<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;entry
name="inetOrgPerson_mobileTelephoneNumber" /&gt;<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;entry
name="inetOrgPerson_facsimileTelephoneNumber" /&gt;<br>
&nbsp;&nbsp;&nbsp; &lt;/section&gt;<br>
&nbsp;&nbsp;&nbsp; &lt;section name="Unix User Settings"&gt;<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;entry name="posixAccount_uid"
/&gt;<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;entry
name="posixAccount_userPassword" /&gt;<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;entry
name="posixAccount_primaryGroup" /&gt;<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;entry
name="posixAccount_additionalGroups" /&gt;<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;entry
name="posixAccount_homeDirectory" /&gt;<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;entry
name="posixAccount_loginShell" /&gt;<br>
&nbsp;&nbsp;&nbsp; &lt;/section&gt;<br>
&lt;/pdf&gt;<br>
<br>
<br>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,129 @@
<!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>Profile editor</title>
<link rel="stylesheet" type="text/css" href="style/layout.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<h1 style="text-align: center;">Profile editor<br>
</h1>
<div style="text-align: center;"><img alt=""
src="images/lam_profedit.png" style="width: 354px; height: 236px;"><br>
</div>
<div style="text-align: center;"><br>
<div style="text-align: left;">The <span style="font-style: italic;">profile
editor</span> allows the user to set default values for new accounts.<br>
These defaults are saved as files in <span style="font-weight: bold;">config/profiles</span>.<br>
<br>
<h2>Profilemain.php<br>
</h2>
This is the start page of the <span style="font-style: italic;">profile
editor</span>. The user can select to add/modify/remove selected
account profiles.<br>
<br>
The list of existing account profiles is returned by <span
style="font-weight: bold;">getAccountProfiles()</span> in <span
style="font-style: italic;">modules.inc</span>. It includes all
profile names without file extensions.<br>
<br>
<h2>Profilepage.php<br>
</h2>
This script is used to display the account profile to the user. <br>
<br>
The profile options include the LDAP OU suffix and options provided by
the account modules.<br>
<br>
The values for the OU selection are read with <span
style="font-weight: bold;">search_units()</span>.<br>
<br>
The <span style="font-style: italic;">account modules</span> provide
all other profile options. The profile editor displays a separate
fieldset for each module containing its options.<br>
The function <span style="font-weight: bold;">print_option()</span>
manages the display of the different option types (checkbox, select,
...). The type of each option is saved in <span
style="font-weight: bold;">$_SESSION['profile_types']</span>.<br>
See the <a href="modules-specification.htm">modules specification</a>
for a complete list of supported types.<br>
<br>
The profiles have unique names under which they are saved. If a profile
with the same name already exists it will be overwritten.<br>
<br>
When the user selects to save the profile then
profilepage.php will check the input for correctness.<br>
First the values are converted to the correct type (checkbox -&gt;
Boolean) by checking <span style="font-weight: bold;">$_SESSION['profile_types']</span>.
Then LAM will replace all "\'" with&nbsp; "'" if <span
style="font-style: italic;">magic_quotes_gpc</span> is on. Now the
input data is checked for correctness by calling <span
style="font-weight: bold;">checkProfileOptions()</span>.<br>
The <span style="font-style: italic;">account modules</span> return a
list of
error messages if one or more options are incorrect. If there are
errors they will be displayed, otherwise the profile is
saved by calling <span style="font-weight: bold;">saveAccountProfile()</span>.<br>
<br>
<h2>Profiledelete.php</h2>
When the user selected to delete a profile in <span
style="font-style: italic;">profilemain.php</span> he is redirected to
this page.<br>
<br>
LAM will ask once again if the user is sure to delete the profile. If
this is the case the profile will be deleted with <span
style="font-weight: bold;">delAccountProfile()</span> from <span
style="font-style: italic;">profiles.inc</span>.<br>
<br>
<br>
<br>
<br>
</div>
</div>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,81 @@
<!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>Account profiles</title>
<link rel="stylesheet" type="text/css" href="style/layout.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<h1 style="text-align: center;">Account profiles</h1>
<br>
Every account profile is saved as single file in <span
style="font-weight: bold;">config/profiles</span>. The
file extension is the account type (user, group, ...).<br>
In contrast to the configuration profiles the account profiles are not
designed to be editable by hand. They do not allow to add comments and
have a simpler format.<br>
<br>
<h2>Format</h2>
There is one option per line which is formated: &lt;identifier&gt;:
&lt;value&gt;<br>
<br>
Identifier is the option's name, value is the rest of the line after
the first <span style="font-weight: bold;">": "</span>.<br>
Some options are multi-valued, the sub-values are separated by <span
style="font-weight: bold;">"+::+"</span>.<br>
<br>
<br>
<span style="font-weight: bold;">Examples:</span><br
style="font-weight: bold;">
<br>
posixAccount_primaryGroup: group1<br>
posixAccount_additionalGroup: group3+::+group4+::+group5+::+group6<br>
<br>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,70 @@
<!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>Account profiles</title>
<link rel="stylesheet" type="text/css" href="style/layout.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<h1 style="text-align: center;">profiles.inc</h1>
<br>
This file includes all functions to manage <a href="profile_files.htm">account
profiles</a>. You can read/store/list/delete profiles.<br>
<br>
Profile names may contain letters, numbers, "_" and "-". All functions
which have a profile name as parameter check this.<br>
Functions which modify the filesystem (<span style="font-style: italic;">saveAccountProfile,
delAccountProfile</span>) also check if the user is logged in to LAM
for security reasons. This is done by reading <span
style="font-style: italic;">$_SESSION['logedIn']</span>.<br>
<br>
<br>
<br>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,80 @@
<!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>Samba 3 domains</title>
<link rel="stylesheet" type="text/css" href="style/layout.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<h1 style="text-align: center;">Samba 3 domains<br>
</h1>
<div style="text-align: center;"><br>
</div>
<div style="text-align: center;"><br>
<div style="text-align: left;">The <span style="font-style: italic;">Samba
3 domain list</span> is based on the other account lists. The
difference is that there are no filter boxes and the displayed
attributes are fixed (name, SID, DN).<br>
<br>
If the user selects to edit or create a domain he will be redirected to
<span style="font-weight: bold;">domain.php</span> which manages the
domain objects in LDAP.<br>
<br>
<br>
<h2>domain.php</h2>
This script manages domain objects. It allows the user to create
domains or to modify values.<br>
The domain name, SID and RIDbase cannot be changed by the user because
this could cause trouble on the clients.<br>
<br>
<br>
</div>
</div>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,57 @@
/*
$Id$
This code is part of LDAP Account Manager (http://www.sourceforge.net/projects/lam)
Copyright (C) 2004 Roland Gruber
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more detaexils.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
/* CSS layout for LAM development documentation */
h1,h2,h3,h4 {
color:#0c12b7;
}
/* links */
a {
color:blue;
text-decoration:none;
}
a:visited {
color:blue;
text-decoration:none;
}
a:hover {
color:red;
text-decoration:none;
}
a:active {
color:red;
text-decoration:none;
}
/* module HowTo */
table.mod-code {
background-color:#fffde2;
}

View File

@ -0,0 +1,66 @@
<!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>Tree view and schema browser</title>
<link rel="stylesheet" type="text/css" href="style/layout.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<h1 style="text-align: center;">Tree view and schema browser<br>
</h1>
<br>
<br>
These parts are based on <a
href="http://sourceforge.net/projects/phpldapadmin/">phpLDAPadmin</a>.<br>
The two tools are located in <span
style="font-weight: bold; font-style: italic;">templates/schema</span>
and <span style="font-weight: bold; font-style: italic;">templates/tree</span>.<br>
<br>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,115 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Type HowTo - Basic concepts</title>
<link rel="stylesheet" type="text/css" href="style/layout.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<div style="text-align: center;">
<h1>Type HowTo - Basic concepts<br>
</h1>
<br>
<br>
<div style="text-align: left;"><br>
<h2>1. Licensing</h2>
LAM is licensed under the <a href="http://www.gnu.org/licenses/gpl.txt">GNU
General Public License</a>. This means your plugins need a compatible
license.<br>
LAM is distributed with a copy of the GPL license.<br>
<br>
<br>
<h2>2. Naming and position in directory structure</h2>
Type names are usually named after the group of accounts they manage.
However, you can use any name you want, it should be short and
containing only a-z and 0-9. The type name is only shown in the
configuration dialog, on all other pages LAM will show a provided <span
style="font-style: italic;">alias</span> name.<br>
All type modules are stored in <span style="font-weight: bold;">lib/types</span>.
The filename must end with <span style="font-weight: bold;">.inc</span>
and the file must have the same name as its inside class.<br>
<br>
<span style="font-weight: bold; text-decoration: underline;">Example:</span>
Our example module will provide the <span style="font-weight: bold;">class
</span><span style="font-style: italic; font-weight: bold;">smbDomain</span>,
therefore the file will be called <span style="font-weight: bold;">lib/types/</span><span
style="font-style: italic; font-weight: bold;">smbDomain.inc</span>.<span
style="font-style: italic;"></span><br>
<br>
<br>
<h2>3. Defining the class</h2>
All type classes have <span style="font-weight: bold;">baseType</span>
as parent class. This provides common functionality and dummy functions
for all required class functions.<br>
<br>
<span style="font-weight: bold;">Example:</span><br>
<br>
<table style="width: 100%; text-align: left;" class="mod-code"
border="0" cellpadding="2" cellspacing="2">
<tbody>
<tr>
<td style="vertical-align: top;">/**<br>
* The account type for Samba domains.<br>
*<br>
* @package types<br>
*/<span style="font-weight: bold;"><br>
class</span> <span style="color: rgb(255, 0, 0);">smbDomain</span><span
style="font-style: italic;"> extends </span><span
style="font-weight: bold;">baseType</span> {<br>
<br>
}<br>
</td>
</tr>
</tbody>
</table>
<br>
<br>
<h2><span style="font-weight: bold;"></span></h2>
</div>
</div>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,84 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Type HowTo - CSS file</title>
<link rel="stylesheet" type="text/css" href="style/layout.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<div style="text-align: center;">
<h1>Type HowTo - CSS file</h1>
<br>
<div style="text-align: left;"><br>
Every account type has its own style sheet where it can define colors
and fonts.<br>
<br>
<br>
<h2>1. File name</h2>
The CSS files are saved in <span style="font-weight: bold;">style/</span>.
Your file must be named <span style="font-weight: bold;">type_&lt;your
type&gt;.css</span>.<br>
<br>
<span style="font-weight: bold; text-decoration: underline;">Example:</span><br
style="font-weight: bold; text-decoration: underline;">
<br>
The <span style="font-style: italic;">smbDomain</span> type has the
CSS file <span style="font-weight: bold;">style/type_smbDomain.css</span>.<br>
<br>
<br>
<h2>2. Contents</h2>
Take the type_user.css file as template. It is well documented.<br>
You have to replace all occurrences of "user" with your account type.<br>
<br>
<span style="font-weight: bold; text-decoration: underline;">Example:</span><br
style="font-weight: bold; text-decoration: underline;">
<br>
Take a look at type_user.css and type_smbDomain.css.<br>
</div>
</div>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,135 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Type HowTo - General type options</title>
<link rel="stylesheet" type="text/css" href="style/layout.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<div style="text-align: center;">
<h1>Type HowTo - General type options<br>
</h1>
<br>
<br>
<div style="text-align: left;"><br>
<h2>1. Alias name</h2>
The type name is very limited, therefore every type has an <span
style="font-style: italic;">alias name</span>. This <span
style="font-style: italic;">alias name</span> has no limitations and
can be translated. It may contain special characters but make sure that
it does not contain HTML special characters like "&lt;".<br>
<br>
The <span style="font-style: italic;">alias name</span> is specified
with <span style="font-weight: bold;">getAlias()</span><span
style="font-weight: bold;"></span>.<br>
<br>
<span style="font-weight: bold; text-decoration: underline;">Example:</span><br
style="font-weight: bold; text-decoration: underline;">
<br>
Our <span style="font-style: italic;">smbDomain</span> type will get
the alias "Samba domains".<br>
<br>
<table style="width: 100%; text-align: left;" class="mod-code"
border="0" cellpadding="2" cellspacing="2">
<tbody>
<tr>
<td style="vertical-align: top;">&nbsp;&nbsp;&nbsp; /**<br>
&nbsp;&nbsp;&nbsp; * Returns the alias name of this account type.<br>
&nbsp;&nbsp;&nbsp; *<br>
&nbsp;&nbsp;&nbsp; * @return string alias name<br>
&nbsp;&nbsp;&nbsp; */<br>
&nbsp;&nbsp;&nbsp; <span style="font-weight: bold;">function</span>
<span style="color: rgb(255, 0, 0);">getAlias()</span> {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; return _("Samba domains");<br>
&nbsp;&nbsp;&nbsp; }<br>
</td>
</tr>
</tbody>
</table>
<br>
<br>
<h2>2. Description<br>
</h2>
Each type has a description so that the user knows what accounts he can
manage with that type. The description is displayed in the LAM
configuration editor.<br>
<br>
The description is specified with <span style="font-weight: bold;">getDescription()</span><span
style="font-weight: bold;"></span>.<br>
<br>
<span style="font-weight: bold; text-decoration: underline;">Example:</span><br
style="font-weight: bold; text-decoration: underline;">
<br>
Our <span style="font-style: italic;">smbDomain</span> type has the
description "Samba 3 domain entries".<br>
<br>
<table style="width: 100%; text-align: left;" class="mod-code"
border="0" cellpadding="2" cellspacing="2">
<tbody>
<tr>
<td style="vertical-align: top;">&nbsp;&nbsp;&nbsp; /**<br>
&nbsp;&nbsp;&nbsp; * Returns the description of this account type.<br>
&nbsp;&nbsp;&nbsp; *<br>
&nbsp;&nbsp;&nbsp; * @return string description<br>
&nbsp;&nbsp;&nbsp; */<br>
&nbsp;&nbsp;&nbsp; <span style="font-weight: bold;">function</span>
<span style="color: rgb(255, 0, 0);">getDescription()</span> {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; return _("Samba 3 domain
entries");<br>
&nbsp;&nbsp;&nbsp; }<br>
</td>
</tr>
</tbody>
</table>
<br>
<br>
<span style="font-weight: bold;"></span>
<h2><span style="font-weight: bold;"></span></h2>
</div>
</div>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,76 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Type HowTo - Icon</title>
<link rel="stylesheet" type="text/css" href="style/layout.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<div style="text-align: center;">
<h1>Type HowTo - Icon</h1>
<br>
<div style="text-align: left;"><br>
You have to provide an icon for your account type. This icon is
displayed in the upper frame next to the link to your account list.<br>
The format of the image must be <span style="font-weight: bold;">PNG</span>
and the size should be between <span style="font-weight: bold;">20x20</span>
and <span style="font-weight: bold;">25x25</span> pixels.<br>
<br>
The file is stored in <span style="font-weight: bold;">graphics/</span>
with the file name <span style="font-weight: bold;">&lt;your
type&gt;.png</span>.<br>
<br>
<br>
<span style="font-weight: bold; text-decoration: underline;">Example:</span><br
style="font-weight: bold; text-decoration: underline;">
<br>
The <span style="font-style: italic;">smbDomain</span> type has the
icon graphics/smbDomain.png.<br>
</div>
</div>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,81 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>LAM type HowTo</title>
<link rel="stylesheet" type="text/css" href="style/layout.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<div style="text-align: center;">
<h1>Type HowTo</h1>
<br>
<div style="text-align: left;">If you write new account modules they
may not fit in the existing group of account types (user, group, host,
...). In this case you can easily create a new account type.<br>
This document provides a step-by-step description to build a type
module. The <span style="font-style: italic;">smbDomain</span>
module which handles Samba domains is used as example.<br>
</div>
<br>
<div style="text-align: left;">
<h2>1. Defining the type<br>
</h2>
<h3><a href="type_basics.htm">1. Basic concepts</a><br>
</h3>
<h3><a href="type_general.htm">2. General type options</a></h3>
<h3><a href="type_list.htm">3. Custom list view</a></h3>
<br>
<br>
<h2><a href="type_profile.htm">2. The default profile</a></h2>
<br>
<h2><a href="type_icon.htm">3. List icon</a></h2>
<br>
<h2><a href="type_css.htm">4. Type specific CSS file</a></h2>
</div>
</div>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,226 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Type HowTo - Custom list view</title>
<link rel="stylesheet" type="text/css" href="style/layout.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<div style="text-align: center;">
<h1>Type HowTo - Custom list view<br>
</h1>
<br>
<br>
<div style="text-align: left;"><br>
<h2>1. Default list attributes<br>
</h2>
Here you can specify what attributes are shown as default in the list
view.<br>
<br>
The <span style="font-style: italic;">default attributes</span> are
specified
with <span style="font-weight: bold;">getDefaultListAttributes()</span><span
style="font-weight: bold;"></span>.<br>
<br>
<span style="font-weight: bold; text-decoration: underline;">Example:</span><br
style="font-weight: bold; text-decoration: underline;">
<br>
Our <span style="font-style: italic;">smbDomain</span> type will show
the attributes "#sambaDomainName;#sambaSID" by default.<br>
<br>
<table style="width: 100%; text-align: left;" class="mod-code"
border="0" cellpadding="2" cellspacing="2">
<tbody>
<tr>
<td style="vertical-align: top;">&nbsp;&nbsp;&nbsp; /**<br>
&nbsp;&nbsp;&nbsp; * Returns the default attribute list for this
account type.<br>
&nbsp;&nbsp;&nbsp; *<br>
&nbsp;&nbsp;&nbsp; * @return string attribute list<br>
&nbsp;&nbsp;&nbsp; */<br>
&nbsp;&nbsp;&nbsp; <span style="font-weight: bold;">function</span> <span
style="color: rgb(255, 0, 0);">getDefaultListAttributes()</span> {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; return
"#sambaDomainName;#sambaSID";<br>
&nbsp;&nbsp;&nbsp; }<br>
</td>
</tr>
</tbody>
</table>
<br>
<br>
<h2>2. Pretranslated attribute descriptions<br>
</h2>
You can provide translated descriptions for common attributes. This way
the user only specifies the attributes and LAM will show a description
for each language.<br>
<br>
The descriptions are specified with <span style="font-weight: bold;">getListAttributeDescriptions()</span><span
style="font-weight: bold;"></span>.<br>
<br>
<span style="font-weight: bold; text-decoration: underline;">Example:</span><br
style="font-weight: bold; text-decoration: underline;">
<br>
Our <span style="font-style: italic;">smbDomain</span> type has
descriptions for sambaSID and sambaDomainName.<br>
<br>
<table style="width: 100%; text-align: left;" class="mod-code"
border="0" cellpadding="2" cellspacing="2">
<tbody>
<tr>
<td style="vertical-align: top;">&nbsp;&nbsp;&nbsp; /**<br>
&nbsp;&nbsp;&nbsp; * Returns a list of attributes which have a
translated description.<br>
&nbsp;&nbsp;&nbsp; * This is used for the head row in the list view.<br>
&nbsp;&nbsp;&nbsp; *<br>
&nbsp;&nbsp;&nbsp; * @return array list of descriptions<br>
&nbsp;&nbsp;&nbsp; */<br>
&nbsp;&nbsp;&nbsp; <span style="font-weight: bold;">function</span> <span
style="color: rgb(255, 0, 0);">getListAttributeDescriptions()</span> {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; return array(<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; "sambaSID"
=&gt; _("Domain SID"),<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
"sambaDomainName" =&gt; _("Domain name")<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; );<br>
&nbsp;&nbsp;&nbsp; }<br>
</td>
</tr>
</tbody>
</table>
<br>
<br>
<br>
<h2>3. Specifying a custom list view</h2>
The default list view has only very generic labels for the buttons and
navigation bar. So you should at least provide some new labels which
fit to your type.<br>
<br>
The class name of your list view is specified with <span
style="font-weight: bold;">getListClassName()</span><span
style="font-weight: bold;"></span>.<br>
<br>
<span style="font-weight: bold; text-decoration: underline;">Example:</span><br
style="font-weight: bold; text-decoration: underline;">
<br>
Our <span style="font-style: italic;">smbDomain</span> type sets the
list view class to <span style="font-style: italic;">lamSmbDomainList</span>.
The list class is defined in the same file as your type class
(smbDomain.inc in this case).<br>
The labels are set in the constructor. Do not forget to call the parent
constructor first.<br>
<br>
If you want to change more than just the labels, take a look at <span
style="font-weight: bold;">lib/lists.inc</span> and <span
style="font-weight: bold;">lib/types/user.inc</span>. When a list is
displayed then the <span style="font-weight: bold;">showPage()</span>
function is called. You can overwrite this function to display a
completly new list or just one of the other functions.<br>
<br>
<table style="width: 100%; text-align: left;" class="mod-code"
border="0" cellpadding="2" cellspacing="2">
<tbody>
<tr>
<td style="vertical-align: top;">/**<br>
* Returns the class name for the list object.<br>
*<br>
* @return string class name<br>
*/<br>
function <span style="color: rgb(255, 0, 0);">getListClassName()</span>
{<br>
&nbsp;&nbsp;&nbsp; return "lamSmbDomainList";<br>
}<br>
<br>
<br>
/**<br>
&nbsp;* Generates the list view.<br>
&nbsp;*<br>
&nbsp;* @package lists<br>
&nbsp;* @author Roland Gruber<br>
&nbsp;* <br>
&nbsp;*/<br>
class <span style="color: rgb(255, 0, 0);">lamSmbDomainList</span>
extends <span style="font-weight: bold;">lamList</span> {<br>
<br>
&nbsp;&nbsp;&nbsp; /**<br>
&nbsp;&nbsp;&nbsp; &nbsp;* Constructor<br>
&nbsp;&nbsp;&nbsp; &nbsp;*<br>
&nbsp;&nbsp;&nbsp; &nbsp;* @param string $type account type<br>
&nbsp;&nbsp;&nbsp; &nbsp;* @return lamList list object<br>
&nbsp;&nbsp;&nbsp; &nbsp;*/<br>
&nbsp;&nbsp;&nbsp; function lamSmbDomainList($type) {<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; parent::lamList($type);<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $this-&gt;labels = array(<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; 'nav' =&gt;
_("%s domain(s) found"),<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;
'error_noneFound' =&gt; _("No domains found!"),<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; 'newEntry'
=&gt; _("New domain"),<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; 'deleteEntry'
=&gt; _("Delete domain"),<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; 'createPDF'
=&gt; _("Create PDF for selected domain(s)"),<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; 'createPDFAll'
=&gt; _("Create PDF for all domains"));<br>
&nbsp;&nbsp;&nbsp; }<br>
<br>
}<br>
</td>
</tr>
</tbody>
</table>
<br>
<br>
<br>
<br>
<span style="font-weight: bold;"></span>
<h2><span style="font-weight: bold;"></span></h2>
</div>
</div>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,72 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Type HowTo - Default profile</title>
<link rel="stylesheet" type="text/css" href="style/layout.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<div style="text-align: center;">
<h1>Type HowTo - Default profile</h1>
<br>
<div style="text-align: left;"><br>
You have to provide a default profile for your account type. If you do
not want to specify default values then just provide an empty file.<br>
Save your profile as <span style="font-weight: bold;">default.&lt;your
type&gt;</span> in <span style="font-weight: bold;">config/profiles</span>.<br>
<br>
<br>
<span style="font-weight: bold; text-decoration: underline;">Example:</span><br
style="font-weight: bold; text-decoration: underline;">
<br>
The <span style="font-style: italic;">smbDomain</span> type has only
an empty default profile. It is saved as <span
style="font-weight: bold;">config/profiles/default.smbDomain</span>.<br>
</div>
</div>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,189 @@
<!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>Type specification</title>
<style>
<!--
h2 {
color:darkblue;
}
h3 {
color:darkblue;
}
h4 {
color:darkblue;
}
table {
background-color:#bdcaff;
}
-->
</style>
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<h1 style="text-align: center;">This document describes the type
interface for LDAP Account Manager</h1>
<br>
Account types are used to manage a group of accounts by grouping one or
more account modules. Examples for account types are user, group, host
and smbDomain.<br>
<br>
<h2>1. Location and naming of types<br>
</h2>
All LAM types are placed in lib/types/ and are named "&lt;class
name&gt;.inc".<br>
E.g. if you create a new type and its class name is "myUser" then the
filename would be "myUser.inc".<br>
<br>
The class name of a type must contain only a-z, A-Z, 0-9, -, and _.<br>
All type classes should extend the baseType class.<br>
<br>
<h2>2. Functions</h2>
<h3>2.1. getAlias<br>
</h3>
<br>
<table border="0" cellpadding="2" cellspacing="2">
<tbody>
<tr>
<td style="vertical-align: top; text-align: center;"><span
style="font-weight: bold;">function getAlias()</span><br>
</td>
</tr>
</tbody>
</table>
<br>
Returns <span style="font-style: italic;"></span>the alias name for
this type. E.g. the alias for smbDomain is "Samba domains".<br>
<br>
<h3>2.2. getDescription<br>
</h3>
<br>
<table border="0" cellpadding="2" cellspacing="2">
<tbody>
<tr>
<td style="vertical-align: top; text-align: center;"><span
style="font-weight: bold;">function getDescription()</span><br>
</td>
</tr>
</tbody>
</table>
<br>
Returns <span style="font-style: italic;"></span>a description for the
account type. This should be a short sentence describing the account
type.<br>
<br>
<h3>2.3. getListClassName<br>
</h3>
<br>
<table border="0" cellpadding="2" cellspacing="2">
<tbody>
<tr>
<td style="vertical-align: top; text-align: center;"><span
style="font-weight: bold;">function getListClassName()</span><br>
</td>
</tr>
</tbody>
</table>
<br>
Here you can specify your own class to handle the list view. The class
must be a subclass of <span style="font-weight: bold;">lamList</span>.<br>
<br>
<h3>2.4. getDefaultListAttributes<br>
</h3>
<br>
<table border="0" cellpadding="2" cellspacing="2">
<tbody>
<tr>
<td style="vertical-align: top; text-align: center;"><span
style="font-weight: bold;">function getDefaultListAttributes()</span><br>
</td>
</tr>
</tbody>
</table>
<br>
Returns <span style="font-style: italic;"></span>the default setting
for the displayed list attributes. It is used as default for config and
the syntax is equal to the config setting.<br>
<br>
<h3>2.5. getListAttributeDescriptions<br>
</h3>
<br>
<table border="0" cellpadding="2" cellspacing="2">
<tbody>
<tr>
<td style="vertical-align: top; text-align: center;"><span
style="font-weight: bold;">function getListAttributeDescriptions()</span><br>
</td>
</tr>
</tbody>
</table>
<br>
Returns a hash array which contains predefined, translated descriptions
of LDAP attributes.<br>
<br>
<span style="text-decoration: underline; font-weight: bold;"><br>
Example:</span><br
style="text-decoration: underline; font-weight: bold;">
<br>
return array(<br>
&nbsp;&nbsp;&nbsp; "sambaSID" =&gt; _("Domain SID"),<br>
&nbsp;&nbsp;&nbsp; "sambaDomainName" =&gt; _("Domain name")<br>
&nbsp;&nbsp;&nbsp; );<br>
<br>
<br>
<br>
<br>
<br>
<span style="font-weight: bold;"></span><span style="font-weight: bold;"><span
style="font-style: italic;"></span></span><span
style="font-style: italic; font-weight: bold;"></span><span
style="font-style: italic; font-weight: bold;"></span><span
style="font-style: italic; font-weight: bold;"></span>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,147 @@
<!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>File upload</title>
<link rel="stylesheet" type="text/css" href="style/layout.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<h1 style="text-align: center;">File upload<br>
</h1>
<br>
<div style="text-align: center;"><img
style="width: 886px; height: 162px;" alt="upload"
src="images/lam_upload.png"><br>
<div style="text-align: left;"><br>
<h2>Account selection (masscreate.php)<br>
</h2>
This is the initial page of the file upload. The user selects the
account type for the new upload.<br>
<br>
<br>
<h2>Attribute overview (masscreate.php)</h2>
After the account selection LAM will display an overview of the
possible and required input columns.<br>
The <span style="font-style: italic;">DN</span> attributes (<span
style="font-style: italic;">DN suffix</span> and <span
style="font-style: italic;">RDN</span>) are static and are always
displayed. The default suffix is read from config with <span
style="font-weight: bold;">getAccountSuffix()</span> and the list of
RDN possibilities is taken from modules.inc - <span
style="font-weight: bold;">getRDNAttributes()</span>.<br>
The next attributes are read from modules.inc - <span
style="font-weight: bold;">getUploadColumns()</span>. LAM will display
all attributes of one module in a separate fieldset. The <span
style="font-weight: bold;">getUploadColumns()</span> function also
returns if an attribute is required and additional information like an
example value.<br>
<br>
After clicking the upload button the user will be forwarded to the
account building page.<br>
<br>
<br>
<h2>Account building (massBuildAccounts.php)<br>
</h2>
This part takes the submitted <span style="font-weight: bold;">CSV file</span>
and generates the LDAP accounts.<br>
<br>
The scripts separates the head row from the data rows in the CSV file.
The head array is used to find the position of the input values. The
data array contains one subarray for each account.<br>
<br>
After the data has been extracted there are some basic checks done,
e.g. checking required and unique columns. The modules provide the
necessary information for this.<br>
<br>
Then all data is given to the modules with <span
style="font-weight: bold;">buildUploadAccounts()</span> in
modules.inc. They return a list of accounts which can be uploaded with <span
style="font-style: italic;">ldap-add()</span> and generate possible
error messages.<br>
<br>
If the accounts are built the script will give the user the possibility
to check the result with an <span style="font-style: italic;">LDIF-file</span>
or to do the upload.<br>
<br>
<br>
<h2>LDIF export (massBuildAccounts.php)<br>
</h2>
LAM simply takes the built accounts and generates an <span
style="font-style: italic;">LDIF-file</span> from them. This is passed
to the user's browser.<br>
The <span style="font-style: italic;">LDIF-file</span> will only
contain the accounts itself. If modules do additional tasks after the
upload (e.g. adding users to groups) this will not be covered.<br>
<br>
<br>
<h2>Account creation (massDoUpload.php)<br>
</h2>
This script finally uploads the LDAP accounts with <span
style="font-style: italic;">ldap_add()</span>.<br>
<br>
The upload can last longer than the maximum execution time of PHP.
Therefore the script will check regulary how much time is left and
pause the upload. This is resumed with a meta refresh which loads the
script again.<br>
<br>
After all accounts were created in LDAP the modules may do additional
tasks. LAM will call <span style="font-weight: bold;">doUploadPostActions()</span>
and also provide a list of failed accounts which can be ignored. The
function is called as long the returned status is <span
style="font-style: italic;">"inProgress"</span>. The script uses again
a
meta refresh to handle the maximum execution time.<br>
Typical post actions are setting quotas or adding an user to groups.<br>
<br>
A progress bar is shown for the LDAP adding and the module actions to
give the user a hint how long it will still take.<br>
</div>
</div>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

260
lam-web/developers/docs.htm Normal file
View File

@ -0,0 +1,260 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="../style/layout.css">
</head>
<body>
<!-- begin navigation menu -->
<table width="100%" border=0 class="main">
<tr>
<td class="menu" width=180>
<script type="text/javascript" language="javascript">
<!--
// mouseOver function
function list_over(list) {
list.setAttribute('class','nav-over', 0);
}
// mouseOut function
function list_out(list) {
list.setAttribute('class','nav', 0);
}
//-->
</script>
<center><a href="http://lam.sourceforge.net/index.htm"><img
alt="LDAP Account Manager" src="http://lam.sourceforge.net/images/lam_logo.jpg"
style="border: 0px solid;"></a></center>
<p></p>
<table class="nav" border="1" cellspacing="0" width="95%">
<tbody>
<tr>
<th class="nav" colspan="2" align="left" valign="center"
width="100%">General Infos</th>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/index.htm'" class="nav">- <a
class="nav" href="http://lam.sourceforge.net/index.htm">Home</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/news/index.htm'" class="nav">-
<a class="nav" href="http://lam.sourceforge.net/news/index.htm">News</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/screenshots/index.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/screenshots/index.htm"
>Screenshots</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/documentation/index.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/documentation/index.htm"
>Documentation</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/changelog/index.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/changelog/index.htm"
>Changelog</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/todo/index.htm'" class="nav">-
<a class="nav" href="http://lam.sourceforge.net/todo/index.htm">ToDo</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/sponsors/donations.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/sponsors/donations.htm">Donations</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/sponsors/index.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/sponsors/index.htm">Sponsors</a></td>
</tr>
</tbody>
</table>
<p> </p>
<table class="nav" border="1" cellspacing="0" width="95%">
<tbody>
<tr>
<th class="nav" colspan="2" align="left" valign="center"
width="100%">Download</th>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/download/index.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/download/index.htm">Releases</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/download/rpm.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/download/rpm.htm">RPM packages</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/apt-get/index.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/apt-get/index.htm">Debian
packages</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/freebsd/index.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/freebsd/index.htm">FreeBSD
port</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/cvs-access/index.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/cvs-access/index.htm"
>CVS access</a></td>
</tr>
</tbody>
</table>
<p> </p>
<table class="nav" border="1" cellspacing="0" width="95%">
<tbody>
<tr>
<th class="nav" colspan="2" align="left" valign="center"
width="100%">Developers</th>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/developers/docs.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/developers/docs.htm">Documentation</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/i18n/index.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/i18n/index.htm">Translations</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="window.open('http://www.sourceforge.net/projects/lam', '_blank')"
class="nav">- <a class="nav"
href="http://www.sourceforge.net/projects/lam" target="_blank">LAM at
SourceForge</a></td>
</tr>
</tbody>
</table>
<p> </p>
<table class="nav" border="1" cellspacing="0" width="95%">
<tbody>
<tr>
<th class="nav" colspan="2" align="left" valign="center"
width="100%">Specials</th>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/live-demo/index.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/live-demo/index.htm"
>LAM-Live-Demo</a></td>
</tr>
</tbody>
</table>
<p> </p>
<table class="nav" border="1" cellspacing="0" width="95%">
<tbody>
<tr>
<th class="nav" colspan="2" align="left" valign="center"
width="100%">Communication</th>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="window.open('http://sourceforge.net/tracker/?group_id=73243', '_blank')"
class="nav">- <a class="nav"
href="http://sourceforge.net/tracker/?group_id=73243" target="_blank">Trackers</a></td>
</tr>
<tr>
<td onmouseover="list_over(this)" onmouseout="list_out(this)"
onclick="parent.location.href='http://lam.sourceforge.net/mailinglists/index.htm'"
class="nav">- <a class="nav" href="http://lam.sourceforge.net/mailinglists/index.htm"
>Mailing lists</a></td>
</tr>
</tbody>
</table>
<p><br>
<br>
</p>
<center>
<a href="http://sourceforge.net"><img src="http://sflogo.sourceforge.net/sflogo.php?group_id=73243&amp;type=1" width="88" height="31" border="0" alt="SourceForge.net Logo" /></a>
</center>
</td>
<td width=20>&nbsp;</td>
<!-- end navigation menu -->
<td class="mainarea">
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<h1>Developer documentation</h1>
<br>
<h2><a href="devel/index.htm" target="_blank">Code overview</a></h2>
<p>These pages describe the architecture of LAM and how the different parts work together.</p>
<br>
<h2><a href="devel/modules-specification.htm" target="_blank">Specification for account modules</a></h2>
<p>The interface definition of the account modules.</p>
<br>
<h2><a href="devel/mod_index.htm" target="_blank">HowTo for writing account modules</a></h2>
<p>A step-by-step HowTo for writing your own account modules.</p>
<br>
<h2><a href="devel/FAQ.htm" target="_blank">FAQ</a></h2>
<p>Answers to the most important questions.</p>
<br>
<h2><a href="phpdoc/index.html" target="_blank">Function and class reference (PHPDoc)</a></h2>
<p>All classes and functions have PHPDoc comments. Here you find descriptions for each class and function including their parameters.</p>
<br>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</td></tr></table>
</body>
</html>

View File

@ -0,0 +1,142 @@
<html>
<head>
<title>Docs for page help.inc</title>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">Help</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_Help.html" class="menu">class tree: Help</a> ]
[ <a href="../elementindex_Help.html" class="menu">index: Help</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<div id="ric">
<p><a href="../ric_README.html">README</a></p>
<p><a href="../ric_INSTALL.html">INSTALL</a></p>
</div>
<div id="todolist">
<p><a href="../todolist.html">Todo List</a></p>
</div>
<b>Packages:</b><br />
<a href="../li_configuration.html">configuration</a><br />
<a href="../li_Help.html">Help</a><br />
<a href="../li_LDAP.html">LDAP</a><br />
<a href="../li_lib.html">lib</a><br />
<a href="../li_lists.html">lists</a><br />
<a href="../li_main.html">main</a><br />
<a href="../li_modules.html">modules</a><br />
<a href="../li_PDF.html">PDF</a><br />
<a href="../li_profiles.html">profiles</a><br />
<a href="../li_tests.html">tests</a><br />
<a href="../li_tools.html">tools</a><br />
<a href="../li_types.html">types</a><br />
<br /><br />
<b>Files:</b><br />
<div class="package">
<a href="../Help/_help_help_inc.html"> help.inc
</a><br>
<a href="../Help/_templates_help_php.html"> help.php
</a><br>
</div><br />
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
<h1>Procedural File: help.inc</h1>
Source Location: /help/help.inc<br /><br />
<br>
<br>
<h2>Page Details:</h2>
LDAP Account Manager help entries.<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>license:</b>&nbsp;&nbsp;</td><td>GPL</td>
</tr>
<tr>
<td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (C) 2003-2004 Michael Dürgner</td>
</tr>
<tr>
<td><b>author:</b>&nbsp;&nbsp;</td><td>Michael Dürgner</td>
</tr>
</table>
</div>
<br /><br />
<br /><br />
<br /><br />
<br />
<div class="credit">
<hr />
Documentation generated on Tue, 07 Feb 2006 17:03:43 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.2.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,214 @@
<html>
<head>
<title>Docs for page help.php</title>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">Help</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_Help.html" class="menu">class tree: Help</a> ]
[ <a href="../elementindex_Help.html" class="menu">index: Help</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<div id="ric">
<p><a href="../ric_README.html">README</a></p>
<p><a href="../ric_INSTALL.html">INSTALL</a></p>
</div>
<div id="todolist">
<p><a href="../todolist.html">Todo List</a></p>
</div>
<b>Packages:</b><br />
<a href="../li_configuration.html">configuration</a><br />
<a href="../li_Help.html">Help</a><br />
<a href="../li_LDAP.html">LDAP</a><br />
<a href="../li_lib.html">lib</a><br />
<a href="../li_lists.html">lists</a><br />
<a href="../li_main.html">main</a><br />
<a href="../li_modules.html">modules</a><br />
<a href="../li_PDF.html">PDF</a><br />
<a href="../li_profiles.html">profiles</a><br />
<a href="../li_tests.html">tests</a><br />
<a href="../li_tools.html">tools</a><br />
<a href="../li_types.html">types</a><br />
<br /><br />
<b>Files:</b><br />
<div class="package">
<a href="../Help/_help_help_inc.html"> help.inc
</a><br>
<a href="../Help/_templates_help_php.html"> help.php
</a><br>
</div><br />
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
<h1>Procedural File: help.php</h1>
Source Location: /templates/help.php<br /><br />
<br>
<br>
<h2>Page Details:</h2>
LDAP Account Manager help page.<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>license:</b>&nbsp;&nbsp;</td><td>GPL</td>
</tr>
<tr>
<td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (C) 2003-2004 Michael Dürgner</td>
</tr>
<tr>
<td><b>version:</b>&nbsp;&nbsp;</td><td>0.5</td>
</tr>
<tr>
<td><b>author:</b>&nbsp;&nbsp;</td><td>Michael Dürgner</td>
</tr>
</table>
</div>
<br /><br />
<h4>Includes:</h4>
<div class="tags">
include_once(<a href="../LDAP/_lib_ldap_inc.html">"../lib/ldap.inc"</a>) [line 39]<br />
include_once(<a href="../lib/_lib_status_inc.html">"../lib/status.inc"</a>) [line 52]<br />
include_once(<a href="../modules/_lib_modules_inc.html">"../lib/modules.inc"</a>) [line 134]<br />
include_once(<a href="../Help/_help_help_inc.html">"../help/help.inc"</a>) [line 57]<br />
include_once(<a href="../configuration/_lib_config_inc.html">"../lib/config.inc"</a>) [line 44]<br />
</div>
<br /><br />
<br /><br />
<br />
<hr />
<a name="functiondisplayHelp"></a>
<h3>displayHelp <span class="smalllinenumber">[line 93]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>void displayHelp(
array $helpEntry, array $helpVariables)</code>
</td></tr></table>
</td></tr></table><br />
Print help site for a specific help number.<br /><br /> <br /><br />
<h4>Parameters</h4>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">array&nbsp;&nbsp;</td>
<td><b>$helpEntry</b>&nbsp;&nbsp;</td>
<td>The help entry that is to be displayed.</td>
</tr>
<tr>
<td class="type">array&nbsp;&nbsp;</td>
<td><b>$helpVariables</b>&nbsp;&nbsp;</td>
<td>The help variables that are used to replace the spacer in the help text.</td>
</tr>
</table>
<div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
</div>
<hr />
<a name="functionechoHTMLFoot"></a>
<h3>echoHTMLFoot <span class="smalllinenumber">[line 79]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>void echoHTMLFoot(
)</code>
</td></tr></table>
</td></tr></table><br />
Print HTML footer of the help page.<br /><br /> <br /><br />
<div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
</div>
<hr />
<a name="functionechoHTMLHead"></a>
<h3>echoHTMLHead <span class="smalllinenumber">[line 65]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>void echoHTMLHead(
)</code>
</td></tr></table>
</td></tr></table><br />
Print HTML header of the help page.<br /><br /> <br /><br />
<div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
</div>
<div class="credit">
<hr />
Documentation generated on Tue, 07 Feb 2006 17:03:43 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.2.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,814 @@
<html>
<head>
<title>Docs For Class Ldap</title>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">LDAP</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_LDAP.html" class="menu">class tree: LDAP</a> ]
[ <a href="../elementindex_LDAP.html" class="menu">index: LDAP</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<div id="ric">
<p><a href="../ric_README.html">README</a></p>
<p><a href="../ric_INSTALL.html">INSTALL</a></p>
</div>
<div id="todolist">
<p><a href="../todolist.html">Todo List</a></p>
</div>
<b>Packages:</b><br />
<a href="../li_configuration.html">configuration</a><br />
<a href="../li_Help.html">Help</a><br />
<a href="../li_LDAP.html">LDAP</a><br />
<a href="../li_lib.html">lib</a><br />
<a href="../li_lists.html">lists</a><br />
<a href="../li_main.html">main</a><br />
<a href="../li_modules.html">modules</a><br />
<a href="../li_PDF.html">PDF</a><br />
<a href="../li_profiles.html">profiles</a><br />
<a href="../li_tests.html">tests</a><br />
<a href="../li_tools.html">tools</a><br />
<a href="../li_types.html">types</a><br />
<br /><br />
<b>Files:</b><br />
<div class="package">
<a href="../LDAP/_lib_ldap_inc.html"> ldap.inc
</a><br>
</div><br />
<b>Classes:</b><br />
<div class="package">
<a href="../LDAP/Ldap.html">Ldap</a><br />
</div>
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
<h1>Class: Ldap</h1>
Source Location: /lib/ldap.inc<br /><br />
<table width="100%" border="0">
<tr><td valign="top">
<h3><a href="#class_details">Class Overview</a></h3>
<pre></pre><br />
<div class="description">Ldap manages connection to LDAP and includes several helper functions.</div><br /><br />
</td>
<td valign="top">
<h3><a href="#class_vars">Variables</a></h3>
<ul>
<li><a href="../LDAP/Ldap.html#var$attributes">$attributes</a></li>
<li><a href="../LDAP/Ldap.html#var$conf">$conf</a></li>
<li><a href="../LDAP/Ldap.html#var$objectClasses">$objectClasses</a></li>
<li><a href="../LDAP/Ldap.html#var$password">$password</a></li>
<li><a href="../LDAP/Ldap.html#var$rand">$rand</a></li>
<li><a href="../LDAP/Ldap.html#var$server">$server</a></li>
<li><a href="../LDAP/Ldap.html#var$supports_samba2_schema">$supports_samba2_schema</a></li>
<li><a href="../LDAP/Ldap.html#var$supports_samba3_schema">$supports_samba3_schema</a></li>
<li><a href="../LDAP/Ldap.html#var$supports_unix_hosts">$supports_unix_hosts</a></li>
<li><a href="../LDAP/Ldap.html#var$username">$username</a></li>
</ul>
</td>
<td valign="top">
<h3><a href="#class_methods">Methods</a></h3>
<ul>
<li><a href="../LDAP/Ldap.html#methodLdap">Ldap</a></li>
<li><a href="../LDAP/Ldap.html#methodclose">close</a></li>
<li><a href="../LDAP/Ldap.html#methodcmp_array">cmp_array</a></li>
<li><a href="../LDAP/Ldap.html#methodconnect">connect</a></li>
<li><a href="../LDAP/Ldap.html#methoddecrypt">decrypt</a></li>
<li><a href="../LDAP/Ldap.html#methoddecrypt_login">decrypt_login</a></li>
<li><a href="../LDAP/Ldap.html#methoddestroy">destroy</a></li>
<li><a href="../LDAP/Ldap.html#methodencrypt">encrypt</a></li>
<li><a href="../LDAP/Ldap.html#methodencrypt_login">encrypt_login</a></li>
<li><a href="../LDAP/Ldap.html#methodnew_rand">new_rand</a></li>
<li><a href="../LDAP/Ldap.html#methodsearch_units">search_units</a></li>
<li><a href="../LDAP/Ldap.html#methodserver">server</a></li>
<li><a href="../LDAP/Ldap.html#methodupdateCapabilities">updateCapabilities</a></li>
<li><a href="../LDAP/Ldap.html#methodupdateClasses">updateClasses</a></li>
<li><a href="../LDAP/Ldap.html#method__sleep">__sleep</a></li>
<li><a href="../LDAP/Ldap.html#method__wakeup">__wakeup</a></li>
</ul>
</td>
</tr></table>
<hr />
<table width="100%" border="0"><tr>
</tr></table>
<hr />
<a name="class_details"></a>
<h3>Class Details</h3>
<div class="tags">
[line 52]<br />
Ldap manages connection to LDAP and includes several helper functions.<br /><br /></div><br /><br />
<div class="top">[ <a href="#top">Top</a> ]</div><br />
<hr />
<a name="class_vars"></a>
<h3>Class Variables</h3>
<div class="tags">
<a name="var$attributes"></a>
<p></p>
<h4>$attributes = <span class="value"></span></h4>
<p>[line 68]</p>
Array with all attribute strings from the LDAP server<br /><br />
<br />
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>Type:</b>&nbsp;&nbsp;</td>
<td>mixed</td>
</tr>
</table>
</div><br /><br />
<div class="top">[ <a href="#top">Top</a> ]</div><br />
<a name="var$conf"></a>
<p></p>
<h4>$conf = <span class="value"></span></h4>
<p>[line 55]</p>
Object of Config to access preferences<br /><br />
<br />
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>Type:</b>&nbsp;&nbsp;</td>
<td>mixed</td>
</tr>
</table>
</div><br /><br />
<div class="top">[ <a href="#top">Top</a> ]</div><br />
<a name="var$objectClasses"></a>
<p></p>
<h4>$objectClasses = <span class="value"></span></h4>
<p>[line 66]</p>
Array with all objectClass strings from the LDAP server<br /><br />
<br />
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>Type:</b>&nbsp;&nbsp;</td>
<td>mixed</td>
</tr>
</table>
</div><br /><br />
<div class="top">[ <a href="#top">Top</a> ]</div><br />
<a name="var$password"></a>
<p></p>
<h4>$password = <span class="value"></span></h4>
<p>[line 63]</p>
LDAP password used for bind<br /><br />
<br />
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>Type:</b>&nbsp;&nbsp;</td>
<td>mixed</td>
</tr>
</table>
</div><br /><br />
<div class="top">[ <a href="#top">Top</a> ]</div><br />
<a name="var$rand"></a>
<p></p>
<h4>$rand = <span class="value"></span></h4>
<p>[line 79]</p>
Random number (changes on every page request)<br /><br />
<br />
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>Type:</b>&nbsp;&nbsp;</td>
<td>mixed</td>
</tr>
</table>
</div><br /><br />
<div class="top">[ <a href="#top">Top</a> ]</div><br />
<a name="var$server"></a>
<p></p>
<h4>$server = <span class="value"></span></h4>
<p>[line 58]</p>
Server handle<br /><br />
<br />
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>Type:</b>&nbsp;&nbsp;</td>
<td>mixed</td>
</tr>
</table>
</div><br /><br />
<div class="top">[ <a href="#top">Top</a> ]</div><br />
<a name="var$supports_samba2_schema"></a>
<p></p>
<h4>$supports_samba2_schema = <span class="value">&nbsp;false</span></h4>
<p>[line 74]</p>
ObjectClass sambaAccount<br /><br />
<br />
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>Type:</b>&nbsp;&nbsp;</td>
<td>mixed</td>
</tr>
</table>
</div><br /><br />
<div class="top">[ <a href="#top">Top</a> ]</div><br />
<a name="var$supports_samba3_schema"></a>
<p></p>
<h4>$supports_samba3_schema = <span class="value">&nbsp;false</span></h4>
<p>[line 76]</p>
ObjectClass sambaSamAccount<br /><br />
<br />
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>Type:</b>&nbsp;&nbsp;</td>
<td>mixed</td>
</tr>
</table>
</div><br /><br />
<div class="top">[ <a href="#top">Top</a> ]</div><br />
<a name="var$supports_unix_hosts"></a>
<p></p>
<h4>$supports_unix_hosts = <span class="value">&nbsp;false</span></h4>
<p>[line 72]</p>
Host attribute in inetOrgPerson<br /><br />
<br />
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>Type:</b>&nbsp;&nbsp;</td>
<td>mixed</td>
</tr>
</table>
</div><br /><br />
<div class="top">[ <a href="#top">Top</a> ]</div><br />
<a name="var$username"></a>
<p></p>
<h4>$username = <span class="value"></span></h4>
<p>[line 61]</p>
LDAP username used for bind<br /><br />
<br />
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>Type:</b>&nbsp;&nbsp;</td>
<td>mixed</td>
</tr>
</table>
</div><br /><br />
<div class="top">[ <a href="#top">Top</a> ]</div><br />
</div><br />
<hr />
<a name="class_methods"></a>
<h3>Class Methods</h3>
<div class="tags">
<hr />
<a name="methodLdap"></a>
<h3>constructor Ldap <span class="smalllinenumber">[line 84]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>Ldap Ldap(
object
$config)</code>
</td></tr></table>
</td></tr></table><br />
<br /><br />
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">object&nbsp;&nbsp;</td>
<td><b>$config</b>&nbsp;&nbsp;</td>
<td>an object of class Config</td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodclose"></a>
<h3>method close <span class="smalllinenumber">[line 146]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>void close(
)</code>
</td></tr></table>
</td></tr></table><br />
Closes connection to server<br /><br /><br /><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodcmp_array"></a>
<h3>method cmp_array <span class="smalllinenumber">[line 434]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>integer cmp_array(
string
$a, string
$b)</code>
</td></tr></table>
</td></tr></table><br />
Helper function to sort the unit DNs<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>return:</b>&nbsp;&nbsp;</td><td>0 if equal, 1 if $a is greater, -1 if $b is greater</td>
</tr>
</table>
</div>
<br /><br />
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">string&nbsp;&nbsp;</td>
<td><b>$a</b>&nbsp;&nbsp;</td>
<td>first argument to compare</td>
</tr>
<tr>
<td class="type">string&nbsp;&nbsp;</td>
<td><b>$b</b>&nbsp;&nbsp;</td>
<td>second argument to compare</td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodconnect"></a>
<h3>method connect <span class="smalllinenumber">[line 100]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>mixed connect(
string
$user, string
$passwd)</code>
</td></tr></table>
</td></tr></table><br />
Connects to the server using the given username and password<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>return:</b>&nbsp;&nbsp;</td><td>if connect succeeds the server handle is returned, else false</td>
</tr>
</table>
</div>
<br /><br />
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">string&nbsp;&nbsp;</td>
<td><b>$user</b>&nbsp;&nbsp;</td>
<td>user name</td>
</tr>
<tr>
<td class="type">string&nbsp;&nbsp;</td>
<td><b>$passwd</b>&nbsp;&nbsp;</td>
<td>password</td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methoddecrypt"></a>
<h3>method decrypt <span class="smalllinenumber">[line 377]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>string decrypt(
object
$data)</code>
</td></tr></table>
</td></tr></table><br />
Decrypts a string<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>return:</b>&nbsp;&nbsp;</td><td>decrypted string</td>
</tr>
</table>
</div>
<br /><br />
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">object&nbsp;&nbsp;</td>
<td><b>$data</b>&nbsp;&nbsp;</td>
<td>string to decrypt</td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methoddecrypt_login"></a>
<h3>method decrypt_login <span class="smalllinenumber">[line 411]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>array decrypt_login(
)</code>
</td></tr></table>
</td></tr></table><br />
Decrypts username and password<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>return:</b>&nbsp;&nbsp;</td><td>array(user name, password)</td>
</tr>
</table>
</div>
<br /><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methoddestroy"></a>
<h3>method destroy <span class="smalllinenumber">[line 420]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>void destroy(
)</code>
</td></tr></table>
</td></tr></table><br />
Closes connection to LDAP server and deletes encrypted username/password<br /><br /><br /><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodencrypt"></a>
<h3>method encrypt <span class="smalllinenumber">[line 356]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>object encrypted encrypt(
string
$data)</code>
</td></tr></table>
</td></tr></table><br />
Encrypts a string<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>return:</b>&nbsp;&nbsp;</td><td>string</td>
</tr>
</table>
</div>
<br /><br />
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">string&nbsp;&nbsp;</td>
<td><b>$data</b>&nbsp;&nbsp;</td>
<td>string to encrypt</td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodencrypt_login"></a>
<h3>method encrypt_login <span class="smalllinenumber">[line 400]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>void encrypt_login(
string
$username, string
$password)</code>
</td></tr></table>
</td></tr></table><br />
Encrypts username and password<br /><br /><br /><br />
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">string&nbsp;&nbsp;</td>
<td><b>$username</b>&nbsp;&nbsp;</td>
<td>LDAP user name</td>
</tr>
<tr>
<td class="type">string&nbsp;&nbsp;</td>
<td><b>$password</b>&nbsp;&nbsp;</td>
<td>LDAP password</td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodnew_rand"></a>
<h3>method new_rand <span class="smalllinenumber">[line 342]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>int new_rand(
)</code>
</td></tr></table>
</td></tr></table><br />
Calculates a new value for rand<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>return:</b>&nbsp;&nbsp;</td><td>New random value</td>
</tr>
</table>
</div>
<br /><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodsearch_units"></a>
<h3>method search_units <span class="smalllinenumber">[line 156]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>array search_units(
string
$suffix)</code>
</td></tr></table>
</td></tr></table><br />
Returns an array with all organizational units under the given suffix<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>return:</b>&nbsp;&nbsp;</td><td>DNs of organizational units</td>
</tr>
</table>
</div>
<br /><br />
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">string&nbsp;&nbsp;</td>
<td><b>$suffix</b>&nbsp;&nbsp;</td>
<td>search suffix</td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodserver"></a>
<h3>method server <span class="smalllinenumber">[line 301]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>object connection server(
)</code>
</td></tr></table>
</td></tr></table><br />
Returns the LDAP connection handle<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>return:</b>&nbsp;&nbsp;</td><td>handle</td>
</tr>
</table>
</div>
<br /><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodupdateCapabilities"></a>
<h3>method updateCapabilities <span class="smalllinenumber">[line 286]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>void updateCapabilities(
)</code>
</td></tr></table>
</td></tr></table><br />
Updates the capabilities values (var $supports_*)<br /><br /><br /><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodupdateClasses"></a>
<h3>method updateClasses <span class="smalllinenumber">[line 183]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>void updateClasses(
)</code>
</td></tr></table>
</td></tr></table><br />
Reads the array of objectClasses from the LDAP server<br /><br /><br /><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="method__sleep"></a>
<h3>method __sleep <span class="smalllinenumber">[line 306]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>void __sleep(
)</code>
</td></tr></table>
</td></tr></table><br />
Closes connection to LDAP server before serialization<br /><br /><br /><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="method__wakeup"></a>
<h3>method __wakeup <span class="smalllinenumber">[line 314]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>void __wakeup(
)</code>
</td></tr></table>
</td></tr></table><br />
Reconnects to LDAP server when deserialized<br /><br /><br /><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
</div><br />
<div class="credit">
<hr />
Documentation generated on Tue, 07 Feb 2006 17:03:46 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.2.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,181 @@
<html>
<head>
<title>Docs for page ldap.inc</title>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">LDAP</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_LDAP.html" class="menu">class tree: LDAP</a> ]
[ <a href="../elementindex_LDAP.html" class="menu">index: LDAP</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<div id="ric">
<p><a href="../ric_README.html">README</a></p>
<p><a href="../ric_INSTALL.html">INSTALL</a></p>
</div>
<div id="todolist">
<p><a href="../todolist.html">Todo List</a></p>
</div>
<b>Packages:</b><br />
<a href="../li_configuration.html">configuration</a><br />
<a href="../li_Help.html">Help</a><br />
<a href="../li_LDAP.html">LDAP</a><br />
<a href="../li_lib.html">lib</a><br />
<a href="../li_lists.html">lists</a><br />
<a href="../li_main.html">main</a><br />
<a href="../li_modules.html">modules</a><br />
<a href="../li_PDF.html">PDF</a><br />
<a href="../li_profiles.html">profiles</a><br />
<a href="../li_tests.html">tests</a><br />
<a href="../li_tools.html">tools</a><br />
<a href="../li_types.html">types</a><br />
<br /><br />
<b>Files:</b><br />
<div class="package">
<a href="../LDAP/_lib_ldap_inc.html"> ldap.inc
</a><br>
</div><br />
<b>Classes:</b><br />
<div class="package">
<a href="../LDAP/Ldap.html">Ldap</a><br />
</div>
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
<h1>Procedural File: ldap.inc</h1>
Source Location: /lib/ldap.inc<br /><br />
<br>
<br>
<div class="contents">
<h2>Classes:</h2>
<dt><a href="../LDAP/Ldap.html">Ldap</a></dt>
<dd>Ldap manages connection to LDAP and includes several helper functions.</dd>
</div><br /><br />
<h2>Page Details:</h2>
ldap.inc provides basic functions to connect to the OpenLDAP server.<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>author:</b>&nbsp;&nbsp;</td><td>Roland Gruber</td>
</tr>
</table>
</div>
<br /><br />
<h4>Includes:</h4>
<div class="tags">
include_once(<a href="../configuration/_lib_config_inc.html">"config.inc"</a>) [line 32]<br />
Access to configuration data<br /><br />include_once(<a href="../lib/_lib_schema_inc.html">"schema.inc"</a>) [line 34]<br />
LDAP schema<br /><br /></div>
<br /><br />
<br /><br />
<br />
<hr />
<a name="functionhex2bin"></a>
<h3>hex2bin <span class="smalllinenumber">[line 42]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>binary hex2bin(
string $value)</code>
</td></tr></table>
</td></tr></table><br />
Converts a HEX string to a binary value<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>return:</b>&nbsp;&nbsp;</td><td>result binary</td>
</tr>
</table>
</div>
<br /><br />
<h4>Parameters</h4>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">string&nbsp;&nbsp;</td>
<td><b>$value</b>&nbsp;&nbsp;</td>
<td>HEX string</td>
</tr>
</table>
<div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
</div>
<div class="credit">
<hr />
Documentation generated on Tue, 07 Feb 2006 17:03:46 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.2.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,163 @@
<html>
<head>
<title>Docs for page vera.php</title>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">PDF</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_PDF.html" class="menu">class tree: PDF</a> ]
[ <a href="../elementindex_PDF.html" class="menu">index: PDF</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<div id="ric">
<p><a href="../ric_README.html">README</a></p>
<p><a href="../ric_INSTALL.html">INSTALL</a></p>
</div>
<div id="todolist">
<p><a href="../todolist.html">Todo List</a></p>
</div>
<b>Packages:</b><br />
<a href="../li_configuration.html">configuration</a><br />
<a href="../li_Help.html">Help</a><br />
<a href="../li_LDAP.html">LDAP</a><br />
<a href="../li_lib.html">lib</a><br />
<a href="../li_lists.html">lists</a><br />
<a href="../li_main.html">main</a><br />
<a href="../li_modules.html">modules</a><br />
<a href="../li_PDF.html">PDF</a><br />
<a href="../li_profiles.html">profiles</a><br />
<a href="../li_tests.html">tests</a><br />
<a href="../li_tools.html">tools</a><br />
<a href="../li_types.html">types</a><br />
<br /><br />
<b>Files:</b><br />
<div class="package">
<a href="../PDF/_lib_fpdf_php.html"> fpdf.php
</a><br>
<a href="../PDF/_lib_pdf_inc.html"> pdf.inc
</a><br>
<a href="../PDF/_templates_pdfedit_pdfdelete_php.html"> pdfdelete.php
</a><br>
<a href="../PDF/_templates_pdfedit_pdfmain_php.html"> pdfmain.php
</a><br>
<a href="../PDF/_templates_pdfedit_pdfpage_php.html"> pdfpage.php
</a><br>
<a href="../PDF/_lib_pdfstruct_inc.html"> pdfstruct.inc
</a><br>
<a href="../PDF/_lib_ufpdf_php.html"> ufpdf.php
</a><br>
<a href="../PDF/_lib_font_vera_php.html"> vera.php
</a><br>
<a href="../PDF/_lib_font_verab_php.html"> verab.php
</a><br>
<a href="../PDF/_lib_font_verabi_php.html"> verabi.php
</a><br>
<a href="../PDF/_lib_font_verai_php.html"> verai.php
</a><br>
<a href="../PDF/_lib_xml_parser_inc.html"> xml_parser.inc
</a><br>
</div><br />
<b>Classes:</b><br />
<div class="package">
<a href="../PDF/FPDF.html">FPDF</a><br />
<a href="../PDF/lamPDF.html">lamPDF</a><br />
<a href="../PDF/UFPDF.html">UFPDF</a><br />
<a href="../PDF/xmlParser.html">xmlParser</a><br />
</div>
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
<h1>Procedural File: vera.php</h1>
Source Location: /lib/font/vera.php<br /><br />
<br>
<br>
<h2>Page Details:</h2>
This file includes information about the Bitstream Vera font.<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>author:</b>&nbsp;&nbsp;</td><td>Roland Gruber</td>
</tr>
</table>
</div>
<br /><br />
<br /><br />
<br /><br />
<br />
<div class="credit">
<hr />
Documentation generated on Tue, 07 Feb 2006 17:04:05 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.2.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,163 @@
<html>
<head>
<title>Docs for page verab.php</title>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">PDF</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_PDF.html" class="menu">class tree: PDF</a> ]
[ <a href="../elementindex_PDF.html" class="menu">index: PDF</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<div id="ric">
<p><a href="../ric_README.html">README</a></p>
<p><a href="../ric_INSTALL.html">INSTALL</a></p>
</div>
<div id="todolist">
<p><a href="../todolist.html">Todo List</a></p>
</div>
<b>Packages:</b><br />
<a href="../li_configuration.html">configuration</a><br />
<a href="../li_Help.html">Help</a><br />
<a href="../li_LDAP.html">LDAP</a><br />
<a href="../li_lib.html">lib</a><br />
<a href="../li_lists.html">lists</a><br />
<a href="../li_main.html">main</a><br />
<a href="../li_modules.html">modules</a><br />
<a href="../li_PDF.html">PDF</a><br />
<a href="../li_profiles.html">profiles</a><br />
<a href="../li_tests.html">tests</a><br />
<a href="../li_tools.html">tools</a><br />
<a href="../li_types.html">types</a><br />
<br /><br />
<b>Files:</b><br />
<div class="package">
<a href="../PDF/_lib_fpdf_php.html"> fpdf.php
</a><br>
<a href="../PDF/_lib_pdf_inc.html"> pdf.inc
</a><br>
<a href="../PDF/_templates_pdfedit_pdfdelete_php.html"> pdfdelete.php
</a><br>
<a href="../PDF/_templates_pdfedit_pdfmain_php.html"> pdfmain.php
</a><br>
<a href="../PDF/_templates_pdfedit_pdfpage_php.html"> pdfpage.php
</a><br>
<a href="../PDF/_lib_pdfstruct_inc.html"> pdfstruct.inc
</a><br>
<a href="../PDF/_lib_ufpdf_php.html"> ufpdf.php
</a><br>
<a href="../PDF/_lib_font_vera_php.html"> vera.php
</a><br>
<a href="../PDF/_lib_font_verab_php.html"> verab.php
</a><br>
<a href="../PDF/_lib_font_verabi_php.html"> verabi.php
</a><br>
<a href="../PDF/_lib_font_verai_php.html"> verai.php
</a><br>
<a href="../PDF/_lib_xml_parser_inc.html"> xml_parser.inc
</a><br>
</div><br />
<b>Classes:</b><br />
<div class="package">
<a href="../PDF/FPDF.html">FPDF</a><br />
<a href="../PDF/lamPDF.html">lamPDF</a><br />
<a href="../PDF/UFPDF.html">UFPDF</a><br />
<a href="../PDF/xmlParser.html">xmlParser</a><br />
</div>
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
<h1>Procedural File: verab.php</h1>
Source Location: /lib/font/verab.php<br /><br />
<br>
<br>
<h2>Page Details:</h2>
This file includes information about the Bitstream Vera font.<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>author:</b>&nbsp;&nbsp;</td><td>Roland Gruber</td>
</tr>
</table>
</div>
<br /><br />
<br /><br />
<br /><br />
<br />
<div class="credit">
<hr />
Documentation generated on Tue, 07 Feb 2006 17:04:05 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.2.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,163 @@
<html>
<head>
<title>Docs for page verabi.php</title>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">PDF</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_PDF.html" class="menu">class tree: PDF</a> ]
[ <a href="../elementindex_PDF.html" class="menu">index: PDF</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<div id="ric">
<p><a href="../ric_README.html">README</a></p>
<p><a href="../ric_INSTALL.html">INSTALL</a></p>
</div>
<div id="todolist">
<p><a href="../todolist.html">Todo List</a></p>
</div>
<b>Packages:</b><br />
<a href="../li_configuration.html">configuration</a><br />
<a href="../li_Help.html">Help</a><br />
<a href="../li_LDAP.html">LDAP</a><br />
<a href="../li_lib.html">lib</a><br />
<a href="../li_lists.html">lists</a><br />
<a href="../li_main.html">main</a><br />
<a href="../li_modules.html">modules</a><br />
<a href="../li_PDF.html">PDF</a><br />
<a href="../li_profiles.html">profiles</a><br />
<a href="../li_tests.html">tests</a><br />
<a href="../li_tools.html">tools</a><br />
<a href="../li_types.html">types</a><br />
<br /><br />
<b>Files:</b><br />
<div class="package">
<a href="../PDF/_lib_fpdf_php.html"> fpdf.php
</a><br>
<a href="../PDF/_lib_pdf_inc.html"> pdf.inc
</a><br>
<a href="../PDF/_templates_pdfedit_pdfdelete_php.html"> pdfdelete.php
</a><br>
<a href="../PDF/_templates_pdfedit_pdfmain_php.html"> pdfmain.php
</a><br>
<a href="../PDF/_templates_pdfedit_pdfpage_php.html"> pdfpage.php
</a><br>
<a href="../PDF/_lib_pdfstruct_inc.html"> pdfstruct.inc
</a><br>
<a href="../PDF/_lib_ufpdf_php.html"> ufpdf.php
</a><br>
<a href="../PDF/_lib_font_vera_php.html"> vera.php
</a><br>
<a href="../PDF/_lib_font_verab_php.html"> verab.php
</a><br>
<a href="../PDF/_lib_font_verabi_php.html"> verabi.php
</a><br>
<a href="../PDF/_lib_font_verai_php.html"> verai.php
</a><br>
<a href="../PDF/_lib_xml_parser_inc.html"> xml_parser.inc
</a><br>
</div><br />
<b>Classes:</b><br />
<div class="package">
<a href="../PDF/FPDF.html">FPDF</a><br />
<a href="../PDF/lamPDF.html">lamPDF</a><br />
<a href="../PDF/UFPDF.html">UFPDF</a><br />
<a href="../PDF/xmlParser.html">xmlParser</a><br />
</div>
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
<h1>Procedural File: verabi.php</h1>
Source Location: /lib/font/verabi.php<br /><br />
<br>
<br>
<h2>Page Details:</h2>
This file includes information about the Bitstream Vera font.<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>author:</b>&nbsp;&nbsp;</td><td>Roland Gruber</td>
</tr>
</table>
</div>
<br /><br />
<br /><br />
<br /><br />
<br />
<div class="credit">
<hr />
Documentation generated on Tue, 07 Feb 2006 17:04:05 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.2.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,163 @@
<html>
<head>
<title>Docs for page verai.php</title>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">PDF</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_PDF.html" class="menu">class tree: PDF</a> ]
[ <a href="../elementindex_PDF.html" class="menu">index: PDF</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<div id="ric">
<p><a href="../ric_README.html">README</a></p>
<p><a href="../ric_INSTALL.html">INSTALL</a></p>
</div>
<div id="todolist">
<p><a href="../todolist.html">Todo List</a></p>
</div>
<b>Packages:</b><br />
<a href="../li_configuration.html">configuration</a><br />
<a href="../li_Help.html">Help</a><br />
<a href="../li_LDAP.html">LDAP</a><br />
<a href="../li_lib.html">lib</a><br />
<a href="../li_lists.html">lists</a><br />
<a href="../li_main.html">main</a><br />
<a href="../li_modules.html">modules</a><br />
<a href="../li_PDF.html">PDF</a><br />
<a href="../li_profiles.html">profiles</a><br />
<a href="../li_tests.html">tests</a><br />
<a href="../li_tools.html">tools</a><br />
<a href="../li_types.html">types</a><br />
<br /><br />
<b>Files:</b><br />
<div class="package">
<a href="../PDF/_lib_fpdf_php.html"> fpdf.php
</a><br>
<a href="../PDF/_lib_pdf_inc.html"> pdf.inc
</a><br>
<a href="../PDF/_templates_pdfedit_pdfdelete_php.html"> pdfdelete.php
</a><br>
<a href="../PDF/_templates_pdfedit_pdfmain_php.html"> pdfmain.php
</a><br>
<a href="../PDF/_templates_pdfedit_pdfpage_php.html"> pdfpage.php
</a><br>
<a href="../PDF/_lib_pdfstruct_inc.html"> pdfstruct.inc
</a><br>
<a href="../PDF/_lib_ufpdf_php.html"> ufpdf.php
</a><br>
<a href="../PDF/_lib_font_vera_php.html"> vera.php
</a><br>
<a href="../PDF/_lib_font_verab_php.html"> verab.php
</a><br>
<a href="../PDF/_lib_font_verabi_php.html"> verabi.php
</a><br>
<a href="../PDF/_lib_font_verai_php.html"> verai.php
</a><br>
<a href="../PDF/_lib_xml_parser_inc.html"> xml_parser.inc
</a><br>
</div><br />
<b>Classes:</b><br />
<div class="package">
<a href="../PDF/FPDF.html">FPDF</a><br />
<a href="../PDF/lamPDF.html">lamPDF</a><br />
<a href="../PDF/UFPDF.html">UFPDF</a><br />
<a href="../PDF/xmlParser.html">xmlParser</a><br />
</div>
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
<h1>Procedural File: verai.php</h1>
Source Location: /lib/font/verai.php<br /><br />
<br>
<br>
<h2>Page Details:</h2>
This file includes information about the Bitstream Vera font.<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>author:</b>&nbsp;&nbsp;</td><td>Roland Gruber</td>
</tr>
</table>
</div>
<br /><br />
<br /><br />
<br /><br />
<br />
<div class="credit">
<hr />
Documentation generated on Tue, 07 Feb 2006 17:04:05 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.2.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,182 @@
<html>
<head>
<title>Docs for page fpdf.php</title>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">PDF</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_PDF.html" class="menu">class tree: PDF</a> ]
[ <a href="../elementindex_PDF.html" class="menu">index: PDF</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<div id="ric">
<p><a href="../ric_README.html">README</a></p>
<p><a href="../ric_INSTALL.html">INSTALL</a></p>
</div>
<div id="todolist">
<p><a href="../todolist.html">Todo List</a></p>
</div>
<b>Packages:</b><br />
<a href="../li_configuration.html">configuration</a><br />
<a href="../li_Help.html">Help</a><br />
<a href="../li_LDAP.html">LDAP</a><br />
<a href="../li_lib.html">lib</a><br />
<a href="../li_lists.html">lists</a><br />
<a href="../li_main.html">main</a><br />
<a href="../li_modules.html">modules</a><br />
<a href="../li_PDF.html">PDF</a><br />
<a href="../li_profiles.html">profiles</a><br />
<a href="../li_tests.html">tests</a><br />
<a href="../li_tools.html">tools</a><br />
<a href="../li_types.html">types</a><br />
<br /><br />
<b>Files:</b><br />
<div class="package">
<a href="../PDF/_lib_fpdf_php.html"> fpdf.php
</a><br>
<a href="../PDF/_lib_pdf_inc.html"> pdf.inc
</a><br>
<a href="../PDF/_templates_pdfedit_pdfdelete_php.html"> pdfdelete.php
</a><br>
<a href="../PDF/_templates_pdfedit_pdfmain_php.html"> pdfmain.php
</a><br>
<a href="../PDF/_templates_pdfedit_pdfpage_php.html"> pdfpage.php
</a><br>
<a href="../PDF/_lib_pdfstruct_inc.html"> pdfstruct.inc
</a><br>
<a href="../PDF/_lib_ufpdf_php.html"> ufpdf.php
</a><br>
<a href="../PDF/_lib_font_vera_php.html"> vera.php
</a><br>
<a href="../PDF/_lib_font_verab_php.html"> verab.php
</a><br>
<a href="../PDF/_lib_font_verabi_php.html"> verabi.php
</a><br>
<a href="../PDF/_lib_font_verai_php.html"> verai.php
</a><br>
<a href="../PDF/_lib_xml_parser_inc.html"> xml_parser.inc
</a><br>
</div><br />
<b>Classes:</b><br />
<div class="package">
<a href="../PDF/FPDF.html">FPDF</a><br />
<a href="../PDF/lamPDF.html">lamPDF</a><br />
<a href="../PDF/UFPDF.html">UFPDF</a><br />
<a href="../PDF/xmlParser.html">xmlParser</a><br />
</div>
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
<h1>Procedural File: fpdf.php</h1>
Source Location: /lib/fpdf.php<br /><br />
<br>
<br>
<div class="contents">
<h2>Classes:</h2>
<dt><a href="../PDF/FPDF.html">FPDF</a></dt>
<dd>Main FPDF class for creating PDF documents</dd>
</div><br /><br />
<h2>Page Details:</h2>
This file includes the FPDF implementation which is used to generate PDF files.<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>author:</b>&nbsp;&nbsp;</td><td>Olivier Plathey</td>
</tr>
</table>
</div>
<br /><br />
<br /><br />
<br /><br />
<hr />
<a name="defineFPDF_VERSION"></a>
<h3>FPDF_VERSION <span class="smalllinenumber">[line 21]</span></h3>
<div class="tags">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>FPDF_VERSION = '1.53'</code>
</td></tr></table>
</td></tr></table>
*****************************************************************************<br /><br /><p>Software: FPDF * Version: 1.53 * Date: 2004-12-31 * Author: Olivier PLATHEY * License: Freeware * * You may use, modify and redistribute this software as you wish. * *****************************************************************************</p><br /> <br />
</div>
<div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
<br />
<div class="credit">
<hr />
Documentation generated on Tue, 07 Feb 2006 17:03:41 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.2.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,365 @@
<html>
<head>
<title>Docs for page pdf.inc</title>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">PDF</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_PDF.html" class="menu">class tree: PDF</a> ]
[ <a href="../elementindex_PDF.html" class="menu">index: PDF</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<div id="ric">
<p><a href="../ric_README.html">README</a></p>
<p><a href="../ric_INSTALL.html">INSTALL</a></p>
</div>
<div id="todolist">
<p><a href="../todolist.html">Todo List</a></p>
</div>
<b>Packages:</b><br />
<a href="../li_configuration.html">configuration</a><br />
<a href="../li_Help.html">Help</a><br />
<a href="../li_LDAP.html">LDAP</a><br />
<a href="../li_lib.html">lib</a><br />
<a href="../li_lists.html">lists</a><br />
<a href="../li_main.html">main</a><br />
<a href="../li_modules.html">modules</a><br />
<a href="../li_PDF.html">PDF</a><br />
<a href="../li_profiles.html">profiles</a><br />
<a href="../li_tests.html">tests</a><br />
<a href="../li_tools.html">tools</a><br />
<a href="../li_types.html">types</a><br />
<br /><br />
<b>Files:</b><br />
<div class="package">
<a href="../PDF/_lib_fpdf_php.html"> fpdf.php
</a><br>
<a href="../PDF/_lib_pdf_inc.html"> pdf.inc
</a><br>
<a href="../PDF/_templates_pdfedit_pdfdelete_php.html"> pdfdelete.php
</a><br>
<a href="../PDF/_templates_pdfedit_pdfmain_php.html"> pdfmain.php
</a><br>
<a href="../PDF/_templates_pdfedit_pdfpage_php.html"> pdfpage.php
</a><br>
<a href="../PDF/_lib_pdfstruct_inc.html"> pdfstruct.inc
</a><br>
<a href="../PDF/_lib_ufpdf_php.html"> ufpdf.php
</a><br>
<a href="../PDF/_lib_font_vera_php.html"> vera.php
</a><br>
<a href="../PDF/_lib_font_verab_php.html"> verab.php
</a><br>
<a href="../PDF/_lib_font_verabi_php.html"> verabi.php
</a><br>
<a href="../PDF/_lib_font_verai_php.html"> verai.php
</a><br>
<a href="../PDF/_lib_xml_parser_inc.html"> xml_parser.inc
</a><br>
</div><br />
<b>Classes:</b><br />
<div class="package">
<a href="../PDF/FPDF.html">FPDF</a><br />
<a href="../PDF/lamPDF.html">lamPDF</a><br />
<a href="../PDF/UFPDF.html">UFPDF</a><br />
<a href="../PDF/xmlParser.html">xmlParser</a><br />
</div>
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
<h1>Procedural File: pdf.inc</h1>
Source Location: /lib/pdf.inc<br /><br />
<br>
<br>
<div class="contents">
<h2>Classes:</h2>
<dt><a href="../PDF/lamPDF.html">lamPDF</a></dt>
<dd>Creates a LAM information page in PDF format.</dd>
</div><br /><br />
<h2>Page Details:</h2>
LDAP Account Manager PDF printing library. It consists of lamPDF class, the createModulePDF() function that may be called by other pages and furthermore some helper functions.<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>author:</b>&nbsp;&nbsp;</td><td>Michael Dürgner</td>
</tr>
</table>
</div>
<br /><br />
<h4>Includes:</h4>
<div class="tags">
include_once(<a href="../PDF/_lib_ufpdf_php.html">"ufpdf.php"</a>) [line 39]<br />
Unicode support for FPDF<br /><br />include_once(<a href="../PDF/_lib_xml_parser_inc.html">'xml_parser.inc'</a>) [line 42]<br />
XML functions<br /><br />include_once(<a href="../PDF/_lib_fpdf_php.html">"fpdf.php"</a>) [line 36]<br />
PDF generator class<br /><br />include_once(<a href="../PDF/_lib_pdfstruct_inc.html">'pdfstruct.inc'</a>) [line 45]<br />
access to PDF configuration files<br /><br /></div>
<br /><br />
<br /><br />
<hr />
<a name="defineLAMPDF_LINEWIDTH"></a>
<h3>LAMPDF_LINEWIDTH <span class="smalllinenumber">[line 33]</span></h3>
<div class="tags">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>LAMPDF_LINEWIDTH = 190</code>
</td></tr></table>
</td></tr></table>
PDF line width<br /><br /> <br />
</div>
<div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
<br />
<hr />
<a name="functioncreateModulePDF"></a>
<h3>createModulePDF <span class="smalllinenumber">[line 62]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>void createModulePDF(
array $accounts, [string $pdf_structure = "default"])</code>
</td></tr></table>
</td></tr></table><br />
This function creates the PDF output of one or more accounts. At the moment this function can create a PDF page for user, group and host accounts. But this is not limited by the function itself but by the account types that are allowed in LAM and the exsisting PDF structure definitions.<br /><br /> <br /><br />
<h4>Parameters</h4>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">array&nbsp;&nbsp;</td>
<td><b>$accounts</b>&nbsp;&nbsp;</td>
<td>A numbered array containing all accounts the PDF page should be created for. The entries of the array must be AccountContainer objects.</td>
</tr>
<tr>
<td class="type">string&nbsp;&nbsp;</td>
<td><b>$pdf_structure</b>&nbsp;&nbsp;</td>
<td>The filename of the structure definition that should be used to create the PDF page. If not submitted the 'default.user' structure definition for the appropriate account type.</td>
</tr>
</table>
<div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
</div>
<hr />
<a name="functiongetSectionHeadline"></a>
<h3>getSectionHeadline <span class="smalllinenumber">[line 197]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>string getSectionHeadline(
string $line)</code>
</td></tr></table>
</td></tr></table><br />
Creates a section headline.<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>return:</b>&nbsp;&nbsp;</td><td>XML code for headline</td>
</tr>
</table>
</div>
<br /><br />
<h4>Parameters</h4>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">string&nbsp;&nbsp;</td>
<td><b>$line</b>&nbsp;&nbsp;</td>
<td>section name</td>
</tr>
</table>
<div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
</div>
<hr />
<a name="functionprocessAttributes"></a>
<h3>processAttributes <span class="smalllinenumber">[line 325]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>array processAttributes(
string $attrs, [array $return = array()])</code>
</td></tr></table>
</td></tr></table><br />
Processes width, height and alignment attributes.<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>return:</b>&nbsp;&nbsp;</td><td>XML code</td>
</tr>
</table>
</div>
<br /><br />
<h4>Parameters</h4>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">string&nbsp;&nbsp;</td>
<td><b>$attrs</b>&nbsp;&nbsp;</td>
<td>attributes</td>
</tr>
<tr>
<td class="type">array&nbsp;&nbsp;</td>
<td><b>$return</b>&nbsp;&nbsp;</td>
<td>XML code</td>
</tr>
</table>
<div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
</div>
<hr />
<a name="functionprocessFormatTags"></a>
<h3>processFormatTags <span class="smalllinenumber">[line 292]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>array processFormatTags(
string $line, string $style)</code>
</td></tr></table>
</td></tr></table><br />
Formats the XML code.<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>return:</b>&nbsp;&nbsp;</td><td>XML code</td>
</tr>
</table>
</div>
<br /><br />
<h4>Parameters</h4>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">string&nbsp;&nbsp;</td>
<td><b>$line</b>&nbsp;&nbsp;</td>
<td>XML code of PDF entry</td>
</tr>
<tr>
<td class="type">string&nbsp;&nbsp;</td>
<td><b>$style</b>&nbsp;&nbsp;</td>
<td>style commands</td>
</tr>
</table>
<div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
</div>
<hr />
<a name="functionprocessLine"></a>
<h3>processLine <span class="smalllinenumber">[line 216]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>array processLine(
string $line, [boolean $first_td = true], mixed $fontName)</code>
</td></tr></table>
</td></tr></table><br />
Creates the XML code for an PDF entry.<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>return:</b>&nbsp;&nbsp;</td><td>XML codes</td>
</tr>
</table>
</div>
<br /><br />
<h4>Parameters</h4>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">string&nbsp;&nbsp;</td>
<td><b>$line</b>&nbsp;&nbsp;</td>
<td>XML code of PDF entry</td>
</tr>
<tr>
<td class="type">boolean&nbsp;&nbsp;</td>
<td><b>$first_td</b>&nbsp;&nbsp;</td>
<td>True if this is the first column</td>
</tr>
</table>
<div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
</div>
<div class="credit">
<hr />
Documentation generated on Tue, 07 Feb 2006 17:03:50 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.2.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,340 @@
<html>
<head>
<title>Docs for page pdfstruct.inc</title>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">PDF</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_PDF.html" class="menu">class tree: PDF</a> ]
[ <a href="../elementindex_PDF.html" class="menu">index: PDF</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<div id="ric">
<p><a href="../ric_README.html">README</a></p>
<p><a href="../ric_INSTALL.html">INSTALL</a></p>
</div>
<div id="todolist">
<p><a href="../todolist.html">Todo List</a></p>
</div>
<b>Packages:</b><br />
<a href="../li_configuration.html">configuration</a><br />
<a href="../li_Help.html">Help</a><br />
<a href="../li_LDAP.html">LDAP</a><br />
<a href="../li_lib.html">lib</a><br />
<a href="../li_lists.html">lists</a><br />
<a href="../li_main.html">main</a><br />
<a href="../li_modules.html">modules</a><br />
<a href="../li_PDF.html">PDF</a><br />
<a href="../li_profiles.html">profiles</a><br />
<a href="../li_tests.html">tests</a><br />
<a href="../li_tools.html">tools</a><br />
<a href="../li_types.html">types</a><br />
<br /><br />
<b>Files:</b><br />
<div class="package">
<a href="../PDF/_lib_fpdf_php.html"> fpdf.php
</a><br>
<a href="../PDF/_lib_pdf_inc.html"> pdf.inc
</a><br>
<a href="../PDF/_templates_pdfedit_pdfdelete_php.html"> pdfdelete.php
</a><br>
<a href="../PDF/_templates_pdfedit_pdfmain_php.html"> pdfmain.php
</a><br>
<a href="../PDF/_templates_pdfedit_pdfpage_php.html"> pdfpage.php
</a><br>
<a href="../PDF/_lib_pdfstruct_inc.html"> pdfstruct.inc
</a><br>
<a href="../PDF/_lib_ufpdf_php.html"> ufpdf.php
</a><br>
<a href="../PDF/_lib_font_vera_php.html"> vera.php
</a><br>
<a href="../PDF/_lib_font_verab_php.html"> verab.php
</a><br>
<a href="../PDF/_lib_font_verabi_php.html"> verabi.php
</a><br>
<a href="../PDF/_lib_font_verai_php.html"> verai.php
</a><br>
<a href="../PDF/_lib_xml_parser_inc.html"> xml_parser.inc
</a><br>
</div><br />
<b>Classes:</b><br />
<div class="package">
<a href="../PDF/FPDF.html">FPDF</a><br />
<a href="../PDF/lamPDF.html">lamPDF</a><br />
<a href="../PDF/UFPDF.html">UFPDF</a><br />
<a href="../PDF/xmlParser.html">xmlParser</a><br />
</div>
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
<h1>Procedural File: pdfstruct.inc</h1>
Source Location: /lib/pdfstruct.inc<br /><br />
<br>
<br>
<h2>Page Details:</h2>
Functions to manage the PDF structures.<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>author:</b>&nbsp;&nbsp;</td><td>Michael Dürgner</td>
</tr>
</table>
</div>
<br /><br />
<h4>Includes:</h4>
<div class="tags">
include_once(<a href="../LDAP/_lib_ldap_inc.html">"ldap.inc"</a>) [line 34]<br />
LDAP object<br /><br />include_once(<a href="../configuration/_lib_config_inc.html">"config.inc"</a>) [line 31]<br />
LAM configuration<br /><br /></div>
<br /><br />
<br /><br />
<br />
<hr />
<a name="functiondeletePDFStructureDefinition"></a>
<h3>deletePDFStructureDefinition <span class="smalllinenumber">[line 158]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>boolean deletePDFStructureDefinition(
string $scope, string $definition)</code>
</td></tr></table>
</td></tr></table><br />
Deletes XML file with PDF structure definitions.<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>return:</b>&nbsp;&nbsp;</td><td>True if file was deleted or false if a problem occured.</td>
</tr>
</table>
</div>
<br /><br />
<h4>Parameters</h4>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">string&nbsp;&nbsp;</td>
<td><b>$scope</b>&nbsp;&nbsp;</td>
<td>account type</td>
</tr>
<tr>
<td class="type">string&nbsp;&nbsp;</td>
<td><b>$definition</b>&nbsp;&nbsp;</td>
<td>Name of definition to delete</td>
</tr>
</table>
<div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
</div>
<hr />
<a name="functiongetAvailableLogos"></a>
<h3>getAvailableLogos <span class="smalllinenumber">[line 176]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>array getAvailableLogos(
)</code>
</td></tr></table>
</td></tr></table><br />
This function returns an array with all aviliable logo images.<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>return:</b>&nbsp;&nbsp;</td><td>list of logo files</td>
</tr>
</table>
</div>
<br /><br />
<div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
</div>
<hr />
<a name="functiongetPDFStructureDefinitions"></a>
<h3>getPDFStructureDefinitions <span class="smalllinenumber">[line 47]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>array getPDFStructureDefinitions(
[string $scope = "user"])</code>
</td></tr></table>
</td></tr></table><br />
This function will return all available PDF structure definitions for the submitted account scope.<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>return:</b>&nbsp;&nbsp;</td><td>All available PDF structure definitions for the submitted account scope. Each entry is a string being the filename that may be passed to the createModulePDF() function as second argument.</td>
</tr>
</table>
</div>
<br /><br />
<h4>Parameters</h4>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">string&nbsp;&nbsp;</td>
<td><b>$scope</b>&nbsp;&nbsp;</td>
<td>The account scope the PDF structure definitions should be returned.</td>
</tr>
</table>
<div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
</div>
<hr />
<a name="functionloadPDFStructureDefinitions"></a>
<h3>loadPDFStructureDefinitions <span class="smalllinenumber">[line 72]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>array loadPDFStructureDefinitions(
[string $scope = 'user'], [string $pdf_structure = 'default'])</code>
</td></tr></table>
</td></tr></table><br />
This function is used to get pdf structure from xml file.<br /><br /><p>Used in createModulePDF.</p><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>return:</b>&nbsp;&nbsp;</td><td>PDF structure</td>
</tr>
</table>
</div>
<br /><br />
<h4>Parameters</h4>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">string&nbsp;&nbsp;</td>
<td><b>$scope</b>&nbsp;&nbsp;</td>
<td>The account scope for wich the PDF structure should be returned.</td>
</tr>
<tr>
<td class="type">string&nbsp;&nbsp;</td>
<td><b>$pdf_structure</b>&nbsp;&nbsp;</td>
<td>Structure name of selected scope wich should be returned.</td>
</tr>
</table>
<div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
</div>
<hr />
<a name="functionsavePDFStructureDefinitions"></a>
<h3>savePDFStructureDefinitions <span class="smalllinenumber">[line 100]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>string savePDFStructureDefinitions(
string $scope, string $definition)</code>
</td></tr></table>
</td></tr></table><br />
Saves PDF structure definitions to XML file in format: &lt;name&gt;.&lt;scope&gt;.xml<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>return:</b>&nbsp;&nbsp;</td><td>&quot;no perms&quot; if access denied or &quot;ok&quot;.</td>
</tr>
</table>
</div>
<br /><br />
<h4>Parameters</h4>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">string&nbsp;&nbsp;</td>
<td><b>$scope</b>&nbsp;&nbsp;</td>
<td>account type</td>
</tr>
<tr>
<td class="type">string&nbsp;&nbsp;</td>
<td><b>$definition</b>&nbsp;&nbsp;</td>
<td>Name of definition</td>
</tr>
</table>
<div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
</div>
<div class="credit">
<hr />
Documentation generated on Tue, 07 Feb 2006 17:03:51 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.2.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,189 @@
<html>
<head>
<title>Docs for page ufpdf.php</title>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">PDF</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_PDF.html" class="menu">class tree: PDF</a> ]
[ <a href="../elementindex_PDF.html" class="menu">index: PDF</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<div id="ric">
<p><a href="../ric_README.html">README</a></p>
<p><a href="../ric_INSTALL.html">INSTALL</a></p>
</div>
<div id="todolist">
<p><a href="../todolist.html">Todo List</a></p>
</div>
<b>Packages:</b><br />
<a href="../li_configuration.html">configuration</a><br />
<a href="../li_Help.html">Help</a><br />
<a href="../li_LDAP.html">LDAP</a><br />
<a href="../li_lib.html">lib</a><br />
<a href="../li_lists.html">lists</a><br />
<a href="../li_main.html">main</a><br />
<a href="../li_modules.html">modules</a><br />
<a href="../li_PDF.html">PDF</a><br />
<a href="../li_profiles.html">profiles</a><br />
<a href="../li_tests.html">tests</a><br />
<a href="../li_tools.html">tools</a><br />
<a href="../li_types.html">types</a><br />
<br /><br />
<b>Files:</b><br />
<div class="package">
<a href="../PDF/_lib_fpdf_php.html"> fpdf.php
</a><br>
<a href="../PDF/_lib_pdf_inc.html"> pdf.inc
</a><br>
<a href="../PDF/_templates_pdfedit_pdfdelete_php.html"> pdfdelete.php
</a><br>
<a href="../PDF/_templates_pdfedit_pdfmain_php.html"> pdfmain.php
</a><br>
<a href="../PDF/_templates_pdfedit_pdfpage_php.html"> pdfpage.php
</a><br>
<a href="../PDF/_lib_pdfstruct_inc.html"> pdfstruct.inc
</a><br>
<a href="../PDF/_lib_ufpdf_php.html"> ufpdf.php
</a><br>
<a href="../PDF/_lib_font_vera_php.html"> vera.php
</a><br>
<a href="../PDF/_lib_font_verab_php.html"> verab.php
</a><br>
<a href="../PDF/_lib_font_verabi_php.html"> verabi.php
</a><br>
<a href="../PDF/_lib_font_verai_php.html"> verai.php
</a><br>
<a href="../PDF/_lib_xml_parser_inc.html"> xml_parser.inc
</a><br>
</div><br />
<b>Classes:</b><br />
<div class="package">
<a href="../PDF/FPDF.html">FPDF</a><br />
<a href="../PDF/lamPDF.html">lamPDF</a><br />
<a href="../PDF/UFPDF.html">UFPDF</a><br />
<a href="../PDF/xmlParser.html">xmlParser</a><br />
</div>
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
<h1>Procedural File: ufpdf.php</h1>
Source Location: /lib/ufpdf.php<br /><br />
<br>
<br>
<div class="contents">
<h2>Classes:</h2>
<dt><a href="../PDF/UFPDF.html">UFPDF</a></dt>
<dd>Main UFPDF class for creating Unicode PDF documents</dd>
</div><br /><br />
<h2>Page Details:</h2>
This file includes UFPDF which adds Unicode support to FPDF.<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>author:</b>&nbsp;&nbsp;</td><td>Andrea Rossato</td>
</tr>
<tr>
<td><b>author:</b>&nbsp;&nbsp;</td><td>Steven Wittens</td>
</tr>
</table>
</div>
<br /><br />
<h4>Includes:</h4>
<div class="tags">
include_once(<a href="../PDF/_lib_fpdf_php.html">'fpdf.php'</a>) [line 29]<br />
</div>
<br /><br />
<br /><br />
<hr />
<a name="defineUFPDF_VERSION"></a>
<h3>UFPDF_VERSION <span class="smalllinenumber">[line 27]</span></h3>
<div class="tags">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>UFPDF_VERSION = '0.1'</code>
</td></tr></table>
</td></tr></table>
*****************************************************************************<br /><br /><p>Software: UFPDF, Unicode Free PDF generator * Version: 0.1 * based on FPDF 1.52 by Olivier PLATHEY * Date: 2004-09-01 * Author: Steven Wittens &lt;steven@acko.net&gt; * License: GPL * * UFPDF is a modification of FPDF to support Unicode through UTF-8. * * This file includes modifications from Andrea Rossato which fix line breaking * in Write()/MultiCell(). * * *****************************************************************************</p><br /> <br />
</div>
<div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
<br />
<div class="credit">
<hr />
Documentation generated on Tue, 07 Feb 2006 17:04:04 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.2.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,177 @@
<html>
<head>
<title>Docs for page xml_parser.inc</title>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">PDF</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_PDF.html" class="menu">class tree: PDF</a> ]
[ <a href="../elementindex_PDF.html" class="menu">index: PDF</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<div id="ric">
<p><a href="../ric_README.html">README</a></p>
<p><a href="../ric_INSTALL.html">INSTALL</a></p>
</div>
<div id="todolist">
<p><a href="../todolist.html">Todo List</a></p>
</div>
<b>Packages:</b><br />
<a href="../li_configuration.html">configuration</a><br />
<a href="../li_Help.html">Help</a><br />
<a href="../li_LDAP.html">LDAP</a><br />
<a href="../li_lib.html">lib</a><br />
<a href="../li_lists.html">lists</a><br />
<a href="../li_main.html">main</a><br />
<a href="../li_modules.html">modules</a><br />
<a href="../li_PDF.html">PDF</a><br />
<a href="../li_profiles.html">profiles</a><br />
<a href="../li_tests.html">tests</a><br />
<a href="../li_tools.html">tools</a><br />
<a href="../li_types.html">types</a><br />
<br /><br />
<b>Files:</b><br />
<div class="package">
<a href="../PDF/_lib_fpdf_php.html"> fpdf.php
</a><br>
<a href="../PDF/_lib_pdf_inc.html"> pdf.inc
</a><br>
<a href="../PDF/_templates_pdfedit_pdfdelete_php.html"> pdfdelete.php
</a><br>
<a href="../PDF/_templates_pdfedit_pdfmain_php.html"> pdfmain.php
</a><br>
<a href="../PDF/_templates_pdfedit_pdfpage_php.html"> pdfpage.php
</a><br>
<a href="../PDF/_lib_pdfstruct_inc.html"> pdfstruct.inc
</a><br>
<a href="../PDF/_lib_ufpdf_php.html"> ufpdf.php
</a><br>
<a href="../PDF/_lib_font_vera_php.html"> vera.php
</a><br>
<a href="../PDF/_lib_font_verab_php.html"> verab.php
</a><br>
<a href="../PDF/_lib_font_verabi_php.html"> verabi.php
</a><br>
<a href="../PDF/_lib_font_verai_php.html"> verai.php
</a><br>
<a href="../PDF/_lib_xml_parser_inc.html"> xml_parser.inc
</a><br>
</div><br />
<b>Classes:</b><br />
<div class="package">
<a href="../PDF/FPDF.html">FPDF</a><br />
<a href="../PDF/lamPDF.html">lamPDF</a><br />
<a href="../PDF/UFPDF.html">UFPDF</a><br />
<a href="../PDF/xmlParser.html">xmlParser</a><br />
</div>
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
<h1>Procedural File: xml_parser.inc</h1>
Source Location: /lib/xml_parser.inc<br /><br />
<br>
<br>
<div class="contents">
<h2>Classes:</h2>
<dt><a href="../PDF/xmlParser.html">xmlParser</a></dt>
<dd></dd>
</div><br /><br />
<h2>Page Details:</h2>
LDAP Account Manager xmlParser class<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>license:</b>&nbsp;&nbsp;</td><td>GPL</td>
</tr>
<tr>
<td><b>copyright:</b>&nbsp;&nbsp;</td><td>Copyright (C) 2003-2004 Michael Dürgner</td>
</tr>
<tr>
<td><b>version:</b>&nbsp;&nbsp;</td><td>0.5</td>
</tr>
<tr>
<td><b>author:</b>&nbsp;&nbsp;</td><td>Michael Dürgner</td>
</tr>
</table>
</div>
<br /><br />
<br /><br />
<br /><br />
<br />
<div class="credit">
<hr />
Documentation generated on Tue, 07 Feb 2006 17:04:05 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.2.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,167 @@
<html>
<head>
<title>Docs for page pdfdelete.php</title>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">PDF</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_PDF.html" class="menu">class tree: PDF</a> ]
[ <a href="../elementindex_PDF.html" class="menu">index: PDF</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<div id="ric">
<p><a href="../ric_README.html">README</a></p>
<p><a href="../ric_INSTALL.html">INSTALL</a></p>
</div>
<div id="todolist">
<p><a href="../todolist.html">Todo List</a></p>
</div>
<b>Packages:</b><br />
<a href="../li_configuration.html">configuration</a><br />
<a href="../li_Help.html">Help</a><br />
<a href="../li_LDAP.html">LDAP</a><br />
<a href="../li_lib.html">lib</a><br />
<a href="../li_lists.html">lists</a><br />
<a href="../li_main.html">main</a><br />
<a href="../li_modules.html">modules</a><br />
<a href="../li_PDF.html">PDF</a><br />
<a href="../li_profiles.html">profiles</a><br />
<a href="../li_tests.html">tests</a><br />
<a href="../li_tools.html">tools</a><br />
<a href="../li_types.html">types</a><br />
<br /><br />
<b>Files:</b><br />
<div class="package">
<a href="../PDF/_lib_fpdf_php.html"> fpdf.php
</a><br>
<a href="../PDF/_lib_pdf_inc.html"> pdf.inc
</a><br>
<a href="../PDF/_templates_pdfedit_pdfdelete_php.html"> pdfdelete.php
</a><br>
<a href="../PDF/_templates_pdfedit_pdfmain_php.html"> pdfmain.php
</a><br>
<a href="../PDF/_templates_pdfedit_pdfpage_php.html"> pdfpage.php
</a><br>
<a href="../PDF/_lib_pdfstruct_inc.html"> pdfstruct.inc
</a><br>
<a href="../PDF/_lib_ufpdf_php.html"> ufpdf.php
</a><br>
<a href="../PDF/_lib_font_vera_php.html"> vera.php
</a><br>
<a href="../PDF/_lib_font_verab_php.html"> verab.php
</a><br>
<a href="../PDF/_lib_font_verabi_php.html"> verabi.php
</a><br>
<a href="../PDF/_lib_font_verai_php.html"> verai.php
</a><br>
<a href="../PDF/_lib_xml_parser_inc.html"> xml_parser.inc
</a><br>
</div><br />
<b>Classes:</b><br />
<div class="package">
<a href="../PDF/FPDF.html">FPDF</a><br />
<a href="../PDF/lamPDF.html">lamPDF</a><br />
<a href="../PDF/UFPDF.html">UFPDF</a><br />
<a href="../PDF/xmlParser.html">xmlParser</a><br />
</div>
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
<h1>Procedural File: pdfdelete.php</h1>
Source Location: /templates/pdfedit/pdfdelete.php<br /><br />
<br>
<br>
<h2>Page Details:</h2>
Manages deletion of pdf structures.<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>author:</b>&nbsp;&nbsp;</td><td>Michael Dürgner</td>
</tr>
</table>
</div>
<br /><br />
<h4>Includes:</h4>
<div class="tags">
include_once('../../lib/pdfstruct.inc') [line 32]<br />
helper functions for pdf<br /><br /></div>
<br /><br />
<br /><br />
<br />
<div class="credit">
<hr />
Documentation generated on Tue, 07 Feb 2006 17:03:51 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.2.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,170 @@
<html>
<head>
<title>Docs for page pdfmain.php</title>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">PDF</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_PDF.html" class="menu">class tree: PDF</a> ]
[ <a href="../elementindex_PDF.html" class="menu">index: PDF</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<div id="ric">
<p><a href="../ric_README.html">README</a></p>
<p><a href="../ric_INSTALL.html">INSTALL</a></p>
</div>
<div id="todolist">
<p><a href="../todolist.html">Todo List</a></p>
</div>
<b>Packages:</b><br />
<a href="../li_configuration.html">configuration</a><br />
<a href="../li_Help.html">Help</a><br />
<a href="../li_LDAP.html">LDAP</a><br />
<a href="../li_lib.html">lib</a><br />
<a href="../li_lists.html">lists</a><br />
<a href="../li_main.html">main</a><br />
<a href="../li_modules.html">modules</a><br />
<a href="../li_PDF.html">PDF</a><br />
<a href="../li_profiles.html">profiles</a><br />
<a href="../li_tests.html">tests</a><br />
<a href="../li_tools.html">tools</a><br />
<a href="../li_types.html">types</a><br />
<br /><br />
<b>Files:</b><br />
<div class="package">
<a href="../PDF/_lib_fpdf_php.html"> fpdf.php
</a><br>
<a href="../PDF/_lib_pdf_inc.html"> pdf.inc
</a><br>
<a href="../PDF/_templates_pdfedit_pdfdelete_php.html"> pdfdelete.php
</a><br>
<a href="../PDF/_templates_pdfedit_pdfmain_php.html"> pdfmain.php
</a><br>
<a href="../PDF/_templates_pdfedit_pdfpage_php.html"> pdfpage.php
</a><br>
<a href="../PDF/_lib_pdfstruct_inc.html"> pdfstruct.inc
</a><br>
<a href="../PDF/_lib_ufpdf_php.html"> ufpdf.php
</a><br>
<a href="../PDF/_lib_font_vera_php.html"> vera.php
</a><br>
<a href="../PDF/_lib_font_verab_php.html"> verab.php
</a><br>
<a href="../PDF/_lib_font_verabi_php.html"> verabi.php
</a><br>
<a href="../PDF/_lib_font_verai_php.html"> verai.php
</a><br>
<a href="../PDF/_lib_xml_parser_inc.html"> xml_parser.inc
</a><br>
</div><br />
<b>Classes:</b><br />
<div class="package">
<a href="../PDF/FPDF.html">FPDF</a><br />
<a href="../PDF/lamPDF.html">lamPDF</a><br />
<a href="../PDF/UFPDF.html">UFPDF</a><br />
<a href="../PDF/xmlParser.html">xmlParser</a><br />
</div>
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
<h1>Procedural File: pdfmain.php</h1>
Source Location: /templates/pdfedit/pdfmain.php<br /><br />
<br>
<br>
<h2>Page Details:</h2>
This is the main window of the pdf structure editor.<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>author:</b>&nbsp;&nbsp;</td><td>Michael Dürgner</td>
</tr>
</table>
</div>
<br /><br />
<h4>Includes:</h4>
<div class="tags">
include_once("../../lib/pdfstruct.inc") [line 32]<br />
access to PDF configuration files<br /><br />include_once("../../lib/ldap.inc") [line 34]<br />
LDAP object<br /><br />include_once("../../lib/config.inc") [line 36]<br />
for language settings<br /><br />include_once("../../lib/modules.inc") [line 38]<br />
module functions<br /><br /></div>
<br /><br />
<br /><br />
<br />
<div class="credit">
<hr />
Documentation generated on Tue, 07 Feb 2006 17:03:51 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.2.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,174 @@
<html>
<head>
<title>Docs for page pdfpage.php</title>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">PDF</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_PDF.html" class="menu">class tree: PDF</a> ]
[ <a href="../elementindex_PDF.html" class="menu">index: PDF</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<div id="ric">
<p><a href="../ric_README.html">README</a></p>
<p><a href="../ric_INSTALL.html">INSTALL</a></p>
</div>
<div id="todolist">
<p><a href="../todolist.html">Todo List</a></p>
</div>
<b>Packages:</b><br />
<a href="../li_configuration.html">configuration</a><br />
<a href="../li_Help.html">Help</a><br />
<a href="../li_LDAP.html">LDAP</a><br />
<a href="../li_lib.html">lib</a><br />
<a href="../li_lists.html">lists</a><br />
<a href="../li_main.html">main</a><br />
<a href="../li_modules.html">modules</a><br />
<a href="../li_PDF.html">PDF</a><br />
<a href="../li_profiles.html">profiles</a><br />
<a href="../li_tests.html">tests</a><br />
<a href="../li_tools.html">tools</a><br />
<a href="../li_types.html">types</a><br />
<br /><br />
<b>Files:</b><br />
<div class="package">
<a href="../PDF/_lib_fpdf_php.html"> fpdf.php
</a><br>
<a href="../PDF/_lib_pdf_inc.html"> pdf.inc
</a><br>
<a href="../PDF/_templates_pdfedit_pdfdelete_php.html"> pdfdelete.php
</a><br>
<a href="../PDF/_templates_pdfedit_pdfmain_php.html"> pdfmain.php
</a><br>
<a href="../PDF/_templates_pdfedit_pdfpage_php.html"> pdfpage.php
</a><br>
<a href="../PDF/_lib_pdfstruct_inc.html"> pdfstruct.inc
</a><br>
<a href="../PDF/_lib_ufpdf_php.html"> ufpdf.php
</a><br>
<a href="../PDF/_lib_font_vera_php.html"> vera.php
</a><br>
<a href="../PDF/_lib_font_verab_php.html"> verab.php
</a><br>
<a href="../PDF/_lib_font_verabi_php.html"> verabi.php
</a><br>
<a href="../PDF/_lib_font_verai_php.html"> verai.php
</a><br>
<a href="../PDF/_lib_xml_parser_inc.html"> xml_parser.inc
</a><br>
</div><br />
<b>Classes:</b><br />
<div class="package">
<a href="../PDF/FPDF.html">FPDF</a><br />
<a href="../PDF/lamPDF.html">lamPDF</a><br />
<a href="../PDF/UFPDF.html">UFPDF</a><br />
<a href="../PDF/xmlParser.html">xmlParser</a><br />
</div>
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
<h1>Procedural File: pdfpage.php</h1>
Source Location: /templates/pdfedit/pdfpage.php<br /><br />
<br>
<br>
<h2>Page Details:</h2>
Displays the main page of the PDF editor where the user can select the displayed entries.<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>author:</b>&nbsp;&nbsp;</td><td>Roland Gruber</td>
</tr>
<tr>
<td><b>author:</b>&nbsp;&nbsp;</td><td>Michael Dürgner</td>
</tr>
</table>
</div>
<br /><br />
<h4>Includes:</h4>
<div class="tags">
include_once('../../lib/pdfstruct.inc') [line 35]<br />
access to PDF configuration files<br /><br />include_once('../../lib/ldap.inc') [line 37]<br />
LDAP object<br /><br />include_once('../../lib/config.inc') [line 39]<br />
LAM configuration<br /><br />include_once('../../lib/modules.inc') [line 41]<br />
module functions<br /><br />include_once('../../lib/xml_parser.inc') [line 43]<br />
XML functions<br /><br /></div>
<br /><br />
<br /><br />
<br />
<div class="credit">
<hr />
Documentation generated on Tue, 07 Feb 2006 17:03:51 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.2.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,294 @@
<html>
<head>
<title>Docs For Class xmlParser</title>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">PDF</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_PDF.html" class="menu">class tree: PDF</a> ]
[ <a href="../elementindex_PDF.html" class="menu">index: PDF</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<div id="ric">
<p><a href="../ric_README.html">README</a></p>
<p><a href="../ric_INSTALL.html">INSTALL</a></p>
</div>
<div id="todolist">
<p><a href="../todolist.html">Todo List</a></p>
</div>
<b>Packages:</b><br />
<a href="../li_configuration.html">configuration</a><br />
<a href="../li_Help.html">Help</a><br />
<a href="../li_LDAP.html">LDAP</a><br />
<a href="../li_lib.html">lib</a><br />
<a href="../li_lists.html">lists</a><br />
<a href="../li_main.html">main</a><br />
<a href="../li_modules.html">modules</a><br />
<a href="../li_PDF.html">PDF</a><br />
<a href="../li_profiles.html">profiles</a><br />
<a href="../li_tests.html">tests</a><br />
<a href="../li_tools.html">tools</a><br />
<a href="../li_types.html">types</a><br />
<br /><br />
<b>Files:</b><br />
<div class="package">
<a href="../PDF/_lib_fpdf_php.html"> fpdf.php
</a><br>
<a href="../PDF/_lib_pdf_inc.html"> pdf.inc
</a><br>
<a href="../PDF/_templates_pdfedit_pdfdelete_php.html"> pdfdelete.php
</a><br>
<a href="../PDF/_templates_pdfedit_pdfmain_php.html"> pdfmain.php
</a><br>
<a href="../PDF/_templates_pdfedit_pdfpage_php.html"> pdfpage.php
</a><br>
<a href="../PDF/_lib_pdfstruct_inc.html"> pdfstruct.inc
</a><br>
<a href="../PDF/_lib_ufpdf_php.html"> ufpdf.php
</a><br>
<a href="../PDF/_lib_font_vera_php.html"> vera.php
</a><br>
<a href="../PDF/_lib_font_verab_php.html"> verab.php
</a><br>
<a href="../PDF/_lib_font_verabi_php.html"> verabi.php
</a><br>
<a href="../PDF/_lib_font_verai_php.html"> verai.php
</a><br>
<a href="../PDF/_lib_xml_parser_inc.html"> xml_parser.inc
</a><br>
</div><br />
<b>Classes:</b><br />
<div class="package">
<a href="../PDF/FPDF.html">FPDF</a><br />
<a href="../PDF/lamPDF.html">lamPDF</a><br />
<a href="../PDF/UFPDF.html">UFPDF</a><br />
<a href="../PDF/xmlParser.html">xmlParser</a><br />
</div>
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
<h1>Class: xmlParser</h1>
Source Location: /lib/xml_parser.inc<br /><br />
<table width="100%" border="0">
<tr><td valign="top">
<h3><a href="#class_details">Class Overview</a></h3>
<pre></pre><br />
<div class="description"></div><br /><br />
<h4>Author(s):</h4>
<ul>
<li>Michael Dürgner</li>
</ul>
<h4>Version:</h4>
<ul>
<li>0.5</li>
</ul>
</td>
<td valign="top">
<h3><a href="#class_vars">Variables</a></h3>
<ul>
<li><a href="../PDF/xmlParser.html#var$xmlParser">$xmlParser</a></li>
</ul>
</td>
<td valign="top">
<h3><a href="#class_methods">Methods</a></h3>
<ul>
<li><a href="../PDF/xmlParser.html#methodxmlParser">xmlParser</a></li>
<li><a href="../PDF/xmlParser.html#methodparse">parse</a></li>
</ul>
</td>
</tr></table>
<hr />
<table width="100%" border="0"><tr>
</tr></table>
<hr />
<a name="class_details"></a>
<h3>Class Details</h3>
<div class="tags">
[line 40]<br />
<br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>version:</b>&nbsp;&nbsp;</td><td>0.5</td>
</tr>
<tr>
<td><b>author:</b>&nbsp;&nbsp;</td><td>Michael Dürgner</td>
</tr>
</table>
</div>
</div><br /><br />
<div class="top">[ <a href="#top">Top</a> ]</div><br />
<hr />
<a name="class_vars"></a>
<h3>Class Variables</h3>
<div class="tags">
<a name="var$xmlParser"></a>
<p></p>
<h4>$xmlParser = <span class="value"></span></h4>
<p>[line 45]</p>
<br />
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>Type:</b>&nbsp;&nbsp;</td>
<td>mixed</td>
</tr>
</table>
</div><br /><br />
<div class="top">[ <a href="#top">Top</a> ]</div><br />
</div><br />
<hr />
<a name="class_methods"></a>
<h3>Class Methods</h3>
<div class="tags">
<hr />
<a name="methodxmlParser"></a>
<h3>constructor xmlParser <span class="smalllinenumber">[line 50]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>xmlParser xmlParser(
)</code>
</td></tr></table>
</td></tr></table><br />
<br /><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodparse"></a>
<h3>method parse <span class="smalllinenumber">[line 64]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>array parse(
string
$filename)</code>
</td></tr></table>
</td></tr></table><br />
<br /><br />
<h4>Parameters:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">string&nbsp;&nbsp;</td>
<td><b>$filename</b>&nbsp;&nbsp;</td>
<td></td>
</tr>
</table>
</div><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
</div><br />
<div class="credit">
<hr />
Documentation generated on Tue, 07 Feb 2006 17:04:05 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.2.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,107 @@
<html>
<head>
<title>Class Trees for Package Help</title>
<link rel="stylesheet" type="text/css" href="media/style.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">Help</td>
</tr>
<tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="classtrees_Help.html" class="menu">class tree: Help</a> ]
[ <a href="elementindex_Help.html" class="menu">index: Help</a> ]
[ <a href="elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<div id="ric">
<p><a href="ric_README.html">README</a></p>
<p><a href="ric_INSTALL.html">INSTALL</a></p>
</div>
<div id="todolist">
<p><a href="todolist.html">Todo List</a></p>
</div>
<b>Packages:</b><br />
<a href="li_configuration.html">configuration</a><br />
<a href="li_Help.html">Help</a><br />
<a href="li_LDAP.html">LDAP</a><br />
<a href="li_lib.html">lib</a><br />
<a href="li_lists.html">lists</a><br />
<a href="li_main.html">main</a><br />
<a href="li_modules.html">modules</a><br />
<a href="li_PDF.html">PDF</a><br />
<a href="li_profiles.html">profiles</a><br />
<a href="li_tests.html">tests</a><br />
<a href="li_tools.html">tools</a><br />
<a href="li_types.html">types</a><br />
<br /><br />
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
<h1>Class Trees for Package Help</h1>
<div class="credit">
<hr />
Documentation generated on Tue, 07 Feb 2006 17:03:31 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.2.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,112 @@
<html>
<head>
<title>Class Trees for Package LDAP</title>
<link rel="stylesheet" type="text/css" href="media/style.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">LDAP</td>
</tr>
<tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="classtrees_LDAP.html" class="menu">class tree: LDAP</a> ]
[ <a href="elementindex_LDAP.html" class="menu">index: LDAP</a> ]
[ <a href="elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<div id="ric">
<p><a href="ric_README.html">README</a></p>
<p><a href="ric_INSTALL.html">INSTALL</a></p>
</div>
<div id="todolist">
<p><a href="todolist.html">Todo List</a></p>
</div>
<b>Packages:</b><br />
<a href="li_configuration.html">configuration</a><br />
<a href="li_Help.html">Help</a><br />
<a href="li_LDAP.html">LDAP</a><br />
<a href="li_lib.html">lib</a><br />
<a href="li_lists.html">lists</a><br />
<a href="li_main.html">main</a><br />
<a href="li_modules.html">modules</a><br />
<a href="li_PDF.html">PDF</a><br />
<a href="li_profiles.html">profiles</a><br />
<a href="li_tests.html">tests</a><br />
<a href="li_tools.html">tools</a><br />
<a href="li_types.html">types</a><br />
<br /><br />
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
<h1>Class Trees for Package LDAP</h1>
<hr />
<div class="classtree">Root class Ldap</div><br>
<ul>
<li><a href="LDAP/Ldap.html">Ldap</a></li></ul>
<div class="credit">
<hr />
Documentation generated on Tue, 07 Feb 2006 17:03:31 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.2.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,121 @@
<html>
<head>
<title>Class Trees for Package PDF</title>
<link rel="stylesheet" type="text/css" href="media/style.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">PDF</td>
</tr>
<tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="classtrees_PDF.html" class="menu">class tree: PDF</a> ]
[ <a href="elementindex_PDF.html" class="menu">index: PDF</a> ]
[ <a href="elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<div id="ric">
<p><a href="ric_README.html">README</a></p>
<p><a href="ric_INSTALL.html">INSTALL</a></p>
</div>
<div id="todolist">
<p><a href="todolist.html">Todo List</a></p>
</div>
<b>Packages:</b><br />
<a href="li_configuration.html">configuration</a><br />
<a href="li_Help.html">Help</a><br />
<a href="li_LDAP.html">LDAP</a><br />
<a href="li_lib.html">lib</a><br />
<a href="li_lists.html">lists</a><br />
<a href="li_main.html">main</a><br />
<a href="li_modules.html">modules</a><br />
<a href="li_PDF.html">PDF</a><br />
<a href="li_profiles.html">profiles</a><br />
<a href="li_tests.html">tests</a><br />
<a href="li_tools.html">tools</a><br />
<a href="li_types.html">types</a><br />
<br /><br />
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
<h1>Class Trees for Package PDF</h1>
<hr />
<div class="classtree">Root class FPDF</div><br>
<ul>
<li><a href="PDF/FPDF.html">FPDF</a><ul>
<li><a href="PDF/UFPDF.html">UFPDF</a><ul>
<li><a href="PDF/lamPDF.html">lamPDF</a></li></ul></li>
</ul></li>
</ul>
<hr />
<div class="classtree">Root class xmlParser</div><br>
<ul>
<li><a href="PDF/xmlParser.html">xmlParser</a></li></ul>
<div class="credit">
<hr />
Documentation generated on Tue, 07 Feb 2006 17:03:31 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.2.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,117 @@
<html>
<head>
<title>Class Trees for Package configuration</title>
<link rel="stylesheet" type="text/css" href="media/style.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">configuration</td>
</tr>
<tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="classtrees_configuration.html" class="menu">class tree: configuration</a> ]
[ <a href="elementindex_configuration.html" class="menu">index: configuration</a> ]
[ <a href="elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<div id="ric">
<p><a href="ric_README.html">README</a></p>
<p><a href="ric_INSTALL.html">INSTALL</a></p>
</div>
<div id="todolist">
<p><a href="todolist.html">Todo List</a></p>
</div>
<b>Packages:</b><br />
<a href="li_configuration.html">configuration</a><br />
<a href="li_Help.html">Help</a><br />
<a href="li_LDAP.html">LDAP</a><br />
<a href="li_lib.html">lib</a><br />
<a href="li_lists.html">lists</a><br />
<a href="li_main.html">main</a><br />
<a href="li_modules.html">modules</a><br />
<a href="li_PDF.html">PDF</a><br />
<a href="li_profiles.html">profiles</a><br />
<a href="li_tests.html">tests</a><br />
<a href="li_tools.html">tools</a><br />
<a href="li_types.html">types</a><br />
<br /><br />
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
<h1>Class Trees for Package configuration</h1>
<hr />
<div class="classtree">Root class CfgMain</div><br>
<ul>
<li><a href="configuration/CfgMain.html">CfgMain</a></li></ul>
<hr />
<div class="classtree">Root class Config</div><br>
<ul>
<li><a href="configuration/Config.html">Config</a></li></ul>
<div class="credit">
<hr />
Documentation generated on Tue, 07 Feb 2006 17:03:31 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.2.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,124 @@
<html>
<head>
<title>Class Trees for Package lib</title>
<link rel="stylesheet" type="text/css" href="media/style.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">lib</td>
</tr>
<tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="classtrees_lib.html" class="menu">class tree: lib</a> ]
[ <a href="elementindex_lib.html" class="menu">index: lib</a> ]
[ <a href="elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<div id="ric">
<p><a href="ric_README.html">README</a></p>
<p><a href="ric_INSTALL.html">INSTALL</a></p>
</div>
<div id="todolist">
<p><a href="todolist.html">Todo List</a></p>
</div>
<b>Packages:</b><br />
<a href="li_configuration.html">configuration</a><br />
<a href="li_Help.html">Help</a><br />
<a href="li_LDAP.html">LDAP</a><br />
<a href="li_lib.html">lib</a><br />
<a href="li_lists.html">lists</a><br />
<a href="li_main.html">main</a><br />
<a href="li_modules.html">modules</a><br />
<a href="li_PDF.html">PDF</a><br />
<a href="li_profiles.html">profiles</a><br />
<a href="li_tests.html">tests</a><br />
<a href="li_tools.html">tools</a><br />
<a href="li_types.html">types</a><br />
<br /><br />
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
<h1>Class Trees for Package lib</h1>
<hr />
<div class="classtree">Root class cache</div><br>
<ul>
<li><a href="lib/cache.html">cache</a></li></ul>
<hr />
<div class="classtree">Root class ObjectClassAttribute</div><br>
<ul>
<li><a href="lib/ObjectClassAttribute.html">ObjectClassAttribute</a></li></ul>
<hr />
<div class="classtree">Root class SchemaItem</div><br>
<ul>
<li><a href="lib/SchemaItem.html">SchemaItem</a><ul>
<li><a href="lib/AttributeType.html">AttributeType</a></li><li><a href="lib/MatchingRule.html">MatchingRule</a></li><li><a href="lib/MatchingRuleUse.html">MatchingRuleUse</a></li><li><a href="lib/ObjectClass.html">ObjectClass</a></li><li><a href="lib/Syntax.html">Syntax</a></li></ul></li>
</ul>
<div class="credit">
<hr />
Documentation generated on Tue, 07 Feb 2006 17:03:31 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.2.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,114 @@
<html>
<head>
<title>Class Trees for Package lists</title>
<link rel="stylesheet" type="text/css" href="media/style.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">lists</td>
</tr>
<tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="classtrees_lists.html" class="menu">class tree: lists</a> ]
[ <a href="elementindex_lists.html" class="menu">index: lists</a> ]
[ <a href="elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<div id="ric">
<p><a href="ric_README.html">README</a></p>
<p><a href="ric_INSTALL.html">INSTALL</a></p>
</div>
<div id="todolist">
<p><a href="todolist.html">Todo List</a></p>
</div>
<b>Packages:</b><br />
<a href="li_configuration.html">configuration</a><br />
<a href="li_Help.html">Help</a><br />
<a href="li_LDAP.html">LDAP</a><br />
<a href="li_lib.html">lib</a><br />
<a href="li_lists.html">lists</a><br />
<a href="li_main.html">main</a><br />
<a href="li_modules.html">modules</a><br />
<a href="li_PDF.html">PDF</a><br />
<a href="li_profiles.html">profiles</a><br />
<a href="li_tests.html">tests</a><br />
<a href="li_tools.html">tools</a><br />
<a href="li_types.html">types</a><br />
<br /><br />
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
<h1>Class Trees for Package lists</h1>
<hr />
<div class="classtree">Root class lamList</div><br>
<ul>
<li><a href="lists/lamList.html">lamList</a><ul>
<li><a href="lists/lamGroupList.html">lamGroupList</a></li><li><a href="lists/lamHostList.html">lamHostList</a></li><li><a href="lists/lamMailAliasList.html">lamMailAliasList</a></li><li><a href="lists/lamSmbDomainList.html">lamSmbDomainList</a></li><li><a href="lists/lamUserList.html">lamUserList</a></li></ul></li>
</ul>
<div class="credit">
<hr />
Documentation generated on Tue, 07 Feb 2006 17:03:31 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.2.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,107 @@
<html>
<head>
<title>Class Trees for Package main</title>
<link rel="stylesheet" type="text/css" href="media/style.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">main</td>
</tr>
<tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="classtrees_main.html" class="menu">class tree: main</a> ]
[ <a href="elementindex_main.html" class="menu">index: main</a> ]
[ <a href="elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<div id="ric">
<p><a href="ric_README.html">README</a></p>
<p><a href="ric_INSTALL.html">INSTALL</a></p>
</div>
<div id="todolist">
<p><a href="todolist.html">Todo List</a></p>
</div>
<b>Packages:</b><br />
<a href="li_configuration.html">configuration</a><br />
<a href="li_Help.html">Help</a><br />
<a href="li_LDAP.html">LDAP</a><br />
<a href="li_lib.html">lib</a><br />
<a href="li_lists.html">lists</a><br />
<a href="li_main.html">main</a><br />
<a href="li_modules.html">modules</a><br />
<a href="li_PDF.html">PDF</a><br />
<a href="li_profiles.html">profiles</a><br />
<a href="li_tests.html">tests</a><br />
<a href="li_tools.html">tools</a><br />
<a href="li_types.html">types</a><br />
<br /><br />
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
<h1>Class Trees for Package main</h1>
<div class="credit">
<hr />
Documentation generated on Tue, 07 Feb 2006 17:03:31 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.2.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,129 @@
<html>
<head>
<title>Class Trees for Package modules</title>
<link rel="stylesheet" type="text/css" href="media/style.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">modules</td>
</tr>
<tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="classtrees_modules.html" class="menu">class tree: modules</a> ]
[ <a href="elementindex_modules.html" class="menu">index: modules</a> ]
[ <a href="elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<div id="ric">
<p><a href="ric_README.html">README</a></p>
<p><a href="ric_INSTALL.html">INSTALL</a></p>
</div>
<div id="todolist">
<p><a href="todolist.html">Todo List</a></p>
</div>
<b>Packages:</b><br />
<a href="li_configuration.html">configuration</a><br />
<a href="li_Help.html">Help</a><br />
<a href="li_LDAP.html">LDAP</a><br />
<a href="li_lib.html">lib</a><br />
<a href="li_lists.html">lists</a><br />
<a href="li_main.html">main</a><br />
<a href="li_modules.html">modules</a><br />
<a href="li_PDF.html">PDF</a><br />
<a href="li_profiles.html">profiles</a><br />
<a href="li_tests.html">tests</a><br />
<a href="li_tools.html">tools</a><br />
<a href="li_types.html">types</a><br />
<br /><br />
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
<h1>Class Trees for Package modules</h1>
<hr />
<div class="classtree">Root class accountContainer</div><br>
<ul>
<li><a href="modules/accountContainer.html">accountContainer</a></li></ul>
<hr />
<div class="classtree">Root class baseModule</div><br>
<ul>
<li><a href="modules/baseModule.html">baseModule</a><ul>
<li><a href="modules/account.html">account</a></li><li><a href="modules/ieee802Device.html">ieee802Device</a></li><li><a href="modules/inetLocalMailRecipient.html">inetLocalMailRecipient</a></li><li><a href="modules/inetOrgPerson.html">inetOrgPerson</a></li><li><a href="modules/kolabUser.html">kolabUser</a></li><li><a href="modules/ldapPublicKey.html">ldapPublicKey</a></li><li><a href="modules/nisMailAlias.html">nisMailAlias</a></li><li><a href="modules/posixAccount.html">posixAccount</a></li><li><a href="modules/posixGroup.html">posixGroup</a></li><li><a href="modules/quota.html">quota</a></li><li><a href="modules/sambaAccount.html">sambaAccount</a></li><li><a href="modules/sambaDomain.html">sambaDomain</a></li><li><a href="modules/sambaGroupMapping.html">sambaGroupMapping</a></li><li><a href="modules/sambaSamAccount.html">sambaSamAccount</a></li><li><a href="modules/shadowAccount.html">shadowAccount</a></li></ul></li>
</ul>
<hr />
<div class="classtree">Root class samba3domain</div><br>
<ul>
<li><a href="modules/samba3domain.html">samba3domain</a></li></ul>
<hr />
<div class="classtree">Root class smbHash</div><br>
<ul>
<li><a href="modules/smbHash.html">smbHash</a></li></ul>
<div class="credit">
<hr />
Documentation generated on Tue, 07 Feb 2006 17:03:31 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.2.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,107 @@
<html>
<head>
<title>Class Trees for Package profiles</title>
<link rel="stylesheet" type="text/css" href="media/style.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">profiles</td>
</tr>
<tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="classtrees_profiles.html" class="menu">class tree: profiles</a> ]
[ <a href="elementindex_profiles.html" class="menu">index: profiles</a> ]
[ <a href="elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<div id="ric">
<p><a href="ric_README.html">README</a></p>
<p><a href="ric_INSTALL.html">INSTALL</a></p>
</div>
<div id="todolist">
<p><a href="todolist.html">Todo List</a></p>
</div>
<b>Packages:</b><br />
<a href="li_configuration.html">configuration</a><br />
<a href="li_Help.html">Help</a><br />
<a href="li_LDAP.html">LDAP</a><br />
<a href="li_lib.html">lib</a><br />
<a href="li_lists.html">lists</a><br />
<a href="li_main.html">main</a><br />
<a href="li_modules.html">modules</a><br />
<a href="li_PDF.html">PDF</a><br />
<a href="li_profiles.html">profiles</a><br />
<a href="li_tests.html">tests</a><br />
<a href="li_tools.html">tools</a><br />
<a href="li_types.html">types</a><br />
<br /><br />
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
<h1>Class Trees for Package profiles</h1>
<div class="credit">
<hr />
Documentation generated on Tue, 07 Feb 2006 17:03:31 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.2.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,107 @@
<html>
<head>
<title>Class Trees for Package tests</title>
<link rel="stylesheet" type="text/css" href="media/style.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">tests</td>
</tr>
<tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="classtrees_tests.html" class="menu">class tree: tests</a> ]
[ <a href="elementindex_tests.html" class="menu">index: tests</a> ]
[ <a href="elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<div id="ric">
<p><a href="ric_README.html">README</a></p>
<p><a href="ric_INSTALL.html">INSTALL</a></p>
</div>
<div id="todolist">
<p><a href="todolist.html">Todo List</a></p>
</div>
<b>Packages:</b><br />
<a href="li_configuration.html">configuration</a><br />
<a href="li_Help.html">Help</a><br />
<a href="li_LDAP.html">LDAP</a><br />
<a href="li_lib.html">lib</a><br />
<a href="li_lists.html">lists</a><br />
<a href="li_main.html">main</a><br />
<a href="li_modules.html">modules</a><br />
<a href="li_PDF.html">PDF</a><br />
<a href="li_profiles.html">profiles</a><br />
<a href="li_tests.html">tests</a><br />
<a href="li_tools.html">tools</a><br />
<a href="li_types.html">types</a><br />
<br /><br />
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
<h1>Class Trees for Package tests</h1>
<div class="credit">
<hr />
Documentation generated on Tue, 07 Feb 2006 17:03:31 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.2.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,121 @@
<html>
<head>
<title>Class Trees for Package tools</title>
<link rel="stylesheet" type="text/css" href="media/style.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">tools</td>
</tr>
<tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="classtrees_tools.html" class="menu">class tree: tools</a> ]
[ <a href="elementindex_tools.html" class="menu">index: tools</a> ]
[ <a href="elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<div id="ric">
<p><a href="ric_README.html">README</a></p>
<p><a href="ric_INSTALL.html">INSTALL</a></p>
</div>
<div id="todolist">
<p><a href="todolist.html">Todo List</a></p>
</div>
<b>Packages:</b><br />
<a href="li_configuration.html">configuration</a><br />
<a href="li_Help.html">Help</a><br />
<a href="li_LDAP.html">LDAP</a><br />
<a href="li_lib.html">lib</a><br />
<a href="li_lists.html">lists</a><br />
<a href="li_main.html">main</a><br />
<a href="li_modules.html">modules</a><br />
<a href="li_PDF.html">PDF</a><br />
<a href="li_profiles.html">profiles</a><br />
<a href="li_tests.html">tests</a><br />
<a href="li_tools.html">tools</a><br />
<a href="li_types.html">types</a><br />
<br /><br />
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
<h1>Class Trees for Package tools</h1>
<hr />
<div class="classtree">Root class LdapExportInfo</div><br>
<ul>
<li><a href="tools/LdapExportInfo.html">LdapExportInfo</a></li></ul>
<hr />
<div class="classtree">Root class PlaAbstractExporter</div><br>
<ul>
<li><a href="tools/PlaAbstractExporter.html">PlaAbstractExporter</a><ul>
<li><a href="tools/PlaExporter.html">PlaExporter</a><ul>
<li><a href="tools/MyCustomExporter.html">MyCustomExporter</a></li><li><a href="tools/PlaCSVExporter.html">PlaCSVExporter</a></li><li><a href="tools/PlaDsmlExporter.html">PlaDsmlExporter</a></li><li><a href="tools/PlaLdifExporter.html">PlaLdifExporter</a></li><li><a href="tools/PlaVcardExporter.html">PlaVcardExporter</a></li></ul></li>
<li><a href="tools/PlaLdapExporter.html">PlaLdapExporter</a></li></ul></li>
</ul>
<div class="credit">
<hr />
Documentation generated on Tue, 07 Feb 2006 17:03:31 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.2.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,114 @@
<html>
<head>
<title>Class Trees for Package types</title>
<link rel="stylesheet" type="text/css" href="media/style.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">types</td>
</tr>
<tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="classtrees_types.html" class="menu">class tree: types</a> ]
[ <a href="elementindex_types.html" class="menu">index: types</a> ]
[ <a href="elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<div id="ric">
<p><a href="ric_README.html">README</a></p>
<p><a href="ric_INSTALL.html">INSTALL</a></p>
</div>
<div id="todolist">
<p><a href="todolist.html">Todo List</a></p>
</div>
<b>Packages:</b><br />
<a href="li_configuration.html">configuration</a><br />
<a href="li_Help.html">Help</a><br />
<a href="li_LDAP.html">LDAP</a><br />
<a href="li_lib.html">lib</a><br />
<a href="li_lists.html">lists</a><br />
<a href="li_main.html">main</a><br />
<a href="li_modules.html">modules</a><br />
<a href="li_PDF.html">PDF</a><br />
<a href="li_profiles.html">profiles</a><br />
<a href="li_tests.html">tests</a><br />
<a href="li_tools.html">tools</a><br />
<a href="li_types.html">types</a><br />
<br /><br />
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
<h1>Class Trees for Package types</h1>
<hr />
<div class="classtree">Root class baseType</div><br>
<ul>
<li><a href="types/baseType.html">baseType</a><ul>
<li><a href="types/group.html">group</a></li><li><a href="types/host.html">host</a></li><li><a href="types/mailAlias.html">mailAlias</a></li><li><a href="types/smbDomain.html">smbDomain</a></li><li><a href="types/user.html">user</a></li></ul></li>
</ul>
<div class="credit">
<hr />
Documentation generated on Tue, 07 Feb 2006 17:03:31 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.2.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,292 @@
<html>
<head>
<title>Docs For Class CfgMain</title>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">configuration</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_configuration.html" class="menu">class tree: configuration</a> ]
[ <a href="../elementindex_configuration.html" class="menu">index: configuration</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<div id="ric">
<p><a href="../ric_README.html">README</a></p>
<p><a href="../ric_INSTALL.html">INSTALL</a></p>
</div>
<div id="todolist">
<p><a href="../todolist.html">Todo List</a></p>
</div>
<b>Packages:</b><br />
<a href="../li_configuration.html">configuration</a><br />
<a href="../li_Help.html">Help</a><br />
<a href="../li_LDAP.html">LDAP</a><br />
<a href="../li_lib.html">lib</a><br />
<a href="../li_lists.html">lists</a><br />
<a href="../li_main.html">main</a><br />
<a href="../li_modules.html">modules</a><br />
<a href="../li_PDF.html">PDF</a><br />
<a href="../li_profiles.html">profiles</a><br />
<a href="../li_tests.html">tests</a><br />
<a href="../li_tools.html">tools</a><br />
<a href="../li_types.html">types</a><br />
<br /><br />
<b>Files:</b><br />
<div class="package">
<a href="../configuration/_lib_config_inc.html"> config.inc
</a><br>
<a href="../configuration/_templates_config_conflogin_php.html"> conflogin.php
</a><br>
<a href="../configuration/_templates_config_confmain_php.html"> confmain.php
</a><br>
<a href="../configuration/_templates_config_confmodules_php.html"> confmodules.php
</a><br>
<a href="../configuration/_templates_config_conftypes_php.html"> conftypes.php
</a><br>
<a href="../configuration/_templates_config_profmanage_php.html"> profmanage.php
</a><br>
</div><br />
<b>Classes:</b><br />
<div class="package">
<a href="../configuration/CfgMain.html">CfgMain</a><br />
<a href="../configuration/Config.html">Config</a><br />
</div>
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
<h1>Class: CfgMain</h1>
Source Location: /lib/config.inc<br /><br />
<table width="100%" border="0">
<tr><td valign="top">
<h3><a href="#class_details">Class Overview</a></h3>
<pre></pre><br />
<div class="description">This class manages config.cfg.</div><br /><br />
</td>
<td valign="top">
<h3><a href="#class_vars">Variables</a></h3>
<ul>
<li><a href="../configuration/CfgMain.html#var$default">$default</a></li>
<li><a href="../configuration/CfgMain.html#var$password">$password</a></li>
</ul>
</td>
<td valign="top">
<h3><a href="#class_methods">Methods</a></h3>
<ul>
<li><a href="../configuration/CfgMain.html#methodCfgMain">CfgMain</a></li>
<li><a href="../configuration/CfgMain.html#methodreload">reload</a></li>
<li><a href="../configuration/CfgMain.html#methodsave">save</a></li>
</ul>
</td>
</tr></table>
<hr />
<table width="100%" border="0"><tr>
</tr></table>
<hr />
<a name="class_details"></a>
<h3>Class Details</h3>
<div class="tags">
[line 714]<br />
This class manages config.cfg.<br /><br /></div><br /><br />
<div class="top">[ <a href="#top">Top</a> ]</div><br />
<hr />
<a name="class_vars"></a>
<h3>Class Variables</h3>
<div class="tags">
<a name="var$default"></a>
<p></p>
<h4>$default = <span class="value"></span></h4>
<p>[line 717]</p>
Default profile<br /><br />
<br />
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>Type:</b>&nbsp;&nbsp;</td>
<td>mixed</td>
</tr>
</table>
</div><br /><br />
<div class="top">[ <a href="#top">Top</a> ]</div><br />
<a name="var$password"></a>
<p></p>
<h4>$password = <span class="value"></span></h4>
<p>[line 720]</p>
Password to change config.cfg<br /><br />
<br />
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>Type:</b>&nbsp;&nbsp;</td>
<td>mixed</td>
</tr>
</table>
</div><br /><br />
<div class="top">[ <a href="#top">Top</a> ]</div><br />
</div><br />
<hr />
<a name="class_methods"></a>
<h3>Class Methods</h3>
<div class="tags">
<hr />
<a name="methodCfgMain"></a>
<h3>constructor CfgMain <span class="smalllinenumber">[line 725]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>CfgMain CfgMain(
)</code>
</td></tr></table>
</td></tr></table><br />
Loads preferences from config file<br /><br /><br /><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodreload"></a>
<h3>method reload <span class="smalllinenumber">[line 734]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>boolean reload(
)</code>
</td></tr></table>
</td></tr></table><br />
Reloads preferences from config file config.cfg<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>return:</b>&nbsp;&nbsp;</td><td>true if file was readable</td>
</tr>
</table>
</div>
<br /><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
<hr />
<a name="methodsave"></a>
<h3>method save <span class="smalllinenumber">[line 761]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>void save(
)</code>
</td></tr></table>
</td></tr></table><br />
Saves preferences to config file config.cfg<br /><br /><br /><br />
<div class="top">[ <a href="#top">Top</a> ]</div>
</div>
</div><br />
<div class="credit">
<hr />
Documentation generated on Tue, 07 Feb 2006 17:03:36 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.2.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,252 @@
<html>
<head>
<title>Docs for page config.inc</title>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">configuration</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_configuration.html" class="menu">class tree: configuration</a> ]
[ <a href="../elementindex_configuration.html" class="menu">index: configuration</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<div id="ric">
<p><a href="../ric_README.html">README</a></p>
<p><a href="../ric_INSTALL.html">INSTALL</a></p>
</div>
<div id="todolist">
<p><a href="../todolist.html">Todo List</a></p>
</div>
<b>Packages:</b><br />
<a href="../li_configuration.html">configuration</a><br />
<a href="../li_Help.html">Help</a><br />
<a href="../li_LDAP.html">LDAP</a><br />
<a href="../li_lib.html">lib</a><br />
<a href="../li_lists.html">lists</a><br />
<a href="../li_main.html">main</a><br />
<a href="../li_modules.html">modules</a><br />
<a href="../li_PDF.html">PDF</a><br />
<a href="../li_profiles.html">profiles</a><br />
<a href="../li_tests.html">tests</a><br />
<a href="../li_tools.html">tools</a><br />
<a href="../li_types.html">types</a><br />
<br /><br />
<b>Files:</b><br />
<div class="package">
<a href="../configuration/_lib_config_inc.html"> config.inc
</a><br>
<a href="../configuration/_templates_config_conflogin_php.html"> conflogin.php
</a><br>
<a href="../configuration/_templates_config_confmain_php.html"> confmain.php
</a><br>
<a href="../configuration/_templates_config_confmodules_php.html"> confmodules.php
</a><br>
<a href="../configuration/_templates_config_conftypes_php.html"> conftypes.php
</a><br>
<a href="../configuration/_templates_config_profmanage_php.html"> profmanage.php
</a><br>
</div><br />
<b>Classes:</b><br />
<div class="package">
<a href="../configuration/CfgMain.html">CfgMain</a><br />
<a href="../configuration/Config.html">Config</a><br />
</div>
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
<h1>Procedural File: config.inc</h1>
Source Location: /lib/config.inc<br /><br />
<br>
<br>
<div class="contents">
<h2>Classes:</h2>
<dt><a href="../configuration/Config.html">Config</a></dt>
<dd>This class manages .conf files.</dd>
<dt><a href="../configuration/CfgMain.html">CfgMain</a></dt>
<dd>This class manages config.cfg.</dd>
</div><br /><br />
<h2>Page Details:</h2>
This file includes functions to manage the configuration files.<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>author:</b>&nbsp;&nbsp;</td><td>Roland Gruber</td>
</tr>
</table>
</div>
<br /><br />
<h4>Includes:</h4>
<div class="tags">
include_once(<a href="../modules/_lib_modules_inc.html">"modules.inc"</a>) [line 35]<br />
Used to get module information.<br /><br />include_once(<a href="../lib/_lib_status_inc.html">"status.inc"</a>) [line 33]<br />
Used to print messages.<br /><br />include_once(<a href="../types/_lib_types_inc.html">"types.inc"</a>) [line 37]<br />
Used to get type information.<br /><br /></div>
<br /><br />
<br /><br />
<br />
<hr />
<a name="functiongetConfigProfiles"></a>
<h3>getConfigProfiles <span class="smalllinenumber">[line 61]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>array getConfigProfiles(
)</code>
</td></tr></table>
</td></tr></table><br />
Returns an array of string with all available configuration profiles (without .conf)<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>return:</b>&nbsp;&nbsp;</td><td>profile names</td>
</tr>
</table>
</div>
<br /><br />
<div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
</div>
<hr />
<a name="functionLAMVersion"></a>
<h3>LAMVersion <span class="smalllinenumber">[line 85]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>string LAMVersion(
)</code>
</td></tr></table>
</td></tr></table><br />
Returns the version number of this LAM installation.<br /><br /><p>Format: &lt;major version&gt;.&lt;minor version&gt;.&lt;patch level&gt; <br /> Major/minor version are always numbers, patch level may contain letters for inofficial releases only (e.g. 0.5.alpha1).</p><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>return:</b>&nbsp;&nbsp;</td><td>version number</td>
</tr>
</table>
</div>
<br /><br />
<div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
</div>
<hr />
<a name="functionmetaRefresh"></a>
<h3>metaRefresh <span class="smalllinenumber">[line 103]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>void metaRefresh(
string $page)</code>
</td></tr></table>
</td></tr></table><br />
Prints a meta refresh page<br /><br /> <br /><br />
<h4>Parameters</h4>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="type">string&nbsp;&nbsp;</td>
<td><b>$page</b>&nbsp;&nbsp;</td>
<td>the URL of the target page</td>
</tr>
</table>
<div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
</div>
<hr />
<a name="functionsetlanguage"></a>
<h3>setlanguage <span class="smalllinenumber">[line 42]</span></h3>
<div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>void setlanguage(
)</code>
</td></tr></table>
</td></tr></table><br />
Sets language settings for automatic translation<br /><br /> <br /><br />
<div class="top">[ <a href="#top">Top</a> ]</div><br /><br />
</div>
<div class="credit">
<hr />
Documentation generated on Tue, 07 Feb 2006 17:03:36 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.2.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

View File

@ -0,0 +1,154 @@
<html>
<head>
<title>Docs for page conflogin.php</title>
<link rel="stylesheet" type="text/css" href="../media/style.css">
</head>
<body>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
<table border="0" cellspacing="0" cellpadding="0" height="48" width="100%">
<tr>
<td class="header_top">configuration</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
<tr>
<td class="header_menu">
[ <a href="../classtrees_configuration.html" class="menu">class tree: configuration</a> ]
[ <a href="../elementindex_configuration.html" class="menu">index: configuration</a> ]
[ <a href="../elementindex.html" class="menu">all elements</a> ]
</td>
</tr>
<tr><td class="header_line"><img src="../media/empty.png" width="1" height="1" border="0" alt="" /></td></tr>
</table>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr valign="top">
<td width="200" class="menu">
<div id="ric">
<p><a href="../ric_README.html">README</a></p>
<p><a href="../ric_INSTALL.html">INSTALL</a></p>
</div>
<div id="todolist">
<p><a href="../todolist.html">Todo List</a></p>
</div>
<b>Packages:</b><br />
<a href="../li_configuration.html">configuration</a><br />
<a href="../li_Help.html">Help</a><br />
<a href="../li_LDAP.html">LDAP</a><br />
<a href="../li_lib.html">lib</a><br />
<a href="../li_lists.html">lists</a><br />
<a href="../li_main.html">main</a><br />
<a href="../li_modules.html">modules</a><br />
<a href="../li_PDF.html">PDF</a><br />
<a href="../li_profiles.html">profiles</a><br />
<a href="../li_tests.html">tests</a><br />
<a href="../li_tools.html">tools</a><br />
<a href="../li_types.html">types</a><br />
<br /><br />
<b>Files:</b><br />
<div class="package">
<a href="../configuration/_lib_config_inc.html"> config.inc
</a><br>
<a href="../configuration/_templates_config_conflogin_php.html"> conflogin.php
</a><br>
<a href="../configuration/_templates_config_confmain_php.html"> confmain.php
</a><br>
<a href="../configuration/_templates_config_confmodules_php.html"> confmodules.php
</a><br>
<a href="../configuration/_templates_config_conftypes_php.html"> conftypes.php
</a><br>
<a href="../configuration/_templates_config_profmanage_php.html"> profmanage.php
</a><br>
</div><br />
<b>Classes:</b><br />
<div class="package">
<a href="../configuration/CfgMain.html">CfgMain</a><br />
<a href="../configuration/Config.html">Config</a><br />
</div>
</td>
<td>
<table cellpadding="10" cellspacing="0" width="100%" border="0"><tr><td valign="top">
<h1>Procedural File: conflogin.php</h1>
Source Location: /templates/config/conflogin.php<br /><br />
<br>
<br>
<h2>Page Details:</h2>
Login page to change the preferences.<br /><br /><br /><br />
<h4>Tags:</h4>
<div class="tags">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><b>author:</b>&nbsp;&nbsp;</td><td>Roland Gruber</td>
</tr>
</table>
</div>
<br /><br />
<h4>Includes:</h4>
<div class="tags">
include_once('../../lib/config.inc') [line 34]<br />
Access to config functions<br /><br />include_once('../../lib/status.inc') [line 36]<br />
Used to print status messages<br /><br /></div>
<br /><br />
<br /><br />
<br />
<div class="credit">
<hr />
Documentation generated on Tue, 07 Feb 2006 17:03:37 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.2.3</a>
</div>
</td></tr></table>
</td>
</tr>
</table>
<p align="center">
<script type="text/javascript"><!--
google_ad_client = "pub-4179059556107138";
google_alternate_ad_url = "http://lam.sourceforge.net/google_adsense_script.html";
google_ad_width = 728;
google_ad_height = 90;
google_ad_format = "728x90_as";
google_ad_type = "text_image";
google_ad_channel ="";
google_page_url = document.location;
google_color_border = "EEEEEE";
google_color_bg = "FFFFFF";
google_color_link = "0000FF";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</p>
</body>
</html>

Some files were not shown because too many files have changed in this diff Show More