ConfigurableOptionUnitsSection.php 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. <?php
  2. namespace ModulesGarden\Servers\ProxmoxCloudVps\App\UI\Admin\Product\Sections\Lxc;
  3. use ModulesGarden\Servers\ProxmoxCloudVps\Core\UI\Interfaces\AdminArea;
  4. use ModulesGarden\Servers\ProxmoxCloudVps\Core\UI\Widget\Forms\Fields\Select;
  5. use ModulesGarden\Servers\ProxmoxCloudVps\Core\UI\Widget\Forms\Sections\BoxSection;
  6. use ModulesGarden\Servers\ProxmoxCloudVps\Core\UI\Widget\Forms\Sections\HalfPageSection;
  7. class ConfigurableOptionUnitsSection extends BoxSection implements AdminArea
  8. {
  9. protected $id = 'configurableOptionUnitsSection';
  10. protected $name = 'configurableOptionUnitsSection';
  11. protected $title = 'configurableOptionUnitsSection';
  12. /**
  13. * @var HalfPageSection
  14. */
  15. private $leftSection;
  16. /**
  17. * @var HalfPageSection
  18. */
  19. private $rightSection;
  20. public function initContent()
  21. {
  22. $this->leftSection = new HalfPageSection('leftSection');
  23. $this->rightSection = new HalfPageSection('rightSection');
  24. $this->addSection($this->leftSection)
  25. ->addSection($this->rightSection);
  26. $this->initFields();
  27. }
  28. private function initFields()
  29. {
  30. //Memory- MB/GB
  31. $field = new Select('customconfigoption[memoryUnit]');
  32. $field->setDefaultValue("mb");
  33. $field->setDescription('tip');
  34. $this->leftSection->addField($field);
  35. //Disk Size - MB/GB/TB
  36. $field = new Select('customconfigoption[storageUnit]');
  37. $field->setDefaultValue("gb");
  38. $field->setDescription('tip');
  39. $this->rightSection->addField($field);
  40. //SWAP For the VM - MB/GB
  41. $field = new Select('customconfigoption[swapUnit]');
  42. $field->setDefaultValue("mb");
  43. $field->setDescription('tip');
  44. $this->leftSection->addField($field);
  45. }
  46. }