* @license GPL-3.0-or-later * For the full copyright and license information, * please view the LICENSE file that was distributed with this source code. * @link https://github.com/yupdesign/contao-architecture-projects-bundle */ use Contao\Backend; use Contao\DataContainer; use Contao\DC_Table; use Contao\Input; /** * Table tl_arch_projects */ $GLOBALS['TL_DCA']['tl_arch_projects'] = array( 'config' => array( 'dataContainer' => DC_Table::class, 'enableVersioning' => true, 'sql' => array( 'keys' => array( 'id' => 'primary' ) ), ), 'list' => array( 'sorting' => array( 'mode' => DataContainer::MODE_SORTABLE, 'fields' => array('title'), 'flag' => DataContainer::SORT_INITIAL_LETTER_ASC, 'panelLayout' => 'filter;sort,search,limit' ), 'label' => array( 'fields' => array('title'), 'format' => '%s', ), 'global_operations' => array( 'all' => array( 'href' => 'act=select', 'class' => 'header_edit_all', 'attributes' => 'onclick="Backend.getScrollOffset()" accesskey="e"' ) ), 'operations' => array( 'edit' => array( 'href' => 'act=edit', 'icon' => 'edit.svg' ), 'copy' => array( 'href' => 'act=copy', 'icon' => 'copy.svg' ), 'delete' => array( 'href' => 'act=delete', 'icon' => 'delete.svg', 'attributes' => 'onclick="if(!confirm(\'' . ($GLOBALS['TL_LANG']['MSC']['deleteConfirm'] ?? null) . '\'))return false;Backend.getScrollOffset()"' ), 'show' => array( 'href' => 'act=show', 'icon' => 'show.svg', 'attributes' => 'style="margin-right:3px"' ), ) ), 'palettes' => array( '__selector__' => array('addSubpalette'), 'default' => '{first_legend},title,selectField,checkboxField,multitextField;{second_legend},addSubpalette' ), 'subpalettes' => array( 'addSubpalette' => 'textareaField', ), 'fields' => array( 'id' => array( 'sql' => "int(10) unsigned NOT NULL auto_increment" ), 'tstamp' => array( 'sql' => "int(10) unsigned NOT NULL default '0'" ), 'title' => array( 'inputType' => 'text', 'exclude' => true, 'search' => true, 'filter' => true, 'sorting' => true, 'flag' => DataContainer::SORT_INITIAL_LETTER_ASC, 'eval' => array('mandatory' => true, 'maxlength' => 255, 'tl_class' => 'w50'), 'sql' => "varchar(255) NOT NULL default ''" ), 'selectField' => array( 'inputType' => 'select', 'exclude' => true, 'search' => true, 'filter' => true, 'sorting' => true, 'reference' => &$GLOBALS['TL_LANG']['tl_arch_projects'], 'options' => array('firstoption', 'secondoption'), //'foreignKey' => 'tl_user.name', //'options_callback' => array('CLASS', 'METHOD'), 'eval' => array('includeBlankOption' => true, 'tl_class' => 'w50'), 'sql' => "varchar(255) NOT NULL default ''", //'relation' => array('type' => 'hasOne', 'load' => 'lazy') ), 'checkboxField' => array( 'inputType' => 'select', 'exclude' => true, 'search' => true, 'filter' => true, 'sorting' => true, 'reference' => &$GLOBALS['TL_LANG']['tl_arch_projects'], 'options' => array('firstoption', 'secondoption'), //'foreignKey' => 'tl_user.name', //'options_callback' => array('CLASS', 'METHOD'), 'eval' => array('includeBlankOption' => true, 'chosen' => true, 'tl_class' => 'w50'), 'sql' => "varchar(255) NOT NULL default ''", //'relation' => array('type' => 'hasOne', 'load' => 'lazy') ), 'multitextField' => array( 'inputType' => 'text', 'exclude' => true, 'search' => true, 'filter' => true, 'sorting' => true, 'eval' => array('multiple' => true, 'size' => 4, 'decodeEntities' => true, 'tl_class' => 'w50'), 'sql' => "varchar(255) NOT NULL default ''" ), 'addSubpalette' => array( 'exclude' => true, 'inputType' => 'checkbox', 'eval' => array('submitOnChange' => true, 'tl_class' => 'w50 clr'), 'sql' => "char(1) NOT NULL default ''" ), 'textareaField' => array( 'inputType' => 'textarea', 'exclude' => true, 'search' => true, 'filter' => true, 'sorting' => true, 'eval' => array('rte' => 'tinyMCE', 'tl_class' => 'clr'), 'sql' => 'text NULL' ) ) );