@@ -26,13 +27,13 @@ How can I make LDAP operations, where is the user name and password?
A: LAM
automatically reconnects to the LDAP server on every page load. You can
-use $_SESSION['ldap']->server
+use $_SESSION['ldap']->server()
which is the LDAP server handle.
Be sure to include ldap.inc before (automatically included for account
modules).
@@ -21,17 +19,14 @@ list of found accounts which can be restricted by LDAP filters and the
LDAP OU (Organizational Unit).
The list of LDAP attributes and thus table columns is taken from the
-configuration profile (get_...listAttributes()
+configuration profile (get_...listAttributes()
in config.inc). Each account list has a separate list of attributes.
Only these attributes are given the LDAP search as attribute parameter.
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.
-The number of accounts per page is limited in the configuration profile
-(get_MaxListEntries()
-in config.inc). There will be links at the beginning and end of the
+The number of accounts per page is limited by a list option. There will be links at the beginning and end of the
list if more accounts were found.
Several common helper functions for sorting and some page elements
@@ -40,8 +35,7 @@ reside in lists.inc.
1. Getting accounts from LDAP
Each account list has its own LDAP suffix which is saved in the
configuration profile. This is used as search base.
-The account modules provide an LDAP filter (get_ldap_filter()
+The account modules provide an LDAP filter (get_ldap_filter()
in modules.inc) to get only accounts of a special type.
This list can be further reduced if the user provides an additional
@@ -78,8 +72,7 @@ clicking the row if Java Script is enabled.
4. Export to PDF
-The user can generate PDF files for the accounts. This is done by the createModulePDF()
+The user can generate PDF files for the accounts. This is done by the createModulePDF()
function from pdf.inc.
@@ -99,5 +92,4 @@ and redirects to account/edit.php for account modifying.
-
-
+
\ No newline at end of file
diff --git a/lam-web/developers/devel/login.htm b/lam-web/developers/devel/login.htm
index bbf07168..2a03512a 100644
--- a/lam-web/developers/devel/login.htm
+++ b/lam-web/developers/devel/login.htm
@@ -5,6 +5,7 @@
http-equiv="content-type">
Login
+
-LAM currently provides three account types: users, groups, hosts
+LAM currently provides three account types: users, groups, hosts A module can manage one or more account types.
The types are specified with can_manage()
or meta['account_types'].
-Example:
+Example:
Our ieee802Device
module will be used only for host accounts.
In LDAP every entry needs exactly one structural
-object class. Therefore all modules which provide a structural object class are marked
+object class. Therefore all modules which provide a structural object class are marked
as base module.
This is done with is_base_module()
or meta['is_base'].
-Example:
+Example:
The inetOrgPerson
module manages the structural object class "inetOrgPerson" and
@@ -70,8 +64,7 @@ therefore is a base module.
If your module is not a base module you can skip the meta data for
this, default is false.
-The module name is very limited, therefore every module has an alias name. This alias name has no limitations and
+The module name is very limited, therefore every module has an alias name. This alias name has no limitations and
can be translated. It may contain special characters but make sure that
it does not contain HTML special characters like "<".
The alias name can be the
@@ -109,14 +99,12 @@ The alias name is specified
with get_alias()
or meta['alias'].
-Example:
+Example:
Our ieee802Device
module will get the alias MAC address.
@@ -185,29 +169,25 @@ array('account'), 'conflicts' => array());
-The baseModule offers the $messages variable for this. It
+The baseModule offers the $messages variable for this. It
should be filled by a function called load_Messages().
The baseModule will
automatically check if you have implemented this function and call it
at construction time.
-Example:
+Example:
Now let our ieee802Device
module define a message.
-
+
/**
* This function fills the error message array with
messages
*/
- functionload_Messages() {
+ functionload_Messages() {
$this->messages['mac'][0] =
array('ERROR', 'MAC address is invalid!'); // third array value
is set dynamically
@@ -231,8 +211,7 @@ smbldap-tools) also create accounts and the spelling is differnt.
The ieee802Device module
manages one object class.
-
+
/**
@@ -271,8 +250,7 @@ the "cn" attribute. This attribute is also known under the alias
This way the module will never see attributes called "commonName"
because LAM renames them as soon as the LDAP entry is loaded.
-
+
/**
@@ -300,5 +278,50 @@ get_metaData() {
-
-
+
8. Icon
+
+You can specify a icon for you module. It will be displayed on the
+account pages and other module specific places (e.g. file upload).
+The icons must be 32x32 pixels in size. The location is relative to the graphics directory.
+
+
+
+Example:
+
+
+
+The posixGroup module uses the "tux.png" from the graphics directory.
+
+
+
+
+
+
+
+
/**
+ * Returns meta data that is interpreted by parent
+class
+ *
+ * @return array array with meta data
+ */
+ function
+get_metaData() {
+ $return = array(); // icon
+ $return['icon'] = 'tux.png';
+ return $return;
+ }
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/lam-web/developers/devel/mod_help.htm b/lam-web/developers/devel/mod_help.htm
index 42efc69f..cb0ce433 100644
--- a/lam-web/developers/devel/mod_help.htm
+++ b/lam-web/developers/devel/mod_help.htm
@@ -3,6 +3,7 @@
Module HowTo - Help entries
+
This document describes the type
diff --git a/lam-web/developers/devel/upgrade.htm b/lam-web/developers/devel/upgrade.htm
new file mode 100644
index 00000000..dc84d995
--- /dev/null
+++ b/lam-web/developers/devel/upgrade.htm
@@ -0,0 +1,179 @@
+
+Upgrade notes
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Upgrade notes
+
+
+
2.1.0 -> 2.2.0
+
Account lists
+Account lists now support to define tools. These are displayed as linked images like the edit and delete links in the list.
+
+Overwrite lamList::getAdditionalTools() to use this feature.
+
+
+
+The definition of account list options changed. The function lamList::getAdditionalTools() is no longer available. Use these functions instead: lamList::listGetAllConfigOptions() and lamList::listConfigurationChanged().
+
+All options are now saved in cookies for one year.
+
+
+
Base module
+
+
+The baseModule class has a new protected option: $autoAddObjectClasses You can set it to false if you do not want that your module's object classes are added when creating or loading an account.
+
+
+
+Account modules can now have icons. See baseModule->getIcon().
+
+
+
+
Constructors
+LAM now uses the PHP5 syntax for constructors: __construct()
+
+
+
Extended security model
+Each server profile now defines an access level.
+
+Currently these are:
+
+
write access
+
password changes
+
read access
+
+
+ Please check your code and prohibit any actions which do not fit the current access level.
+There are two new functions in security.inc: checkIfWriteAccessIsAllowed() and checkIfPasswordChangeIsAllowed()
+Only LAM Pro allows to change the access level from write access to a smaller level.
+
+
+
+
+
2.0.0 -> 2.1.0
+
+Style changes:
+
+
+
+
"fieldset.<type>edit fieldset" and "fieldset.<type>edit fieldset fieldset" were removed.
+
"table.<type>list input" changed to "table.<type>list input,select"
+
+
+baseModule:
+
+ The class variable $base is no longer visible in child classes. Please use $this->getAccountContainer() to access the accountContainer object.
+
+
+
+Several other class variables in accountContainer etc. are now private. Use the new access methods.
+
+
+
+
+
+
1.3.0 -> 2.0.0
+
+LAM is now PHP5 only. Several variables are now private and need to be accessed via functions.
+
+
+
+
+
+
1.2.0 -> 1.3.0
+
+New lamList function:
+
+
+
+
listPrintTableCellContent():
+This function allows you to control how the LDAP attributes are
+displayed in the table. This can be used to display links or binary
+data.
+
listPrintAdditionalOptions():
+If you want to display additional conrols for a list please use this
+function. The controls will be placed under the account table.
+
+
+
+No more lamdaemon commands via delete_attributes() and save_attributes() in account modules.
+
+Please use these new functions to call lamdaemon directly:
+
+
+
+
preModifyActions()
+
postModifyActions()
+
preDeleteActions()
+
postDeleteActions()
+
+
+
+
+
1.1.x -> 1.2.0
+
+API changes:
+
+
+
+
removed get_configDescription() from module interface
+
+
+
+
+
1.0.4 -> 1.1.0
+
+API changes:
+
+
+
+
removed $post parameters from module functions (delete_attributes(), process_...(), display_html_...()). Use $_POST instead.
+
process_...()
+functions: returned messages are no longer grouped (e.g. return:
+array(array('INFO', 'headline', 'text'), array('INFO', 'headline2',
+'text2')))
+
+
+
+
+
1.0.0 -> 1.0.2
+
+
+
+New module functions:
+
+
+
+
getRequiredExtensions: Allows to define required PHP extensions
+
getManagedObjectClasses: Definition of managed object classes for this module
+
getLDAPAliases: list of LDAP alias names which are replaced by LAM
+
getManagedAttributes: list of LDAP attributes which are managed by this module
+
+
+The LDAP attributes are no longer loaded by reading the LDAP schema. If
+your module does not implement the load_attributes() function then you
+have to use getManagedAttributes() or the meta data to specify them.
+
+
+
+The class variable "triggered_messages" in baseModule was removed.
+
+
+
+
+
+
\ No newline at end of file
diff --git a/lam-web/developers/devel/upload.htm b/lam-web/developers/devel/upload.htm
index 4bf2b0b6..95be92be 100644
--- a/lam-web/developers/devel/upload.htm
+++ b/lam-web/developers/devel/upload.htm
@@ -5,6 +5,7 @@
http-equiv="content-type">
File upload
+
- Documentation generated on Sun, 04 Nov 2007 12:10:49 +0100 by phpDocumentor 1.4.0
+ Documentation generated on Sun, 06 Jan 2008 18:59:06 +0100 by phpDocumentor 1.4.0
- Documentation generated on Sun, 04 Nov 2007 12:10:49 +0100 by phpDocumentor 1.4.0
+ Documentation generated on Sun, 06 Jan 2008 18:59:06 +0100 by phpDocumentor 1.4.0
- Documentation generated on Sun, 04 Nov 2007 12:10:54 +0100 by phpDocumentor 1.4.0
+ Documentation generated on Sun, 06 Jan 2008 18:59:12 +0100 by phpDocumentor 1.4.0
- Documentation generated on Sun, 04 Nov 2007 12:10:54 +0100 by phpDocumentor 1.4.0
+ Documentation generated on Sun, 06 Jan 2008 18:59:12 +0100 by phpDocumentor 1.4.0
- Documentation generated on Sun, 04 Nov 2007 12:10:47 +0100 by phpDocumentor 1.4.0
+ Documentation generated on Sun, 06 Jan 2008 18:59:02 +0100 by phpDocumentor 1.4.0
- Documentation generated on Sun, 04 Nov 2007 12:11:15 +0100 by phpDocumentor 1.4.0
+ Documentation generated on Sun, 06 Jan 2008 18:59:35 +0100 by phpDocumentor 1.4.0
- Documentation generated on Sun, 04 Nov 2007 12:11:16 +0100 by phpDocumentor 1.4.0
+ Documentation generated on Sun, 06 Jan 2008 18:59:36 +0100 by phpDocumentor 1.4.0
- Documentation generated on Sun, 04 Nov 2007 12:11:16 +0100 by phpDocumentor 1.4.0
+ Documentation generated on Sun, 06 Jan 2008 18:59:36 +0100 by phpDocumentor 1.4.0
- Documentation generated on Sun, 04 Nov 2007 12:11:16 +0100 by phpDocumentor 1.4.0
+ Documentation generated on Sun, 06 Jan 2008 18:59:36 +0100 by phpDocumentor 1.4.0
- Documentation generated on Sun, 04 Nov 2007 12:11:16 +0100 by phpDocumentor 1.4.0
+ Documentation generated on Sun, 06 Jan 2008 18:59:36 +0100 by phpDocumentor 1.4.0
fpdf.php
+
+ lamPDF.inc
pdf.inc
@@ -128,7 +130,7 @@ This file includes the FPDF implementation which is used to generate PDF files.<
- Documentation generated on Sun, 04 Nov 2007 12:10:47 +0100 by phpDocumentor 1.4.0
+ Documentation generated on Sun, 06 Jan 2008 18:59:02 +0100 by phpDocumentor 1.4.0
diff --git a/lam-web/developers/phpdoc/PDF/_lib---lamPDF.inc.html b/lam-web/developers/phpdoc/PDF/_lib---lamPDF.inc.html
new file mode 100644
index 00000000..63bfcd9e
--- /dev/null
+++ b/lam-web/developers/phpdoc/PDF/_lib---lamPDF.inc.html
@@ -0,0 +1,128 @@
+
+
+Docs for page lamPDF.inc
+
+
+
+
+
+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.
+
Tags:
+
+
+
+
author:
Michael Duergner
+
+
+
+
+
+
+
+
+
+
+ Documentation generated on Sun, 06 Jan 2008 18:59:12 +0100 by phpDocumentor 1.4.0
+
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.
@@ -111,11 +108,9 @@ LDAP Account Manager PDF printing library. It consists of lamPDF class, the cre
Includes:
-include_once("ufpdf.php") [line 39]
-Unicode support for FPDF
- Documentation generated on Sun, 04 Nov 2007 12:10:59 +0100 by phpDocumentor 1.4.0
+ Documentation generated on Sun, 06 Jan 2008 18:59:18 +0100 by phpDocumentor 1.4.0
- Documentation generated on Sun, 04 Nov 2007 12:10:59 +0100 by phpDocumentor 1.4.0
+ Documentation generated on Sun, 06 Jan 2008 18:59:18 +0100 by phpDocumentor 1.4.0
- Documentation generated on Sun, 04 Nov 2007 12:11:16 +0100 by phpDocumentor 1.4.0
+ Documentation generated on Sun, 06 Jan 2008 18:59:36 +0100 by phpDocumentor 1.4.0
include_once('../../lib/pdfstruct.inc') [line 35]
helper functions for pdf
@@ -115,7 +117,7 @@ helper functions for pdf
- Documentation generated on Sun, 04 Nov 2007 12:10:59 +0100 by phpDocumentor 1.4.0
+ Documentation generated on Sun, 06 Jan 2008 18:59:18 +0100 by phpDocumentor 1.4.0
- Documentation generated on Sun, 04 Nov 2007 12:10:59 +0100 by phpDocumentor 1.4.0
+ Documentation generated on Sun, 06 Jan 2008 18:59:18 +0100 by phpDocumentor 1.4.0
- Documentation generated on Sun, 04 Nov 2007 12:10:59 +0100 by phpDocumentor 1.4.0
+ Documentation generated on Sun, 06 Jan 2008 18:59:18 +0100 by phpDocumentor 1.4.0
- Documentation generated on Sun, 04 Nov 2007 12:10:59 +0100 by phpDocumentor 1.4.0
+ Documentation generated on Sun, 06 Jan 2008 18:59:12 +0100 by phpDocumentor 1.4.0
- Documentation generated on Sun, 04 Nov 2007 12:11:16 +0100 by phpDocumentor 1.4.0
+ Documentation generated on Sun, 06 Jan 2008 18:59:36 +0100 by phpDocumentor 1.4.0
- Documentation generated on Sun, 04 Nov 2007 12:10:35 +0100 by phpDocumentor 1.4.0
+ Documentation generated on Sun, 06 Jan 2008 18:58:48 +0100 by phpDocumentor 1.4.0
- Documentation generated on Sun, 04 Nov 2007 12:10:36 +0100 by phpDocumentor 1.4.0
+ Documentation generated on Sun, 06 Jan 2008 18:58:48 +0100 by phpDocumentor 1.4.0
- Documentation generated on Sun, 04 Nov 2007 12:10:35 +0100 by phpDocumentor 1.4.0
+ Documentation generated on Sun, 06 Jan 2008 18:58:48 +0100 by phpDocumentor 1.4.0
- Documentation generated on Sun, 04 Nov 2007 12:10:35 +0100 by phpDocumentor 1.4.0
+ Documentation generated on Sun, 06 Jan 2008 18:58:48 +0100 by phpDocumentor 1.4.0
- Documentation generated on Sun, 04 Nov 2007 12:10:35 +0100 by phpDocumentor 1.4.0
+ Documentation generated on Sun, 06 Jan 2008 18:58:48 +0100 by phpDocumentor 1.4.0
- Documentation generated on Sun, 04 Nov 2007 12:10:36 +0100 by phpDocumentor 1.4.0
+ Documentation generated on Sun, 06 Jan 2008 18:58:48 +0100 by phpDocumentor 1.4.0
- Documentation generated on Sun, 04 Nov 2007 12:10:36 +0100 by phpDocumentor 1.4.0
+ Documentation generated on Sun, 06 Jan 2008 18:58:48 +0100 by phpDocumentor 1.4.0
- Documentation generated on Sun, 04 Nov 2007 12:10:35 +0100 by phpDocumentor 1.4.0
+ Documentation generated on Sun, 06 Jan 2008 18:58:48 +0100 by phpDocumentor 1.4.0
- Documentation generated on Sun, 04 Nov 2007 12:10:36 +0100 by phpDocumentor 1.4.0
+ Documentation generated on Sun, 06 Jan 2008 18:58:48 +0100 by phpDocumentor 1.4.0
- Documentation generated on Sun, 04 Nov 2007 12:10:36 +0100 by phpDocumentor 1.4.0
+ Documentation generated on Sun, 06 Jan 2008 18:58:48 +0100 by phpDocumentor 1.4.0
- Documentation generated on Sun, 04 Nov 2007 12:10:36 +0100 by phpDocumentor 1.4.0
+ Documentation generated on Sun, 06 Jan 2008 18:58:48 +0100 by phpDocumentor 1.4.0
- Documentation generated on Sun, 04 Nov 2007 12:10:36 +0100 by phpDocumentor 1.4.0
+ Documentation generated on Sun, 06 Jan 2008 18:58:48 +0100 by phpDocumentor 1.4.0
- Documentation generated on Sun, 04 Nov 2007 12:10:35 +0100 by phpDocumentor 1.4.0
+ Documentation generated on Sun, 06 Jan 2008 18:58:48 +0100 by phpDocumentor 1.4.0
@@ -339,7 +391,7 @@ This class manages config.cfg.
- Documentation generated on Sun, 04 Nov 2007 12:10:41 +0100 by phpDocumentor 1.4.0
+ Documentation generated on Sun, 06 Jan 2008 18:58:55 +0100 by phpDocumentor 1.4.0