Ergebnis 1 bis 2 von 2

Thema: Anpassen tl_member

  1. #1
    Contao-Nutzer
    Registriert seit
    30.11.2022.
    Ort
    Utrecht, NL
    Beiträge
    5

    Standard Anpassen tl_member

    Ein guten Tag allen,

    ich möchte mein tl_members anpassen. Darum habe ich in \contao\dca\ ein tl_member.php gemacht.

    Danach habe ich einige "Fields" zugefügt, z.B.:

    Code:
    $GLOBALS['TL_DCA']['tl_member']['fields']['last_check_hash'] = array
    (
        'label' => ["Last check_hash", "Do not touch, help for last check_hash"],
        'explanation' => "Last check hash",
        'inputType' => 'text',
        'eval' => ['tl_class' => 'w50', 'maxlength' => 255, 'mandatory' => false],
        'sql' => "varchar(255) NOT NULL default ''"
    );
    Aber ich suche ein Möglichkeit um das field angepasst in die "list-overview" von tl_member zu sehen:

    $GLOBALS['TL_DCA']['tl_member']['list']['label'] => array
    (
    'fields' => array('username', 'last_check_hash'),
    'showColumns' => true,
    ),

    Aber ich möchte nicht das ganzen Feld sehen lassen, aber z.B. nur 3 Möglichkeiten: "EMPTY", "LENGTH=16" (wenn da ein string von 16 Buchstaben ins Feld gibt), "OTHER". Ich habe gerade gefunden das ich dann ein label_callback brauch, aber habe keine Ahnung wo ich die neue Function platzen soll? Hat jemand ein Beispiel?

  2. #2
    Contao-Nutzer
    Registriert seit
    30.11.2022.
    Ort
    Utrecht, NL
    Beiträge
    5

    Standard Self Antwort...

    Mmmm, Verbesserung meines Antwort:

    https://docs.contao.org/dev/referenc...st-label-label
    -> "list view".

    contao\dca\tl_member.php:

    PHP-Code:
    $GLOBALS['TL_DCA']['tl_member']['list']['label'] = array
    (
        
    'showColumns'             => true,
        
    'fields'                  => array('username''pid:tl_vv_company.company''groups''license_enddt''dateAdded','usage')
        
    //'label_callback' => array('TlMemberEventListener', 'tlMemberLabelCallback')->nicht notwendig
    ); 
    Und
    src/EventListener/DataContainer/MemberLabelCallbackListener.php

    PHP-Code:
    <?php

    namespace App\EventListener\DataContainer;

    use 
    Contao\CoreBundle\ServiceAnnotation\Callback;
    use 
    Contao\DataContainer;

    /**
    * @Callback(table="tl_member", target="list.label.label")
    */
    class MemberLabelCallbackListener
    {

    public function 
    __invoke(array $rowstring $labelDataContainer $dc, array $labels): array
        {
            
    $labels[0]= "A";
            return 
    $labels;
        }
    }
    Geändert von krijnsent (14.12.2022 um 16:37 Uhr)

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •