/** * Deletes <files> * * @param SimpleXMLElement $files_element * @param cbAdminFileSystem $adminFS * @param string|null $installFileName * @return void */ protected function deleteFiles(SimpleXMLElement $files_element, cbAdminFileSystem $adminFS, $installFileName) { foreach ($files_element->children() as $file) { // delete the files $filename = $file->data(); if ($adminFS->file_exists($this->i_elementdir . $filename)) { $parts = pathinfo($filename); $subpath = $parts['dirname']; if ($subpath != '' && $subpath != '.' && $subpath != '..') { $adminFS->deldir(_cbPathName($this->i_elementdir . $subpath . '/')); } else { if ($file->getName() == 'foldername') { $adminFS->deldir(_cbPathName($this->i_elementdir . $filename . '/')); } elseif ($installFileName != $filename) { $adminFS->unlink(_cbPathName($this->i_elementdir . $filename, false)); } } } } }