Add NetworkPackageManager MVC

This commit is contained in:
Enrico Bacis 2015-09-11 20:09:07 +02:00 committed by enricobacis
parent 07168ffaae
commit e4a139237a
2 changed files with 64 additions and 0 deletions

View File

@ -0,0 +1,47 @@
<?php
/* /usr/share/nethesis/NethServer/Module/NetworkPackageManager.php */
namespace NethServer\Module;
use Nethgui\System\PlatformInterface as Validate;
/**
* Manage Network Packages
*/
class NetworkPackageManager extends \Nethgui\Controller\TableController
{
protected function initializeAttributes(\Nethgui\Module\ModuleAttributesInterface $base)
{
return \Nethgui\Module\SimpleModuleAttributesProvider::extendModuleAttributes($base, 'Administration', 20);
}
public function initialize()
{
$columns = array(
'Key',
'Addpkg',
'Delpkg',
'Description',
'Actions'
);
$parameterSchema = array(
array('role', Validate::ANYTHING, \Nethgui\Controller\Table\Modify::KEY),
array('Addpkg', Validate::ANYTHING, \Nethgui\Controller\Table\Modify::FIELD),
array('Delpkg', Validate::ANYTHING, \Nethgui\Controller\Table\Modify::FIELD),
array('Description', Validate::ANYTHING, \Nethgui\Controller\Table\Modify::FIELD),
);
$this
->setTableAdapter($this->getPlatform()->getTableAdapter('roles', 'role'))
->setColumns($columns)
->addTableAction(new \Nethgui\Controller\Table\Modify('create', $parameterSchema, 'NethServer\Template\NetworkPackageManager\CreateUpdate'))
->addTableAction(new \Nethgui\Controller\Table\Help('Help'))
->addRowAction(new \Nethgui\Controller\Table\Modify('update', $parameterSchema, 'NethServer\Template\NetworkPackageManager\CreateUpdate'))
->addRowAction(new \Nethgui\Controller\Table\Modify('delete', $parameterSchema, 'Nethgui\Template\Table\Delete'))
;
parent::initialize();
}
}

View File

@ -0,0 +1,17 @@
<?php
/* /usr/share/nethesis/NethServer/Template/NetworkPackageManager/CreateUpdate.php */
if ($view->getModule()->getIdentifier() == 'update') {
$headerText = 'Update a role `${0}`';
} else {
$headerText = 'Create a new role';
}
echo $view->panel()
->insert($view->header('role')->setAttribute('template', $T($headerText)))
->insert($view->textInput('role', ($view->getModule()->getIdentifier() == 'update' ? $view::STATE_READONLY : 0)))
->insert($view->textArea('Addpkg'))
->insert($view->textArea('Delpkg'))
->insert($view->textInput('Description'));
echo $view->buttonList($view::BUTTON_SUBMIT | $view::BUTTON_CANCEL);