Halloa.
Ich versuche ein Modul zu erstellen, welches sich wie die Einstellungen direkt zum Editieren öffnet. Allerdings finde ich die mir fehlende Konfiguration nicht.
In meiner Config Datei steht folgendes:
PHP-Code:
array_insert($GLOBALS['BE_MOD']['system'], 20, array
(
'tl_zz_default' => array
(
'tables' => array('tl_zz_default'),
'callback' => 'tl_zz_default'
)
)
In meiner Modul Datei:
PHP-Code:
/* * ***********
*
* Modul
*
*/
class tl_zz_default extends BackendModule
{
/**
* Template
* @var string
*/
protected $strTemplate = 'be_zz_default';
protected function compile()
{
// $this->loadLanguageFile('tl_zz_default');
// $this->Template->href = $this->getReferer(true);
// $this->Template->title = specialchars($GLOBALS['TL_LANG']['MSC']['backBT']);
// $this->Template->button = $GLOBALS['TL_LANG']['MSC']['backBT'];
// echo "<pre>";
// print_r($this);
// echo "</pre>";
}
}
Das auskommentierte war ein Template versuch. Das klappt soweit. Nur wie bekomme ich da meine Felder aus der DCA Datei rein? Bei tl_settings habe ich nur eine DCA Datei gefunden, aber kein Template oder ähnliches.
Das ist der Inhalt meiner DCA Datei:
PHP-Code:
$GLOBALS['TL_DCA']['tl_zz_default'] = array
(
// Config
'config' => array
(
'dataContainer' => 'Table',
'table' => 'tl_zz_default',
'closed' => true
),
// Palettes
'palettes' => array
(
'default' => '{title_legend},title;'
),
// Fields
'fields' => array
(
'title' => array
(
'label' => &$GLOBALS['TL_LANG']['tl_zz_default']['title'],
'inputType' => 'text',
'eval' => array('mandatory'=>true, 'maxlength'=>255)
)
)
);
Die Datenbank ist auch angelegt mit den entsprechenden Felder:
Code:
CREATE TABLE `tl_zz_default` (
`id` int(10) unsigned NOT NULL auto_increment,
`pid` int(10) unsigned NOT NULL default '0',
`tstamp` int(10) unsigned NOT NULL default '0',
`title` varchar(255) NOT NULL default '',
PRIMARY KEY (`id`),
KEY `pid` (`pid`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
Ich bin echt ratlos. Die DCA Datei ist bei Config nahezu identisch mit der tl_settings DCA Datei. Die schreiben in eine Datei und ich halt in eine Tabelle. Das dürfte aber keinen unterschied machen.
Wie schaffe ich es nun, bei Klick auf mein Modul, direkt die editierbaren Felder anzuzeigen? Danke fürs mitdenken.