mirror of
https://github.com/Karaka-Management/phpOMS.git
synced 2026-02-08 05:18:40 +00:00
Passing path
This commit is contained in:
parent
d3200d5ac0
commit
f9214d65ec
|
|
@ -90,18 +90,19 @@ class InstallerAbstract
|
||||||
/**
|
/**
|
||||||
* Install module.
|
* Install module.
|
||||||
*
|
*
|
||||||
* @param Pool $dbPool Database instance
|
* @param string $routePath Route Path
|
||||||
* @param InfoManager $info Module info
|
* @param Pool $dbPool Database instance
|
||||||
|
* @param InfoManager $info Module info
|
||||||
*
|
*
|
||||||
* @return void
|
* @return void
|
||||||
*
|
*
|
||||||
* @since 1.0.0
|
* @since 1.0.0
|
||||||
* @author Dennis Eichhorn <d.eichhorn@oms.com>
|
* @author Dennis Eichhorn <d.eichhorn@oms.com>
|
||||||
*/
|
*/
|
||||||
public static function install(Pool $dbPool, InfoManager $info)
|
public static function install(string $routePath, Pool $dbPool, InfoManager $info)
|
||||||
{
|
{
|
||||||
self::registerInDatabase($dbPool, $info);
|
self::registerInDatabase($dbPool, $info);
|
||||||
self::initRoutes($info);
|
self::initRoutes($routePath, $info);
|
||||||
self::activate($dbPool, $info);
|
self::activate($dbPool, $info);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -126,6 +127,7 @@ class InstallerAbstract
|
||||||
/**
|
/**
|
||||||
* Re-init module.
|
* Re-init module.
|
||||||
*
|
*
|
||||||
|
* @param string $routePath Route Path
|
||||||
* @param InfoManager $info Module info
|
* @param InfoManager $info Module info
|
||||||
*
|
*
|
||||||
* @return void
|
* @return void
|
||||||
|
|
@ -133,14 +135,15 @@ class InstallerAbstract
|
||||||
* @since 1.0.0
|
* @since 1.0.0
|
||||||
* @author Dennis Eichhorn <d.eichhorn@oms.com>
|
* @author Dennis Eichhorn <d.eichhorn@oms.com>
|
||||||
*/
|
*/
|
||||||
public static function reInit(InfoManager $info)
|
public static function reInit(string $routePath, InfoManager $info)
|
||||||
{
|
{
|
||||||
self::initRoutes($info);
|
self::initRoutes($routePath, $info);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Init routes.
|
* Init routes.
|
||||||
*
|
*
|
||||||
|
* @param string $routePath Route Path
|
||||||
* @param InfoManager $info Module info
|
* @param InfoManager $info Module info
|
||||||
*
|
*
|
||||||
* @return void
|
* @return void
|
||||||
|
|
@ -150,14 +153,15 @@ class InstallerAbstract
|
||||||
* @since 1.0.0
|
* @since 1.0.0
|
||||||
* @author Dennis Eichhorn <d.eichhorn@oms.com>
|
* @author Dennis Eichhorn <d.eichhorn@oms.com>
|
||||||
*/
|
*/
|
||||||
private static function initRoutes(InfoManager $info)
|
private static function initRoutes(string $routePath, InfoManager $info)
|
||||||
{
|
{
|
||||||
|
// todo: maybe use static::__DIR__ ?
|
||||||
$directories = new Directory(ROOT_PATH . '/Modules/' . $info->getDirectory() . '/Admin/Routes');
|
$directories = new Directory(ROOT_PATH . '/Modules/' . $info->getDirectory() . '/Admin/Routes');
|
||||||
|
|
||||||
foreach ($directories as $key => $subdir) {
|
foreach ($directories as $key => $subdir) {
|
||||||
if ($subdir instanceof Directory) {
|
if ($subdir instanceof Directory) {
|
||||||
foreach ($subdir as $key2 => $file) {
|
foreach ($subdir as $key2 => $file) {
|
||||||
self::installRoutes(ROOT_PATH . '/' . $subdir->getName() . '/' . basename($file->getName(), '.php') . '/Routes.php', $file->getPath());
|
self::installRoutes($routePath . '/' . $subdir->getName() . '/' . basename($file->getName(), '.php') . '/Routes.php', $file->getPath());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -366,7 +366,7 @@ class ModuleManager
|
||||||
throw new \Exception('Module installer does not exist');
|
throw new \Exception('Module installer does not exist');
|
||||||
}
|
}
|
||||||
|
|
||||||
$class::reInit($info);
|
$class::reInit(ROOT_PATH, $info);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -461,7 +461,7 @@ class ModuleManager
|
||||||
throw new \Exception('Module installer does not exist');
|
throw new \Exception('Module installer does not exist');
|
||||||
}
|
}
|
||||||
|
|
||||||
$class::install($this->app->dbPool, $info);
|
$class::install(ROOT_PATH, $this->app->dbPool, $info);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
@ -577,7 +577,7 @@ class ModuleManager
|
||||||
if (file_exists(self::MODULE_PATH . '/' . $from . '/Admin/Install/' . $for . '.php')) {
|
if (file_exists(self::MODULE_PATH . '/' . $from . '/Admin/Install/' . $for . '.php')) {
|
||||||
$class = '\\Modules\\' . $from . '\\Admin\\Install\\' . $for;
|
$class = '\\Modules\\' . $from . '\\Admin\\Install\\' . $for;
|
||||||
/** @var $class InstallerAbstract */
|
/** @var $class InstallerAbstract */
|
||||||
$class::install($this->app->dbPool, null);
|
$class::install(ROOT_PATH, $this->app->dbPool, null);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user