array ( 'dataContainer' => DC_Table::class, 'ptable' => 'tl_esm_team_group', 'enableVersioning' => true, 'sql' => array ( 'keys' => array ( 'id' => 'primary', 'pid' => 'index', 'pid,published' => 'index' ) ) ), // List 'list' => array ( 'sorting' => array ( 'mode' => DataContainer::MODE_PARENT, 'fields' => array('division', 'lastname'), 'headerFields' => array('title'), 'panelLayout' => 'filter,search;sort,limit', // 'child_record_callback' => array('tl_esm_team', 'listMembers') ), 'label' => array ( ), '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=paste&mode=copy', 'attributes' => 'onclick="Backend.getScrollOffset()"', 'icon' => 'copy.svg' ), 'cut' => array ( 'href' => 'act=paste&mode=cut', 'icon' => 'cut.svg', 'attributes' => 'onclick="Backend.getScrollOffset()"' ), 'delete' => array ( 'href' => 'act=delete', 'icon' => 'delete.svg', 'attributes' => 'onclick="if(!confirm(\'' . ($GLOBALS['TL_LANG']['MSC']['deleteConfirm'] ?? null) . '\'))return false;Backend.getScrollOffset()"' ), 'toggle' => array ( 'href' => 'act=toggle&field=invisible', 'icon' => 'visible.svg', // 'button_callback' => array('tl_esm_team', 'toggleIcon') ), 'show' => array ( 'href' => 'act=show', 'icon' => 'show.svg' ) ) ), // Palettes 'palettes' => array ( 'default' => '{person_legend},firstname,lastname,comment;{company_legend},position,division;{picture_legend},singleSRC;{publish_legend:hide},published' ), // Subpalettes 'subpalettes' => array ( ), // Fields 'fields' => array ( 'id' => array ( 'sql' => "int(10) unsigned NOT NULL auto_increment" ), 'pid' => array ( 'foreignKey' => 'tl_faq_category.title', 'sql' => "int(10) unsigned NOT NULL default '0'", 'relation' => array('type'=>'belongsTo', 'load'=>'eager') ), 'tstamp' => array ( 'sql' => "int(10) unsigned NOT NULL default '0'" ), 'firstname' => array ( 'label' => &$GLOBALS['TL_LANG']['tl_esm_team']['firstname'], 'exclude' => true, 'search' => true, 'inputType' => 'text', 'eval' => array('mandatory'=>true, 'maxlength'=>128, 'tl_class'=>'w50'), 'sql' => "varchar(128) NOT NULL default ''" ), 'lastname' => array ( 'label' => &$GLOBALS['TL_LANG']['tl_esm_team']['lastname'], 'exclude' => true, 'search' => true, 'inputType' => 'text', 'eval' => array('mandatory'=>false, 'maxlength'=>128, 'tl_class'=>'w50'), 'sql' => "varchar(128) NOT NULL default ''" ), 'position' => array ( 'label' => &$GLOBALS['TL_LANG']['tl_esm_team']['position'], 'exclude' => true, 'search' => true, 'inputType' => 'text', 'eval' => array('mandatory'=>true, 'maxlength'=>128, 'tl_class'=>'w50'), 'sql' => "varchar(128) NOT NULL default ''" ), 'comment' => array ( 'label' => &$GLOBALS['TL_LANG']['tl_esm_team']['comment'], 'exclude' => true, 'inputType' => 'textarea', 'eval' => array('mandatory'=>false, 'maxlength'=>128, 'tl_class'=>'clr'), 'sql' => "varchar(128) NOT NULL default ''" ), 'division' => array ( 'label' => &$GLOBALS['TL_LANG']['tl_esm_team']['division'], 'exclude' => true, 'filter' => true, 'inputType' => 'select', 'options' => $GLOBALS['eSM_team']['divisions'], 'reference' => &$GLOBALS['TL_LANG']['REF']['divisions'], 'eval' => array('mandatory'=>true, 'maxlength'=>128, 'tl_class'=>'w50'), 'sql' => "varchar(128) NOT NULL default ''" ), 'singleSRC' => array ( 'label' => &$GLOBALS['TL_LANG']['tl_esm_team']['singleSRC'], 'exclude' => true, 'inputType' => 'fileTree', 'eval' => array('filesOnly'=>true, 'extensions'=>Config::get('validImageTypes'), 'fieldType'=>'radio', 'mandatory'=>true), 'sql' => "binary(16) NULL" ), 'published' => array ( 'label' => &$GLOBALS['TL_LANG']['tl_esm_team']['published'], 'exclude' => true, 'filter' => true, 'inputType' => 'checkbox', 'default' => '1', 'eval' => array('doNotCopy'=>true), 'sql' => "char(1) NOT NULL default ''" ), ) ); /** * Provide miscellaneous methods that are used by the data configuration array. */ class tl_esm_team extends Backend { /** * Import the back end user object */ public function __construct() { parent::__construct(); $this->import('BackendUser', 'User'); } /** * Add the type of input field * * @param array $arrRow * * @return string */ public function listMembers($arrRow) { return '