Options.php 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. <?php
  2. namespace ModulesGarden\Servers\ProxmoxVps\Packages\WhmcsService\UI\ConfigurableOption\Providers;
  3. use ModulesGarden\Servers\ProxmoxVps\Core\UI\ResponseTemplates\HtmlDataJsonResponse;
  4. use ModulesGarden\Servers\ProxmoxVps\Core\UI\Widget\Forms\DataProviders\BaseDataProvider;
  5. use ModulesGarden\Servers\ProxmoxVps\Packages\WhmcsService\Product;
  6. class Options extends BaseDataProvider
  7. {
  8. public function read()
  9. {
  10. $this->data['optionName'] = $this->getRequestValue('actionElementId');
  11. }
  12. public function create()
  13. {
  14. $optionsName = $this->formData['configOptions'];
  15. $product = new Product($this->getRequestValue('id'));
  16. foreach ($optionsName as $optionName => $isOn)
  17. {
  18. if ($isOn !== 'on')
  19. {
  20. continue;
  21. }
  22. $product->addConfigurableOption($optionName);
  23. }
  24. $response = new HtmlDataJsonResponse();
  25. $response->setCallBackFunction('redirectToConfigurableOptions');
  26. if ($product->isConfigurableOptionsGroupCreated())
  27. {
  28. return $response->setMessageAndTranslate('configurableOptionsCreated');
  29. }
  30. return $response->setMessageAndTranslate('configurableOptionsUpdated');
  31. }
  32. public function update()
  33. {
  34. }
  35. }