public function render($resultArray = [])
{
$output = Hook::trigger('resultListStart');
$accessValidator = new Validator\Access();
/* html elements */
$titleElement = new Html\Element();
$titleElement->init('h2', ['class' => 'rs-title-result']);
$listElement = new Html\Element();
$listElement->init('ol', ['class' => 'rs-list-result']);
$itemElement = new Html\Element();
$itemElement->init('li');
$linkElement = new Html\Element();
$linkElement->init('a', ['class' => 'rs-link-result']);
$textElement = new Html\Element();
$textElement->init('span', ['class' => 'rs-text-result-date']);
/* process result */
foreach ($resultArray as $table => $result) {
$outputItem = null;
if ($result) {
/* collect item output */
foreach ($result as $value) {
if ($accessValidator->validate($result->access, $this->_registry->get('myGroups')) === Validator\ValidatorInterface::PASSED) {
$textDate = date(Db::getSetting('date'), strtotime($value->date));
$linkElement->attr('href', $this->_registry->get('parameterRoute') . build_route($table, $value->id))->text($value->title ? $value->title : $value->author);
$textElement->text($textDate);
$outputItem .= $itemElement->html($linkElement . $textElement);
}
}
/* collect output */
if ($outputItem) {
$titleElement->text($this->_language->get($table));
$listElement->html($outputItem);
$output .= $titleElement . $listElement;
}
}
}
$output .= Hook::trigger('resultListEnd');
return $output;
}