RequestObjectHandler.php 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. <?php
  2. namespace ModulesGarden\Servers\ProxmoxCloudVps\Core\UI\Traits;
  3. use \ModulesGarden\Servers\ProxmoxCloudVps\Core\Http\Request;
  4. /**
  5. * Adds methods to handle requests data
  6. */
  7. trait RequestObjectHandler
  8. {
  9. /**
  10. * request object variable
  11. * @var \ModulesGarden\Servers\ProxmoxCloudVps\Core\Http\Request
  12. */
  13. protected $request = null;
  14. /**
  15. * loads request object
  16. */
  17. protected function loadRequestObj()
  18. {
  19. if ($this->request === null)
  20. {
  21. $this->request = Request::build();
  22. }
  23. return $this;
  24. }
  25. /**
  26. * returns data from request by provided $key or dafault value if key was not found
  27. * @param string $key
  28. * @param mixed $defaultValue
  29. * @return mixed
  30. */
  31. public function getRequestValue($key, $defaultValue = false)
  32. {
  33. $this->loadRequestObj();
  34. if ($this->request)
  35. {
  36. return $this->request->get($key, $defaultValue);
  37. }
  38. return $defaultValue;
  39. }
  40. }