Ich habe mir den Screencast durchgelsen und angeschaut.
Der Aktuell Stand ist nun so das ich ein eigenes Inhaltselement öffnen kann, eine Überschrift eingeben kann und die Daten in ein einem Select Feld angezeigt werden.
Im Template wird die Überschrift h1 ausgegeben.
Nun muss ich noch scheun, warum in der wildcard kein Titel erscheint.
Und wie ich die Auswahl aus dem Select Feld an eine Abfrage übergeben kann und diese dann den Datensatz in der Templatr anzeigenlässt.
Code:
<?php
/**
* Table tl_content
*/
$GLOBALS['TL_DCA']['tl_content']['palettes']['gpxviewer'] = '{type_legend},type,headline;{Wanderwege},gpxviewer;{protected_legend:hide},protected;{expert_legend:hide},guests,invisible,cssID,space';
//Edit fields
$GLOBALS['TL_DCA']['tl_content']['fields']['gpxviewer'] = array(
'label' => &$GLOBALS['TL_LANG']['tl_module']['gpxviewer'],
'inputType' => 'select',
'foreignKey' => 'tl_gpx_tracks.title',
'chosen' => true,
'eval' => array('mandatory'=>true)
);
?>
Code:
<?php
/*
ContentGPXViewer.php
*/
class ContentGPXViewer extends ContentElement
{
/**
* Template
* @var string
*/
protected $strTemplate = 'ce_gpx_viewer';
public function generate() {
if (TL_MODE == 'BE') {
$objTemplate = new BackendTemplate('be_wildcard');
$objTemplate->wildcard = '### Modul: GPXViewer ###';
$objTemplate->title = 'Wanderwegverwaltung - GPX Viewer';
$objTemplate->id = $this->id;
$objTemplate->link = $this->title;
$objTemplate->href = 'contao/main.php?do=gpxviewer&act=edit&id=' . $this->id;
return $objTemplate->parse();
}
return parent::generate();
}
protected function compile()
{
// Fetch all data from the database
//`thema` varchar(125) NOT NULL default '',
// title` varchar(125) NOT NULL default '',
//`description` text NULL,
//`gpxfile` varchar(64) NOT NULL default '',
//`image` varchar(256) NOT NULL default '',
$row = array();
$objtracks = $this->Database->prepare("SELECT
id,title,thema,description,gpxfile
FROM tl_gpx_tracks
WHERE id=?
ORDER BY id ASC")->execute($this->wanderwege);
// Put CDs of current category into array
while ($objtracks->next())
{
$arrtracks[] = array
(
'title' => $objtracks->title,
'thema' => $objtracks->thema,
'description' => $objtracks->description,
'gpxfile' => $objtracks->gpxfile,
);
}
// Assign data to the template
$this->Template->wanderwege = $row;
}
}
?>
Lesezeichen