add order to additional images

This commit is contained in:
2021-04-26 13:47:00 +02:00
parent 73fc0fa34d
commit 0dc72ef5b1

View File

@@ -80,6 +80,37 @@ class News extends \Contao\News
/** @var \PageModel $objPage */
global $objPage;
if ($arrItem['orderSRC'])
{
$tmp = StringUtil::deserialize($arrItem['orderSRC']);
if (!empty($tmp) && \is_array($tmp))
{
// Remove all values
$arrOrder = array_map(static function () {}, array_flip($tmp));
// Move the matching elements to their position in $arrOrder
foreach ($arrItem['multiSRC'] as $k=>$v)
{
if (\array_key_exists($v['uuid'], $arrOrder))
{
$arrOrder[$v['uuid']] = $v;
unset($arrItem['multiSRC'][$k]);
}
}
// Append the left-over images at the end
if (!empty($arrItem['multiSRC']))
{
$arrOrder = array_merge($arrOrder, array_values($arrItem['multiSRC']));
}
// Remove empty (unreplaced) entries
$arrItem['multiSRC'] = array_values(array_filter($arrOrder));
unset($arrOrder);
}
}
$pictures = array();
foreach ($arrItem['multiSRC'] as $path => $objFile)
{