mein tl_categories.php:
PHP-Code:
<?php
use Contao\DC_Table;
use Contao\Backend;
use Contao\Image;
use Contao\Input;
use App\Controller\Backend\ExportController;
$GLOBALS['TL_DCA']['tl_categories']['config'] = [
'dataContainer' => DC_Table::class,
'sql' => [
'keys' => [
'id' => 'primary',
],
],
];
// Listing
$GLOBALS['TL_DCA']['tl_categories']['list']['sorting'] = [
'mode' => 1,
'flag' => 11,
'fields' => array('categoryde')
];
// Global Operations
$GLOBALS['TL_DCA']['tl_categories']['list']['global_operations'] = [
'exportAll' => [
'label' => &$GLOBALS['TL_LANG']['tl_categories']['exportAll'],
'icon' => 'diffTemplate.svg',
'route' => ExportController::class
]
];
$GLOBALS['TL_DCA']['tl_categories']['list']['label'] = [
'fields' => array('categoryde', 'categoryen'),
'showColumns' => true
];
$GLOBALS['TL_DCA']['tl_categories']['list']['operations'] = [
'edit',
'delete'
];
// Palettes
$GLOBALS['TL_DCA']['tl_categories']['palettes'] = [
'default' => '{basicinfo_legend}, categoryde, categoryen;'
];
// Fields
$GLOBALS['TL_DCA']['tl_categories']['fields']['id'] = [
'sql' => "int(100) unsigned NOT NULL auto_increment"
];
$GLOBALS['TL_DCA']['tl_categories']['fields']['pid'] = [
'sql' => "int(100) unsigned NOT NULL default 0",
];
$GLOBALS['TL_DCA']['tl_categories']['fields']['sorting'] = [
'sql' => "int(100) unsigned NOT NULL default 0"
];
$GLOBALS['TL_DCA']['tl_categories']['fields']['tstamp'] = [
'label' => &$GLOBALS['TL_LANG']['tl_categories']['tstamp'],
'eval' => array('rgxp'=>'date'),
'flag' => 5,
'sql' => "int(10) unsigned NOT NULL default '0'"
];
$GLOBALS['TL_DCA']['tl_categories']['fields']['categoryde'] = [
'label' => &$GLOBALS['TL_LANG']['tl_categories']['categoryde'],
'inputType' => 'text',
'eval' => array('mandatory'=>true, 'tl_class'=>'w50'),
'sql' => "varchar(255) NOT NULL default ''"
];
$GLOBALS['TL_DCA']['tl_categories']['fields']['categoryen'] = [
'label' => &$GLOBALS['TL_LANG']['tl_categories']['categoryen'],
'inputType' => 'text',
'eval' => array('mandatory'=>true, 'tl_class'=>'w50'),
'sql' => "varchar(255) NOT NULL default ''"
];
class tl_categories extends Backend {
}
Mein ExportController.php:
PHP-Code:
<?php
namespace App\Controller\Backend;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;
#[Route(path: '/%contao.backend.route_prefix%/exportAll', name: ExportController::class, defaults: ['_scope' => 'backend'])]
class ExportController
{
public function __invoke(): Response
{
return new Response('Hello World!');
}
}