Initial survey bundle import
This commit is contained in:
@@ -0,0 +1,55 @@
|
||||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
use Contao\CoreBundle\DataContainer\PaletteManipulator;
|
||||
use Mummert\SurveyBundle\EventListener\SurveyDcaListener;
|
||||
|
||||
if (isset($GLOBALS['TL_DCA']['tl_member']['palettes']) && is_array($GLOBALS['TL_DCA']['tl_member']['palettes'])) {
|
||||
foreach (array_keys($GLOBALS['TL_DCA']['tl_member']['palettes']) as $paletteName) {
|
||||
if ('__selector__' === $paletteName) {
|
||||
continue;
|
||||
}
|
||||
|
||||
PaletteManipulator::create()
|
||||
->addLegend('survey_legend', 'contact_legend', PaletteManipulator::POSITION_AFTER)
|
||||
->addField('surveyCategories', 'survey_legend', PaletteManipulator::POSITION_APPEND)
|
||||
->addField('assignedSurveys', 'survey_legend', PaletteManipulator::POSITION_APPEND)
|
||||
->applyToPalette((string) $paletteName, 'tl_member');
|
||||
}
|
||||
}
|
||||
|
||||
$GLOBALS['TL_DCA']['tl_member']['config']['onsubmit_callback'][] = [SurveyDcaListener::class, 'refreshMemberSurveyListMetadata'];
|
||||
|
||||
$GLOBALS['TL_DCA']['tl_member']['fields']['surveyCategories'] = [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_member']['surveyCategories'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'foreignKey' => 'tl_survey_category.title',
|
||||
'eval' => ['multiple' => true, 'chosen' => true, 'tl_class' => 'clr'],
|
||||
'relation' => [
|
||||
'type' => 'hasMany',
|
||||
'load' => 'lazy',
|
||||
'table' => 'tl_survey_category',
|
||||
'field' => 'id',
|
||||
],
|
||||
'save_callback' => [
|
||||
[SurveyDcaListener::class, 'saveMemberSurveyCategories'],
|
||||
],
|
||||
'sql' => 'blob NULL',
|
||||
];
|
||||
|
||||
$GLOBALS['TL_DCA']['tl_member']['fields']['assignedSurveys'] = [
|
||||
'label' => &$GLOBALS['TL_LANG']['tl_member']['assignedSurveys'],
|
||||
'exclude' => true,
|
||||
'inputType' => 'select',
|
||||
'options_callback' => [SurveyDcaListener::class, 'getSurveyOptions'],
|
||||
'eval' => ['multiple' => true, 'chosen' => true, 'tl_class' => 'clr'],
|
||||
'load_callback' => [
|
||||
[SurveyDcaListener::class, 'loadMemberAssignedSurveys'],
|
||||
],
|
||||
'save_callback' => [
|
||||
[SurveyDcaListener::class, 'saveMemberAssignedSurveys'],
|
||||
],
|
||||
'sql' => 'blob NULL',
|
||||
];
|
||||
Reference in New Issue
Block a user