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\Templates\Fields; use MGProvision\Proxmox\v2 as proxmox; use ModulesGarden\ProxmoxAddon as main; use ModulesGarden\ProxmoxAddon\Core\UI\Interfaces\AdminArea; use ModulesGarden\ProxmoxAddon\Core\UI\Widget\Forms\AjaxFields\Select; /** * Description of NodeSelect * * @author Pawel Kopec */ class VmidSelect extends Select implements AdminArea { use main\App\Services\BaseService; public function prepareAjaxData() { $this->setServerId($this->getRequestValue('id'))->getApi()->setInstance(); $this->getApi()->debug(true); $clusterResurce = new proxmox\repository\ClusterResourcesRepository; $clusterResurce->findVm(); $clusterResurce->addfilter(['type' => 'qemu']); foreach ($clusterResurce->fetch() as $resurce) { /* @var $server proxmox\models\ClusterResource */ if ($resurce->getTemplate() == "1" || $resurce->getStatus() == "unknown") { continue; } $name = "{$resurce->getVmid()} "; if ($resurce->getName()) { $name .= "- {$resurce->getName()}"; } $this->availableValues[] = [ 'key' => $resurce->getVmid(), 'value' => $name ]; } } }