UpdateRuleButton.php 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. <?php
  2. /* * ********************************************************************
  3. * ProxmoxVPS Product developed. (27.03.19)
  4. * *
  5. *
  6. * CREATED BY MODULESGARDEN -> http://modulesgarden.com
  7. * CONTACT -> contact@modulesgarden.com
  8. *
  9. *
  10. * This software is furnished under a license and may be used and copied
  11. * only in accordance with the terms of such license and with the
  12. * inclusion of the above copyright notice. This software or any other
  13. * copies thereof may not be provided or otherwise made available to any
  14. * other person. No title to and ownership of the software is hereby
  15. * transferred.
  16. *
  17. *
  18. * ******************************************************************** */
  19. namespace ModulesGarden\Servers\ProxmoxVps\App\UI\Firewall\Buttons;
  20. use ModulesGarden\Servers\ProxmoxVps\App\UI\Firewall\Modals\UpdateGroupModal;
  21. use ModulesGarden\Servers\ProxmoxVps\App\UI\Firewall\Modals\UpdateRuleModal;
  22. use ModulesGarden\Servers\ProxmoxVps\Core\UI\Interfaces\ClientArea;
  23. use ModulesGarden\Servers\ProxmoxVps\Core\UI\Widget\Buttons\ButtonDataTableModalAction;
  24. class UpdateRuleButton extends ButtonDataTableModalAction implements ClientArea
  25. {
  26. public function initContent()
  27. {
  28. $this->initIds('updateButton');
  29. if ($this->isUpdateGroup())
  30. {
  31. $this->initLoadModalAction(new UpdateGroupModal());
  32. return;
  33. }
  34. $this->initLoadModalAction(new UpdateRuleModal());
  35. }
  36. private function isUpdateGroup()
  37. {
  38. $this->loadRequestObj();
  39. $this->request->get('ajax') && $this->request->get('actionElementId');
  40. if ($this->request->get('ajax') && $this->request->get('actionElementId'))
  41. {
  42. $this->data = json_decode(base64_decode($this->request->get('actionElementId')), true);
  43. return $this->data['type'] == "group";
  44. }
  45. return false;
  46. }
  47. }