diff --git a/include/class_CopyPasteHandler.inc b/include/class_CopyPasteHandler.inc
index ee3deec13dcf70f3b035ce755af5af215485c561..4604791764cfd57dfe764da8cdd4f2927b29b209 100644
--- a/include/class_CopyPasteHandler.inc
+++ b/include/class_CopyPasteHandler.inc
@@ -52,8 +52,6 @@ class CopyPasteHandler
 
   /*!
    * \brief Create CP handler
-   *
-   * \param string $config
    */
   function __construct()
   {
diff --git a/include/class_IconTheme.inc b/include/class_IconTheme.inc
index f8ef4b63d33426a120f6f2b1b710e7ae8cbe0d75..3b892ea9f90a8d889e67a0b801cdef870641e764 100644
--- a/include/class_IconTheme.inc
+++ b/include/class_IconTheme.inc
@@ -22,6 +22,9 @@ class ThemeFileParsingException extends Exception
 {
 }
 
+/*!
+ * \brief Icon theme directory
+ */
 class IconThemeDir
 {
   /* Nominal (unscaled) size of the icons in this directory.
@@ -94,6 +97,9 @@ class IconThemeDir
   }
 }
 
+/*!
+ * \brief Icon theme
+ */
 class IconTheme
 {
   private $subdirs = array();
diff --git a/include/class_SnapshotDialogs.inc b/include/class_SnapshotDialogs.inc
index bd2c74bb373de1b5a7276b44f393fbb424c0a637..0aa7e4d16edc697f7ef909ebedc45a49f4119a5c 100644
--- a/include/class_SnapshotDialogs.inc
+++ b/include/class_SnapshotDialogs.inc
@@ -19,6 +19,9 @@
   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
 */
 
+/*!
+ * \brief Snapshot creation dialog
+ */
 class SnapshotCreateDialog extends simplePlugin
 {
   public $aclCategory;
@@ -74,6 +77,9 @@ class SnapshotCreateDialog extends simplePlugin
   }
 }
 
+/*!
+ * \brief Attribute which list the snapshots
+ */
 class SnapshotsAttribute extends OrderedArrayAttribute
 {
   function __construct ($label, $description, $ldapName, $required = FALSE, $defaultValue = array(), $acl = '')
@@ -184,6 +190,9 @@ class SnapshotsAttribute extends OrderedArrayAttribute
   }
 }
 
+/*!
+ * \brief Snapshot restoration dialog
+ */
 class SnapshotRestoreDialog extends simplePlugin
 {
   public $global;
diff --git a/include/class_SnapshotHandler.inc b/include/class_SnapshotHandler.inc
index cc11cecbac62470f462455c1d3710bf87187650b..a107150a76a6458d1400c60e02c049e320d90ad7 100644
--- a/include/class_SnapshotHandler.inc
+++ b/include/class_SnapshotHandler.inc
@@ -51,8 +51,6 @@ class SnapshotHandler
 
   /*!
    * \brief Create handler
-   *
-   * \param config $config
    */
   function __construct()
   {
@@ -342,8 +340,6 @@ class SnapshotHandler
    * \brief Get all deleted snapshots
    *
    * \param string $base_of_object
-   *
-   * \param boolean $raw FALSE
    */
   function getAllDeletedSnapshots($base_of_object)
   {
diff --git a/include/class_acl.inc b/include/class_acl.inc
index 8c8753f8707c95a48eea5692c72ecc9c8d6cd3a6..6d6fb0075d9c014ff3cba87642f59f417774c4c5 100644
--- a/include/class_acl.inc
+++ b/include/class_acl.inc
@@ -73,7 +73,7 @@ class acl
   /*!
    * \brief Explode a role
    *
-   * \param string $acl ACL to be exploded
+   * \param string $role ACL role to be exploded
    */
   static function explodeRole($role)
   {
@@ -124,7 +124,7 @@ class acl
   /*!
    * \brief Extract members of an acl
    *
-   * \param $acl The acl to be extracted members part
+   * \param $ms The members part of the ACL
    *
    * \return an array with members
    */
diff --git a/include/class_divSelectBox.inc b/include/class_divSelectBox.inc
index 722a8daaf62168930796f83f831ef2ae77121f9a..6d9b56c94fe75a1c7e332fccaa05594cc11ea187 100644
--- a/include/class_divSelectBox.inc
+++ b/include/class_divSelectBox.inc
@@ -79,7 +79,7 @@ class divSelectBox
   /*!
    * \brief Set column headers
    *
-   * \param array $a_entriedata
+   * \param array $headers
    */
   function SetHeaders($headers)
   {
diff --git a/include/class_filter.inc b/include/class_filter.inc
index 2eac25167d5c24e93a925e234d7d4ec1169c6781..b7d2d0ef01bdbc67793224cbec88dc1ac9aec006 100644
--- a/include/class_filter.inc
+++ b/include/class_filter.inc
@@ -549,7 +549,7 @@ class filter
   /*!
    * \brief Get competition list
    *
-   * \param string $config
+   * \param string $cfg
    *
    * \param string $tag
    *
diff --git a/include/class_filterLDAP.inc b/include/class_filterLDAP.inc
index bb8d021242a94bfe8677e928819db874afcb4b29..d22e349037c950d89ca618f2df66ebf5ba2646a6 100644
--- a/include/class_filterLDAP.inc
+++ b/include/class_filterLDAP.inc
@@ -72,7 +72,7 @@ class filterLDAP
    *
    * \param boolean $sizelimit
    *
-   * \param boolean $checkAcl
+   * \param boolean $skipAcl
    */
   static function get_list($parent, $base, $filter, $attributes, $category, $objectStorage, $scope, $sizelimit = TRUE, $skipAcl = FALSE)
   {
diff --git a/include/class_ldap.inc b/include/class_ldap.inc
index fd3ed2ec74014fa19c2dd3336cbbf0df634e9210..828a7cb1223a91e75f9312cfe6aa6adbf50a82e1 100644
--- a/include/class_ldap.inc
+++ b/include/class_ldap.inc
@@ -923,8 +923,6 @@ class LDAP
    *
    * \param  $filter       Limit the exported object to those maching this filter.
    *
-   * \param  array $attributes Attributes
-   *
    * \param  $scope        'base', 'sub' .. see manpage for 'ldapmodify' for details.
    *
    * \param  $limit        Limits the result.
@@ -1001,8 +999,6 @@ class LDAP
    *
    * \param string $str_attr
    *
-   * \param string $error
-   *
    * \param boolean $JustModify
    *
    * \param boolean $DeleteOldEntries
@@ -1293,7 +1289,7 @@ class LDAP
   /*!
    * \brief Add a string in log file
    *
-   * \param stri if(ng $string
+   * \param string $string
    */
   function log($string)
   {
diff --git a/include/class_ldapFilter.inc b/include/class_ldapFilter.inc
index 95bc95b1691029fb3535960f0b9a62709531d891..f8df07088056bea4890983887bbb34fad2c71f9c 100644
--- a/include/class_ldapFilter.inc
+++ b/include/class_ldapFilter.inc
@@ -129,6 +129,9 @@ class ldapFilter
   }
 }
 
+/*!
+ * \brief Leaf of an LDAP filter, for instance (objectClass=*)
+ */
 class ldapFilterLeaf extends ldapFilter
 {
   static $operators = array('=','=~','>','>=','<','<=');
diff --git a/include/class_ldapGeneralizedTime.inc b/include/class_ldapGeneralizedTime.inc
index 0a1e7c662034045e0be703de0eb16c9f65d343f8..720d0c603379184e951da81ef30d31395c01d1c6 100644
--- a/include/class_ldapGeneralizedTime.inc
+++ b/include/class_ldapGeneralizedTime.inc
@@ -44,8 +44,8 @@ class LdapGeneralizedTime
 
   /*!
     \brief Convert from LDAP GeneralizedTime formatted string to DateTime object
-    \param string GeneralizedTime formatted string to convert
-    \param useException Whether or not to throw a LdapGeneralizedTimeBadFormatException on failure. Defaults to TRUE.
+    \param string $string GeneralizedTime formatted string to convert
+    \param boolean $useException Whether or not to throw a LdapGeneralizedTimeBadFormatException on failure. Defaults to TRUE.
   */
   public static function fromString ($string, $useException = TRUE)
   {
@@ -108,8 +108,8 @@ class LdapGeneralizedTime
 
   /*!
     \brief Convert from DateTime object to LDAP GeneralizedTime formatted string
-    \param date DateTime object to convert
-    \param useException Whether or not to set the date timezone to UTC. Defaults to TRUE.
+    \param DateTime $date DateTime object to convert
+    \param boolean $setToUTC Whether or not to set the date timezone to UTC. Defaults to TRUE.
   */
   public static function toString ($date, $setToUTC = TRUE)
   {
diff --git a/include/class_listing.inc b/include/class_listing.inc
index a37e6aeec12f0d7bb7dfd0b75fa67feb354fd156..3a204109744822da7fd33e0f8b5d1b00e29fb6af 100644
--- a/include/class_listing.inc
+++ b/include/class_listing.inc
@@ -855,7 +855,8 @@ class listing
   /*!
    * \brief Get the object type
    *
-   * \param string $classes
+   * \param string $dn dn of the object
+   * \param string $attrs LDAP attributes of the object
    */
   function getObjectType($dn, $attrs)
   {
@@ -864,6 +865,9 @@ class listing
 
   /*!
    * \brief Get the department type
+   *
+   * \param string $dn dn of the object
+   * \param string $attrs LDAP attributes of the object
    */
   function getDepartmentType($dn, $attrs)
   {
diff --git a/include/class_msgPool.inc b/include/class_msgPool.inc
index 1150be00615cb2dc56d6b851b1d18e2c0c57e04d..d98e1a5b64ed0c32aa84ab7ebfed5c0ad9f30d45 100644
--- a/include/class_msgPool.inc
+++ b/include/class_msgPool.inc
@@ -138,7 +138,7 @@ class msgPool {
    * \brief Display that we have no permission to modify an object
    *
    * \param string $name Name of the object which cannot be modified (or array of objects names)
-   * \param string $fields Name of the field of the object which cannot be modified
+   * \param string $field Name of the field of the object which cannot be modified
    */
   public static function permModify($name = '', $field = '')
   {
@@ -396,7 +396,8 @@ class msgPool {
   /*!
    * \brief Display error about existing entry in the system
    *
-   * \param string $name The entry duplicated
+   * \param string $name The attribute name
+   * \param string $dn The existing entry dn
    */
   public static function duplicated($name, $dn = NULL)
   {
@@ -600,9 +601,11 @@ class msgPool {
   /*!
    * \brief List the features settings disabled
    *
-   * \param string $name Name of the setting
+   * \param string $name Name of the tab
+   *
+   * \param array $depends Tabs this tab depends upon
    *
-   * \param array $depends Contains all the settings disabled
+   * \param array $conflicts Tabs this tab conflicts with
    */
   public static function featuresDisabled($name, array $depends = array(), array $conflicts = array())
   {
diff --git a/include/class_objects.inc b/include/class_objects.inc
index 36eb26e48b811f00669a84bfff40edecaf2adb9e..cc4e807de63a9c1c8310c26fa45585b4c6c8a1ea 100644
--- a/include/class_objects.inc
+++ b/include/class_objects.inc
@@ -19,6 +19,11 @@
   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
 */
 
+/*!
+ * \brief Class for handling objects and their types
+ *
+ * Allows to list, open, create and delete objects
+ */
 class objects
 {
   /*!
@@ -157,6 +162,7 @@ class objects
    * \param array   $types the objectTypes to list
    * \param string  $ou the LDAP branch to search in, base will be used if it is NULL
    * \param string  $filter an additional filter to use in the LDAP search.
+   * \param boolean $checkAcl Should ACL be checked on the filtered attributes.
    *
    * \return The number of objects of type $type in $ou
    */
diff --git a/include/class_pluglist.inc b/include/class_pluglist.inc
index 1d33496a468dbd7ac3a15e0d8389946962687ddc..c66669cd405ef358989b6014d62ca6407823738d 100644
--- a/include/class_pluglist.inc
+++ b/include/class_pluglist.inc
@@ -212,7 +212,7 @@ class pluglist {
    *
    * This function is used to check which plugins are visible.
    *
-   * \param string $aclname The acl tag to test, eg.  "user/user:self", "systems",...
+   * \param array $infos The acl infos, may contain keys CLASS and/or ACL
    *
    * \return Boolean TRUE on success FALSE otherwise
    */
diff --git a/include/class_userinfo.inc b/include/class_userinfo.inc
index b9bcbdb29730b984b85ba8643ce726699c7c981e..42faa384d3c918f846451345a1efcc0878b85a49 100644
--- a/include/class_userinfo.inc
+++ b/include/class_userinfo.inc
@@ -861,8 +861,6 @@ class userinfo
   /*!
   * \brief Checks the posixAccount status by comparing the shadow attributes.
   *
-  * \param object $config   The FusionDirectory configuration object.
-  *
   * \return const
   *                  POSIX_ACCOUNT_EXPIRED           - If the account is expired.
   *                  POSIX_WARN_ABOUT_EXPIRATION     - If the account is going to expire.
diff --git a/include/functions.inc b/include/functions.inc
index 650daf14a575936f21b38a3e9178b2030dc84a41..9ab2a6365c9ac3016028bea7c13977092c585ddf 100644
--- a/include/functions.inc
+++ b/include/functions.inc
@@ -1177,7 +1177,7 @@ function strict_uid_mode()
  * }
  * \endcode
  *
- * \param string $user the user who holds the lock
+ * \param string $locks the locks as returned by get_locks
  *
  * \param string $dn the locked DN
  *
@@ -2567,6 +2567,12 @@ function load_all_classes()
   }
 }
 
+
+/*!
+ * \brief Initialize language configuration
+ *
+ * \param string $lang Language locale to use, defaults to get_browser_language
+ */
 function initLanguage($lang = NULL)
 {
   global $BASE_DIR;
@@ -2612,13 +2618,7 @@ if (!function_exists('ldap_escape')) {
   define('LDAP_ESCAPE_FILTER', 0x01);
   define('LDAP_ESCAPE_DN',     0x02);
 
-  /**
-   * @param string $subject The subject string
-   * @param string $ignore Set of characters to leave untouched
-   * @param int $flags Any combination of LDAP_ESCAPE_* flags to indicate the
-   *                   set(s) of characters to escape.
-   * @return string
-   */
+  /* PHP version of ldap_escape for PHP<5.6 */
   function ldap_escape($subject, $ignore = '', $flags = 0)
   {
     static $charMaps = array(
diff --git a/include/functions_debug.inc b/include/functions_debug.inc
index 4df8ec969a6e02e2198b6cd54b51f80348f9098a..d7447e3c2ca68b3752c18ad8f02bc09c78ff3bdf 100644
--- a/include/functions_debug.inc
+++ b/include/functions_debug.inc
@@ -108,7 +108,7 @@ class printAClass {
    *
    * \param boolean $iteration false
    *
-   * \param boolean $key_bg_colo false
+   * \param boolean $key_bg_color false
    */
   function print_a($array, $iteration = FALSE, $key_bg_color = FALSE)
   {
diff --git a/include/password-methods/class_password-methods-crypt.inc b/include/password-methods/class_password-methods-crypt.inc
index 7d68348d14219cf7da222c9647e6ed1b90812357..0e44832dd4d4cb2f3483a4801580fe5ee142b168 100644
--- a/include/password-methods/class_password-methods-crypt.inc
+++ b/include/password-methods/class_password-methods-crypt.inc
@@ -147,6 +147,8 @@ class passwordMethodCrypt extends passwordMethod
   /*!
    * \brief Extract a method
    *
+   * \param string $classname The password method class name
+   *
    * \param string $password_hash
    */
   static function _extract_method($classname, $password_hash)
diff --git a/include/password-methods/class_password-methods.inc b/include/password-methods/class_password-methods.inc
index 2af280ce42152ea21614887e75234da58ce87fb7..11719942c4936ff575018c450459d12de21d63d7 100644
--- a/include/password-methods/class_password-methods.inc
+++ b/include/password-methods/class_password-methods.inc
@@ -310,6 +310,8 @@ class passwordMethod
   /*!
    * \brief Extract a method
    *
+   * \param string $classname The password method class name
+   *
    * \param string $password_hash
    */
   static function _extract_method($classname, $password_hash)
diff --git a/include/select/class_filterLDAPBlacklist.inc b/include/select/class_filterLDAPBlacklist.inc
index e12c77e37afda6795dff5e6f3df9ac624f24fe5a..08cf34dbc8aa518f7b5bf0fba19f0b4c69b1f5ae 100644
--- a/include/select/class_filterLDAPBlacklist.inc
+++ b/include/select/class_filterLDAPBlacklist.inc
@@ -20,6 +20,9 @@
   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
 */
 
+/*!
+ * \brief filterLDAP backend with blacklist/whitelist handling
+ */
 class filterLDAPBlacklist {
 
   static function query($parent, $base, $scope, $filter, $attributes, $category, $objectStorage = "")
diff --git a/include/select/groupSelect/class_groupSelect.inc b/include/select/groupSelect/class_groupSelect.inc
index e46ba5b9807202b5fd49964e73c797aad2ae6c4d..87eeff3cf014feb52232e4ffa7aa82b4c1c4ebb3 100644
--- a/include/select/groupSelect/class_groupSelect.inc
+++ b/include/select/groupSelect/class_groupSelect.inc
@@ -18,6 +18,9 @@
   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
 */
 
+/*!
+ * \brief POSIX group selection
+ */
 class groupSelect extends simpleSelectManagement
 {
   protected $objectTypes  = array('group');
diff --git a/include/select/objectSelect/class_objectSelect.inc b/include/select/objectSelect/class_objectSelect.inc
index 9ae6e127ae3a8f9a96a396d78031f35731f9eb04..46942b4cbb0d9023fe82f5088067d4b2084cb46f 100644
--- a/include/select/objectSelect/class_objectSelect.inc
+++ b/include/select/objectSelect/class_objectSelect.inc
@@ -18,7 +18,9 @@
   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
 */
 
-/* We extend userSelect to have the login column */
+/*!
+ * \brief Object selection
+ */
 class objectSelect extends userSelect
 {
   protected $objectTypes = array(
diff --git a/include/select/systemSelect/class_systemSelect.inc b/include/select/systemSelect/class_systemSelect.inc
index be304429dac2b7b78a457132016f0c4d5a0a7baa..1ee23b44a708a4d7a989b4ef45558ba23c9034cf 100644
--- a/include/select/systemSelect/class_systemSelect.inc
+++ b/include/select/systemSelect/class_systemSelect.inc
@@ -18,6 +18,9 @@
   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
 */
 
+/*!
+ * \brief System selection
+ */
 class systemSelect extends simpleSelectManagement
 {
   protected $autoFilterAttributes = array('dn', 'cn', 'ipHostNumber', 'macAddress');
diff --git a/include/select/userGroupSelect/class_userGroupSelect.inc b/include/select/userGroupSelect/class_userGroupSelect.inc
index 83f33d191715f7a51e2699cb19bb42310e71e851..51d991f374abc051bb8c385e2e7543f8de81faee 100644
--- a/include/select/userGroupSelect/class_userGroupSelect.inc
+++ b/include/select/userGroupSelect/class_userGroupSelect.inc
@@ -18,6 +18,9 @@
   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
 */
 
+/*!
+ * \brief User and/or POSIX group selection
+ */
 class userGroupSelect extends userSelect
 {
   protected $objectTypes = array('user', 'group');
@@ -32,6 +35,9 @@ class userGroupSelect extends userSelect
   }
 }
 
+/*!
+ * \brief User, user group and/or role selection
+ */
 class userGroupRoleSelect extends userGroupSelect
 {
   protected $objectTypes = array('user', 'group', 'role', 'ogroup');
diff --git a/include/select/userSelect/class_userSelect.inc b/include/select/userSelect/class_userSelect.inc
index cdf2e65579d8ef6c2a738e679cc7bec3012c7b2c..9235434f842b1e3a9e6f6b797acc3ebda5032d0d 100644
--- a/include/select/userSelect/class_userSelect.inc
+++ b/include/select/userSelect/class_userSelect.inc
@@ -18,6 +18,9 @@
   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
 */
 
+/*!
+ * \brief User selection
+ */
 class userSelect extends simpleSelectManagement
 {
   protected $objectTypes          = array('user');
@@ -41,6 +44,9 @@ class userSelect extends simpleSelectManagement
   }
 }
 
+/*!
+ * \brief User selection limited to one user
+ */
 class singleUserSelect extends userSelect
 {
   protected $multiSelect = FALSE;
diff --git a/include/simpleplugin/attributes/class_BaseSelectorAttribute.inc b/include/simpleplugin/attributes/class_BaseSelectorAttribute.inc
index 567b648aba6255c04586bef78018b62fca1f287e..0e0736c1572c8b195ebc9d03b63beefb8a5d706d 100644
--- a/include/simpleplugin/attributes/class_BaseSelectorAttribute.inc
+++ b/include/simpleplugin/attributes/class_BaseSelectorAttribute.inc
@@ -30,6 +30,8 @@ class BaseSelectorAttribute extends Attribute
   /*! \brief The constructor of BaseSelectorAttribute
    *
    *  \param string $ou The ou your objects are into. It will be used in order to detect the base they are in.
+   *  \param string $label The label to show for this attribute, defaults to "Base"
+   *  \param string $desc Description, defaults to "Object base"
    */
   function __construct ($ou, $label = NULL, $desc = NULL)
   {
diff --git a/include/simpleplugin/attributes/class_DateAttribute.inc b/include/simpleplugin/attributes/class_DateAttribute.inc
index 0e50e78c8025abf554f6b463a4ae121a8db8b9b8..7b19e65216de64fa13f2e175153492d147b411ea 100644
--- a/include/simpleplugin/attributes/class_DateAttribute.inc
+++ b/include/simpleplugin/attributes/class_DateAttribute.inc
@@ -158,6 +158,9 @@ class DateAttribute extends Attribute
   }
 }
 
+/*!
+ * \brief Date attribute storing standard LDAP GeneralizedTime format
+ */
 class GeneralizedTimeDateAttribute extends DateAttribute
 {
   function __construct ($label, $description, $ldapName, $required, $defaultValue = 'now', $acl = "")
@@ -181,6 +184,9 @@ class GeneralizedTimeDateAttribute extends DateAttribute
   }
 }
 
+/*!
+ * \brief Attribute storing time as His format
+ */
 class TimeHisAttribute extends CompositeAttribute
 {
   protected $convert;
@@ -254,6 +260,9 @@ class TimeHisAttribute extends CompositeAttribute
   }
 }
 
+/*!
+ * \brief Attribute storing time as Hi format
+ */
 class TimeHiAttribute extends TimeHisAttribute
 {
   function __construct($label, $description, $ldapName, $required, $convert = TRUE, $acl = '')
@@ -276,6 +285,9 @@ class TimeHiAttribute extends TimeHisAttribute
   }
 }
 
+/*!
+ * \brief Attribute storing both Date and Time
+ */
 class DateTimeAttribute extends CompositeAttribute
 {
   function __construct($label, $description, $ldapName, $required, $acl = '')
diff --git a/include/simpleplugin/attributes/class_FileAttribute.inc b/include/simpleplugin/attributes/class_FileAttribute.inc
index d647297141268e1da53899d20d59140f29bdb1ac..bfd7fbc4d8ff7a417e21fc55dd0ed2fb9c2657a1 100644
--- a/include/simpleplugin/attributes/class_FileAttribute.inc
+++ b/include/simpleplugin/attributes/class_FileAttribute.inc
@@ -73,7 +73,9 @@ class FileAttribute extends Attribute
   }
 }
 
-/* FileAttribue with download button */
+/*!
+ * \brief FileAttribue with a download button
+ */
 class FileDownloadAttribute extends FileAttribute
 {
   protected $extension;
@@ -151,6 +153,9 @@ class FileDownloadAttribute extends FileAttribute
   }
 }
 
+/*!
+ * \brief A FileDownloadAttribute which displays a text area to edit the value
+ */
 class FileTextAreaAttribute extends FileDownloadAttribute
 {
   /* Default values are not the same that for FileDownloadAttribute */
@@ -214,6 +219,9 @@ class FileTextAreaAttribute extends FileDownloadAttribute
   }
 }
 
+/*!
+ * \brief Attribute for storing an image
+ */
 class ImageAttribute extends FileAttribute
 {
   protected $width;
diff --git a/include/simpleplugin/attributes/class_PhoneNumberAttribute.inc b/include/simpleplugin/attributes/class_PhoneNumberAttribute.inc
index 4a1e2f668c20b45aef502a57d6610b3c4c7ab322..f1d489d9c6fba819a05b291016b66fc1efe5584d 100644
--- a/include/simpleplugin/attributes/class_PhoneNumberAttribute.inc
+++ b/include/simpleplugin/attributes/class_PhoneNumberAttribute.inc
@@ -18,6 +18,9 @@
   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
 */
 
+/*!
+ * \brief Phone number selection
+ */
 class phoneSelect extends simpleSelectManagement
 {
   protected $multiSelect          = FALSE;
@@ -50,16 +53,25 @@ class phoneSelect extends simpleSelectManagement
   }
 }
 
+/*!
+ * \brief Mobile phone number selection
+ */
 class mobilePhoneSelect extends phoneSelect
 {
   protected $objectTypes = array('mobilePhone');
 }
 
+/*!
+ * \brief Phone number selection allowing both Phone and Mobile phone objects
+ */
 class anyPhoneSelect extends phoneSelect
 {
   protected $objectTypes = array('phone','mobilePhone');
 }
 
+/*!
+ * \brief Phone number selection dialog
+ */
 class phoneSelectDialog extends GenericDialog
 {
   function __construct($simplePlugin, $attribute, $type)
diff --git a/include/simpleplugin/attributes/class_SelectAttribute.inc b/include/simpleplugin/attributes/class_SelectAttribute.inc
index e288bbbe7e6c1f6acc809328f5a88621ce4fdb54..5e3bcc278d710c869a6867b089d62a7b390a1e51 100644
--- a/include/simpleplugin/attributes/class_SelectAttribute.inc
+++ b/include/simpleplugin/attributes/class_SelectAttribute.inc
@@ -80,7 +80,7 @@ class SelectAttribute extends Attribute
 
   /*! \brief Set the display options of the select attribute
    *
-   *  \param array $outputs The labels corresponding to the choices, in the same order as the choices
+   *  \param array $values The labels corresponding to the choices, in the same order as the choices
    */
   function setDisplayChoices ($values)
   {
diff --git a/include/simpleplugin/attributes/class_SetAttribute.inc b/include/simpleplugin/attributes/class_SetAttribute.inc
index 5d91cf2990a585329511ebf40b535484a1a43047..b0a546d3ffba3c7e2a9c9c78bc8663f75885f531 100644
--- a/include/simpleplugin/attributes/class_SetAttribute.inc
+++ b/include/simpleplugin/attributes/class_SetAttribute.inc
@@ -341,6 +341,9 @@ class SetAttribute extends Attribute
   }
 }
 
+/*!
+ * \brief Multivalued attribute displayed as a columned table. May allow ordering and/or editing
+ */
 class OrderedArrayAttribute extends SetAttribute
 {
   protected $order;
@@ -351,7 +354,9 @@ class OrderedArrayAttribute extends SetAttribute
   /*! \brief The constructor of OrderedArrayAttribute
    *
    *  \param Attribute $attribute The composite attribute you want to see multi-valuated
+   *  \param boolean $order Can the values be ordered
    *  \param array $values The default values
+   *  \param boolean $edit_enabled Can the values be edited
    */
   function __construct ($attribute, $order = TRUE, $values = array(), $edit_enabled = FALSE)
   {
@@ -638,6 +643,9 @@ class OrderedArrayAttribute extends SetAttribute
   }
 }
 
+/*!
+ * \brief An OrderedArrayAttribute which stores its values in LDAP subnodes
+ */
 class SubNodesAttribute extends OrderedArrayAttribute
 {
   protected $objectClass;
diff --git a/include/simpleplugin/attributes/class_StringAttribute.inc b/include/simpleplugin/attributes/class_StringAttribute.inc
index 1d66c61cd41d02352db159e0ecad06adc63c6483..a283089ac21b03c21ca4c3495bf277d9a45d30ee 100644
--- a/include/simpleplugin/attributes/class_StringAttribute.inc
+++ b/include/simpleplugin/attributes/class_StringAttribute.inc
@@ -37,6 +37,7 @@ class StringAttribute extends Attribute
    *  \param mixed $defaultValue The default value for this attribute
    *  \param string $acl The name of the acl for this attribute if he does not use its own. (Leave empty if he should use its own like most attributes do)
    *  \param string $regexp A regular expression that should be matched by the value of this attribute in order for it to be considered valid. Will be used as a PHP regexp and as an html5 input pattern.
+   *  \param string $example An example of a valid value
    */
   function __construct ($label, $description, $ldapName, $required = FALSE, $defaultValue = "", $acl = "", $regexp = "", $example = NULL)
   {
diff --git a/include/simpleplugin/class_Attribute.inc b/include/simpleplugin/class_Attribute.inc
index 19dd102e23ab1779f89b1a0da7cda6ba82cf04e0..0e53aef74fa59963b021b5e217939c940f2bbd62 100644
--- a/include/simpleplugin/class_Attribute.inc
+++ b/include/simpleplugin/class_Attribute.inc
@@ -88,8 +88,8 @@ class Attribute
    *  \param string $description A more detailed description for the attribute
    *  \param string $ldapName The name of the attribute in the LDAP (If it's not in the ldap, still provide a unique name)
    *  \param boolean $required Is this attribute mandatory or not
-   *  \param mixed defaultValue The default value for this attribute
-   *  \param string acl The name of the acl for this attribute if he does not use its own. (Leave empty if he should use its own like most attributes do)
+   *  \param mixed $defaultValue The default value for this attribute
+   *  \param string $acl The name of the acl for this attribute if he does not use its own. (Leave empty if he should use its own like most attributes do)
    */
   function __construct ($label, $description, $ldapName, $required = FALSE, $defaultValue = "", $acl = "")
   {
@@ -557,9 +557,9 @@ class Attribute
 
   /*! \brief Render this attribute form input(s)
    *
-   *  \param array& attributes the attributes array
+   *  \param array &$attributes the attributes array
    *
-   *  \param bool readOnly should we show text or input
+   *  \param bool $readOnly should we show text or input
    */
   function renderAttribute(&$attributes, $readOnly)
   {
@@ -593,7 +593,8 @@ class Attribute
 
   /*! \brief Serialize this attribute for RPC requests
    *
-   *  \param array& attributes the attributes array
+   * \param array &$attributes the attributes array
+   * \param boolean $form
    */
   function serializeAttribute(&$attributes, $form = TRUE)
   {
@@ -626,7 +627,7 @@ class Attribute
 
   /*! \brief Apply value from RPC requests
    *
-   *  \param array values the values array
+   *  \param array $values the values array
    */
   function deserializeValue($values)
   {
@@ -727,6 +728,9 @@ class Attribute
   }
 }
 
+/*!
+ * \brief Attribute hidden from the user
+ */
 class HiddenAttribute extends Attribute
 {
   /*! \brief The constructor of HiddenAttribute
@@ -748,6 +752,9 @@ class HiddenAttribute extends Attribute
   }
 }
 
+/*!
+ * \brief HiddenAttribute with several values
+ */
 class HiddenArrayAttribute extends HiddenAttribute
 {
   protected function loadAttrValue ($attrs)
@@ -763,7 +770,9 @@ class HiddenArrayAttribute extends HiddenAttribute
   }
 }
 
-/* Dummy attribute class in order to give stats information to the template */
+/*!
+ * \brief Dummy attribute class in order to give stats information to the template
+ */
 class FakeAttribute extends Attribute
 {
   function __construct ($ldapName)
diff --git a/include/simpleplugin/class_dialogAttributes.inc b/include/simpleplugin/class_dialogAttributes.inc
index ecc6f746c04ef490e7c16923fe084a11f9176a04..90efdaa8e5895de5f4e28c805529f464cc989655 100644
--- a/include/simpleplugin/class_dialogAttributes.inc
+++ b/include/simpleplugin/class_dialogAttributes.inc
@@ -1,7 +1,7 @@
 <?php
 /*
   This code is part of FusionDirectory (http://www.fusiondirectory.org/)
-  Copyright (C) 2012-2016  FusionDirectory
+  Copyright (C) 2012-2018  FusionDirectory
 
   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
@@ -18,6 +18,8 @@
   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
 */
 
+/*! \brief Generic dialog base class
+ */
 class GenericDialog
 {
   protected $dialogClass = "";
@@ -61,6 +63,8 @@ class GenericDialog
   }
 }
 
+/*! \brief Generic dialog for selection using a simpleSelectManagement based class
+ */
 class GenericSelectDialog extends GenericDialog
 {
   function dialog_execute ()
@@ -85,11 +89,15 @@ class GenericSelectDialog extends GenericDialog
   }
 }
 
+/*! \brief User selection dialog
+ */
 class UserSelectDialog extends GenericSelectDialog
 {
   protected $dialogClass = 'userSelect';
 }
 
+/*! \brief User selection dialog allowing only one user to get selected
+ */
 class SingleUserSelectDialog extends GenericDialog
 {
   protected $dialogClass = 'singleUserSelect';
@@ -107,26 +115,36 @@ class SingleUserSelectDialog extends GenericDialog
   }
 }
 
+/*! \brief System selection dialog
+ */
 class SystemSelectDialog extends GenericSelectDialog
 {
   protected $dialogClass = 'systemSelect';
 }
 
+/*! \brief User group selection dialog
+ */
 class UserGroupSelectDialog extends GenericSelectDialog
 {
   protected $dialogClass = 'userGroupSelect';
 }
 
+/*! \brief User group or/and role selection dialog
+ */
 class UserGroupRoleSelectDialog extends GenericSelectDialog
 {
   protected $dialogClass = 'userGroupRoleSelect';
 }
 
+/*! \brief Group selection dialog
+ */
 class GroupSelectDialog extends GenericSelectDialog
 {
   protected $dialogClass = 'groupSelect';
 }
 
+/*! \brief Mail address selection dialog
+ */
 class MailSelectDialog extends GenericSelectDialog
 {
   protected $dialogClass = 'mailAddressSelect';
@@ -251,6 +269,9 @@ class DialogAttribute extends SetAttribute
   }
 }
 
+/*!
+ * \brief An OrderedArrayAttribute which uses a dialog to create/edit values
+ */
 class DialogOrderedArrayAttribute extends OrderedArrayAttribute
 {
   protected $dialogClass;
@@ -323,6 +344,9 @@ class DialogOrderedArrayAttribute extends OrderedArrayAttribute
   }
 }
 
+/*!
+ * \brief Base class for DialogAttribute using a GenericDialog derived dialog
+ */
 class GenericDialogAttribute extends DialogAttribute
 {
   protected $displays     = array();
@@ -467,6 +491,9 @@ class UsersGroupsAttribute extends GenericDialogAttribute
   }
 }
 
+/*!
+ * \brief This class allows to handle an attribute for selecting users, groups or roles
+ */
 class UsersGroupsRolesAttribute extends UsersGroupsAttribute
 {
   protected $dialogClass = 'UserGroupRoleSelectDialog';
@@ -562,6 +589,9 @@ class MailsAttribute extends DialogAttribute
   }
 }
 
+/*!
+ * \brief Attribute storing a system list
+ */
 class SystemsAttribute extends DialogAttribute
 {
   protected $dialogClass = 'SystemSelectDialog';
@@ -580,6 +610,9 @@ class SystemsAttribute extends DialogAttribute
   }
 }
 
+/*!
+ * \brief Attribute showing a button
+ */
 class ButtonAttribute extends Attribute
 {
   protected $buttonText = NULL;
@@ -624,6 +657,9 @@ class ButtonAttribute extends Attribute
   }
 }
 
+/*!
+ * \brief Attribute showing a button which triggers a dialog
+ */
 class DialogButtonAttribute extends ButtonAttribute
 {
   protected $dialogClass  = NULL;
@@ -642,6 +678,9 @@ class DialogButtonAttribute extends ButtonAttribute
   }
 }
 
+/*!
+ * \brief Attribute storing the dn of a user which can be selected through a dialog
+ */
 class UserAttribute extends DialogButtonAttribute
 {
   function __construct ($label, $description, $ldapName, $required = FALSE, $defaultValue = "", $acl = "")
@@ -758,6 +797,9 @@ class UserAttribute extends DialogButtonAttribute
   }
 }
 
+/*!
+ * \brief GenericDialog using a simplePlugin based class as dialog
+ */
 class GenericSimplePluginDialog extends GenericDialog
 {
   protected $initialDialogValue = NULL;
diff --git a/include/simpleplugin/class_helpersAttribute.inc b/include/simpleplugin/class_helpersAttribute.inc
index efcaca2aa9d32d7a7dae8632862c02816ca7612d..b2a0f961694d2586cda81a564d372d92d498d46b 100644
--- a/include/simpleplugin/class_helpersAttribute.inc
+++ b/include/simpleplugin/class_helpersAttribute.inc
@@ -136,6 +136,9 @@ class MacAddressAttribute extends StringAttribute
   }
 }
 
+/*! \brief CompositeAttribute of which values are joined using a character as separator
+ *
+ */
 class CharSeparatedCompositeAttribute extends CompositeAttribute
 {
   private $sep;
@@ -157,6 +160,9 @@ class CharSeparatedCompositeAttribute extends CompositeAttribute
   }
 }
 
+/*! \brief CharSeparatedCompositeAttribute where the separator is the pipe character
+ *
+ */
 class PipeSeparatedCompositeAttribute extends CharSeparatedCompositeAttribute
 {
   function __construct($description, $ldapName, $attributes, $acl = "", $label = "Composite attribute")
@@ -165,6 +171,9 @@ class PipeSeparatedCompositeAttribute extends CharSeparatedCompositeAttribute
   }
 }
 
+/*!
+ * \brief Attribute storing its values as a comma-separated list
+ */
 class CommaListAttribute extends CompositeAttribute
 {
   private $sep = ',';
@@ -195,6 +204,9 @@ class CommaListAttribute extends CompositeAttribute
   }
 }
 
+/*!
+ * \brief Generic attribute for storing an integer allowing to chose between units
+ */
 class UnitIntAttribute extends CompositeAttribute
 {
   /* $units should contains 1 in its keys as a fallback unit */
@@ -245,6 +257,9 @@ class UnitIntAttribute extends CompositeAttribute
   }
 }
 
+/*!
+ * \brief Attribute for storing a size in bytes
+ */
 class BytesSizeAttribute extends UnitIntAttribute
 {
   function __construct ($label, $description, $ldapName, $required, $min = FALSE, $max = FALSE, $defaultValue = "", $acl = "")
@@ -260,6 +275,9 @@ class BytesSizeAttribute extends UnitIntAttribute
   }
 }
 
+/*!
+ * \brief Attribute storing a time duration as seconds
+ */
 class TimeAttribute extends UnitIntAttribute
 {
   function __construct ($label, $description, $ldapName, $required, $min = FALSE, $max = FALSE, $defaultValue = "", $acl = "")
diff --git a/include/simpleplugin/class_simpleManagement.inc b/include/simpleplugin/class_simpleManagement.inc
index c58acb661f7c801dea5a1e8bc26000372a2b6266..7f91bc69c65bf30f0523eb5257ec9ff11ff61215 100644
--- a/include/simpleplugin/class_simpleManagement.inc
+++ b/include/simpleplugin/class_simpleManagement.inc
@@ -18,6 +18,9 @@
   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
 */
 
+/*!
+ * \brief Template dialog handling
+ */
 class templateDialog
 {
   protected $simpleManagement;
@@ -119,6 +122,9 @@ class templateDialog
   }
 }
 
+/*!
+ * \brief Management base class
+ */
 class simpleManagement
 {
   // The currently used object(s) (e.g. in edit, removal)
@@ -1111,8 +1117,6 @@ class simpleManagement
    * \param  String  $action  The name of the action which was the used as trigger.
    *
    * \param  Array   $target  A list of object dns, which should be affected by this method.
-   *
-   * \param  Array   $all     A combination of both 'action' and 'target'.
    */
   function createSnapshotDialog($action, array $target)
   {
@@ -1142,8 +1146,6 @@ class simpleManagement
    * \param  String  $action  The name of the action which was the used as trigger.
    *
    * \param  Array   $target  A list of object dns, which should be affected by this method.
-   *
-   * \param  Array   $all'     A combination of both 'action' and 'target'.
    */
   function restoreSnapshotDialog($action, array $target)
   {
@@ -1187,9 +1189,9 @@ class simpleManagement
 
   /*! \brief  This method is used to queue and process copy&paste actions.
    *          Allows to copy, cut and paste mutliple entries at once.
-   *  @param  String  'action'  The name of the action which was the used as trigger.
-   *  @param  Array   'target'  A list of object dns, which should be affected by this method.
-   *  @param  Array   'all'     A combination of both 'action' and 'target'.
+   *  @param  string  $action  The name of the action which was the used as trigger.
+   *  @param  array   $target  A list of object dns, which should be affected by this method.
+   *  @param  array   $all     A combination of both 'action' and 'target'.
    */
   function copyPasteHandler($action = '', array $target = array(), array $all = array())
   {
@@ -1285,8 +1287,6 @@ class simpleManagement
 
   /*!
    * \brief Get all deleted snapshots
-   *
-   * \param string $base The base
    */
   function getAllDeletedSnapshots()
   {
diff --git a/include/simpleplugin/class_simplePlugin.inc b/include/simpleplugin/class_simplePlugin.inc
index 2ebd74efe4f02ee17e043f7c30b62f503f75fce7..ee3fab0464d5073254303b899025f76a7c63a52b 100644
--- a/include/simpleplugin/class_simplePlugin.inc
+++ b/include/simpleplugin/class_simplePlugin.inc
@@ -768,9 +768,11 @@ class simplePlugin
    *
    * \param string $text The text
    *
-   * \param boolean $plugin_enabled
+   * \param boolean $plugin_enabled Is the plugin/tab activated
    *
-   * \param boolean $button_disabled FALSE
+   * \param boolean $button_disabled Is the button disabled
+   *
+   * \param string $name The html name of the input, defaults to modify_state
    */
   function show_header($button_text, $text, $plugin_enabled, $button_disabled = FALSE, $name = 'modify_state')
   {
diff --git a/include/simpleplugin/class_simpleSelectManagement.inc b/include/simpleplugin/class_simpleSelectManagement.inc
index be53d884d3a2fd3d7abb81517d5ef3a2adf151b6..c220c6f756ce7cb38cdf0b23a3a9a016301d0c61 100644
--- a/include/simpleplugin/class_simpleSelectManagement.inc
+++ b/include/simpleplugin/class_simpleSelectManagement.inc
@@ -18,6 +18,9 @@
   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
 */
 
+/*!
+ * \brief Management base class for selection dialogs
+ */
 class simpleSelectManagement extends simpleManagement
 {
   protected $skipFooter = TRUE;
diff --git a/include/simpleplugin/class_simpleTabs.inc b/include/simpleplugin/class_simpleTabs.inc
index bfe432fd5fbcd61d2e37b05392b204aa98c07d37..22adc9f82400e3cac77ac6e5ef0fcaccdc5330c1 100644
--- a/include/simpleplugin/class_simpleTabs.inc
+++ b/include/simpleplugin/class_simpleTabs.inc
@@ -208,8 +208,6 @@ class simpleTabs
 
   /*!
    * \brief Save a tabs object
-   *
-   * \param boolean $save_current false
    */
   function save_object()
   {
@@ -321,8 +319,6 @@ class simpleTabs
 
   /*!
    * \brief Check
-   *
-   * \param boolean $ignore_account false
    */
   protected function check()
   {
@@ -451,9 +447,8 @@ class simpleTabs
   /*!
    * \brief Adapt from template
    *
-   * \param string $dn The DN
-   *
-   * \param array $skip
+   * \param array $attrs an LDAP-like values array
+   * \param array $skip Attributes to skip
    */
   function adapt_from_template($attrs, $skip = array())
   {
@@ -553,6 +548,9 @@ class simpleTabs
   }
 }
 
+/*!
+ * \brief For objects which does not support special tabs such as LDAP and references
+ */
 class simpleTabs_noSpecial extends simpleTabs
 {
   protected $specialTabs = FALSE;