mirror of
https://github.com/Karaka-Management/oms-Admin.git
synced 2026-02-01 06:08:41 +00:00
Implementing basic activate/deactivate
This commit is contained in:
parent
82a9c5c797
commit
0ed5f2b473
|
|
@ -18,6 +18,7 @@ namespace Modules\Admin\Admin;
|
|||
|
||||
use phpOMS\DataStorage\Database\Pool;
|
||||
use phpOMS\Module\ActivateAbstract;
|
||||
use phpOMS\Module\InfoManager;
|
||||
|
||||
/**
|
||||
* Navigation class.
|
||||
|
|
@ -36,7 +37,7 @@ class Activate extends ActivateAbstract
|
|||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public static function activate(Pool $dbPool, array $info)
|
||||
public static function activate(Pool $dbPool, InfoManager $info)
|
||||
{
|
||||
parent::activate($dbPool, $info);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -18,6 +18,7 @@ namespace Modules\Admin\Admin;
|
|||
|
||||
use phpOMS\DataStorage\Database\Pool;
|
||||
use phpOMS\Module\DeactivateAbstract;
|
||||
use phpOMS\Module\InfoManager;
|
||||
|
||||
/**
|
||||
* Navigation class.
|
||||
|
|
@ -36,7 +37,7 @@ class Deactivate extends DeactivateAbstract
|
|||
/**
|
||||
* {@inheritdoc}
|
||||
*/
|
||||
public static function deactivate(Pool $dbPool, array $info)
|
||||
public static function deactivate(Pool $dbPool, InfoManager $info)
|
||||
{
|
||||
parent::deactivate($dbPool, $info);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -106,4 +106,11 @@ return [
|
|||
'verb' => RouteVerb::GET,
|
||||
],
|
||||
],
|
||||
|
||||
'^.*/api/admin/module/status.*$' => [
|
||||
[
|
||||
'dest' => '\Modules\Admin\Controller:apiModuleStatusUpdate',
|
||||
'verb' => RouteVerb::SET,
|
||||
],
|
||||
],
|
||||
];
|
||||
|
|
|
|||
|
|
@ -15,6 +15,7 @@
|
|||
*/
|
||||
namespace Modules\Admin;
|
||||
|
||||
use Model\Message\Notify;
|
||||
use Modules\Admin\Models\Account;
|
||||
use Modules\Admin\Models\AccountMapper;
|
||||
use Modules\Admin\Models\GroupMapper;
|
||||
|
|
@ -356,4 +357,33 @@ class Controller extends ModuleAbstract implements WebInterface
|
|||
$response->set('account', ['status' => $status, 'account' => $account->__toString()]);
|
||||
}
|
||||
|
||||
public function apiModuleStatusUpdate(RequestAbstract $request, ResponseAbstract $response, $data = null)
|
||||
{
|
||||
$module = $request->getData('module');
|
||||
$status = $request->getData('status');
|
||||
|
||||
if(!$module || !$status) {
|
||||
// todo: create failure response
|
||||
}
|
||||
|
||||
switch($status) {
|
||||
case 'activate':
|
||||
$done = $this->app->moduleManager->activate($module);
|
||||
break;
|
||||
case 'deactivate':
|
||||
$done = $this->app->moduleManager->deactivate($module);
|
||||
break;
|
||||
case 'install':
|
||||
$done = $this->app->moduleManager->install($module);
|
||||
break;
|
||||
case 'uninstall':
|
||||
//$done = $this->app->moduleManager->uninstall($module);
|
||||
$done = true;
|
||||
break;
|
||||
default:
|
||||
$done = false;
|
||||
}
|
||||
|
||||
$response->set('module', [$status => $done, 'module' => $module]);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -49,7 +49,7 @@ $id = $this->request->getData('id') ?? 1;
|
|||
<td colspan="2">
|
||||
<?php if (in_array($id, $active)) : ?>
|
||||
<button
|
||||
data-reload="<?= \phpOMS\Uri\UriFactory::build('POST:/{/lang}/backend/admin/module/deactivate?id=' . $id); ?>"><?= $this->l11n->lang['Admin']['Deactivate'] ?></button>
|
||||
data-reload="<?= \phpOMS\Uri\UriFactory::build('POST:/{/lang}/backend/admin/module/status?status=deactivate&module=' . $id); ?>"><?= $this->l11n->lang['Admin']['Deactivate'] ?></button>
|
||||
<?php elseif (in_array($id, $installed)) : ?>
|
||||
<button data-reload="<?= \phpOMS\Uri\UriFactory::build('POST:/{/lang}/backend/admin/module/deactivate?id=' . $id); ?>"><?= $this->l11n->lang['Admin']['Uninstall'] ?></button>
|
||||
<button data-reload="<?= \phpOMS\Uri\UriFactory::build('POST:/{/lang}/backend/admin/module/deactivate?id=' . $id); ?>"><?= $this->l11n->lang['Admin']['Activate'] ?></button>
|
||||
|
|
|
|||
|
|
@ -49,7 +49,7 @@ $id = $this->request->getData('id') ?? 1;
|
|||
<td colspan="2">
|
||||
<?php if (in_array($id, $active)) : ?>
|
||||
<button
|
||||
data-reload="<?= \phpOMS\Uri\UriFactory::build('POST:/{/lang}/backend/admin/module/deactivate?id=' . $id); ?>"><?= $this->l11n->lang['Admin']['Deactivate'] ?></button>
|
||||
data-reload="<?= \phpOMS\Uri\UriFactory::build('POST:/{/lang}/backend/admin/module/status?status=deactivate&module=' . $id); ?>"><?= $this->l11n->lang['Admin']['Deactivate'] ?></button>
|
||||
<?php elseif (in_array($id, $installed)) : ?>
|
||||
<button data-reload="<?= \phpOMS\Uri\UriFactory::build('POST:/{/lang}/backend/admin/module/deactivate?id=' . $id); ?>"><?= $this->l11n->lang['Admin']['Uninstall'] ?></button>
|
||||
<button data-reload="<?= \phpOMS\Uri\UriFactory::build('POST:/{/lang}/backend/admin/module/deactivate?id=' . $id); ?>"><?= $this->l11n->lang['Admin']['Activate'] ?></button>
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user