Guten Tag zusammen,
leider hänge ich schon wieder ziemlich mit einer Filter Geschichte bei Contao.
Ich möchte einen Custom Filter für ein DCA erstellen.
Dazu habe ich mittels 'panel_callback' mir einen neuen Filter anglegt. => Funktioniert.
Dann möchte ich nach Absenden dieses Filters natürlich auch den gewählten Filter auslesen.
Das mache ich mittels dem DCA 'onload_callback'.
Dieser wird auch einwandfrei aufgerufen.
Jedoch bekomme ich die gewählte Option nicht aus der Session, oder wo diese Option auch immer gespeichert sein mag.
Alle Post Variablen sind leer.
Hier mal mein Code:
'panel_callback' für den Custom Filter:
PHP-Code:
public function panelCallback(\Contao\DataContainer $dc)
{
$activityArr = [];
$participant = $this->entityManager->getRepository(ConferenceEntity::class)->find($dc->id);
$strFilterValue = 'all';
if (isset($this->session->get('filter')['tl_participant']['activity_filter'])) {
$strFilterValue = $this->session->get('filter')['tl_participant']['activity_filter'];
}
$objWidgetFilter = new \Contao\SelectMenu();
$objWidgetFilter->id = 'activity_filter';
$objWidgetFilter->name = 'activity_filter';
$objWidgetFilter->label = 'Activity';
$objWidgetFilter->value = $strFilterValue;
$activityArr[] = ['value' => 'all', 'label' => 'all'];
foreach ($participant->getActivities() as $activity) {
$activityArr[] = ['value' => $activity->getId(), 'label' => $activity->getTitle()];
}
$objWidgetFilter->options = $activityArr;
$objWidgetFilter->onchange = 'this.form.submit()';
$strBuffer = '<div class="tl_filter tl_subpanel">';
$strBuffer .= sprintf('<strong style="margin-right: 5px;">%s</strong>', $objWidgetFilter->generateLabel());
$strBuffer .= $objWidgetFilter->generate();
$strBuffer .= '</div>';
return $strBuffer;
}
Und hier der 'onload_callback'
PHP-Code:
public function onloadCallback()
{
dump(\Contao\Input::post('activity_filter')); // => LEER
// Testweise versucht
dump($_POST); // => auch leer
}
Ich kenne auch diesen Post, der hilft mir aber leider nicht weiter.
https://community.contao.org/de/show...Container-Hook
Tausend Dank für einen Tipp!
Lesezeichen