GeneralSection.php 3.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  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->setName('infodns');
  34. $infodns->setDescription('infodnsmessage');
  35. $this->addField($infodns);
  36. } else {
  37. $infoextdns = new Info('infoextdns');
  38. $infoextdns->setName('infoextdns');
  39. $infoextdns->setDescription('infoextdnsmessage');
  40. $this->addField($infoextdns);
  41. }
  42. $mxthurdata = new Text('mxthurdata');
  43. $mxthurdata->addHtmlAttribute('readonly','true');
  44. $mxthurdata->setDescription('description');
  45. $mxactive = new Text('mxactive');
  46. $mxactive->addHtmlAttribute('readonly','true');
  47. $mxactive->setDescription('description');
  48. $this->generateDoubleSection([$mxthurdata, $mxactive]);
  49. $spfthurdata = new Text('spfthurdata');
  50. $spfthurdata->addHtmlAttribute('readonly','true');
  51. $spfthurdata->setDescription('description');
  52. $spf = new Text('spf');
  53. $spf->addHtmlAttribute('readonly','true');
  54. $spf->setDescription('description');
  55. $this->generateDoubleSection([$spfthurdata, $spf]);
  56. $dmarcthurdata = new Text('dmarcthurdata');
  57. $dmarcthurdata->addHtmlAttribute('readonly','true');
  58. $dmarcthurdata->setDescription('description');
  59. $dmarc = new Text('dmarc');
  60. $dmarc->addHtmlAttribute('readonly','true');
  61. $dmarc->setDescription('description');
  62. $this->generateDoubleSection([$dmarcthurdata, $dmarc]);
  63. $dkimname = new Text('dkimname');
  64. $dkimname->addHtmlAttribute('readonly','true')->addHtmlAttribute('border', 0);
  65. $dkimname->setDescription('description');
  66. $this->generateDoubleSection([$dkimname]);
  67. $dkimthurdata = new Text('dkimthurdata');
  68. $dkimthurdata->addHtmlAttribute('readonly','true');
  69. $dkimthurdata->setDescription('description');
  70. $dkim = new Text('dkim');
  71. $dkim->addHtmlAttribute('readonly','true');
  72. $this->generateDoubleSection([$dkimthurdata, $dkim]);
  73. $this->generateDoubleSection([new Hidden('infomaildomain'), new Hidden('id')]);
  74. $this->generateDoubleSection([new Hidden('selfdns'), new Hidden('dnsok')]);
  75. }
  76. }