fusiondirectory-plugins issueshttps://gitlab.fusiondirectory.org/fusiondirectory/fd-plugins/-/issues2024-03-28T11:09:02Zhttps://gitlab.fusiondirectory.org/fusiondirectory/fd-plugins/-/issues/6258[NewPlugin] - Notifications, based on automatic snapshots, send email to requ...2024-03-28T11:09:02Zdockx thibault[NewPlugin] - Notifications, based on automatic snapshots, send email to required personal about attributes changes[NewPlugin] - Notifications, based on automatic snapshots, send email to required personal about attributes changes.
A design document can be found in the gitlab documentation [Here](https://gitlab.fusiondirectory.org/documentation/fusi...[NewPlugin] - Notifications, based on automatic snapshots, send email to required personal about attributes changes.
A design document can be found in the gitlab documentation [Here](https://gitlab.fusiondirectory.org/documentation/fusiondirectory-fusiondirectory/-/tree/master/designs-documents)
Le concept est d'envoyer un e-mail à un individu, un responsable, un gestionnaire, en fonction de la modification d'un ou plusieurs attribut(s) spécifique(s).
L'idée générale est d'utiliser le mécanisme des instantanés automatiques, une nouvelle tâche de type "Notifications" et la configuration du backend grâce à un nouveau plugin "Notifications" permettant de définir des attributs spécifiques qui doivent être vérifiés s'ils ont été modifiés.
La nouvelle tâche de notification sera une tâche cyclique, réglée par défaut sur une fréquence horaire. Une fois la tâche activée, elle collectera les DN des utilisateurs en se basant sur l'horodatage des snapshots pris pour ces utilisateurs et la dernière exécution de la tâche. Création de sous-tâches pertinentes, comme d'habitude, de type Notifications.
Ces nouvelles tâches pourront sélectionner une liste d'attributs définis précédemment dans la configuration du backend et une liste d'utilisateurs où la notification doit être envoyée.
Plusieurs changements sont nécessaires pour l'Orchestrator :
- Orchestrator fonctionnera donc comme d'habitude sur la base de sa configuration cron, en activant des tâches cycliques si cela est nécessaire.
- Un nouveau point de terminaison "notifications" sera créé, permettant de passer en revue toutes les sous-tâches de notification.
Dans la sous-tâche se trouvera le DN de l'utilisateur où les instantanés ont été pris, il y aura une vérification basée sur les attributs des tâches principales énumérés, si un attribut a changé, il doit être notifié. Une liste doit être produite
- Si une notification est nécessaire, envoyez un courriel au responsable éventuel de cet utilisateur spécifique et signalez l'état des sous-tâches. Si aucune modification n'est nécessaire, les sous-tâches concernées seront supprimées.
Ce ticket supportera les changements sous format plugin de :
- Schema LDAP notifications.schema et notifications-conf.schema
- Un nouveau tab pour "Tasks" permettant la configuration de notifications (membres et attributs)
- Un nouveau tab dans configuration (backend) permettant la configuration des attributs devant / pouvant etre suivis par la tache.FusionDirectory 1.5dockx thibaultdockx thibaulthttps://gitlab.fusiondirectory.org/fusiondirectory/fd-plugins/-/issues/6257system template error2024-03-12T16:26:25Zemmanuel thetassystem template error### Description
when validate a new system template,
### Distribution Name and Version
debian 11
### FusionDirectory Version
1.4
### PHP version used
PHP 7.4.33
### Origin of php packages
Distribution packages
### Steps to Re...### Description
when validate a new system template,
### Distribution Name and Version
debian 11
### FusionDirectory Version
1.4
### PHP version used
PHP 7.4.33
### Origin of php packages
Distribution packages
### Steps to Reproduce
1. add systems template
2. add dhcp tab
3. validate!
4. [template](/uploads/41f83423bd28c53d8c62b9169595fe80/template.png)
**Expected behavior:**
save template
**Actual behavior:**
when add template with dhcp tab:
Erreur Fatale
Non attrapé : TypeError : Argument 4 passed to DhcpHostsAttribute::postLdapSave() must be of the type array, string given, called in /usr/share/fusiondirectory/plugins/admin/systems/class_dhcpSystem.inc on line 412
when delete template :
Non attrapé : TypeError : Argument 2 passed to dnsHost::removeIpsFromZones() must be of the type array, string given, called in /usr/share/fusiondirectory/plugins/admin/systems/class_dnsHost.inc on line 504
**Reproduces how often:**
100%
### Additional Information
template save anywayFusionDirectory 1.5dockx thibaultdockx thibaulthttps://gitlab.fusiondirectory.org/fusiondirectory/fd-plugins/-/issues/6256delete server systems delete user manager2024-03-25T09:16:25Zemmanuel thetasdelete server systems delete user manager### Description
delete system server, workstation etc delete user manager
### Distribution Name and Version
debian 11
### FusionDirectory Version
1.4
### PHP version used
7.4
### Origin of php packages
Distribution packages
##...### Description
delete system server, workstation etc delete user manager
### Distribution Name and Version
debian 11
### FusionDirectory Version
1.4
### PHP version used
7.4
### Origin of php packages
Distribution packages
### Steps to Reproduce
1. Install fusiondirectory 1.4 with systems plugins, empty ldap
2. create 2 users, do user1 like manager on user2
3. create a server (for example) in systems
4. delete this server
5. manager on user2 is empty
**Expected behavior:**
no change on user data
**Actual behavior:**
deletion of manager attribut
**Reproduces how often:**
100%
### Additional InformationFusionDirectory 1.5dockx thibaultdockx thibaulthttps://gitlab.fusiondirectory.org/fusiondirectory/fd-plugins/-/issues/6255[Samba] - Samba tab cannot be removed when samba ID mapping is activated2024-03-07T11:23:13Zdockx thibault[Samba] - Samba tab cannot be removed when samba ID mapping is activated[Samba] - Samba tab cannot be removed when samba ID mapping is activated[Samba] - Samba tab cannot be removed when samba ID mapping is activatedFusionDirectory 1.5dockx thibaultdockx thibaulthttps://gitlab.fusiondirectory.org/fusiondirectory/fd-plugins/-/issues/6254Add a screenshot dirrectory into the contrib directory to be used by the yaml...2024-02-24T10:46:37ZbmortierAdd a screenshot dirrectory into the contrib directory to be used by the yaml and the marketplaceHello,
We need a screenshot directory into the contrib directory to place the screenshot that will be used in the yaml for the marketplace
CheersHello,
We need a screenshot directory into the contrib directory to place the screenshot that will be used in the yaml for the marketplace
CheersFusionDirectory 1.5bmortierbmortierhttps://gitlab.fusiondirectory.org/fusiondirectory/fd-plugins/-/issues/6253[WebService] - Tokens system to be put in place instead of password usage2024-02-20T15:16:23Zdockx thibault[WebService] - Tokens system to be put in place instead of password usage**The general concept**
The idea is to set in place a new tab on the User, allowing the generation of a token with a specific end date.
The concept is not to use the password to interact with the web service but a defined token.
...**The general concept**
The idea is to set in place a new tab on the User, allowing the generation of a token with a specific end date.
The concept is not to use the password to interact with the web service but a defined token.
We would keep the specific ACL verification currently in place, but the idea is to use a time-driven web service access.
More or less the same behavior as GitLab.
There was an idea to use a "DSA" to interact with FD web service, but DSA is strictly used for LDAP interaction and should not be used with the web service.
**Possible developments**
- Maybe CORE login methodology to add verification of tokens instead of passwords when interacting with web service.
- Web service schema
- New tab on User.
- Logic to be re-defined within web service classes to manage authentication access.
- The token would therefore be the only one used to authenticate.
- Password is to be removed from the allowed authentication logic.FusionDirectory 1.5dockx thibaultdockx thibaulthttps://gitlab.fusiondirectory.org/fusiondirectory/fd-plugins/-/issues/6252[NewPlugin] - Location - Lieu - Allowing specific attributes related to user ...2024-02-19T22:01:36Zdockx thibault[NewPlugin] - Location - Lieu - Allowing specific attributes related to user location to be defined within a new TAB**The general concept**
The idea is a new tab available in the backend of configuration allowing the admins to define :
- Sites
- Building
- Floor
- Desk
Or other required location settings, such as defining (?boolean) usage of supan...**The general concept**
The idea is a new tab available in the backend of configuration allowing the admins to define :
- Sites
- Building
- Floor
- Desk
Or other required location settings, such as defining (?boolean) usage of supann structures.
**Two usages**
_With supann_
The idea is to have the supann structures to have the information about the location, such as site, floor, desks…
This information can be referenced on Entity as well as on Establishment.
Users (File of individual) - can be linked, if using supann, to multiple entities / establishment.
A new tab, location - lieu, will be available with a reduced list of choices based on which entities and / or establishments he is linked with.
_Without supann_
The idea is to have the new tab present on the User (File of individual) with all possible options defined within the backend configuration.
The new plugin would therefore allow usage of the full concept with or without supann attached.dockx thibaultdockx thibaulthttps://gitlab.fusiondirectory.org/fusiondirectory/fd-plugins/-/issues/6251[MAIL] - Modify the direct trigger of sync capabilities for Zimbra and Partage2024-01-25T10:24:37Zdockx thibault[MAIL] - Modify the direct trigger of sync capabilities for Zimbra and Partage~~(Plugins) An update of the plugin tab Mail containing calls to Partage and Zimbra is required, if tick box of "usage of Orchestrator" is set within Supann backend configuration, the plugin should not perform anything itself.~~
It has ...~~(Plugins) An update of the plugin tab Mail containing calls to Partage and Zimbra is required, if tick box of "usage of Orchestrator" is set within Supann backend configuration, the plugin should not perform anything itself.~~
It has been decided to create conditions within Renater and Zimbra plugins to handle this individually.
This allows more flexibility in the case of multiple servers being registered with different behavior required.dockx thibaultdockx thibaulthttps://gitlab.fusiondirectory.org/fusiondirectory/fd-plugins/-/issues/6249Import eduPerson schema for orcid2024-03-19T09:43:35Zdockx thibaultImport eduPerson schema for orcidIt would be very usefull to import/merge the eduPerson 2021-11 schema in fd to support orcid. Currently FD use it own schema and attribute to store the orcid.
Because other applications expect to use the correct (= official) [attribute]...It would be very usefull to import/merge the eduPerson 2021-11 schema in fd to support orcid. Currently FD use it own schema and attribute to store the orcid.
Because other applications expect to use the correct (= official) [attribute](https://wiki.refeds.org/display/STAN/eduPerson+2021-11#eduPerson202111-eduPersonOrcidl) it is a little useless to enter the orcid information in a custom attribute known only by FD.FusionDirectory 1.4.1dockx thibaultdockx thibaulthttps://gitlab.fusiondirectory.org/fusiondirectory/fd-plugins/-/issues/6248Update or add a method to be able to apply a template to existant user by the...2023-12-06T16:26:21ZJonathan SwaelensUpdate or add a method to be able to apply a template to existant user by the webserviceHello @tdockx
Right now, we can only use the template when we create new users through the web service, it would be wonderful to be able to apply it to an existent user so that we get the same comportment of the interface.
I think tha...Hello @tdockx
Right now, we can only use the template when we create new users through the web service, it would be wonderful to be able to apply it to an existent user so that we get the same comportment of the interface.
I think that the following links are related
- https://gitlab.fusiondirectory.org/fusiondirectory/fd-plugins/-/blob/dev/webservice/include/webservice/class_fdRPCService.inc#L688
- https://gitlab.fusiondirectory.org/fusiondirectory/fd-plugins/-/blob/dev/webservice/html/rest.php#L362FusionDirectory 1.5dockx thibaultdockx thibaulthttps://gitlab.fusiondirectory.org/fusiondirectory/fd-plugins/-/issues/6247[Invitations] - Problems with location of public form and template resulting ...2023-12-04T09:57:41Zdockx thibault[Invitations] - Problems with location of public form and template resulting in wrong baseWhen a public form with a non-root creation base is used by an invitation that isn't stored on root, the two bases are combined resulting in an (usually) invalid root, causing the form to error. If base is left as an altered field in the...When a public form with a non-root creation base is used by an invitation that isn't stored on root, the two bases are combined resulting in an (usually) invalid root, causing the form to error. If base is left as an altered field in the public form, it is either similarly not handled correctly, or is ignored entirely, I was not able to verify which in my troubleshooting. It does seem that if you leave the invitation at root, but set a non-root value for the creation base for the public form, it will initially create the user and their registration at the creation base defined in the public form, but then move it to root when you confirm the user.
To Reproduce
Create a public form with a creation base other than root
Create an invitation that uses that public form and store it somewhere other than root
Send that invitation to yourself and fill in the form
Assuming the resultant mess of combined base doesn't exist in your directory, the form will fail
https://github.com/fusiondirectory/fusiondirectory-plugins/issues/36dockx thibaultdockx thibaulthttps://gitlab.fusiondirectory.org/fusiondirectory/fd-plugins/-/issues/6246Plugin dyngroups missing icons2023-11-26T18:24:21ZFEMAT ORTIZ ArmandoPlugin dyngroups missing icons### Description
We upgrade FusionDirectory 1.4-1 and installed the 'Dyngroup' plugin.
The plugin found the groupsOfUrl. Nevertheless, in the user interface, there are no icons for the Dyngroups.
For information, the [GitLab repository...### Description
We upgrade FusionDirectory 1.4-1 and installed the 'Dyngroup' plugin.
The plugin found the groupsOfUrl. Nevertheless, in the user interface, there are no icons for the Dyngroups.
For information, the [GitLab repository for the plugin](https://gitlab.fusiondirectory.org/fusiondirectory/fd-plugins/-/tree/dev/dyngroups) has no `html` folder. Maybe the problem comes from there.
### Distribution Name and Version
Debian 11 - Bullseye
### FusionDirectory Version
FusionDirectory 1.4-1
### Plugin with the defect
Dyngroup : fusiondirectory-plugin-dyngroups 1.4-1
### PHP version used
PHP : 7.4.33
### Origin of php packages
Distribution package.
### Steps to Reproduce
**Requirements**
- FusionDirectory version 1.4-1 (upgraded from version 1.3-4);
- Dyngroups plugin;
- Having a dynamic group declared.
1. Connecting into FusionDirectory.
2. Entering into the 'Groups and roles' section.
**Expected behavior:**
It is expected to have the icon for Dynamic groups.
**Actual behavior:**
There is no icon nowhere. Some examples:
- The second column of the Groups and roles.
- The Properties column.
- The Actions > Create > Dynamic group.
**Reproduces how often:**
Everytime.FusionDirectory 1.4.1dockx thibaultdockx thibaulthttps://gitlab.fusiondirectory.org/fusiondirectory/fd-plugins/-/issues/6245Adapt the ci to the reorganisation of the dev-tools and fixing the trigger do...2023-10-03T12:52:19ZbmortierAdapt the ci to the reorganisation of the dev-tools and fixing the trigger downstream pipelinesFusionDirectory 1.4.1bmortierbmortierhttps://gitlab.fusiondirectory.org/fusiondirectory/fd-plugins/-/issues/6242Public form must be able to create locked users by default2023-08-25T10:20:32ZJonathan SwaelensPublic form must be able to create locked users by defaultPublic form must be able to create locked users by default.
Right now it's created but without any lock.
It would be nice to be able to tick an option to lock it at creation.Public form must be able to create locked users by default.
Right now it's created but without any lock.
It would be nice to be able to tick an option to lock it at creation.FusionDirectory 1.5dockx thibaultdockx thibaulthttps://gitlab.fusiondirectory.org/fusiondirectory/fd-plugins/-/issues/6241Private form must not be related to the plugin invitations2023-11-16T16:33:39ZJonathan SwaelensPrivate form must not be related to the plugin invitationsPrivate form must not be related to the plugin invitations.
The code must be read and see the differences again between private / public formPrivate form must not be related to the plugin invitations.
The code must be read and see the differences again between private / public formFusionDirectory 1.5dockx thibaultdockx thibaulthttps://gitlab.fusiondirectory.org/fusiondirectory/fd-plugins/-/issues/6240The base where the objects are created with public-form must be written in a ...2023-06-25T21:21:37ZJonathan SwaelensThe base where the objects are created with public-form must be written in a DN formatHello @tdockx @bmortier
The creation base for public-forms must be written in a DN format. It is possible to use a base selector, like for the rest? I think it would be more logical and easy than checking for the DN. I don't see any re...Hello @tdockx @bmortier
The creation base for public-forms must be written in a DN format. It is possible to use a base selector, like for the rest? I think it would be more logical and easy than checking for the DN. I don't see any reason that using a DN would be better than a department.
CheersFusionDirectory 1.4.1bmortierbmortierhttps://gitlab.fusiondirectory.org/fusiondirectory/fd-plugins/-/issues/6239Private form is not displayed if we only install public-form plugin without i...2023-06-25T21:19:20ZJonathan SwaelensPrivate form is not displayed if we only install public-form plugin without invitationHello @bmortier @tdockx
I see that part in the code of public-forms
```
if (!isset($this->registration) && isset($this->form['fdPublicFormPrivate']) && ($this->form['fdPublicFormPrivate'] == 'TRUE')) {
// Private form and no...Hello @bmortier @tdockx
I see that part in the code of public-forms
```
if (!isset($this->registration) && isset($this->form['fdPublicFormPrivate']) && ($this->form['fdPublicFormPrivate'] == 'TRUE')) {
// Private form and no token
throw new FusionDirectoryException(sprintf(_('Form "%s" is private and requires an invitation'), $this->form['cn']));
}
```
It sounds like the private form is not just another php file but that the whole process if different. It's written somewhere why it is different, exactly? Maybe it would be a nice addition to have for public-form 2 php file so it would be possible to have one or others protected with a portal?FusionDirectory 1.4.1bmortierbmortierhttps://gitlab.fusiondirectory.org/fusiondirectory/fd-plugins/-/issues/6237Add requiredAttrs array to the webservice informations2023-06-11T21:01:05ZJonathan SwaelensAdd requiredAttrs array to the webservice informationsHello @tdockx
The modification helps to know for each section which attrs are mandatory, for example
```
$ C /types/USER/user
{
"sections": {
"perso": {
"name": "Personal information",
"icon": "geticon.php?context=ty...Hello @tdockx
The modification helps to know for each section which attrs are mandatory, for example
```
$ C /types/USER/user
{
"sections": {
"perso": {
"name": "Personal information",
"icon": "geticon.php?context=types&icon=user&size=16",
"attrs": [
"cn",
"sn",
"givenName",
"initials",
"description",
"jpegPhoto"
],
"requiredAttrs": [
"sn",
"givenName"
]
},
"contact": {
"name": "Organizational contact information",
"icon": "geticon.php?context=types&icon=contact&size=16",
"attrs": [
"l",
"st",
"postalAddress",
"roomNumber",
"telephoneNumber",
"mobile",
"pager",
"facsimileTelephoneNumber",
"labeledURI"
],
"requiredAttrs": []
},
"account": {
"name": "Account information",
"icon": "geticon.php?context=applications&icon=ldap&size=16",
"attrs": [
"base",
"uid",
"preferredLanguage",
"userPassword"
],
"requiredAttrs": [
"uid"
]
},
"homecontact": {
"name": "Personal contact information",
"icon": "geticon.php?context=types&icon=contact&size=16",
"attrs": [
"displayName",
"homePostalAddress",
"homePhone"
],
"requiredAttrs": []
},
"organization": {
"name": "Organizational information",
"icon": "geticon.php?context=places&icon=folder&size=16",
"attrs": [
"title",
"o",
"ou",
"departmentNumber",
"employeeNumber",
"employeeType",
"manager"
],
"requiredAttrs": []
}
},
"sections_order": [
"perso",
"contact",
"account",
"homecontact",
"organization"
]
}
```
There will be cases like userPassword that will see as not mandatory because the attribute is not set as required.FusionDirectory 1.5dockx thibaultdockx thibaulthttps://gitlab.fusiondirectory.org/fusiondirectory/fd-plugins/-/issues/6231Give the ability to the webservice to notice if an attribute is monovalued or...2023-05-18T13:55:07ZJonathan SwaelensGive the ability to the webservice to notice if an attribute is monovalued or multivaluedHello @tdockx
I modified the rest.php so that it will add to the types endpoint a `""` or `[]` for each attribute.
It can help to notice the type without check FD interface.
Exemple of the output
```
$ C /types/user/supannAccount
{
...Hello @tdockx
I modified the rest.php so that it will add to the types endpoint a `""` or `[]` for each attribute.
It can help to notice the type without check FD interface.
Exemple of the output
```
$ C /types/user/supannAccount
{
"sections": {
"identity": {
"name": "Identity",
"attrs": {
"supannCivilite": "",
"supannAliasLogin": "",
"eduPersonPrincipalName": "",
"eduPersonNickname": "",
"supannRefId": []
}
},
"contact": {
"name": "Contact",
"attrs": {
"supannAutreTelephone": [],
"supannTelephonePrive": [],
"supannAutreMail": [],
"supannMailPerso": [],
"supannMailPrive": [],
"supannAdressePostalePrivee": [],
"supannListeRouge": "",
"mailForwardingAddress": ""
}
},
"affectation": {
"name": "Assignment",
"attrs": {
"supannEntiteAffectationPrincipale": "",
"supannEntiteAffectation": [],
"supannTypeEntiteAffectation": []
}
},
"affiliation": {
"name": "Affiliation",
"attrs": {
"eduPersonPrimaryAffiliation": "",
"eduPersonAffiliation": [],
"supannEtablissement": [],
"supannParrainDN": ""
}
},
"student": {
"name": "Student profile",
"attrs": {
"supannCodeINE": "",
"supannEtuId": ""
}
},
"student2": {
"name": "Student registrations",
"class": [
"fullwidth"
],
"template": "/usr/share/fusiondirectory/plugins/personal/supann/student_subscription.tpl",
"attrs": {
"supannEtuAnneeInscription": "",
"supannEtuRegimeInscription": "",
"supannEtuSecteurDisciplinaire": "",
"supannEtuTypeDiplome": "",
"supannEtuCursusAnnee": "",
"supannEtuDiplome": "",
"supannEtuEtape": "",
"supannEtuElementPedagogique": "",
"supannEtuInscription": ""
}
},
"personnal": {
"name": "Personal profile",
"attrs": {
"supannEmpId": "",
"supannEmpCorps": "",
"supannActivite": []
}
},
"personnal2": {
"name": "Roles",
"class": [
"fullwidth"
],
"attrs": {
"supannRoleGenerique": "",
"supannRoleEntite": ""
}
},
"consentement": {
"name": "Consent",
"class": [
"fullwidth"
],
"attrs": {
"supannConsentement": ""
}
}
},
"sections_order": [
"identity",
"contact",
"affectation",
"affiliation",
"student",
"student2",
"personnal",
"personnal2",
"consentement"
]
}
```FusionDirectory 1.5dockx thibaultdockx thibaulthttps://gitlab.fusiondirectory.org/fusiondirectory/fd-plugins/-/issues/6223PHP Errors on login2023-04-24T13:44:14ZJrmGrltPHP Errors on login### Description
I can successfully login into my instance but I got several errors with debug flag enabled in fusiondirectory.conf.
### Distribution Name and Version
Debian GNU/Linux 11 (bullseye)
### FusionDirectory Version
Package...### Description
I can successfully login into my instance but I got several errors with debug flag enabled in fusiondirectory.conf.
### Distribution Name and Version
Debian GNU/Linux 11 (bullseye)
### FusionDirectory Version
Package: fusiondirectory
Version: 1.3.1-1
APT-Sources: https://public.fusiondirectory.org/buster-fusiondirectory-release buster/main amd64 Packages
### PHP version used
PHP 7.4.33
### Origin of php packages
APT-Sources: http://ftp.debian.org/debian bullseye/main amd64 Packages
### Steps to Reproduce
1. Install fusiondirectory
2. Enable logging flag and set debug level to something higher than 0
3. Login
4. See php daemon logs
**Expected behavior:**
No php error
**Actual behavior:**
```
Apr 24 17:32:01 myldap php: FusionDirectory [testuser]: (view) error: PHP error: count(): Parameter must be an array or an object that implements Countable(/apps/ldap/fusiondirectory/www/include/class_config.inc, line 646)
Apr 24 17:32:01 myldap php: FusionDirectory [testuser]: (view) error: PHP error: count(): Parameter must be an array or an object that implements Countable(/apps/ldap/fusiondirectory/www/include/class_config.inc, line 646)
Apr 24 17:32:01 myldap php: FusionDirectory [testuser]: (view) error: PHP error: count(): Parameter must be an array or an object that implements Countable(/apps/ldap/fusiondirectory/www/include/class_config.inc, line 646)
Apr 24 17:32:01 myldap php: FusionDirectory [testuser]: (view) error: PHP error: count(): Parameter must be an array or an object that implements Countable(/apps/ldap/fusiondirectory/www/include/class_config.inc, line 646)
Apr 24 17:32:01 myldap php: FusionDirectory [testuser]: (view) error: PHP error: count(): Parameter must be an array or an object that implements Countable(/apps/ldap/fusiondirectory/www/include/class_config.inc, line 646)
Apr 24 17:32:01 myldap php: FusionDirectory [testuser]: (view) error: PHP error: count(): Parameter must be an array or an object that implements Countable(/apps/ldap/fusiondirectory/www/include/class_config.inc, line 646)
Apr 24 17:32:01 myldap php: FusionDirectory [testuser]: (view) error: PHP error: count(): Parameter must be an array or an object that implements Countable(/apps/ldap/fusiondirectory/www/include/class_config.inc, line 646)
Apr 24 17:32:01 myldap php: FusionDirectory [testuser]: (view) error: PHP error: count(): Parameter must be an array or an object that implements Countable(/apps/ldap/fusiondirectory/www/include/class_config.inc, line 646)
Apr 24 17:32:01 myldap php: FusionDirectory [testuser]: (view) error: PHP error: count(): Parameter must be an array or an object that implements Countable(/apps/ldap/fusiondirectory/www/include/class_config.inc, line 646)
Apr 24 17:32:01 myldap php: FusionDirectory [testuser]: (view) error: PHP error: count(): Parameter must be an array or an object that implements Countable(/apps/ldap/fusiondirectory/www/include/class_config.inc, line 646)
Apr 24 17:32:01 myldap php: FusionDirectory [testuser]: (view) error: PHP error: count(): Parameter must be an array or an object that implements Countable(/apps/ldap/fusiondirectory/www/include/class_config.inc, line 646)
Apr 24 17:32:01 myldap php: FusionDirectory [testuser]: (view) error: PHP error: count(): Parameter must be an array or an object that implements Countable(/apps/ldap/fusiondirectory/www/include/class_config.inc, line 646)
Apr 24 17:32:01 myldap php: FusionDirectory [testuser]: (view) error: PHP error: count(): Parameter must be an array or an object that implements Countable(/apps/ldap/fusiondirectory/www/include/class_config.inc, line 646)
Apr 24 17:32:01 myldap php: FusionDirectory [unauthenticated]: (view) error: PHP error: readfile(): Filename cannot be empty(/apps/ldap/fusiondirectory/www/html/geticon.php, line 51)
```
**Reproduces how often:**
Each login
### Additional Information
I used official fd package installed in a custom directory
Iam using Apache/2.4.56bmortierbmortier