Вывод мультиформатов
Для включения вывода в XML данных о мультиформатах нужно в контроллере показа включить эту возможность:
Пример для контроллера показа информационной системы
Copy
$Informationsystem_Controller_Show->multiimage_items(true); // для элементов$Informationsystem_Controller_Show->multiimage_groups(true); // для групп$Informationsystem_Controller_Show->multiimage_item_properties(true); // для доп. свойств типа "файл" элементов$Informationsystem_Controller_Show->multiimage_group_properties(true); // для доп. свойств типа "файл" групп
Пример вывода мультиформатов в XSL:
Copy
<picture> <xsl:if test="images/photo"> <!-- условие на созданный формат с xml-тегом photo --> <xsl:for-each select="images/photo"> <source srcset="{dir}{image}" media="(max-width: 450px)" type="image/{ext}"/> </xsl:for-each> </xsl:if> <img src="{dir}{image_large}" alt="{name}" title="{name}"/></picture>
Для переопределенных классов показа в bootstrap.php необходимо добавить хуки и заменить My_Shop_Controller_Show на свой класс показа магазина:
Copy
Core_Event::attach('My_Shop_Controller_Show.onAfterConstruct', array('Hostdev_Multiimage_Module', 'onAfterConstruct'));Core_Event::attach('My_Shop_Controller_Show.onAfterAddShopGroups', array('Hostdev_Multiimage_Module', 'onAfterAddGroups'));Core_Event::attach('My_Shop_Controller_Show.onBeforeAddShopItem', array('Hostdev_Multiimage_Module', 'onBeforeAddItem'));