Ergebnis 1 bis 9 von 9

Thema: Events Modul mit Checkbox erweitern

  1. #1
    Contao-Nutzer
    Registriert seit
    07.07.2009.
    Ort
    Zug, Schweiz
    Beiträge
    70

    Standard Events Modul mit Checkbox erweitern

    Hallo

    Ich habe gemäss dieser Anleitung das Event-Modul mit einigen Felder ergänzt: http://de.contaowiki.org/Vorhandene_Module_erweitern
    Klappt auch alles, bis auf eine Checkbox. Im BE wird nur der erste Wert der Checkbox angezeigt und wenn man diese eine Option anklickt und speichern will, dann kommt die Fehlermeldung:
    Ungültige Eingabe: 1

    Ich habe die DB über das install-php aktualisiert. In der Systemverwaltung alle internen Daten gelöscht und den Cache neu aufgebaut. Keine Verbesserung.

    Hier der Code in der dca:
    Code:
    $GLOBALS['TL_DCA']['tl_calendar_events']['fields']['kategorie'] = array
    (
            'label'     		=> &$GLOBALS['TL_LANG']['tl_calendar_events']['kategorie'],
            'exclude'   		=> true, 
        	'inputType' 		=> 'checkbox',
            'options'   		=> array('Exerzitien im Alltag','Kontemplative Exerzitien im Alltag','Grosse Exerzitien im Alltag','Kurzexerzitien','Einzelexerzitien','Einzelexerzitien mit Gemeinschaftselementen','30-tägige Exerzitien','Kontemplative Exerzitien','Vertiefung/Hinführung','Sonderformen'),
        	'eval'      		=> array('mandatory'=>false,'multiple'=>false,'feEditable'=>true, 'feViewable'=>true, 'tl_class'=>'w50 cbx m12'),
        	'sql'       		=> "varchar(255) NOT NULL default ''"
    );
    Danke für eure Hilfe!
    Alexandra

  2. #2
    Contao-Nutzer Avatar von sr-tag
    Registriert seit
    13.12.2010.
    Ort
    nördliches Brandenburg
    Beiträge
    74

    Standard

    Versuch mal bei den options alle Werte nochmals als einzelne Arrays mit Key=>... ,value=>... Anzulegen

  3. #3
    Contao-Nutzer
    Registriert seit
    07.07.2009.
    Ort
    Zug, Schweiz
    Beiträge
    70

    Gesicht zeigt die Zunge

    Danke für den Tipp. Hat leider nicht funktioniert. Jetzt wird der letzte Wert aus der Liste angezeigt. ("Sonderformen"). Und beim Auswählen kommt der selber Fehler "Ungültige Eingabe: 1".
    Der Code jetzt:
    Code:
    $GLOBALS['TL_DCA']['tl_calendar_events']['fields']['kategorie'] = array
    (
            'label'     		=> &$GLOBALS['TL_LANG']['tl_calendar_events']['kategorie'],
            'exclude'   		=> true, 
        	'inputType' 		=> 'checkbox',
            'options'   		=> array('key'=>'Exerzitien im Alltag','value'=>'Exerzitien im Alltag','key'=>'Kontemplative Exerzitien im Alltag','value'=>'Kontemplative Exerzitien im Alltag','key'=>'Exerzitien im Alltag','value'=>'Exerzitien im Alltag','key'=>'Grosse Exerzitien im Alltag','value'=>'Grosse Exerzitien im Alltag','key'=>'Kurzexerzitien','value'=>'Kurzexerzitien','key'=>'Einzelexerzitien','value'=>'Einzelexerzitien','key'=>'Einzelexerzitien mit Gemeinschaftselementen','value'=>'Einzelexerzitien mit Gemeinschaftselementen','key'=>'30-tägige Exerzitien','value'=>'30-tägige Exerzitien','key'=>'Kontemplative Exerzitien','value'=>'Kontemplative Exerzitien','key'=>'Vertiefung/Hinführung','value'=>'Vertiefung/Hinführung','key'=>'Sonderformen','value'=>'Sonderformen'),
        	'eval'      		=> array('mandatory'=>false,'multiple'=>false,'feEditable'=>true, 'feViewable'=>true, 'tl_class'=>'w50 cbx m12'),
        	'sql'       		=> "varchar(255) NOT NULL default ''"
    );
    Kann es sein, dass das Array nicht als Array erkannt wird. Bug in 3.1.2?
    Alexandra

  4. #4
    Alter Contao-Hase Avatar von kmielke
    Registriert seit
    21.06.2009.
    Beiträge
    1.173

    Standard

    Hi,

    offensichtlich hast du das mit dem key=>value nicht so richtig verstanden. Der key ist ein eindeutiger Schlüssel, und value ist der dazugehörige Wert.

    key => value sollte also z.B. so aussehen.

    PHP-Code:
    'options' => array(0=>'Exerzitien im Alltag',1=>'Kontemplative Exerzitien im Alltag',2=>'Exerzitien im Alltag',3=>'Grosse Exerzitien im Alltag',4=>'Kurzexerzitien',5=>'Einzelexerzitien',6=>'Einzelexerzitien mit Gemeinschaftselementen',7=>'30-tägige Exerzitien',8=>'Kontemplative Exerzitien',9=>'Vertiefung/Hinführung',10=>'Sonderformen','value'=>'Sonderformen'), 
    Gruß
    Kester
    Gruß Kester

    Kein Support via PN ohne vorherige Absprache.

  5. #5
    Contao-Nutzer
    Registriert seit
    07.07.2009.
    Ort
    Zug, Schweiz
    Beiträge
    70

    Standard

    Danke, Kester. Ich weiss schon was ein key und was ein value ist. Aber auch deine Hinweis hat nicht zum Erfolg geführt.

    Das erste Code-Beispiel hat übrigens beim Erweitern vom Member-Modul funktioniert. Mit checkbox als inputType und varchar(255). Bei den Events geht es leider nicht.
    Vielleicht müsste das Feld auch vom Typ Blob sein. https://github.com/contao/core/issues/5205

    Ich habe mir nun so beholfen, dass ich den Feldtyp mit radio angegeben habe.
    Code:
    $GLOBALS['TL_DCA']['tl_calendar_events']['fields']['formen'] = array
    (
            'label'     		=> &$GLOBALS['TL_LANG']['tl_calendar_events']['formen'],
            'exclude'   		=> true, 
        	'inputType' 		=> 'radio',
            'options'   		=> array('bla',bli','blu'),
        	'eval'      		=> array('mandatory'=>false,'size'=>10,'feViewable'=>true, 'tl_class'=>'w50 cbx m12'),
        	'sql'       		=> "varchar(255) NOT NULL default ''"
    );
    Das funktioniert, ausser die Darstellung ist noch unschön. Siehe Screenshot.

    Die "size"-Angabe bewirkt nicht. Wie kann man den Abstand zum nächsten Eingabefeld definieren?
    Angehängte Grafiken Angehängte Grafiken
    Alexandra

  6. #6
    Alter Contao-Hase Avatar von kmielke
    Registriert seit
    21.06.2009.
    Beiträge
    1.173

    Standard

    Zitat Zitat von alphabeet Beitrag anzeigen
    Danke, Kester. Ich weiss schon was ein key und was ein value ist. Aber auch deine Hinweis hat nicht zum Erfolg geführt.
    Nix für Ungut....

    Ja, es macht Sinn alle Felder, die einen Array enthalten als blob anzulegen. Da habe ich gar nicht drauf geachtet.

    Die "size"-Angabe bewirkt nicht. Wie kann man den Abstand zum nächsten Eingabefeld definieren?
    Soweit ich weiß, ist size nur für select und textarea, und gibt die Anzahl der Zeilen an. Die kannst du bei checkbox nicht nutzen. Was genau möchtest du denn?
    Mehrfachauswahl?

    Gruß
    Kester
    Gruß Kester

    Kein Support via PN ohne vorherige Absprache.

  7. #7
    Contao-Nutzer
    Registriert seit
    07.07.2009.
    Ort
    Zug, Schweiz
    Beiträge
    70

    Standard

    Kein Problem! :-)

    Nein, ich möchte keine Mehrfachauswahl, sondern die Darstellung im BE im Eventmodul korrigieren. Siehe Screenshot oben.
    Die Radiobuttons laufen hinter das Teasertext-Feld und können zum grossen Teil nicht mehr angeklickt werden.
    Alexandra

  8. #8
    Alter Contao-Hase Avatar von kmielke
    Registriert seit
    21.06.2009.
    Beiträge
    1.173

    Standard

    hm... Das bekomme ich bei mir nicht hin. Da stimmt die anzeige immer. Browser Cache mal leer machen? Nimm mal die komplette eval Zeile raus. Da ist eh nichts drin, was du wirklich benötigst. Eventuell stören sich die Einstellungen aus tl_class.
    Geändert von kmielke (19.09.2013 um 13:42 Uhr)
    Gruß Kester

    Kein Support via PN ohne vorherige Absprache.

  9. #9
    Contao-Nutzer Avatar von mrhn
    Registriert seit
    12.07.2011.
    Beiträge
    13

    Standard

    Zitat Zitat von alphabeet Beitrag anzeigen
    Hallo

    Ich habe gemäss dieser Anleitung das Event-Modul mit einigen Felder ergänzt: http://de.contaowiki.org/Vorhandene_Module_erweitern
    Klappt auch alles, bis auf eine Checkbox. Im BE wird nur der erste Wert der Checkbox angezeigt und wenn man diese eine Option anklickt und speichern will, dann kommt die Fehlermeldung:
    Ungültige Eingabe: 1

    Ich habe die DB über das install-php aktualisiert. In der Systemverwaltung alle internen Daten gelöscht und den Cache neu aufgebaut. Keine Verbesserung.

    Hier der Code in der dca:
    Code:
    $GLOBALS['TL_DCA']['tl_calendar_events']['fields']['kategorie'] = array
    (
            'label'     		=> &$GLOBALS['TL_LANG']['tl_calendar_events']['kategorie'],
            'exclude'   		=> true, 
        	'inputType' 		=> 'checkbox',
            'options'   		=> array('Exerzitien im Alltag','Kontemplative Exerzitien im Alltag','Grosse Exerzitien im Alltag','Kurzexerzitien','Einzelexerzitien','Einzelexerzitien mit Gemeinschaftselementen','30-tägige Exerzitien','Kontemplative Exerzitien','Vertiefung/Hinführung','Sonderformen'),
        	'eval'      		=> array('mandatory'=>false,'multiple'=>false,'feEditable'=>true, 'feViewable'=>true, 'tl_class'=>'w50 cbx m12'),
        	'sql'       		=> "varchar(255) NOT NULL default ''"
    );
    Danke für eure Hilfe!
    Stand grad bei nem ähnlichem Problem aufm Schlauch - so gelöst:

    Checkbox sollte in der DB als
    `wert` blob NULL
    angelegt sein, damit speichern und Haken anzeigen von Contao übernommen wird.
    Das geht dann auch mit mehreren Werten innerhalb der Checkbox bzw. 'multiple'=>true im DCA

    Ahoi

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
  •