Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Checkbox Array Token #53

Closed
Ainschy opened this issue Apr 14, 2015 · 17 comments
Closed

Checkbox Array Token #53

Ainschy opened this issue Apr 14, 2015 · 17 comments
Assignees
Milestone

Comments

@Ainschy
Copy link

Ainschy commented Apr 14, 2015

Hi,

Es geht um eine Erweiterung in der Classe tl_form: contao-notification_center/classes/tl_form.php

form_checkboxmenu## liefert bekanntlich keine Ausgabe. Nur mit Angabe des Array Key's wird 'true' in Form einer 1 ausgegeben. Bei der Verwendung in einer Email schwerlich nutzbar.

Die FunKtion flatten habe ich um 3 Zeilen erweitert (sry, mit dem PR komm ich noch nicht zurecht)

public function flatten($varValue, $strKey, &$arrData)
{
    if (is_object($varValue)) {
        return;
    } elseif (!is_array($varValue)) {
        $arrData[$strKey] = $varValue;
        return;
    }

    $blnAssoc = array_is_assoc($varValue);
    $arrStr = array(); // eine Array erstellen um die vorhandenen Keys einzusammeln
    foreach ($varValue as $k => $v) {
        if ($blnAssoc && !is_array($v)) {
            $this->flatten($v, $strKey.'_'.$k, $arrData);
        } else {
            $arrData[$strKey.'_'.$v] = '1';
            $arrStr[] = $v; // vorhandene Keys in das Array schreiben
        }
    }
    $arrData[$strKey] = implode(", ", $arrStr); // das "fehlende" Token generieren
}

$arrData[$strKey] = implode(", ", $arrStr); fügt das bisher fehlende Token hinzu.

Vllt. könnt ihr das so einsetzen.

VG Oliver

@frontendschlampe
Copy link

funktioniert - gerade getestet unter Contao 3.2.19

@Toflar
Copy link
Member

Toflar commented Apr 17, 2015

Das gibt aber nur eine komma-separierte Liste aller Values zurück?

@frontendschlampe
Copy link

ah jo

@Ainschy
Copy link
Author

Ainschy commented Apr 17, 2015

Kannst natürlich auch ne GLOBALS einsetzten.

Ist mMn die einfachste Lösung.

@Toflar
Copy link
Member

Toflar commented Apr 17, 2015

Kannst natürlich auch ne GLOBALS einsetzten.

Hä?

@Ainschy
Copy link
Author

Ainschy commented Apr 17, 2015

Wenn kein festes Trennzeichen eingesetzt werden soll ", " dann wäre es sinnvoll das Trennzeichen in einer $GLOBALS zu hinterlegen, die dann jeder so anpassen kann wie er es wünscht.

@Toflar
Copy link
Member

Toflar commented Apr 17, 2015

Ach so, ja aber es geht ja nicht darum ob ein Komma oder ein anderes Trennzeichen verwendet wird, sondern darum dass du nur die Values und nicht die Option-Labels kriegst.

@Ainschy
Copy link
Author

Ainschy commented Apr 17, 2015

Der HOOK processFormData liefert in den $arrData nur die Values.

@Toflar
Copy link
Member

Toflar commented Apr 17, 2015

Ich weiss, hab ich @frontendschlampe auch schon gesagt :) Was genau möchtest du denn?

@Ainschy
Copy link
Author

Ainschy commented Apr 17, 2015

Ich möchte, das bei einem normalen Contao-Formular mit einem Checkbox Menu die ausgewählten Optionen mittels Simple-Token einfügbar sind. Die ausgewählten Option-Labels wären super, stehen aber im Hook nicht zur Verfügung. Daher mein Vorschlag zu mindest die Values zu übergeben. Nicht schön aber ein Anfang.

@Toflar
Copy link
Member

Toflar commented Apr 20, 2015

Implementiert in 9d02574.

@Toflar Toflar closed this as completed Apr 20, 2015
@Toflar Toflar added this to the 1.3.0 milestone Apr 20, 2015
@Toflar Toflar self-assigned this Apr 20, 2015
@Hauge
Copy link

Hauge commented Jul 3, 2015

Problem besteht wieder in 1.2.3 build 2

@Toflar
Copy link
Member

Toflar commented Jul 3, 2015

Das ist kein Problem sondern ein fehlendes Feature, welches auch der 1.3 zugeordnet ist...

@juju2
Copy link

juju2 commented Apr 20, 2016

Hi. Kann es sein, dass das gleiche Problem auch für die Übergabe mehrerer Dateien per simple token im Feld attachment_tokens besteht? Es kann offensichtlich immer nur eine Datei pro token übergeben werden.

Danke und Grüße ans Terminal ;)

@Toflar
Copy link
Member

Toflar commented Apr 20, 2016

Das ist immer noch kein "Problem", das ist einfach im Moment so :) Pro Token, 1 File :)

@juju2
Copy link

juju2 commented Apr 20, 2016

Hi Toflar, so war da ja gar nicht gemeint mit "Problem" ;) Hast Du einen Tipp, wie ich das trotzdem umsetzen könnte? Per Hook scheint auch keine Möglichkeit zu bestehen, die übergebenen Dateien einzubinden. Nochmal Danke!

@Toflar
Copy link
Member

Toflar commented Apr 20, 2016

Wäre mir so ad hoc nichts bekannt.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants