Contao-Camp 2024
Ergebnis 1 bis 4 von 4

Thema: Subpalette und Type select

  1. #1
    Community-Moderator & Contao-Urgestein Avatar von derRenner
    Registriert seit
    23.10.2012.
    Ort
    hoRn|waldviertel
    Beiträge
    2.849
    Contao-Projekt unterstützen

    Support Contao

    Standard Subpalette und Type select

    Hallo,

    wie bekomme ich bei einem Type SELECT bei einer bestimmten Auswahl eine Subpalette angezeigt?

    Ziel: Bei Auswahl von 'divider-rounded-bg' oder 'divider-square-bg' soll die Checkbox aus 'dividerIconbgOutline' angezeigt werden.

    tl_content.php:

    PHP-Code:
    $GLOBALS['TL_DCA']['tl_content']['palettes'][DividerController::TYPE] = '{type_legend},type,headline;{divider_legend},dividerWidth,dividerIconTotop,dividerIconbg;{template_legend:hide},customTpl;{protected_legend:hide},protected;{expert_legend:hide},guests,cssID;{invisible_legend:hide},invisible,start,stop';

    $GLOBALS['TL_DCA']['tl_content']['palettes']['__selector__'][] = 'dividerIconbg';
    $GLOBALS['TL_DCA']['tl_content']['subpalettes']['dividerIconbg'] = 'dividerIconbgOutline';

    ...

    $GLOBALS['TL_DCA']['tl_content']['fields']['dividerIconbg'] = [
        
    'label'         => &$GLOBALS['TL_LANG']['tl_content']['dividerIconbg'],
        
    'inputType'     => 'select',
        
    'exclude'       => true,
        
    'options' => [
            
    'divider-no-bg',
            
    'divider-rounded-bg',
            
    'divider-square-bg'
        
    ],
        
    'reference'     => &$GLOBALS['TL_LANG']['tl_content'],
        
    'eval' => [
            
    'tl_class' => 'clr w50'
        
    ],
        
    'default'       => 'divider-no-bg',
        
    'sql'           => "varchar(32) NOT NULL default ''",
    ];

    $GLOBALS['TL_DCA']['tl_content']['fields']['dividerIconbgOutline'] = [
        
    'label'         => &$GLOBALS['TL_LANG']['tl_content']['dividerIconbgOutline'],
        
    'inputType'     => 'checkbox',
        
    'exclude'       => true,
        
    'eval' => [
            
    'tl_class'  => 'w50 m12'
        
    ],
        
    'sql'           => "char(1) NOT NULL default ''"   
    ]; 
    vielen Dank für die Hilfestellung
    Grüsse
    Bernhard


  2. #2
    Contao-Urgestein Avatar von cliffparnitzky
    Registriert seit
    08.10.2010.
    Ort
    Lüneburg
    Beiträge
    2.446
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    In der Subpallete den Key so definieren: "<Feldname>_<gewählte Option>"

    also im Beispiel: "dividerIconbg_divider-rounded-bg"

  3. #3
    Community-Moderator & Contao-Urgestein Avatar von derRenner
    Registriert seit
    23.10.2012.
    Ort
    hoRn|waldviertel
    Beiträge
    2.849
    Contao-Projekt unterstützen

    Support Contao

    Standard

    mmmh - muss noch etwas beachtet oder gemacht werden?
    PHP-Code:
    $GLOBALS['TL_DCA']['tl_content']['palettes']['__selector__'][] = 'dividerIconbg';
    $GLOBALS['TL_DCA']['tl_content']['subpalettes']['dividerIconbg_divider-rounded-bg'] = 'dividerIconbgOutline';
    $GLOBALS['TL_DCA']['tl_content']['subpalettes']['dividerIconbg_divider-square-bg'] = 'dividerIconbgOutline'
    Die Checkbox wird nämlich nicht angezeigt ...
    Ja, ProdCache ist geleert bzw. auch im DebugMode kommt die Checkbox nicht
    Grüsse
    Bernhard


  4. #4
    Community-Moderator & Contao-Urgestein Avatar von derRenner
    Registriert seit
    23.10.2012.
    Ort
    hoRn|waldviertel
    Beiträge
    2.849
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Ich habe nun noch ein 'submitOnChange' hinzugefügt und nun "funktioniert" das, aber ...

    - die Seite lädt neu
    - trotz 'w50' wird die Subpalette unterhalb eingefügt/angezeigt

    PHP-Code:
    $GLOBALS['TL_DCA']['tl_content']['fields']['dividerIconbg'] = [
        
    'label'         => &$GLOBALS['TL_LANG']['tl_content']['dividerIconbg'],
        
    'inputType'     => 'select',
        
    'exclude'       => true,
        
    'options' => [
            
    'dividerRoundedBg',
            
    'dividerSquareBg'
        
    ],
        
    'reference'     => &$GLOBALS['TL_LANG']['tl_content']['dividerIconbgOptions'],
        
    'eval' => [
            
    'tl_class' => 'clr w50',
            
    'includeBlankOption' => true,
            
    'submitOnChange' => true
        
    ],
        
    'sql'           => "varchar(32) NOT NULL default ''"
    ]; 
    soll das so sein? Oder übersehe ich weiterhin etwas?
    Grüsse
    Bernhard


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
  •