diff --git a/lam-web/developers/devel/FAQ.htm b/lam-web/developers/devel/FAQ.htm index 45abfe48..82ab6ea1 100644 --- a/lam-web/developers/devel/FAQ.htm +++ b/lam-web/developers/devel/FAQ.htm @@ -5,29 +5,6 @@ - -

- - -

- -

Developer FAQ

@@ -123,27 +100,5 @@ http://nodomain.org which will be labeled "text"

- -

- - -

- diff --git a/lam-web/developers/devel/account_modules.htm b/lam-web/developers/devel/account_modules.htm index bd70091f..c2d4cea5 100644 --- a/lam-web/developers/devel/account_modules.htm +++ b/lam-web/developers/devel/account_modules.htm @@ -7,29 +7,6 @@ - -

- - -

- -

Account modules

base module
- -

- - -

- diff --git a/lam-web/developers/devel/account_modules_lib.htm b/lam-web/developers/devel/account_modules_lib.htm index 54ba4f6f..7acfaa36 100644 --- a/lam-web/developers/devel/account_modules_lib.htm +++ b/lam-web/developers/devel/account_modules_lib.htm @@ -7,29 +7,6 @@ - -

- - -

- -

Account modules (modules.inc)


@@ -141,10 +118,8 @@ LDAP.
called when an account page is displayed. It generates the HTML code for the account pages.

-get_module_attributes: Returns -all attributes of a given object class.
-
-save_module_attributes: Finds +save_module_attributes: +Finds differences between current and original account.

load_account: Loads an LDAP @@ -161,27 +136,5 @@ values of an account.



- -

- - -

- diff --git a/lam-web/developers/devel/account_pages.htm b/lam-web/developers/devel/account_pages.htm index 86db5b8a..1f92e812 100644 --- a/lam-web/developers/devel/account_pages.htm +++ b/lam-web/developers/devel/account_pages.htm @@ -7,29 +7,6 @@ - -

- - -

- -

Account pages


@@ -50,27 +27,5 @@ object which prints all HTML output.
Managing of user input etc. is completly made by the accountContainer.

- -

- - -

- diff --git a/lam-web/developers/devel/account_types.htm b/lam-web/developers/devel/account_types.htm index 3cdf20bd..543623d0 100644 --- a/lam-web/developers/devel/account_types.htm +++ b/lam-web/developers/devel/account_types.htm @@ -7,29 +7,6 @@ - -

- - -

- -

Account types

base module
- -

- - -

- diff --git a/lam-web/developers/devel/account_types_lib.htm b/lam-web/developers/devel/account_types_lib.htm index 25e1a1dd..80d8c6cc 100644 --- a/lam-web/developers/devel/account_types_lib.htm +++ b/lam-web/developers/devel/account_types_lib.htm @@ -7,29 +7,6 @@ - -

- - -

- -

Account types (types.inc)


@@ -61,27 +38,5 @@ Returns a hash array which contains predefined, translated descriptions of LDAP attributes.


- -

- - -

- diff --git a/lam-web/developers/devel/base_module.htm b/lam-web/developers/devel/base_module.htm index 3cc9513f..76b608f7 100644 --- a/lam-web/developers/devel/base_module.htm +++ b/lam-web/developers/devel/base_module.htm @@ -7,29 +7,6 @@ - -

- - -

- -

Base module

base moduleaccountContainer
- -

- - -

- diff --git a/lam-web/developers/devel/base_type.htm b/lam-web/developers/devel/base_type.htm index 8d88da54..b26755e0 100644 --- a/lam-web/developers/devel/base_type.htm +++ b/lam-web/developers/devel/base_type.htm @@ -7,29 +7,6 @@ - -

- - -

- -

Base type

base type
- -

- - -

- diff --git a/lam-web/developers/devel/config.htm b/lam-web/developers/devel/config.htm index dd3930d6..2fbc23d1 100644 --- a/lam-web/developers/devel/config.htm +++ b/lam-web/developers/devel/config.htm @@ -7,29 +7,6 @@ - -

- - -

- -

config.inc



@@ -80,27 +57,5 @@ LAM stores the default configuartion profile and a master password in config/config.cfg.
The master password is verified when the user wants to create/delete configuration profiles.
- -

- - -

- diff --git a/lam-web/developers/devel/config_files.htm b/lam-web/developers/devel/config_files.htm index eacc0d25..2af11634 100644 --- a/lam-web/developers/devel/config_files.htm +++ b/lam-web/developers/devel/config_files.htm @@ -7,29 +7,6 @@ - -

- - -

- -

Configuration profiles


LAM allows the user to store the configuration settings in Comments always start with a "#" as first character and end at the line end. LAM will ignore all lines starting with a "#".
- -

- - -

- diff --git a/lam-web/developers/devel/config_pages.htm b/lam-web/developers/devel/config_pages.htm index 15d99a25..cd2a5e05 100644 --- a/lam-web/developers/devel/config_pages.htm +++ b/lam-web/developers/devel/config_pages.htm @@ -7,29 +7,6 @@ - -

- - -

- -

Configuration pages

@@ -96,27 +73,5 @@ from modules.inc.

- -

- - -

- diff --git a/lam-web/developers/devel/index.htm b/lam-web/developers/devel/index.htm index 63f930bc..d377c429 100644 --- a/lam-web/developers/devel/index.htm +++ b/lam-web/developers/devel/index.htm @@ -5,29 +5,6 @@ - -

- - -

- -

LDAP Account Manager - Code overview

These documents are supposed to give developers who want to modify LAM @@ -131,27 +108,5 @@ browser

- -

- - -

- diff --git a/lam-web/developers/devel/ldap.htm b/lam-web/developers/devel/ldap.htm index 4fc65ee7..442d788a 100644 --- a/lam-web/developers/devel/ldap.htm +++ b/lam-web/developers/devel/ldap.htm @@ -7,29 +7,6 @@ - -

- - -

- -

ldap.inc



@@ -73,27 +50,5 @@ If you need multiple values you can get a new value by calling $_SESSION['ldap']->new_rand().

- -

- - -

- diff --git a/lam-web/developers/devel/lists.htm b/lam-web/developers/devel/lists.htm index f7d57cf3..348b51f0 100644 --- a/lam-web/developers/devel/lists.htm +++ b/lam-web/developers/devel/lists.htm @@ -7,29 +7,6 @@ - -

- - -

- -

Account lists





- -

- - -

- diff --git a/lam-web/developers/devel/login.htm b/lam-web/developers/devel/login.htm index 371e9f35..bbf07168 100644 --- a/lam-web/developers/devel/login.htm +++ b/lam-web/developers/devel/login.htm @@ -7,29 +7,6 @@ - -

- - -

- -

Login


@@ -89,27 +66,5 @@ translation

