http://modulesgarden.com * CONTACT -> contact@modulesgarden.com * * * This software is furnished under a license and may be used and copied * only in accordance with the terms of such license and with the * inclusion of the above copyright notice. This software or any other * copies thereof may not be provided or otherwise made available to any * other person. No title to and ownership of the software is hereby * transferred. * * * ******************************************************************** */ namespace ModulesGarden\ProxmoxAddon\App\UI\ServerGroup\Forms; use MGProvision\Proxmox\v2\ProxmoxApiException; use ModulesGarden\ProxmoxAddon\App\UI\ServerGroup\Providers\ServerGroupProvider; use ModulesGarden\ProxmoxAddon\Core\UI\Helpers\AlertTypesConstants; use ModulesGarden\ProxmoxAddon\Core\UI\Interfaces\AdminArea; use ModulesGarden\ProxmoxAddon\Core\UI\Widget\Forms\BaseForm; use ModulesGarden\ProxmoxAddon\Core\UI\Widget\Forms\Fields; /** * Description of CreateForm * * @author Pawel Kopec */ class CreateForm extends BaseForm implements AdminArea { public function initContent() { $this->initIds('createForm'); $this->setFormType('create'); $this->setProvider(new ServerGroupProvider); $this->initFields(); } protected function initFields() { try{ //Server Id $this->addField(new Fields\Hidden('server_id')); //id $this->addField(new Fields\Hidden('id')); //name $field = new Fields\Text('name'); $field->notEmpty(); $this->addField($field); //node $field = new Fields\Select('node'); $field->enableMultiple() ->notEmpty(); $this->addField($field); $this->loadDataToForm(); }catch (ProxmoxApiException $ex){ $this->setInternalAlertMessage($ex->getMessage())->setInternalAlertMessageType(AlertTypesConstants::DANGER); } } protected function getDefaultActions() { return ['create']; } }