/**
* {@inheritdoc}
*/
protected function prepareTemplate(Template $objTemplate, $arrRowData, $objSettings)
{
parent::prepareTemplate($objTemplate, $arrRowData, $objSettings);
$objToolbox = new ToolboxFile();
$objToolbox->setBaseLanguage($this->getMetaModel()->getActiveLanguage());
$objToolbox->setFallbackLanguage($this->getMetaModel()->getFallbackLanguage());
$objToolbox->setLightboxId(sprintf('%s.%s.%s', $this->getMetaModel()->getTableName(), $objSettings->get('id'), $arrRowData['id']));
if (strlen($this->get('file_validFileTypes'))) {
$objToolbox->setAcceptedExtensions($this->get('file_validFileTypes'));
}
$objToolbox->setShowImages($objSettings->get('file_showImage'));
if ($objSettings->get('file_imageSize')) {
$objToolbox->setResizeImages($objSettings->get('file_imageSize'));
}
if ($arrRowData[$this->getColName()]) {
if (isset($arrRowData[$this->getColName()]['value']['bin'])) {
foreach ($arrRowData[$this->getColName()]['value']['bin'] as $strFile) {
$objToolbox->addPathById($strFile);
}
} elseif (is_array($arrRowData[$this->getColName()])) {
// FIXME: should not happen anymore.
foreach ($arrRowData[$this->getColName()] as $strFile) {
$objToolbox->addPathById($strFile);
}
} else {
// FIXME: should not happen anymore.
$objToolbox->addPathById($arrRowData[$this->getColName()]);
}
}
$objToolbox->resolveFiles();
$arrData = $objToolbox->sortFiles($objSettings->get('file_sortBy'));
$objTemplate->files = $arrData['files'];
$objTemplate->src = $arrData['source'];
}