Нужен сниппет - удаление директории

1 1 000
Задача сниппета — удалять директорию «номера» на хосте и записей в таблице user_files при запуске

Есть таблица в бд от компонента user_files

путь к файлам есть в таблице user_files, в поле path
room-Идномера/moddocument/1001/имя файла

файлы лежат фактически в
/assets/userfiles/rooms/room-$res_id/moddocument/1001/
в пути менятся только id номера

выборку из бд делать в таблице user_files по полю list, там записи вида room-XXXX
и source, его значение всегда 7

Сниппет есть, но перестал удалять директории на хосте и записи в таблице user_files
Возможно после обновления userfiles

код для справки

<?php
$res_id=(int)$_GET['resid'];
$modx->addPackage(
    'rooms', 
    MODX_CORE_PATH . 'components/rooms/model/', 
    'префикс_'
);

if($doc = $modx->getObject('RoomsContent',$res_id)) {
    if($doc->remove()==false){
        echo 'Ошибка удаления';  
        $modx->cacheManager->refresh();
    } 
	/*нужная часть отсюда начинается*/
	else {
        $q = $modx->newQuery('UserFile');
        $q->where(array('source'=>'7', 'list:LIKE' => '%$res_id%' ));
        if($UserFiles = $modx->getCollection('UserFile', $q)) {
            $dir = null;
            foreach($UserFiles as $UserFile) {
            	if ($UserFile->initialized() AND $UserFile->mediaSource) {
            	    $path = $UserFile->getFilePath();
                    if(!empty($path) ||  $path != '/') {
                        $pathArr = explode('/', $path);
                        if(empty($pathArr[0]) || $pathArr[0] == '/' || $pathArr[0] == 'room') {
                            $rmSlug = $path;
                        } else {
                            $rmSlug = $pathArr[0];    
                        }
                        
                        @$UserFile->mediaSource->removeContainer($UserFile->mediaSource->getBasePath().$rmSlug);
                    }
            	} 
                            $UserFile->remove();
            }
        }
        
        echo '<p>Номер успешно удален</p>';
    }
}
Контакты телеграм
t.me/vanodk
Иван Фролов
Иван Фролов
18 ноября 2019, 13:41
modx.pro
672