/** * Deletes a package. * * @param bool $ignoreState * * @return bool TRUE on success, FALSE on error */ protected function _delete($ignoreState = false) { // if package is installed, uninstall it first if ($this->package->isInstalled() && !$this->uninstall() && !$ignoreState) { // message is set by uninstall() return false; } if (!rex_dir::delete($this->package->getPath()) && !$ignoreState) { $this->message = $this->i18n('not_deleted', $this->package->getName()); return false; } if (!$ignoreState) { $this->saveConfig(); $this->message = $this->i18n('deleted', $this->package->getName()); } return true; }
/** * @param rex_be_page $page * @param rex_package $package * @param string $prefix */ private static function pageSetSubPaths(rex_be_page $page, rex_package $package, $prefix = '') { foreach ($page->getSubpages() as $subpage) { if (!$subpage->hasSubPath()) { $subpage->setSubPath($package->getPath('pages/' . $prefix . $subpage->getKey() . '.php')); } self::pageSetSubPaths($subpage, $package, $prefix . $subpage->getKey() . '.'); } }