KerioSettings.php 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  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. $field = new Switcher('outllok_connector');
  57. $field->setDescription('description');
  58. $leftSection->addField($field);
  59. return $leftSection;
  60. }
  61. /**
  62. * @description right section
  63. * @return HalfPageSection
  64. */
  65. public function getRightSection()
  66. {
  67. $right = new HalfPageSection('rightSide');
  68. $field = new ExtendedInputField('acc_size');
  69. $field->setFieldType(ExtendedInputField::TYPE_NUMBER);
  70. $field->addHtmlAttribute('min', Size::UNLIMITED);
  71. $field->setDescription('description');
  72. $right->addField($field);
  73. $field = new ExtendedInputField('domain_alias_limit');
  74. $field->setFieldType(ExtendedInputField::TYPE_NUMBER);
  75. $field->addHtmlAttribute('min', Size::UNLIMITED);
  76. $field->setDescription('description');
  77. $right->addField($field);
  78. $field = new ExtendedInputField('dist_list_limit');
  79. $field->setFieldType(ExtendedInputField::TYPE_NUMBER);
  80. $field->addHtmlAttribute('min', Size::UNLIMITED);
  81. $field->setDescription('description');
  82. $right->addField($field);
  83. $field = new ExtendedInputField('domainMaxSize');
  84. $field->setFieldType(ExtendedInputField::TYPE_NUMBER);
  85. $field->addHtmlAttribute('min', Size::UNLIMITED);
  86. $field->setDescription('description');
  87. $right->addField($field);
  88. $field = new ExtendedInputField('domainBaseSize');
  89. $field->setFieldType(ExtendedInputField::TYPE_NUMBER);
  90. $field->addHtmlAttribute('min', Size::UNLIMITED);
  91. $field->setDescription('description');
  92. $right->addField($field);
  93. return $right;
  94. }
  95. }