KerioSettings.php 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  1. <?php
  2. namespace ThurData\Servers\KerioEmail\App\UI\Admin\ProductConfiguration\Pages\Sections;
  3. use ThurData\Servers\KerioEmail\App\Enums\Size;
  4. use ThurData\Servers\KerioEmail\App\UI\Admin\Custom\Fields\ExtendedInputField;
  5. use ThurData\Servers\KerioEmail\App\UI\Admin\Custom\Sections\BoxSectionExtended;
  6. use ThurData\Servers\KerioEmail\Core\UI\Widget\Forms\Fields\Select;
  7. use ThurData\Servers\KerioEmail\Core\UI\Widget\Forms\Fields\Switcher;
  8. use ThurData\Servers\KerioEmail\Core\UI\Widget\Forms\Fields\Text;
  9. use ThurData\Servers\KerioEmail\Core\UI\Widget\Forms\Sections\BoxSection;
  10. use ThurData\Servers\KerioEmail\Core\UI\Interfaces\AdminArea;
  11. use ThurData\Servers\KerioEmail\Core\UI\Widget\Forms\Sections\HalfPageSection;
  12. /**
  13. *
  14. * Created by PhpStorm.
  15. * User: ThurData
  16. * Date: 28.08.19
  17. * Time: 09:15
  18. * Class KerioSettingsSection
  19. */
  20. class KerioSettings extends BoxSectionExtended implements AdminArea
  21. {
  22. protected $id = 'kerioSettings';
  23. protected $name = 'kerioSettings';
  24. protected $title = 'kerioSettings';
  25. public function initContent()
  26. {
  27. $this
  28. ->addSection($this->getLeftSection())
  29. ->addSection($this->getRightSection());
  30. }
  31. /**
  32. * @description left section
  33. * @return HalfPageSection
  34. */
  35. public function getLeftSection()
  36. {
  37. $leftSection = new HalfPageSection('leftSide');
  38. $field = new ExtendedInputField('acc_limit');
  39. $field->setFieldType(ExtendedInputField::TYPE_NUMBER);
  40. $field->addHtmlAttribute('min', Size::UNLIMITED);
  41. $field->setDescription('description');
  42. $leftSection->addField($field);
  43. $field = new ExtendedInputField('acc_base');
  44. $field->setFieldType(ExtendedInputField::TYPE_NUMBER);
  45. $field->addHtmlAttribute('min', Size::UNLIMITED);
  46. $field->setDescription('description');
  47. $leftSection->addField($field);
  48. $field = new ExtendedInputField('alias_limit');
  49. $field->setFieldType(ExtendedInputField::TYPE_NUMBER);
  50. $field->addHtmlAttribute('min', Size::UNLIMITED);
  51. $field->setDescription('description');
  52. $leftSection->addField($field);
  53. $loginLink = new Text('login_link');
  54. $loginLink->setDescription('description');
  55. $leftSection->addField($loginLink);
  56. return $leftSection;
  57. }
  58. /**
  59. * @description right section
  60. * @return HalfPageSection
  61. */
  62. public function getRightSection()
  63. {
  64. $right = new HalfPageSection('rightSide');
  65. $field = new ExtendedInputField('acc_size');
  66. $field->setFieldType(ExtendedInputField::TYPE_NUMBER);
  67. $field->addHtmlAttribute('min', Size::UNLIMITED);
  68. $field->setDescription('description');
  69. $right->addField($field);
  70. $field = new ExtendedInputField('domain_alias_limit');
  71. $field->setFieldType(ExtendedInputField::TYPE_NUMBER);
  72. $field->addHtmlAttribute('min', Size::UNLIMITED);
  73. $field->setDescription('description');
  74. $right->addField($field);
  75. $field = new ExtendedInputField('dist_list_limit');
  76. $field->setFieldType(ExtendedInputField::TYPE_NUMBER);
  77. $field->addHtmlAttribute('min', Size::UNLIMITED);
  78. $field->setDescription('description');
  79. $right->addField($field);
  80. $field = new ExtendedInputField('domainMaxSize');
  81. $field->setFieldType(ExtendedInputField::TYPE_NUMBER);
  82. $field->addHtmlAttribute('min', Size::UNLIMITED);
  83. $field->setDescription('description');
  84. $right->addField($field);
  85. $field = new ExtendedInputField('domainBaseSize');
  86. $field->setFieldType(ExtendedInputField::TYPE_NUMBER);
  87. $field->addHtmlAttribute('min', Size::UNLIMITED);
  88. $field->setDescription('description');
  89. $right->addField($field);
  90. $field = new Switcher('outllok_connector');
  91. $field->setDescription('description');
  92. $right->addField($field);
  93. return $right;
  94. }
  95. }