templates controllers and module create in terminal
This commit is contained in:
@ -529,4 +529,60 @@ class ModuleService
|
||||
return false;
|
||||
}
|
||||
|
||||
public function createDirs(string $slug): void
|
||||
{
|
||||
mkdir(KERNEL_APP_MODULES_DIR . "/$slug");
|
||||
mkdir(KERNEL_APP_MODULES_DIR . "/$slug/controllers");
|
||||
mkdir(KERNEL_APP_MODULES_DIR . "/$slug/migrations");
|
||||
mkdir(KERNEL_APP_MODULES_DIR . "/$slug/models");
|
||||
mkdir(KERNEL_APP_MODULES_DIR . "/$slug/routs");
|
||||
mkdir(KERNEL_APP_MODULES_DIR . "/$slug/views");
|
||||
|
||||
mkdir(APP_DIR . "/modules/$slug");
|
||||
mkdir(APP_DIR . "/modules/$slug/controllers");
|
||||
mkdir(APP_DIR . "/modules/$slug/routs");
|
||||
}
|
||||
|
||||
public function createManifest(array $params): void
|
||||
{
|
||||
$name = $params['name'] ?? '';
|
||||
$author = $params['author'] ?? '';
|
||||
$slug = $params['slug'] ?? '';
|
||||
|
||||
$data = "{\n";
|
||||
$data .= " \"name\": \"$name\",\n";
|
||||
$data .= " \"version\": \"0.1\",\n";
|
||||
$data .= " \"author\": \"$author\",\n";
|
||||
$data .= " \"slug\": \"$slug\",\n";
|
||||
$data .= " \"description\": \"$name module\",\n";
|
||||
$data .= " \"module_class\": \"app\\\\modules\\\\$slug\\\\" . ucfirst($slug) . "Module\",\n";
|
||||
$data .= " \"module_class_file\": \"{APP}/modules/$slug/" . ucfirst($slug) . "Module.php\",\n";
|
||||
$data .= " \"routs\": \"routs/$slug.php\",\n";
|
||||
$data .= " \"migration_path\": \"migrations\"\n";
|
||||
$data .= "}";
|
||||
|
||||
// $data = "{
|
||||
// \"name\": \"$name\",
|
||||
// \"version\": \"0.2\",
|
||||
// \"author\": \"$author\",
|
||||
// \"slug\": \"$slug\",
|
||||
// \"description\": \"$name module\",
|
||||
// \"module_class\": \"app\\\\modules\\\\$slug\\\\" . ucfirst($slug) . "Module\",
|
||||
// \"module_class_file\": \"{APP}/modules/$slug/" . ucfirst($slug) . "Module.php\",
|
||||
// \"routs\": \"routs/$slug.php\",
|
||||
// \"migration_path\": \"migrations\"
|
||||
//}";
|
||||
|
||||
file_put_contents(APP_DIR . "/modules/$slug/manifest.json", $data);
|
||||
}
|
||||
|
||||
public function createControllers(string $slug): void
|
||||
{
|
||||
$data = file_get_contents(KERNEL_DIR . '/templates/controllers/kernel_controller_template');
|
||||
$data = str_replace('{slug}', $slug, $data);
|
||||
$data = str_replace('{model}', ucfirst($slug), $data);
|
||||
file_put_contents(KERNEL_APP_MODULES_DIR . '/' . $slug . '/controllers/' . ucfirst($slug) . 'Controller.php', $data);
|
||||
// file_put_contents(APP_DIR . '/modules/' . $slug . '/controllers/' . ucfirst($slug) . 'Controller.php', $data );
|
||||
}
|
||||
|
||||
}
|
Reference in New Issue
Block a user