Comment ajouter une description sur un Smart Field du formulaire ?

Prérequis

Afin de pouvoir suivre ce guide, il faut préalablement savoir Comment modifier l’aspect d’un Smart Field à l’aide d’une option de représentation.

Comment ajouter une description sur un Smart Field du formulaire ?

On utilise l’option setDescription pour ajouter une description sur un Smart Field.

Recommandations

Si vous n’êtes pas familier avec le concept dOption de présentation, en particulier de l’option setDescription, il est recommandé de lire la documentation associée disponible ici

Voici un exemple d’utilisation de l’option setDescription pour ajouter des descriptions sur des Smart Fields à différentes positions :

<?php

namespace Cogip\Restauratec\SmartStructures\Menu\Render;

use Anakeen\Ui\CommonRenderOptions;
use Anakeen\Ui\RenderOptions;
use SmartStructure\Fields\Menu as MenuFields;

class MenuEditRender extends \Anakeen\Ui\DefaultConfigEditRender
{
    public function getOptions(\Anakeen\Core\Internal\SmartElement $document): RenderOptions
    {
        $options = parent::getOptions($document);
        $options->frame(MenuFields::menu_frame)
            ->setDescription("<p>Une proposiion de repas pour client</p>",
            CommonRenderOptions::topPosition);
        $options->arrayAttribute(MenuFields::menu_composition)
            ->setDescription("<p>La liste des divers mets qui composent le repas</p>",
            CommonRenderOptions::bottomPosition);
        $options->text(MenuFields::menu_title)
            ->setDescription("<p>Le nom d’un menu</p>",
            CommonRenderOptions::clickPosition);
        return $options;
    }
}

Les descriptions sont placées au-dessus (topPosition), en dessous (bottomPosition) ou accessibles en cliquant sur l’icône ? (clickPosition)

SetDescription

Vous pouvez maintenant déployer vos modifications :

npx @anakeen/anakeen-cli deploy -c http://localhost:8080/control -s . -u admin -p anakeen --reinstall

Et voir le résultat sur un MENU en création ou modification :

http://localhost:8080/api/v2/smart-elements/MENU/views/!defaultCreation.html

Et ensuite ?

Comment paramétrer une description complète d’un formulaire par défaut