| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- <?php
- namespace ModulesGarden\Servers\ProxmoxCloudVps\App\UI\VmClone\Forms;
- use ModulesGarden\ProxmoxAddon\App\Models\VirtualNetwork;
- use ModulesGarden\ProxmoxAddon\App\Services\Cloud\ProductService;
- use ModulesGarden\Servers\ProxmoxCloudVps\App\UI\VmClone\Providers\VmCloneProvider;
- use ModulesGarden\Servers\ProxmoxCloudVps\App\UI\VmClone\Sections\AdditionalDiskSection;
- use ModulesGarden\Servers\ProxmoxCloudVps\App\UI\VmClone\Sections\DnsSection;
- use ModulesGarden\Servers\ProxmoxCloudVps\App\UI\VmClone\Sections\Lxc;
- use ModulesGarden\Servers\ProxmoxCloudVps\App\UI\VmClone\Sections\Qemu;
- use ModulesGarden\Servers\ProxmoxCloudVps\App\UI\VmClone\Sections\TopSection;
- use ModulesGarden\Servers\ProxmoxCloudVps\App\UI\VmClone\Sections\VirtualNetworkSection;
- use ModulesGarden\Servers\ProxmoxCloudVps\Core\UI\Interfaces\ClientArea;
- use ModulesGarden\Servers\ProxmoxCloudVps\Core\UI\Widget\Forms\BaseStandaloneFormExtSections;
- use ModulesGarden\Servers\ProxmoxCloudVps\Core\UI\Widget\Forms\Fields\Text;
- use ModulesGarden\Servers\ProxmoxCloudVps\Core\UI\Widget\Forms\Sections\HalfPageSection;
- use ModulesGarden\Servers\ProxmoxCloudVps\Core\UI\Widget\Forms\Sections\RawSection;
- use ModulesGarden\Servers\ProxmoxCloudVps\Core\UI\Widget\Forms\Sections\BaseSection;
- class VmCloneForm extends BaseStandaloneFormExtSections implements ClientArea
- {
- use ProductService;
- public function initContent()
- {
- $this->setFormType('create');
- $this->setProvider(new VmCloneProvider());
- $this->addSection(new TopSection());
- if ($this->configuration()->isQemu())
- {
- $this->addSection((new Qemu\GeneralSection())->setMainContainer($this->mainContainer));
- }
- if ($this->configuration()->isLxc())
- {
- $this->addSection((new Lxc\GeneralSection())->setMainContainer($this->mainContainer));
- }
- $net = new HalfPageSection('netdisk');
- $net->setMainContainer($this->mainContainer);
- $networks = (new VirtualNetworkSection())->setMainContainer($this->mainContainer);
- $net->addSection($networks);
- $dns = (new DnsSection())->setMainContainer($this->mainContainer);
- $net->addSection($dns);
- $this->addSection($net);
- $this->loadDataToForm();
- }
- }
|