ConfigOptionsIntegration.php 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. <?php
  2. namespace ThurData\Servers\KerioEmail\Core\App\Controllers\Instances\Http;
  3. use \ThurData\Servers\KerioEmail\Core\App\Controllers\Interfaces\AdminArea;
  4. use \ThurData\Servers\KerioEmail\Core\App\Controllers\Instances\HttpController;
  5. class ConfigOptionsIntegration extends HttpController implements AdminArea
  6. {
  7. protected $templateName = 'configOptionsIntegration';
  8. protected $templateDir = null;
  9. public function execute($response = null)
  10. {
  11. $this->setControllerResult($response);
  12. if (!$this->controllerResult)
  13. {
  14. return '';
  15. }
  16. $result = $this->resolveResponse();
  17. $data = [
  18. 'content' => $result,
  19. 'mode' => 'advanced'
  20. ];
  21. $enc = \json_encode($data);
  22. $this->cleanOutputBuffer();
  23. echo $enc;
  24. exit;
  25. }
  26. public function resolveResponse()
  27. {
  28. if ($this->controllerResult instanceof \ThurData\Servers\KerioEmail\Core\Http\Response)
  29. {
  30. $this->controllerResult->setForceHtml();
  31. }
  32. return $this->responseResolver->setResponse($this->controllerResult)
  33. ->setTemplateName($this->getTemplateName())
  34. ->setTemplateDir($this->getTemplateDir())
  35. ->setPageController($this)
  36. ->resolve();
  37. }
  38. }