GeneralSection.php 3.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. <?php
  2. namespace ThurData\Servers\KerioEmail\App\UI\Client\Setting\Sections;
  3. use ThurData\Servers\KerioEmail\App\Traits\FormExtendedTrait;
  4. use ThurData\Servers\KerioEmail\App\UI\Admin\Custom\Sections\FreeFieldsSection;
  5. use ThurData\Servers\KerioEmail\Core\UI\Widget\Forms\Fields\Select;
  6. use ThurData\Servers\KerioEmail\Core\UI\Widget\Forms\Fields\Text;
  7. use ThurData\Servers\KerioEmail\Core\UI\Widget\Forms\Fields\BaseField;
  8. use ThurData\Servers\KerioEmail\Core\UI\Widget\Forms\Sections\InputGroup;
  9. use ThurData\Servers\KerioEmail\Core\UI\Widget\Forms\Fields\InputGroupElements;
  10. use ThurData\Servers\KerioEmail\Core\UI\Widget\Forms\Fields\Hidden;
  11. use ThurData\Servers\KerioEmail\Core\UI\Widget\Forms\Fields\Textarea;
  12. use ThurData\Servers\KerioEmail\Core\UI\Widget\Forms\Fields\Info;
  13. use ThurData\Servers\KerioEmail\Core\Helper\DnsHelper;
  14. /**
  15. *
  16. * Created by PhpStorm.
  17. * User: ThurData
  18. * Date: 12.11.19
  19. * Time: 13:39
  20. * Class GeneralSection
  21. */
  22. class GeneralSection extends FreeFieldsSection
  23. {
  24. protected $id = 'generalSection';
  25. protected $name = 'generalSection';
  26. use FormExtendedTrait;
  27. public function initContent()
  28. {
  29. $maildomain = $this->getRequestValue('actionElementId');
  30. $dns = new DnsHelper();
  31. if($dns->selfDns($maildomain)) {
  32. $infodns = new Info('infodns');
  33. $infodns->setId('infodns');
  34. $infodns->setName('infodns');
  35. $infodns->setDescription('infodnsmessage');
  36. $this->addField($infodns);
  37. } else {
  38. $infoextdns = new Info('infoextdns');
  39. $infoextdns->setId('infoextdns');
  40. $infoextdns->setName('infoextdns');
  41. $infoextdns->setDescription('infoextdnsmessage');
  42. $this->addField($infoextdns);
  43. }
  44. $mxthurdata = new Text('mxthurdata');
  45. $mxthurdata->addHtmlAttribute('readonly','true');
  46. $mxthurdata->setDescription('description');
  47. $mxactive = new Text('mxactive');
  48. $mxactive->addHtmlAttribute('readonly','true');
  49. $mxactive->setDescription('description');
  50. $this->generateDoubleSection([$mxthurdata, $mxactive]);
  51. $spfthurdata = new Text('spfthurdata');
  52. $spfthurdata->addHtmlAttribute('readonly','true');
  53. $spfthurdata->setDescription('description');
  54. $spf = new Text('spf');
  55. $spf->addHtmlAttribute('readonly','true');
  56. $spf->setDescription('description');
  57. $this->generateDoubleSection([$spfthurdata, $spf]);
  58. $dmarcthurdata = new Text('dmarcthurdata');
  59. $dmarcthurdata->addHtmlAttribute('readonly','true');
  60. $dmarcthurdata->setDescription('description');
  61. $dmarc = new Text('dmarc');
  62. $dmarc->addHtmlAttribute('readonly','true');
  63. $dmarc->setDescription('description');
  64. $this->generateDoubleSection([$dmarcthurdata, $dmarc]);
  65. $dkimname = new Text('dkimname');
  66. $dkimname->addHtmlAttribute('readonly','true')->addHtmlAttribute('border', 0);
  67. $dkimname->setDescription('description');
  68. $this->generateDoubleSection([$dkimname]);
  69. $dkimthurdata = new Text('dkimthurdata');
  70. $dkimthurdata->addHtmlAttribute('readonly','true');
  71. $dkimthurdata->setDescription('description');
  72. $dkim = new Text('dkim');
  73. $dkim->addHtmlAttribute('readonly','true');
  74. $this->generateDoubleSection([$dkimthurdata, $dkim]);
  75. $this->generateDoubleSection([new Hidden('infomaildomain'), new Hidden('id')]);
  76. $this->generateDoubleSection([new Hidden('selfdns'), new Hidden('dnsok')]);
  77. }
  78. }