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\Servers\ProxmoxCloudVps\App\UI\Reinstall\Forms; use ModulesGarden\ProxmoxAddon\App\Services\ApiService; use ModulesGarden\ProxmoxAddon\App\Services\Cloud\ProductService; use ModulesGarden\Servers\ProxmoxCloudVps\App\UI\Reinstall\Providers\TemplateInstallProvider; use ModulesGarden\Servers\ProxmoxCloudVps\App\UI\Validators\PasswordValidator; use ModulesGarden\Servers\ProxmoxCloudVps\Core\UI\Helpers\AlertTypesConstants; use ModulesGarden\Servers\ProxmoxCloudVps\Core\UI\Interfaces\AdminArea; use ModulesGarden\Servers\ProxmoxCloudVps\Core\UI\Interfaces\ClientArea; use ModulesGarden\Servers\ProxmoxCloudVps\Core\UI\Widget\Forms\BaseForm; use ModulesGarden\Servers\ProxmoxCloudVps\Core\UI\Widget\Forms\Fields\Hidden; use ModulesGarden\Servers\ProxmoxCloudVps\Core\UI\Widget\Forms\Fields\Text; class TemplateInstallForm extends BaseForm implements ClientArea, AdminArea { use ProductService; use ApiService; public function initContent() { $vm = \ModulesGarden\ProxmoxAddon\Core\Helper\sl('Vm')->getVm(); $this->initIds('templateInstallForm'); $this->setFormType("process" . ucfirst($vm->getVirtualization())); $this->setProvider(new TemplateInstallProvider()); $this->setInternalAlertMessage('confirmReinstall'); $this->setInternalAlertMessageType(AlertTypesConstants::DANGER); $this->initFields(); $this->loadDataToForm(); } public function getAllowedActions() { return ["processQemu", "processLxc"]; } private function initFields() { //entity id $this->addField(new Hidden("id")); //password $field = new Text('password'); $field->setDescription("tip"); $field->notEmpty(); $field->addValidator(new PasswordValidator(true, 5)); $this->addField($field); } }