mirror of
https://github.com/flextype/flextype.git
synced 2025-08-24 05:43:10 +02:00
feat(admin-plugin): add plugins settings page #258
This commit is contained in:
@@ -156,4 +156,30 @@ class PluginsController extends Controller
|
||||
]
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Edit plugin process
|
||||
*
|
||||
* @param Request $request PSR7 request
|
||||
* @param Response $response PSR7 response
|
||||
*/
|
||||
public function editProcess(Request $request, Response $response) : Response
|
||||
{
|
||||
$data = $request->getParsedBody();
|
||||
|
||||
$id = $data['id'];
|
||||
$data = $data['data'];
|
||||
|
||||
$site_plugin_settings_dir = PATH['config']['site'] . '/plugins/' . $id;
|
||||
$site_plugin_settings_file = PATH['config']['site'] . '/plugins/' . $id . '/settings.yaml';
|
||||
|
||||
if (Filesystem::has($site_plugin_settings_file)) {
|
||||
Filesystem::write($site_plugin_settings_file, $data);
|
||||
} else {
|
||||
! Filesystem::has($site_plugin_settings_dir) and Filesystem::createDir($site_plugin_settings_dir);
|
||||
Filesystem::write($site_plugin_settings_file, $data);
|
||||
}
|
||||
|
||||
return $response->withRedirect($this->router->pathFor('admin.plugins.edit') . '?id=' . $id);
|
||||
}
|
||||
}
|
||||
|
@@ -44,6 +44,7 @@ $app->group('/' . $admin_route, function () use ($app) : void {
|
||||
// Plugins Controller
|
||||
$app->get('/plugins', 'PluginsController:index')->setName('admin.plugins.index');
|
||||
$app->get('/plugins/edit', 'PluginsController:edit')->setName('admin.plugins.edit');
|
||||
$app->post('/plugins/edit', 'PluginsController:editProcess')->setName('admin.plugins.editProcess');
|
||||
$app->post('/plugins/update-status', 'PluginsController:pluginStatusProcess')->setName('admin.plugins.update-status');
|
||||
|
||||
// FieldsetsController
|
||||
|
Reference in New Issue
Block a user