FastDomainLookup.php 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. <?php
  2. namespace ModulesGarden\ProxmoxAddon\App\Libs\Api\OpenSRS\Fastlookup;
  3. use ModulesGarden\ProxmoxAddon\App\Libs\Api\OpenSRS\Exception;
  4. use ModulesGarden\ProxmoxAddon\App\Libs\Api\OpenSRS\FastLookup;
  5. class FastDomainLookup extends FastLookup
  6. {
  7. public $resultFullRaw;
  8. public $resultRaw;
  9. public $resultFullFormatted;
  10. public $resultFormatted;
  11. public $tlds;
  12. protected $_domain = '';
  13. protected $_tldSelect = [];
  14. protected $_tldAll = [];
  15. protected $_formatHolder = '';
  16. public function __construct($formatString, $dataObject)
  17. {
  18. try
  19. {
  20. $this->_formatHolder = $formatString;
  21. $this->_validateObject($dataObject);
  22. $this->setDataObject($formatString, $dataObject);
  23. $this->send($this->tlds);
  24. }
  25. catch (\ModulesGarden\ProxmoxAddon\App\Libs\Api\OpenSRS\Exception $exe)
  26. {
  27. }
  28. }
  29. // Validate the object
  30. private function _validateObject($dataObject)
  31. {
  32. $domain = '';
  33. // search domain must be definded
  34. if (!isset($dataObject->data->domain))
  35. {
  36. Exception::notDefined('domain');
  37. }
  38. // Grab domain name
  39. $domain = $dataObject->data->domain;
  40. if (!isset($dataObject->data->selected))
  41. {
  42. Exception::notDefined('selected');
  43. }
  44. if (!isset($dataObject->data->alldomains))
  45. {
  46. Exception::notDefined('alldomains');
  47. }
  48. $selected = explode(';', $dataObject->data->selected);
  49. $this->tlds = explode(';', $dataObject->data->alldomains);
  50. if (count(array_filter($selected)) >= 1)
  51. {
  52. $this->tlds = $selected;
  53. }
  54. }
  55. }