DataTables von https://datatables.net/

Wir wollten eine einfache schlanke Lösung um tabellarisch Informationen anzuzeigen.

Uns wurde https://datatables.net/ empfohlen. Wie setzen wir es ein?

Im Frontend reicht eine generische View. Einzelnen Views werden nur über eine einzelne .js Datei und den entsprechenden Backen-Endpoint definiert.

Wie sieht die generische View aus in einer Joomla componenten aus?

<?php

defined('_JEXEC') or die();

$application = JFactory::getApplication();
$document = JFactory::getDocument();

$document->addScript("https://cdn.datatables.net/v/dt/jszip-2.5.0/dt-1.10.18/b-1.5.6/b-colvis-1.5.6/b-html5-1.5.6/b-print-1.5.6/sl-1.3.0/datatables.min.js"); 
$document->addStyleSheet("https://cdn.datatables.net/v/dt/jszip-2.5.0/dt-1.10.18/b-1.5.6/b-colvis-1.5.6/b-html5-1.5.6/b-print-1.5.6/sl-1.3.0/datatables.min.css");

if (isset($this->scriptfilename)) {
    $document->addScript(JURI::base().'components/com_js/assets/js/'.$this->scriptfilename.'.js');
}

if (isset($this->title)) {echo "<h2>".$this->title."</h2>";}
?>

<table cellpadding="0" cellspacing="0" border="0" dataid="<?php echo $this->dataid; ?>" class="display mydatatable" id="<?php echo $this->scriptfilename; ?>" width="100%">
</table>

...

Die muss mir dem Parameter: „scriptfilename“ und ggf. dem „title“ definiert werden. „dataid“ ist ein Parameter mit dem wir ggf. im .js weiterarbeiten können.

Das entsprechende .js mit der DataTables definition wird über „addScript“ geladen.