Vms.php 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. <?php
  2. namespace ModulesGarden\Servers\ProxmoxCloudVps\App\Http\Client;
  3. use ModulesGarden\ProxmoxAddon\App\Services\Cloud\ProductService;
  4. use ModulesGarden\ProxmoxAddon\App\Services\Cloud\UserService;
  5. use ModulesGarden\Servers\ProxmoxCloudVps\App\Helpers\AppParams;
  6. use ModulesGarden\Servers\ProxmoxCloudVps\App\Helpers\ProxmoxAddonValidator;
  7. use ModulesGarden\Servers\ProxmoxCloudVps\App\UI\CustomTemplate\Pages\CustomTemplateDataTable;
  8. use ModulesGarden\Servers\ProxmoxCloudVps\App\UI\Home\Pages\AccountSummary;
  9. use ModulesGarden\Servers\ProxmoxCloudVps\App\UI\Home\Pages\DetailsContainer;
  10. use ModulesGarden\Servers\ProxmoxCloudVps\App\UI\Home\Pages\ErrorContainer;
  11. use ModulesGarden\Servers\ProxmoxCloudVps\App\UI\VirtualNetwork\Pages\VirtualNetworkDataTable;
  12. use ModulesGarden\Servers\ProxmoxCloudVps\App\UI\Vms\Pages\VmsDataTable;
  13. use ModulesGarden\Servers\ProxmoxCloudVps\Core\Helper;
  14. use ModulesGarden\Servers\ProxmoxCloudVps\Core\Http\AbstractClientController;
  15. use ModulesGarden\Servers\ProxmoxCloudVps\Core\UI\Traits\WhmcsParams;
  16. use function ModulesGarden\Servers\ProxmoxCloudVps\Core\Helper\sl;
  17. class Vms extends AbstractClientController
  18. {
  19. use WhmcsParams;
  20. use ProductService;
  21. use BaseClientController;
  22. use UserService;
  23. public function index()
  24. {
  25. if ($this->getWhmcsParamByKey('status') != 'Active')
  26. {
  27. return;
  28. }
  29. if (!ProxmoxAddonValidator::isInstalled())
  30. {
  31. ProxmoxAddonValidator::isInstalledOrFail();
  32. }
  33. if (!$this->isUser())
  34. {
  35. return Helper\view()->addElement(ErrorContainer::class);
  36. }
  37. (new AppParams())->initFromWhmcsParams();
  38. sl("sidebar")->getSidebar("Virtual Datacenter")->getChild("vmlist")->setActive(true);
  39. $view = Helper\view();
  40. $view->addElement(VmsDataTable::class);
  41. return $view;
  42. }
  43. }