- -

- - -

- diff --git a/lam-web/developers/devel/mod_accountPages.htm b/lam-web/developers/devel/mod_accountPages.htm index dddf1aae..9e0e2a6d 100644 --- a/lam-web/developers/devel/mod_accountPages.htm +++ b/lam-web/developers/devel/mod_accountPages.htm @@ -1,33 +1,9 @@ - - - Module HowTo - Account pages - - +Module HowTo - Account pages + + + - -

- - -

- -

Module HowTo - Account pages

@@ -40,25 +16,21 @@ 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.
There are two variables in baseModule -which should be used to store the attributes. The $attributes variable stores the -current attributes including changes the user made. The $orig variable stores the attributes +which should be used to store the attributes. The $attributes variable stores the +current attributes including changes the user made. The $orig variable stores the attributes as they were originally when the account was loaded. This allows you to see what changes were made.

The load_attributes() function in your module gets the complete attribute list from LDAP.

-Example:
+Example:

The ieee802Device uses an object class and the 'macAddress' attribute. Therefore we will save this two values.

- +
    /**
@@ -68,8 +40,7 @@ object.
    * @param array $attr an array as it is retured from ldap_get_attributes
    */
-    function load_attributes($attr) {
+    function load_attributes($attr) {
        $this->attributes['objectClass'] = array();
        @@ -104,15 +75,12 @@ $this->orig['macAddress'] = $attr['macAddress'];

2. Page display

Now that you have defined your subpages you will need one function for -each page to display it. The function must return meta HTML code as defined in the modules specification.
+each page to display it. The function must return meta HTML code as defined in the modules specification.
This function is called display_html_<page name>() where <page name> is the name of your subpage.

-Example:
+Example:

The ieee802Device @@ -123,8 +91,7 @@ second an input field for new values.
The variable $this->attributes contains the LDAP attributes which are useful for this module.

- +
    /**
@@ -133,8 +100,7 @@ show a page with all attributes.
    *
    * @param array $post HTTP-POST values
    */
-    function display_html_attributes($post) {
+    function display_html_attributes($post) {
        $return = array();
        // list current MACs
        for ($i = 0; $i < @@ -186,12 +152,10 @@ This function is called process_<page name>() where <page name> is the name of your subpage.

-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 +If all input data is ok then return an empty array. If you return one or more error messages then the user will be redirected to your page.

-Example:
+Example:

The ieee802Device @@ -201,8 +165,7 @@ and therefore only process_attributes() 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.

- +
@@ -296,13 +244,10 @@ $this->inputCorrect = true;

4. Defining that your module is ready for user input and LDAP add/modify

-In most cases you will not need to implement these functions. The baseModule will return true for both functions.
+In most cases you will not need to implement these functions. The baseModule will return true for both functions.


-There are two functions which control the module status:

+There are two functions which control the module status:

The module_ready() function has to @@ -314,14 +259,12 @@ modules (e.g. you need the user name from posixAccount first).

The second function is module_complete(). The user -cannot do the LDAP operation if one or more modules return false. This defines if all needed +cannot do the LDAP operation if one or more modules return false. This defines if all needed input data for your module was entered.
Use this function if you want to check that all required attributes are set.

-Example:
+Example:

The sambaSamAccount module needs the user's uidNumber @@ -329,8 +272,7 @@ and gidNumber before it can accept input and the account needs a sambaSID before it can be saved.

-
    /**
@@ -211,10 +174,8 @@ checks
    *
    * @param array $post HTTP-POST values
    */
-    function process_attributes($post) {
-        $this->triggered_messages = -array();
+    function process_attributes($post) {
+        $errors = array();
        $this->attributes['macAddress'] = array();
        // check old MACs
@@ -239,8 +200,7 @@ $this->messages['mac'][0];
            $message[] = $post['macAddress' . $i];
            -            -$this->triggered_messages[] = array($message);
+            $errors[] = $message;
                    }
            @@ -268,25 +228,13 @@ $this->messages['mac'][0];
                    $message[] = $post['macAddress'];
            -        $this->triggered_messages[] = -array($message);
+        $errors[] = $message;
            }
        }
        $this->attributes['macAddress'] = array_unique($this->attributes['macAddress']);
-        if -(sizeof($this->triggered_messages) > 0) {
-            -$this->inputCorrect = false;
-            return -$this->triggered_messages;
-        }
-        else {
-            -$this->inputCorrect = true;
-            return 0;
-        }
+        return $errors;
    }
+
    /**
@@ -341,8 +283,7 @@ other modules which was not yet entered.
    *
    * @return boolean true, if page can be displayed
    */
-    function module_ready() {
+    function module_ready() {
        if ($_SESSION[$this->base]->module['posixAccount']->attributes['gidNumber'][0]=='') return false;
@@ -360,8 +301,7 @@ for this module have been made.
    *
    * @return boolean true, if settings are complete
    */
-    function module_complete() {
+    function module_complete() {
        if (!$this->module_ready()) return false;
        if @@ -377,9 +317,7 @@ return false;

5. Saving the LDAP attributes

-In most cases you will not have to implement this option if you use $this->attributes and $this->orig to manage the LDAP +In most cases you will not have to implement this option if you use $this->attributes and $this->orig to manage the LDAP attributes. The baseModule will generate the save comands for you.

@@ -388,15 +326,13 @@ user clicks on the add/modify button your module will be asked what changes have to be made.
This is done in the function save_attributes().

-Example:
+Example:

The kolabUser module uses this function to make sure that its object class is saved. Other modules (e.g. quota) use it build the lamdaemon commands.

- +
    /**
@@ -438,27 +374,4 @@ $this->attributes['objectClass'][] = 'kolabInetOrgPerson';

- -

- - -

- - - + \ No newline at end of file diff --git a/lam-web/developers/devel/mod_basics.htm b/lam-web/developers/devel/mod_basics.htm index 1bb0e0a3..31103809 100644 --- a/lam-web/developers/devel/mod_basics.htm +++ b/lam-web/developers/devel/mod_basics.htm @@ -5,29 +5,6 @@ - -

- - -

- -

Module HowTo - Basic concepts

@@ -128,27 +105,5 @@ HowTo.

- -

- - -

- diff --git a/lam-web/developers/devel/mod_config.htm b/lam-web/developers/devel/mod_config.htm index c31c700d..9aae47e0 100644 --- a/lam-web/developers/devel/mod_config.htm +++ b/lam-web/developers/devel/mod_config.htm @@ -5,29 +5,6 @@ - -

- - -

- -

Module HowTo - Configuration options

@@ -272,27 +249,5 @@ the descriptions for the settings list.

- -

- - -

- diff --git a/lam-web/developers/devel/mod_ext.htm b/lam-web/developers/devel/mod_ext.htm new file mode 100644 index 00000000..a0a84cd7 --- /dev/null +++ b/lam-web/developers/devel/mod_ext.htm @@ -0,0 +1,55 @@ + + + + Module HowTo - Defining required extensions + + + +
+

Module HowTo - Defining required extensions
+

+

+Your account module might require special PHP extensions. LAM can check +this for you and display an error message at the login page.
+
+
+
You will need to implement the function getRequiredExtensions() or use meta['extensions'].
+
+Example:
+
+The posixAccount module needs +to generate password hashes. Therefore it needs the MHash extension.
+
+ + + + + + +
    /**
+    * Returns meta data that is interpreted by parent +class
+    *
+    * @return array array with meta data
+    */
+    function +get_metaData() {
+        $return = array();
+        // PHP extensions
+        $return["extensions"] = +array("mhash");
+        [...]
+
+
+
+
+ +

+
+
+ + diff --git a/lam-web/developers/devel/mod_general.htm b/lam-web/developers/devel/mod_general.htm index b6e0e4c4..a3d71b4b 100644 --- a/lam-web/developers/devel/mod_general.htm +++ b/lam-web/developers/devel/mod_general.htm @@ -5,29 +5,6 @@ - -

- - -

- -

Module HowTo - General module options

@@ -151,11 +128,7 @@ class
    function get_metaData() {
        $return = array();
-        // manages host accounts
-     -    $return["account_types"] = array("host");
-        // alias name
+         // alias name
        $return["alias"] = _("MAC address");
@@ -195,14 +168,7 @@ class
    function get_metaData() {
        $return = array();
-        // manages host accounts
-     -    $return["account_types"] = array("host");
-        // alias name
-        $return["alias"] = _("MAC -address");
-        // module dependencies
+         // module dependencies
        $return['dependencies'] = array('depends' => array('account'), 'conflicts' => array());


-


+

6. Managed object classes

+You can tell LAM what object classes are managed by your module.
+LAM will then check the spelling of the objectClass attributes and +correct it automatically. This is useful if other applications (e.g. +smbldap-tools) also create accounts and the spelling is differnt.
+
+Example:
+
+The ieee802Device module +manages one object class.
+
+ + + + + + +
    /**
+    * Returns meta data that is interpreted by parent +class
+    *
+    * @return array array with meta data
+    */
+    function +get_metaData() {
+        $return = array();
+         // managed object classes
+     +    $return['objectClasses'] = array('ieee802Device');
+        return $return;
+    }
+
+
+
+

7. Known LDAP aliases
+

+LDAP attributes can have several names (e.g. "cn" and "commonName" are +the same). If you manage such attributes then tell LAM about the alias +names.
+LAM will then convert all alias names to the given attribute names +automatically.
+
+Example:
+
+The posixGroup module manages +the "cn" attribute. This attribute is also known under the alias +"commonName".
+This way the module will never see attributes called "commonName" +because LAM renames them as soon as the LDAP entry is loaded.
+
+ + + + + + +
    /**
+    * Returns meta data that is interpreted by parent +class
+    *
+    * @return array array with meta data
+    */
+    function +get_metaData() {
+        $return = array();
+        // LDAP aliases
+     +    $return['LDAPaliases'] = array('commonName' => +'cn');
+        return $return;
+    }
+


- -

- - -

- diff --git a/lam-web/developers/devel/mod_help.htm b/lam-web/developers/devel/mod_help.htm index c0d638d8..42efc69f 100644 --- a/lam-web/developers/devel/mod_help.htm +++ b/lam-web/developers/devel/mod_help.htm @@ -5,29 +5,6 @@ - -

- - -

- -

Module HowTo - Help entries

@@ -107,27 +84,5 @@ _("This is a comma separated list of MAC addresses.")
- -

- - -

- diff --git a/lam-web/developers/devel/mod_index.htm b/lam-web/developers/devel/mod_index.htm index 7d40a10a..64958a61 100644 --- a/lam-web/developers/devel/mod_index.htm +++ b/lam-web/developers/devel/mod_index.htm @@ -5,29 +5,6 @@ - -

- - -

- -

Module HowTo


@@ -74,30 +51,10 @@ existing modules.

4. Defining the RDN


+

5. Defining required PHP extensions

+

- -

- - -

- diff --git a/lam-web/developers/devel/mod_pdf.htm b/lam-web/developers/devel/mod_pdf.htm index 8597ed8e..5f2e5d0a 100644 --- a/lam-web/developers/devel/mod_pdf.htm +++ b/lam-web/developers/devel/mod_pdf.htm @@ -5,29 +5,6 @@ - -

- - -

- -

Module HowTo - PDF output

@@ -125,27 +102,5 @@ $this->attributes['macAddress']) . '</value></block>';

- -

- - -

- diff --git a/lam-web/developers/devel/mod_profiles.htm b/lam-web/developers/devel/mod_profiles.htm index 94ff619f..7d394fcf 100644 --- a/lam-web/developers/devel/mod_profiles.htm +++ b/lam-web/developers/devel/mod_profiles.htm @@ -5,29 +5,6 @@ - -

- - -

- -

Module HowTo - Account profiles

@@ -227,27 +204,5 @@ stored as LDAP attribute "mailHost".

- -

- - -

- diff --git a/lam-web/developers/devel/mod_rdn.htm b/lam-web/developers/devel/mod_rdn.htm index 7539d501..e5986e8e 100644 --- a/lam-web/developers/devel/mod_rdn.htm +++ b/lam-web/developers/devel/mod_rdn.htm @@ -5,29 +5,6 @@ - -

- - -

- -

Module HowTo - Defining the RDN

@@ -78,27 +55,5 @@ get_metaData() {

- -

- - -

- diff --git a/lam-web/developers/devel/mod_upload.htm b/lam-web/developers/devel/mod_upload.htm index e6687bdf..deb85f36 100644 --- a/lam-web/developers/devel/mod_upload.htm +++ b/lam-web/developers/devel/mod_upload.htm @@ -5,29 +5,6 @@ - -

- - -

- -

Module HowTo - File upload

@@ -190,27 +167,5 @@ $errMsg;

- -

- - -

- diff --git a/lam-web/developers/devel/mod_upload2.htm b/lam-web/developers/devel/mod_upload2.htm index f359a904..6e253c6a 100644 --- a/lam-web/developers/devel/mod_upload2.htm +++ b/lam-web/developers/devel/mod_upload2.htm @@ -5,29 +5,6 @@ - -

- - -

- -

Module HowTo - Advanced upload options

@@ -141,27 +118,5 @@ by sending meta refreshes to the browser.

- -

- - -

- diff --git a/lam-web/developers/devel/modules-specification.htm b/lam-web/developers/devel/modules-specification.htm index 9ed8bd9e..86a895ad 100644 --- a/lam-web/developers/devel/modules-specification.htm +++ b/lam-web/developers/devel/modules-specification.htm @@ -1,9 +1,7 @@ - - - - Module specification + + Module specification + - + - -

- - -

- -

This document describes the module interface for LDAP Account Manager


@@ -68,8 +42,7 @@ All module classes should extend the baseModule class.
- @@ -85,8 +58,7 @@ otherwise false.
function can_manage()
+
function can_manage()
- @@ -106,8 +78,7 @@ sure that there is a general alias for unknown types.
function get_alias()
+
function get_alias()
- @@ -126,8 +97,7 @@ is structural.
function is_base_module()
+
function is_base_module()
- @@ -142,17 +112,49 @@ combined with the "and" parts.
The resulting LDAP filter will look like this: (&(|(OR1)(OR2)(OR3))(AND1)(AND2)(AND3))

-Example: return "('or' => +Example: return "('or' => '(objectClass=posixAccount)', 'and' => '(!(uid=*$))')"

-

2.1.5. get_RDNAttributes*

+

2.1.5. getManagedObjectClasses*


function get_ldap_filter()
+
function get_ldap_filter()
- + + +
function get_RDNAttributes()
+
function getManagedObjectClasses()
+
+
+Returns an array of object class names which are managed by this module.
+
+This is used to fix spelling errors in LDAP-Entries (e.g. if +"posixACCOUNT" is read instead of "posixAccount" from LDAP).
+
+Example: return "('posixAccount')"
+
+

2.1.6. getLDAPAliases*

+
+ + + + + + +
function getLDAPAliases()
+
+
+This function returns a list of LDAP attribute alias names.
+
+return array(<alias name> => +<attribute name>)
+
+

2.1.7. get_RDNAttributes*

+
+ + + + @@ -166,18 +168,16 @@ priority ("low"/"normal"/"high").
Attributes with higher priority are placed higher in the drop down box for the RDN selection.

-Example: return "('uid' => +Example: return "('uid' => 'normal', 'cn' => 'low')"

-
-

2.1.6. get_dependencies*

+ +

2.1.8. get_dependencies*


function get_RDNAttributes()
- @@ -186,28 +186,23 @@ get_dependencies()

This function returns a list of modules it depends on.

-The return value is an array with two sub arrays, "depends" and "conficts".
+The return value is an array with two sub arrays, "depends" and "conficts".
All values of the conflict array are string values with module names.
All values of the depends array are either string values with module names or arrays which include only string values with module names. If an element of the depends array is itself an array, this means that your module depends on one of these modules.

-Example: return array("depends" +Example: return array("depends" => array("posixAccount", array("qmail", "sendmail")), "conflicts" -=> array("exim"));
+=> array("exim"));


-

2.1.7. get_metaData()

+

2.1.9. get_metaData()


function + function get_dependencies()
- @@ -218,23 +213,24 @@ Returns an hash array including meta data for the baseModule.
Example: return array("is_base" => true);

-

2.1.8. get_configOptions()*

+

2.1.10. get_configOptions()*


function get_metaData()
+
function get_metaData()
-
function get_configOptions($scopes)
+
function get_configOptions($scopes, +$allScopes)

Returns a list of configuration options.
-$scopes is a list of account types (user, group, host) +$scopes is a list of account types (user, group, host) which are used.
-
+$allScopes is a list of all +active account modules and their scopes (module => array(scopes))
+
The return value is an array that contains meta HTML code.

@@ -243,39 +239,12 @@ The name attributes are used as keywords to load and save settings. We recommend to use the module name as prefix for them (e.g. posixAccount_homeDirectory) to avoid naming confilcts.
-
-

2.1.9. get_configDescriptions()*

+

2.1.11. check_configOptions*


- - - -
function get_configDescriptions()
-
-
-Returns the description of every configuration option and the legend of -the module fieldset on the configuration page.
-
-The return value is a hash -array with this format:
-   
-    array( 'legend' -=> 'Some general description for fieldset',
-       -       'descriptions' => array('option1' -=> 'description1', ...))
-
-

2.1.10. check_configOptions*

-
- - - - @@ -293,17 +262,15 @@ are all arrays containing one or more elements.
If the input data is invalid the return value is an array that contains arrays to build StatusMessages (0 => message type, 1 => message head, 2 => message text, 3 => additional variables).
-If no errors occured the function returns an empty array.
+If no errors occured the function returns an empty array.

-

2.1.11. get_scope()

+

2.1.12. get_scope()


function check_configOptions($scopes, + function check_configOptions($scopes, $options)
- @@ -314,13 +281,12 @@ Returns the account type (user/group/host) of this module object.
This function is provided by the baseModule and should not be overwritten.

-

2.1.12. get_uploadColumns*

+

2.1.13. get_uploadColumns*


function get_scope()
+
function get_scope()
- @@ -339,33 +305,26 @@ help: help ID
  • string example: example value
  • string -values: possible input values (optional)
  • -
  • string default: default value (optional)
    +values: possible input values (optional)
  • +
  • string default: default value (optional)
  • boolean -required: true, if user must set a value for this column (optional, default: +required: true, if user must set a value for this column (optional, default: "false")
  • boolean unique: true if -all values of this column must be different values (optional, default: +all values of this column must be different values (optional, default: "false")

  • -

    2.1.13. get_uploadPreDepends*

    +

    2.1.14. get_uploadPreDepends*


    function get_uploadColumns()
    +
    function get_uploadColumns()
    - @@ -375,13 +334,12 @@ Returns a list of module names which must be processed before this module at builing accounts.
    The named modules may not be active, LAM will check this automatically.

    -

    2.1.14. build_uploadAccounts

    +

    2.1.15. build_uploadAccounts


    function get_uploadPreDepends()
    +
    function get_uploadPreDepends()
    - @@ -402,13 +360,12 @@ format is the same as used for ldap_add().
    Returns an array which contains sub arrays to generate StatusMessages if any errors occured.

    -

    2.1.15. do_uploadPostActions

    +

    2.1.16. do_uploadPostActions


    function get_uploadAccounts($rawAccounts, + function get_uploadAccounts($rawAccounts, $ids, $partialAccounts)
    - @@ -419,8 +376,7 @@ This function is responsible to do additional tasks after the account has been created in LDAP.
    E.g. modifying group memberships, adding Quota etc..

    -This function is called as long as the returned status is 'finished'. Please make sure that +This function is called as long as the returned status is 'finished'. Please make sure that one function call lasts no longer than 3-4 seconds. Otherwise the upload may fail because the time limit is exceeded. You should not make more than one LDAP operation in each call.
    @@ -448,13 +404,12 @@ array()   // List of arrays which are used to generate StatusMessages
        )

    -

    2.1.16. get_profileOptions*

    +

    2.1.17. get_profileOptions*


    function do_uploadPostActions($data, $ids, + function do_uploadPostActions($data, $ids, $failed, &$temp)
    - @@ -472,13 +427,12 @@ as keywords to load and save profiles. We recommend to use the module name as prefix for them (e.g. posixAccount_homeDirectory) to avoid naming confilcts.

    -

    2.1.17. check_profileOptions*

    +

    2.1.18. check_profileOptions*


    function get_profileOptions()
    +
    function get_profileOptions()
    - @@ -493,16 +447,14 @@ are all arrays containing one or more elements.
    If the input data is invalid the return value is an array that contains arrays to build StatusMessages (0 => message type, 1 => message head, 2 => message text, 3 => additional variables).
    -If no errors occured the function returns an empty array.
    +If no errors occured the function returns an empty array.

    -

    2.1.18. load_profile*

    +

    2.1.19. load_profile*


    function check_profileOptions($options)
    +
    function check_profileOptions($options)
    - @@ -515,10 +467,112 @@ internal data structures.
    is an hash array (identifier => array(values))  with all values of an account profile.

    -


    -

    +

    2.1.20. getRequiredExtensions*


    +
    function load_profile($profile)
    +
    function load_profile($profile)
    + + + + + +
    function getRequiredExtensions()
    +

    +This function returns a list of PHP extensions (e.g. mhash) which are +needed by this module.
    +
    + +

    2.1.21. getSelfServiceSearchAttributes*

    + +
    + + + + + + + + +
    function getSelfServiceSearchAttributes()
    +
    + +
    + +This function returns a list of possible LDAP attributes (e.g. uid, cn, ...) which can be used to search for LDAP objects.
    +
    + +

    2.1.22. getSelfServiceFields*

    + +
    + + + + + + + + +
    function getSelfServiceFields()
    +
    + +
    + +This function returns a list of possible self service fields and their descriptions.
    +
    +return array ('myField' => 'Field description');
    +
    + +

    2.1.23. getSelfServiceOptions

    + +
    + + + + + + + + +
    function getSelfServiceOptions($fields, $attributes)
    +
    + +
    +Builds and returns the meta HTML code for each self service field.
    +
    +$fields: list of self service field names
    +$attributes: LDAP attributes of the current account (all lower case)
    +
    + +

    2.1.24. checkSelfServiceOptions

    + +
    + + + + + + + + +
    function checkSelfServiceOptions($fields, $attributes)
    +
    + +
    +Returns a list of LDAP operations and error messages.
    +
    +$fields:
    list of self service field names
    + +$attributes: LDAP attributes of the current account (all lower case)
    +
    +return array(
    +    'messages' => array(array('ERROR', 'Error topic', 'Error message')),
    +    'add' => array('mail' => array('test@test.com')),
    +    'mod' => array(),
    +    'del' => array(),
    +);
    +
    +
    +

    2.2. Functions which are called inside of an account container

    2.2.1. init

    @@ -526,15 +580,13 @@ of an account profile.
    -
    function init($base)
    +
    function init($base)

    -Every module needs a initializing function that has an account +Every module needs a initializing function that has an account container as argument $base.
    With this account container you can interact with other modules and use several helper functions.
    @@ -544,8 +596,7 @@ several helper functions.
    - @@ -564,16 +615,14 @@ which returns true as default.
    function module_ready()
    +
    function module_ready()
    -
    function module_complete()
    +
    function module_complete()

    This function tells LAM if it can create/modify the LDAP account. If -your module needs any additional input then set this to false. The user will be notified +your module needs any additional input then set this to false. The user will be notified that your module needs more input.

    This function is implemented by the baseModule @@ -585,8 +634,7 @@ which returns true as default.
    - @@ -610,8 +658,7 @@ shown
    function getButtonStatus()
    +
    function getButtonStatus()
    - @@ -631,8 +678,7 @@ section 4. "Help entry syntax".
    function get_help($helpID)
    +
    function get_help($helpID)
    - @@ -653,8 +699,7 @@ syntax".
    function get_PDF_Entries()
    +
    function get_PDF_Entries()
    - @@ -674,8 +719,7 @@ Returnis an array as expected from StatusMessage().
    function dynamic_Message($attribute, $id)
    +
    function dynamic_Message($attribute, $id)
    - @@ -693,8 +737,7 @@ $this->messages[x][y][z]
    function load_Messages()
    +
    function load_Messages()
    - @@ -719,8 +762,7 @@ separat.
    function load_attributes($attr)
    +
    function load_attributes($attr)
    - @@ -749,8 +791,7 @@ and $this->orig.
    function save_attributes()
    +
    function save_attributes()
    - @@ -768,8 +809,7 @@ deleted.
    function delete_attributes($post)
    +
    function delete_attributes($post)
    - @@ -795,8 +835,7 @@ allowed here.'));
    function process_attributes($post)
    +
    function process_attributes($post)
    - @@ -815,8 +854,7 @@ is needed to interact with the user.
    function process_*($post)
    +
    function process_*($post)
    - @@ -835,8 +873,7 @@ is needed t interact with the user.
    function display_html_attributes($post)
    +
    function display_html_attributes($post)
    - @@ -856,8 +893,7 @@ is needed t interact with the user.
    function display_html_*($post)
    +
    function display_html_*($post)
    - @@ -882,15 +918,9 @@ formats.
    The modules are not allowed to display HTML code directly but return meta HTML code. This allows to have a common design for all module pages.
    -Meta HTML code is always returned as a three dimensional array[a][b][c] where a is the row number, b is the coumn number and c is is a data elememt.
    +Meta HTML code is always returned as a three dimensional array[a][b][c] where a is the row number, b is the coumn number and c is is a data elememt.

    -Format for data elements:
    +Format for data elements:

    A data element is an array which contains the data to display.
    @@ -907,8 +937,7 @@ fieldset.
    • legend: The legend of the fieldset.
    • -
    • value: A data element. Can be used +
    • value: A data element. Can be used recursively.
  • help: Adds a help link.
  • @@ -952,6 +981,12 @@ string. This is the list of option values the user can select.
  • options_selected: Array of string. This is the list of pre selected elements, must contain values that are also in options.
  • +
  • descriptiveOptions: +Boolean value, if set to true then all elements in options +must be arrays themselves (array(value, + description)) (default: +false)
    +
  • size: The size of the select field, if set to 1 a dropdown box will be displayed.
  • noSorting: If set to @@ -961,8 +996,7 @@ true then the entries will not be sorted. Default is false.
  • table: Adds a table. Can be used recursively.
    • -
    • value: A data element. Can be used +
    • value: A data element. Can be used recursively.
  • text: Inserts a text @@ -971,6 +1005,22 @@ element.
  • text: The text to display.
  • +
  • textarea: Adds a +multiline text field.
  • +
      +
    • name: The name of the +element, will be used later as variable name when user input is +returned.
    • +
    • rows: Number of rows +(required)
      +
    • +
    • cols: Number of +characters for each line (required)
      +
    • +
    • readonly: Boolean +value, if true the text field will be read only.
      +
    • +
  • image: Displays an image.
    • path: Path to the image
    • @@ -1005,10 +1055,7 @@ height attribute for td elements
      Input buttons which should load a different subpage of a module must have a special name attribute:

      -name => 'form_subpage_' . <module name> . '_' . <subpage name> . '_' . <button name>
      +name => 'form_subpage_' . <module name> . '_' . <subpage name> . '_' . <button name>
      • <module name>: name of this account module (e.g. 'posixAccount')
      • @@ -1020,8 +1067,7 @@ name to distinguish buttons (e.g. 'ok'/'cancel'/'back')


      -Example:
      +Example:

      array(
        0 => array(
      @@ -1059,19 +1105,16 @@ the help entry.


      4.1. Internal help entries

      -ext (REQUIRED)
      +ext (REQUIRED)
      Must be FALSE in this case.

      -Headline (REQUIRED)
      +Headline (REQUIRED)
      The headline of this help entry. Can consist of any alpha-numeric characters. No HTML/CSS elements are not allowed here.

      -Text (REQUIRED)
      +Text (REQUIRED)
      The text of this help entry. Can constist if any alpha-numeric characters and can contain placeholder for variables passed to this help entry. The placeholder must follow the syntax for placeholder @@ -1088,8 +1131,7 @@ number except the '0'.
    • 2. This number ($i) must either be '1' or $i -1 must be present.

    -SeeAlso (OPTIONAL)
    +SeeAlso (OPTIONAL)
    An array of references to anonther related subjects. Each row of the array must contain a field called "text" with the text that should be displayed and may contain a field called "link" which is used as value @@ -1098,13 +1140,11 @@ for the href attribute of a HTML tag when set.


    4.2. External help entries

    -ext (REQUIRED)
    +
    ext (REQUIRED)
    Must be TRUE in this case.

    -Link (REQUIRED)
    +Link (REQUIRED)
    The complete filename of the file stored under the help/ directory which should be displayed when this help entry is called.

    @@ -1113,8 +1153,7 @@ which should be displayed when this help entry is called.

    5. PDF syntax

    The get_pdfEntries() function uses XML formatted commands to define the -PDF output. Each part in the PDF document is surrounded by "<block>" +PDF output. Each part in the PDF document is surrounded by "<block>" and "</block>".

    Inside the <block> tags there are different ways to format the @@ -1124,54 +1163,35 @@ output:
    and value: <block><key>attribute name</key><value>attribute value</value></block> -
  • table: <block><key>attribute -name</key><tr><td>value<td><td>value<td></tr></block><block><tr><td>value</td><td>value<td></tr></block>
  • +
  • table: <block><key>attribute +name</key><tr><td>value<td><td>value<td></tr></block><block><tr><td>value</td><td>value<td></tr></block>

  • Special commands:
    • Alignment in <td>: -You can specify the alignment in <td> tags with align=(L|R|C) +You can specify the alignment in <td> tags with align=(L|R|C) (e.g. <td align=\"L\">)
    • Cell width: <td> allows an attribute "width" to set the cell width (e.g. <td width=20%> or <td width=30>).
    • Line breaks: Line breaks -can be specified by adding a <br /> +can be specified by adding a <br /> tag. The new line will start at the left border of the PDF document.

    -Examples:
    +Examples:

    -1. Simple name+value lines:
    +1. Simple name+value lines:

    In most cases you will just want to display a single line per attribute with its name and value.

        'myAttribute' -=> '<block><key>AttrName</key><value>12345</value></block>'
    +=> '<block><key>AttrName</key><value>12345</value></block>'

    -This will give the following PDF output: AttrName: 12345
    +This will give the following PDF output: AttrName: 12345


    2. Multiline values:

    @@ -1184,22 +1204,14 @@ one column but can just use more <td> tags per <block> tag to display more columns.

        'myAttribute' -=> '<block><key>AttrName</key><tr><td -align=\"L\">123</td></tr></block><block><tr><td -align=\"L\">456</td></tr></block><block><tr><td -align=\"L\">789</td></tr></block>'
    +=> '<block><key>AttrName</key><tr><td +align=\"L\">123</td></tr></block><block><tr><td +align=\"L\">456</td></tr></block><block><tr><td +align=\"L\">789</td></tr></block>'

    This will give the following PDF output:

    -
    function display_html_delete($post)
    +
    function display_html_delete($post)
    +
    - @@ -1240,42 +1251,51 @@ array("user", "host")

    6.3 get_ldap_filter()

        "ldap_filter" => array

    -   Example: array('or' => +   Example: array('or' => 'objectClass=posixAccount', 'and' => '(!(uid=*$))')

    -

    6.4 get_RDNAttributes()

    +

    6.4 getManagedObjectClasses()

    +    "objectClasses" => array
    +
    +   Example: array('posixAccount')
    +
    +
    +

    6.5 getLDAPaliases()
    +

    +"LDAPaliases" => array()
    +
    +
    Example: array('commonName' +=> 'cn')
    +
    +
    +
    + +

    6.6 get_RDNAttributes()

        "RDN" => array

    -   Example: array('uid' => +   Example: array('uid' => 'normal', 'cn' => 'low')

    -

    6.5 get_dependencies()
    +

    6.7 get_dependencies()

        "dependencies" => array

    -   Example: array("depends" +   Example: array("depends" => array("posixAccount", array("qmail", "sendmail")), "conflicts" -=> array("exim"))
    +=> array("exim")
    )

    -

    6.6 get_profileOptions()
    +

    6.8 get_profileOptions()

        "profile_options" => array

    -   Syntax for array is the same as for the +   Syntax for array is the same as for the return value of get_profileOptions().

    -

    6.7 check_profileOptions()
    +

    6.9 check_profileOptions()

        "profile_checks" => array

    @@ -1288,61 +1308,32 @@ the names of the option identifiers.
  • type: determines how to check input
    • -
    • regex: check with regular expression from regex variable, case sensitive
    • -
    • regex_i: check with regular expression from regex variable, case insensitive
    • -
    • int_greater: integer value of cmp_name1 must be -greater than the integer value from the option cmp_name2
    • -
    • int_greaterOrEqual: integer value of cmp_name1 -must be greater or equal than the integer value from the option cmp_name2
    • +
    • regex: check with regular expression from regex variable, case sensitive
    • +
    • regex_i: check with regular expression from regex variable, case insensitive
    • +
    • int_greater: integer value of cmp_name1 must be +greater than the integer value from the option cmp_name2
    • +
    • int_greaterOrEqual: integer value of cmp_name1 +must be greater or equal than the integer value from the option cmp_name2
    -
  • error_message: message that is displayed if input value +
  • error_message: message that is displayed if input value was syntactically incorrect
    • array to build StatusMessages (0 => message type, 1 => message -head, 2 => message text, 3 => additional variables)
    • +head, 2 => message text, 3 => additional variables)
    -
  • regex: regular expression string (only if type is regex/regex_i)
  • -
  • cmp_name1: +
  • regex: regular expression string (only if type is regex/regex_i)
  • +
  • cmp_name1: name of first input -variable that is used for comparison (only if type is int_greater/int_greaterOrEqual)
  • -
  • cmp_name2: name of second input -variable that is used for comparison (only if type is int_greater/int_greaterOrEqual)
    +variable that is used for comparison (only if type is int_greater/int_greaterOrEqual)
  • +
  • cmp_name2: name of second input +variable that is used for comparison (only if type is int_greater/int_greaterOrEqual)
  • -
  • required: true or false, if this input field must be +
  • required: true or false, if this input field must be filled set to true (optional)
  • -
  • required_message: message that is displayed if no input value was -given (only if required == true)
  • +
  • required_message: message that is displayed if no input value was +given (only if required == true)
    •  array to build StatusMessages (0 => message type, 1 => message @@ -1350,7 +1341,7 @@ head, 2 => message text, 3 => additional variables)

    -

    6.8 load_profile()
    +

    6.10 load_profile()

        "profile_mappings" => array('profile_identifier1' => 'LDAP_attribute1', 'profile_identifier2' => 'LDAP_attribute2')
    @@ -1359,85 +1350,66 @@ head, 2 => message text, 3 => additional variables) $this->attributes.

    -

    6.9 get_configOptions()
    +

    6.11 get_configOptions()

        "config_options" => array('user' => array, 'host' => array, 'all' => array)

        The values from 'all' -are always returned, the other values only if they are inside the $scopes array.
    +are always returned, the other values only if they are inside the $scopes array.

    -   Syntax for sub arrays is the same as for +   Syntax for sub arrays is the same as for the return value of get_configOptions().
    -
    -
    -

    6.10 get_configDescriptions()
    -

    -    "config_descriptions" => array
    -
    -   Syntax for array is the same as for the -return value of get_configDescriptions().
    -
    -
    -

    6.11 check_configOptions()
    +

    6.12 check_configOptions()

        "config_checks" => array('user' => array, 'host' => 'array', 'all' => array)

        The values from 'all' are always used for checking, -the other values only if they are inside the $scopes array.
    +the other values only if they are inside the $scopes array.

    -
       Syntax for sub arrays is the same as for +   Syntax for sub arrays is the same as for check_profileOptions().

    -

    6.12 get_uploadColumns()

    +

    6.13 get_uploadColumns()

    "upload_columns" => array()

    Syntax for array is the same as for the return value of get_uploadColumns().

    -

    6.13 get_uploadPreDepends()

    +

    6.14 get_uploadPreDepends()

    "upload_preDepends" => array()

    Syntax for array is the same as for the return value of get_uploadPreDepends().

    - +

    6.15 getRequiredExtensions()
    +

    +"extensions" => array()
    +
    +
    Example: array('mhash')
    +
    -

    - - -

    +

    6.16 getSelfServiceSearchAttributes()
    +

    - - +"selfServiceSearchAttributes" => array()
    + +
    +
    Example: array('uid')
    +
    + +

    6.17 getSelfServiceFields()
    +

    + +"selfServiceFieldSettings" => array()
    + +
    +
    Example: array('pwd' => 'Password')
    +
    + + \ No newline at end of file diff --git a/lam-web/developers/devel/other_libs.htm b/lam-web/developers/devel/other_libs.htm index 89f3c40f..8838bc59 100644 --- a/lam-web/developers/devel/other_libs.htm +++ b/lam-web/developers/devel/other_libs.htm @@ -7,29 +7,6 @@ - -

    - - -

    - -

    Other libraries


    @@ -69,27 +46,5 @@ These functions were copied from - -

    - - -

    - diff --git a/lam-web/developers/devel/ou-edit.htm b/lam-web/developers/devel/ou-edit.htm index eb2b282e..2b07faaf 100644 --- a/lam-web/developers/devel/ou-edit.htm +++ b/lam-web/developers/devel/ou-edit.htm @@ -7,29 +7,6 @@ - -

    - - -

    - -

    OU editor


    @@ -50,27 +27,5 @@ If the user selects to delete an OU he will be asked if he is really sure and then the OU is deleted.
    There is no recursive deletion.

    - -

    - - -

    - diff --git a/lam-web/developers/devel/pdf_editor.htm b/lam-web/developers/devel/pdf_editor.htm index 86a9db31..85674090 100644 --- a/lam-web/developers/devel/pdf_editor.htm +++ b/lam-web/developers/devel/pdf_editor.htm @@ -7,29 +7,6 @@ - -

    - - -

    - -

    PDF editor


    @@ -126,27 +103,5 @@ this is the case the structure will be deleted with
    - -

    - - -

    - diff --git a/lam-web/developers/devel/pdf_libs.htm b/lam-web/developers/devel/pdf_libs.htm index 401bd689..55ff0403 100644 --- a/lam-web/developers/devel/pdf_libs.htm +++ b/lam-web/developers/devel/pdf_libs.htm @@ -7,29 +7,6 @@ - -

    - - -

    - -

    PDF (pdf.inc, pdfstruct.inc)


    @@ -59,27 +36,5 @@ specific header and footer.
    It also defines the used font. Currently only Bitstream-Vera is supported.

    - -

    - - -

    - diff --git a/lam-web/developers/devel/pdf_profiles.htm b/lam-web/developers/devel/pdf_profiles.htm index 8b195f1d..0393d705 100644 --- a/lam-web/developers/devel/pdf_profiles.htm +++ b/lam-web/developers/devel/pdf_profiles.htm @@ -7,29 +7,6 @@ - -

    - - -

    - -

    PDF templates


    @@ -118,27 +95,5 @@ name="posixAccount_loginShell" />
    </pdf>


    - -

    - - -

    - diff --git a/lam-web/developers/devel/profile_editor.htm b/lam-web/developers/devel/profile_editor.htm index 35fb795d..c75094dd 100644 --- a/lam-web/developers/devel/profile_editor.htm +++ b/lam-web/developers/devel/profile_editor.htm @@ -7,29 +7,6 @@ - -

    - - -

    - -

    Profile editor

    - -

    - - -

    - diff --git a/lam-web/developers/devel/profile_files.htm b/lam-web/developers/devel/profile_files.htm index bf1b6dcd..22804b83 100644 --- a/lam-web/developers/devel/profile_files.htm +++ b/lam-web/developers/devel/profile_files.htm @@ -7,29 +7,6 @@ - -

    - - -

    - -

    Account profiles


    Every account profile is saved as single file in posixAccount_additionalGroup: group3+::+group4+::+group5+::+group6

    - -

    - - -

    - diff --git a/lam-web/developers/devel/profiles.htm b/lam-web/developers/devel/profiles.htm index e4ce6161..03d2e04b 100644 --- a/lam-web/developers/devel/profiles.htm +++ b/lam-web/developers/devel/profiles.htm @@ -7,29 +7,6 @@ - -

    - - -

    - -

    profiles.inc


    This file includes all functions to manage
    account @@ -44,27 +21,5 @@ for security reasons. This is done by reading

    - -

    - - -

    - diff --git a/lam-web/developers/devel/samba_domains.htm b/lam-web/developers/devel/samba_domains.htm index 0277ed0d..54c84c8e 100644 --- a/lam-web/developers/devel/samba_domains.htm +++ b/lam-web/developers/devel/samba_domains.htm @@ -7,29 +7,6 @@ - -

    - - -

    - -

    Samba 3 domains


    @@ -54,27 +31,5 @@ this could cause trouble on the clients.

    - -

    - - -

    - diff --git a/lam-web/developers/devel/style/layout.css b/lam-web/developers/devel/style/layout.css index 156b3364..61a0fb85 100644 --- a/lam-web/developers/devel/style/layout.css +++ b/lam-web/developers/devel/style/layout.css @@ -2,7 +2,7 @@ $Id$ This code is part of LDAP Account Manager (http://www.sourceforge.net/projects/lam) - Copyright (C) 2004 Roland Gruber + Copyright (C) 2004 - 2006 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 diff --git a/lam-web/developers/devel/tree_schema.htm b/lam-web/developers/devel/tree_schema.htm index 87e115a8..16e64b5c 100644 --- a/lam-web/developers/devel/tree_schema.htm +++ b/lam-web/developers/devel/tree_schema.htm @@ -7,29 +7,6 @@ - -

    - - -

    - -

    Tree view and schema browser


    @@ -40,27 +17,5 @@ The two tools are located in templates/schema and templates/tree.

    - -

    - - -

    - diff --git a/lam-web/developers/devel/type_basics.htm b/lam-web/developers/devel/type_basics.htm index cb1fbb39..8e6a351b 100644 --- a/lam-web/developers/devel/type_basics.htm +++ b/lam-web/developers/devel/type_basics.htm @@ -5,29 +5,6 @@ - -

    - - -

    - -

    Type HowTo - Basic concepts

    @@ -89,27 +66,5 @@ class smbDomain
    - -

    - - -

    - diff --git a/lam-web/developers/devel/type_css.htm b/lam-web/developers/devel/type_css.htm index 65b0a86b..b70c071a 100644 --- a/lam-web/developers/devel/type_css.htm +++ b/lam-web/developers/devel/type_css.htm @@ -5,29 +5,6 @@ - -

    - - -

    - -

    Type HowTo - CSS file


    @@ -58,27 +35,5 @@ You have to replace all occurrences of "user" with your account type.
    Take a look at type_user.css and type_smbDomain.css.
    - -

    - - -

    - diff --git a/lam-web/developers/devel/type_general.htm b/lam-web/developers/devel/type_general.htm index e9689587..8691ea74 100644 --- a/lam-web/developers/devel/type_general.htm +++ b/lam-web/developers/devel/type_general.htm @@ -5,29 +5,6 @@ - -

    - - -

    - -

    Type HowTo - General type options

    @@ -109,27 +86,5 @@ entries");

    - -

    - - -

    - diff --git a/lam-web/developers/devel/type_icon.htm b/lam-web/developers/devel/type_icon.htm index 4b6c7816..66a43937 100644 --- a/lam-web/developers/devel/type_icon.htm +++ b/lam-web/developers/devel/type_icon.htm @@ -5,29 +5,6 @@ - -

    - - -

    - -

    Type HowTo - Icon


    @@ -50,27 +27,5 @@ The smbDomain type has the icon graphics/smbDomain.png.
    - -

    - - -

    - diff --git a/lam-web/developers/devel/type_index.htm b/lam-web/developers/devel/type_index.htm index 9ceeb869..9e4618b9 100644 --- a/lam-web/developers/devel/type_index.htm +++ b/lam-web/developers/devel/type_index.htm @@ -5,29 +5,6 @@ - -

    - - -

    - -
    - -

    - - -

    - diff --git a/lam-web/developers/devel/type_list.htm b/lam-web/developers/devel/type_list.htm index db9604ec..832752d7 100644 --- a/lam-web/developers/devel/type_list.htm +++ b/lam-web/developers/devel/type_list.htm @@ -5,29 +5,6 @@ - -

    - - -

    - -

    Type HowTo - Custom list view

    @@ -200,27 +177,5 @@ _("%s domain(s) found"),

    - -

    - - -

    - diff --git a/lam-web/developers/devel/type_profile.htm b/lam-web/developers/devel/type_profile.htm index 153e594e..d1545ab0 100644 --- a/lam-web/developers/devel/type_profile.htm +++ b/lam-web/developers/devel/type_profile.htm @@ -5,29 +5,6 @@ - -

    - - -

    - -

    Type HowTo - Default profile


    @@ -46,27 +23,5 @@ an empty default profile. It is saved as config/profiles/default.smbDomain.
    - -

    - - -

    - diff --git a/lam-web/developers/devel/types-specification.htm b/lam-web/developers/devel/types-specification.htm index 6af7aaec..13fceee2 100644 --- a/lam-web/developers/devel/types-specification.htm +++ b/lam-web/developers/devel/types-specification.htm @@ -22,29 +22,6 @@ - -

    - - -

    - -

    This document describes the type interface for LDAP Account Manager


    @@ -163,27 +140,5 @@ return array(
    style="font-style: italic; font-weight: bold;">
    - -

    - - -

    - diff --git a/lam-web/developers/devel/upload.htm b/lam-web/developers/devel/upload.htm index 4d96a248..4bf2b0b6 100644 --- a/lam-web/developers/devel/upload.htm +++ b/lam-web/developers/devel/upload.htm @@ -7,29 +7,6 @@ - -

    - - -

    - -

    File upload


    @@ -121,27 +98,5 @@ 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.
    - -

    - - -

    -
    AttrName:
    @@ -1210,8 +1222,7 @@ This will give the following PDF output:

    456
    +
    456