Employé
Un champ de saisie de recherche pour sélectionner un employé à partir de la liste du personnel. Les données peuvent être recherchées par nom ou email de l'employé. Utile pour lier des employés associés ou ajouter des références d'employés dans des formulaires personnalisés. Ce champ peut être combiné avec un champ de type répéteur pour configurer des listes d'employés.
Captures d'écran
Affichage du champ dans le formulaire :
Affichage du champ dans un groupe de champs :
Configuration
-
Paramètres :
- Nom : L'étiquette du champ.
- Slug : L'identifiant technique unique.
- Exclure les désactivés : Option pour exclure les employés désactivés des résultats de recherche.
- Groupes : Option pour filtrer les employés par groupes spécifiques.
-
Validation :
- Obligatoire : Détermine si le champ doit être rempli.
-
Design :
- Instructions : Texte affiché à côté du champ fournissant des détails sur les données nécessaires.
- Largeur : La largeur du champ dans le formulaire.
- Classes : Classes CSS personnalisées pour le style du champ.
- ID : Attribut ID personnalisé pour le champ.
- Texte avant : Texte supplémentaire affiché avant le champ.
- Texte après : Texte supplémentaire affiché après le champ.
Format de retour
- Type : Objet (RelationFieldValue) ou null
- Méthodes de l'objet :
// Retourner l'objet de l'entité associée
$employee = $relationFieldValue->getEntity();
// Retourner les groupes de champs de l'entité associée
$fieldGroups = $relationFieldValue->getFieldGroups();
info
La valeur du champ retourne un objet au lieu d'un tableau pour effectuer le chargement différé des sous-valeurs (objet, groupes de champs et présentateur pour certaines entités) et garantir la performance du processus.
Utilisation
/some-template.tpl
{* Object or Entity and Id *}
{assign var="data" value=$modules.customfieldgroups.data->get($employee)}
{assign var="data" value=$modules.customfieldgroups.data->get('employee', $employee.id)}
{if $data.field_group_slug.field_slug}
<span>{$data.field_group_slug.field_slug->getEntity()->id}</span>
{* Entity related field groups *}
{assign var="entity_field_groups" value=$data.field_group_slug.field_slug->getFieldGroups()}
<span>{entity_field_groups.field_group_slug.field_slug}</span>
{/if}
/SomeClass.php
function someMethod()
{
$dataRetriever = DataRetrieverFacade::getInstance();
$data = $dataRetriever->get($object); // Object
$data = $dataRetriever->get('product', $idProduct); // Entity and id
$employeeData = $data['field_group_slug']['field_slug'];
$employeeObject = $employeeData ? $employeeData->getEntity() : null;
$employeeFieldGroups = $employeeData ? $employeeData->getFieldGroups() : [];
}
