Contao-Camp 2024
Ergebnis 1 bis 5 von 5

Thema: Abhängige Select Felder - anhand Contao member_group/member

  1. #1
    Contao-Urgestein Avatar von Franko
    Registriert seit
    22.06.2009.
    Beiträge
    1.503
    Partner-ID
    6122

    Standard Abhängige Select Felder - anhand Contao member_group/member

    Hallo,
    ich teste mit der Select Auswahl und möchte hier abhängig von einem Select-Feld ein anderes Select-Feld Anzeigen/abfragen:

    PHP-Code:
        'test7' => array(
          
    'label' => array('Feld 7'''),
          
    'inputType' => 'select',
          
    'foreignKey' => 'tl_member_group.name',
          
    'eval' => array('includeBlankOption' => true'submitOnChange' => true'tl_class' => 'w50'),
        ),            
        
        
    'test71' => array(
          
    'label' => array('Feld 71'''),
          
    'inputType' => 'select',
          
    'options_callback' => function($dc) {
              
    $select7 $dc->activeRecord->{'rsce_field_test7'};
              
              
              
    // Test: Ausgabe des Wertes aus Feld 'test7'
              
    return array ( $select7 => $select7 );
          },      
          
    'eval' => array('tl_class' => 'w50'), 
        ), 
    In diesem Beispiel erhalte ich über das linke/erste Select eine Auswahl aller Mitglieder-Gruppen mit der jeweiligen ID als Rückgabewert.
    Diesen Wert (die ID der Mitglieder-Gruppe ) kann ich im zweiten/rechten Select heranziehen.

    Das funktioniert soweit. Nur weiß ich nicht wie ich jetzt anhand der Gruppen ID alle Mitglieder (schön hier auch nur die aktivierten) der Gruppe erhalte.
    Geändert von Franko (21.06.2018 um 20:17 Uhr) Grund: Update Title
    Freelancer, Digital Design Enthusiast, Contao Aficionado and Tutorial Junkie @MoinFranko - Carpe diem ...

  2. #2
    Contao-Urgestein Avatar von Franko
    Registriert seit
    22.06.2009.
    Beiträge
    1.503
    Partner-ID
    6122

    Standard

    Habe dazu keine passenden Models/Collections gefunden.
    Auch Recherche in "friends-of-contao/contao-memberlist" brachten mich nicht weiter ...
    ... mein obiges Beispiel hat keinen praktischen Hintergrund - nur zum lernen - @developers - please be patienced with me

    Versuche mit:

    PHP-Code:
    // get all active members
    $objMembers = \MemberModel::findby('disable'''); 
    und

    PHP-Code:
    // filter members by member_group - here with id 1
    if (in_array('1'deserialize($objMember->groups))) {...} 
    scheinen zu funktionieren.
    Morgen mehr dazu - Muß Schluß machen ...
    Freelancer, Digital Design Enthusiast, Contao Aficionado and Tutorial Junkie @MoinFranko - Carpe diem ...

  3. #3
    Contao-Urgestein Avatar von Franko
    Registriert seit
    22.06.2009.
    Beiträge
    1.503
    Partner-ID
    6122

    Standard

    Ich habe jetzt obige Angaben wie folgt ergänzt:

    PHP-Code:
          'options_callback' => function($dc) {
              
              
    // get selected data from another field
              
    $select7 $dc->activeRecord->{'rsce_field_test7'};
                        
              
    // Get all active memebrs
              
    $objMembers = \MemberModel::findby('disable''');
              
              
    $arrMember = array();
              
              
    // filter by member_group
              
    foreach($objMembers as $objMember) {
                if (
    in_array($select7deserialize($objMember->groups))) {
                  
    $arrMember[$objMember->id] = $objMember->firstname .' '$objMember->lastname;
                }
              }
              return 
    $arrMember
    Wenn ich jetzt eine Mitgliedergruppe auswähle, erhalte ich die aktiven Mitglieder zur Auswahl.

    Allerdings erst, wenn ich beim Select Feld der Mitgliedergruppe einmalig eine Auswahl treffe.

    Wie kann ich das von vorne herein setzen? Habe auch schon load_callback o. onload_callback probiert ...
    Freelancer, Digital Design Enthusiast, Contao Aficionado and Tutorial Junkie @MoinFranko - Carpe diem ...

  4. #4
    Contao-Urgestein Avatar von Franko
    Registriert seit
    22.06.2009.
    Beiträge
    1.503
    Partner-ID
    6122

    Standard

    Zitat Zitat von Franko Beitrag anzeigen
    Wie kann ich das von vorne herein setzen? Habe auch schon load_callback o. onload_callback probiert ...
    Also wenn ich für die Gruppenauswahl ein
    PHP-Code:
    'foreignKey' => 'tl_member_group.name'
    'inputType' => 'radio'
    setze erhalte ich schon beim Laden die entsprechenden Mitglieder angezeigt. Warum klappt das nicht bei einem select Feld?
    Freelancer, Digital Design Enthusiast, Contao Aficionado and Tutorial Junkie @MoinFranko - Carpe diem ...

  5. #5
    Contao-Urgestein Avatar von Franko
    Registriert seit
    22.06.2009.
    Beiträge
    1.503
    Partner-ID
    6122

    Standard

    Zitat Zitat von Franko Beitrag anzeigen
    Warum klappt das nicht bei einem select Feld?
    Mist - indem man dann auch einen entsprechenden default Wert festlegt ...
    Freelancer, Digital Design Enthusiast, Contao Aficionado and Tutorial Junkie @MoinFranko - Carpe diem ...

Aktive Benutzer

Aktive Benutzer

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

Lesezeichen

Lesezeichen

Berechtigungen

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