Удаление изображения при удалении страницы — различия между версиями
Материал из Umicms
Lesnik512 (обсуждение | вклад) (Новая страница: «'''Актуально для версии 18.''' Назначаем обработчик события: <source lang="php"> new umiEventListener('systemDeleteElem…») |
Kublan (обсуждение | вклад) |
||
Строка 1: | Строка 1: | ||
+ | '''Статья предоставлена партнером UMI.CMS [https://www.umi-cms.ru/find_webdevs/shiriev_artur_venerovich/ Шириевым Артуром]''' | ||
+ | |||
'''Актуально для версии 18.''' | '''Актуально для версии 18.''' | ||
Текущая версия на 15:26, 28 июня 2018
Статья предоставлена партнером UMI.CMS Шириевым Артуром
Актуально для версии 18.
Назначаем обработчик события:
new umiEventListener('systemDeleteElement', 'catalog', 'onRemoveItem');
Задаем права доступа к макросу:
$permissions = array('view' => array('onRemoveItem'));
Непосредственно обработчик:
/**Удаление изображений при удалении страницы
* @param iUmiEventPoint $oEventPoint
* @return bool
*/
public function onRemoveItem(iUmiEventPoint $oEventPoint) {
if ($oEventPoint->getMode() === "after") {
$element = $oEventPoint->getRef("element");
$photo = @ $element->getValue('photo');
if ($photo instanceof umiImageFile)
$photo->delete();
}
return true;
}