diff --git a/contrib/fusiondirectory.conf b/contrib/fusiondirectory.conf index c33665d28a4894526a2a6eb82a98f7825211e669..040a9c4e64ffbe3161c5d305a0bf4c39e1c777d3 100644 --- a/contrib/fusiondirectory.conf +++ b/contrib/fusiondirectory.conf @@ -40,15 +40,9 @@ <!-- Section to enable addon plugins --> <section name="Addons"> - <plugin acl="configuration" class="configInLdap" /> - <plugin acl="board" class="board" /> - <plugin acl="server/serviceSyslog" class="rsyslog" /> - <plugin acl="addressbook" class="addressbook" /> <!-- <plugin acl="mailqueue" class="mailqueue" /> --> <plugin acl="faxreport/faxreport:self,faxreport" class="faxreport" /> <plugin acl="fonreport/fonreport:self,fonreport" class="fonreport" /> - <plugin acl="gotomasses" class="gotomasses" /> - <plugin acl="ldapmanager" class="ldif" /> </section> <!-- Section to enable quick self service shortcuts for the logged in user --> diff --git a/html/plugins/config/images/plugin.png b/html/plugins/config/images/plugin.png new file mode 100644 index 0000000000000000000000000000000000000000..b636ff0e63d6eafa5864387d44848a632cf7561c Binary files /dev/null and b/html/plugins/config/images/plugin.png differ diff --git a/include/class_config.inc b/include/class_config.inc index 9368589250ff6a553a779b9c20584054ebce4200..4d966d2cd10988db6e151dd0eb1b8bcaead0b1d2 100644 --- a/include/class_config.inc +++ b/include/class_config.inc @@ -1309,9 +1309,19 @@ class config { if (!empty($acl)) { $attrs['ACL'] = $acl; } + if ($section == "personal") { + $attrs['ACL'] = 'users/'.$class.':self'; + } $this->data['MENU'][$section][] = $attrs; } } + $this->data['SECTIONS']["personal"] = array('name' => _('My account'), 'priority' => 20); + if (!isset($this->data['MENU']["personal"])) { + $this->data['MENU']["personal"] = array(); + } + foreach ($this->data['TABS']['USERTABS'] as $tab) { + $this->data['MENU']["personal"][] = array('CLASS' => $tab['CLASS'], 'ACL' => 'users/'.$tab['CLASS'].':self'); + } usort($this->data['SECTIONS'], function ($a, $b) { diff --git a/plugins/config/class_configInLdap.inc b/plugins/config/class_configInLdap.inc index b57d16e1d41b3b50201f700aa6fd3fead0f4e214..e9aad08f9945bf8971fd7846317332bd2a39d107 100644 --- a/plugins/config/class_configInLdap.inc +++ b/plugins/config/class_configInLdap.inc @@ -56,11 +56,13 @@ class configInLdap extends simplePlugin return array( "plShortName" => _("Configuration"), "plDescription" => _("FusionDirectory configuration"), + "plIcon" => "plugins/config/images/plugin.png", "plSelfModify" => FALSE, "plPriority" => 1, "plCategory" => array("configuration"), "plObjectType" => array("configuration" => array("name" => _("FusionDirectory configuration"), "filter" => "objectClass=fusionDirectoryConf")), + "plSection" => array("addons" => array("name" => _("Addons"), "priority" => 10)), "plProvidedAcls" => parent::generatePlProvidedAcls(self::getAttributesInfo()) ); diff --git a/plugins/personal/password/class_password.inc b/plugins/personal/password/class_password.inc index 235b0000907488c209a4c07abf52f664b3df7f35..fc6f25718e3ec5982f70dd3f4a62eaf8fb1b5411 100644 --- a/plugins/personal/password/class_password.inc +++ b/plugins/personal/password/class_password.inc @@ -199,16 +199,15 @@ class password extends plugin static function plInfo() { - return (array( - "plDescription" => _("User password"), - "plSelfModify" => TRUE, - "plDepends" => array("user"), - "plPriority" => 10, - "plCategory" => array("users"), - "plOptions" => array(), - - "plProvidedAcls" => array()) - ); + return array( + "plDescription" => _("User password"), + "plSelfModify" => TRUE, + "plDepends" => array("user"), + "plPriority" => 10, + "plCategory" => array("users"), + + "plProvidedAcls" => array() + ); } }