initIds('additionalDiskSection'); $this->initFields(); } public function initFields() { //size $this->resourceManager = new ResourceManager(); $field = new Range('additionalDiskSize1', $this->configuration()->serverDiskSize->min, $this->resourceManager->disk()->free()); $field->addValidator(new DiskSizeValidator('additionalDiskSize1',true)); $field->setDefaultValue($this->configuration()->serverDiskSize->min); $field->setDescription('description'); // $field->replaceClasses(['lu-col-md-6']); $this->addField($field); //bus if($this->configuration()->isQemu() && count($this->configuration()->getAdditionalDiskType()) > 1){ $field = new Select('additionalDiskBus'); $options=[]; foreach( $this->configuration()->getAdditionalDiskType() as $entery){ $options[$entery] = sl("lang")->abtr($entery); } $field->setAvailableValues($options); $field->replaceClasses(['lu-col-md-6']); $this->addField($field); } //format if($this->configuration()->isQemu() && count($this->configuration()->getAdditionalDiskFormat()) > 1){ $field = new Select('additionalDiskFormat'); $options=[]; foreach( $this->configuration()->getAdditionalDiskFormat() as $entery){ $options[$entery] = sl("lang")->abtr($entery); } $field->setAvailableValues($options); $field->replaceClasses(['lu-col-md-6']); $this->addField($field); } if($this->configuration()->isLxc()){ //mp $field = new Text('additionalDiskMp'); $field->setPlaceholder("/some/path"); $field->replaceClasses(['lu-col-md-6']); $this->addField($field); } //backup if ($this->configuration()->isPermissionAdditionalDiskBackup()) { $field = new Switcher('additionalDiskBackup'); // $field->replaceClasses(['lu-col-md-6']); $this->addField($field); } } }