ClientAreaSection.php 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251
  1. <?php
  2. namespace ModulesGarden\Servers\ProxmoxCloudVps\App\UI\Admin\Product\Sections\Qemu;
  3. use ModulesGarden\Servers\ProxmoxCloudVps\App\UI\Admin\Product\Sections\TwiceColumnSection;
  4. use ModulesGarden\Servers\ProxmoxCloudVps\Core\UI\Interfaces\AdminArea;
  5. use ModulesGarden\Servers\ProxmoxCloudVps\Core\UI\Widget\Forms\Fields\Select;
  6. use ModulesGarden\Servers\ProxmoxCloudVps\Core\UI\Widget\Forms\Fields\Switcher;
  7. class ClientAreaSection extends TwiceColumnSection implements AdminArea
  8. {
  9. protected $id = 'clientAreaSection';
  10. protected $name = 'clientAreaSection';
  11. protected $title = 'clientAreaSection';
  12. protected function initFields()
  13. {
  14. //Start
  15. $field = new Switcher('customconfigoption[permissionStart]');
  16. $field->setDescription('tip');
  17. $field->setDefaultValue("on");
  18. $this->addField($field);
  19. //Reboot
  20. $field = new Switcher('customconfigoption[permissionReboot]');
  21. $field->setDescription('tip');
  22. $field->setDefaultValue("on");
  23. $this->addField($field);
  24. //Stop
  25. $field = new Switcher('customconfigoption[permissionStop]');
  26. $field->setDescription('tip');
  27. $field->setDefaultValue("on");
  28. $this->addField($field);
  29. //Shutdown
  30. $field = new Switcher('customconfigoption[permissionShutdown]');
  31. $field->setDescription('tip');
  32. $field->setDefaultValue("on");
  33. $this->addField($field);
  34. //noVNC Console
  35. $field = new Switcher('customconfigoption[permissionNovnc]');
  36. $field->setDescription('tip');
  37. $field->setDefaultValue("on");
  38. $this->addField($field);
  39. //SPICE Console
  40. $field = new Switcher('customconfigoption[permissionSpice]');
  41. $field->setDescription('tip');
  42. $field->setDefaultValue("on");
  43. $this->addField($field);
  44. //xterm.js Console
  45. $field = new Switcher('customconfigoption[permissionXtermjs]');
  46. $field->setDescription('tip');
  47. $this->addField($field);
  48. //Reinstallation
  49. $field = new Switcher('customconfigoption[permissionReinstall]');
  50. $field->setDescription('tip');
  51. $field->setDefaultValue("on");
  52. $this->addField($field);
  53. //KVM Templates
  54. $field = new Switcher('customconfigoption[permissionOsTemplate]');
  55. $field->setDescription('tip');
  56. $field->setDefaultValue("on");
  57. $this->addField($field);
  58. //OS Templates
  59. $field = new Select('customconfigoption[permissionOsTemplates][]');
  60. $field->setDescription('tip');
  61. $field->enableMultiple();
  62. $this->addField($field);
  63. //ISO Images
  64. $field = new Switcher('customconfigoption[permissionIsoImage]');
  65. $field->setDescription('tip');
  66. $this->addField($field);
  67. //ISO Images
  68. $field = new Select('customconfigoption[permissionIsoImages][]');
  69. $field->setDescription('tip');
  70. $field->enableMultiple();
  71. $this->addField($field);
  72. //Secondary ISO Images
  73. $field = new Select('customconfigoption[permissionSecondaryIsoImages][]');
  74. $field->setDescription('tip');
  75. $field->enableMultiple();
  76. $this->addField($field);
  77. //MRTG Graphics
  78. $field = new Switcher('customconfigoption[permissionGraph]');
  79. $field->setDescription('tip');
  80. $field->setDefaultValue("on");
  81. $this->addField($field);
  82. //Backup
  83. $field = new Switcher('customconfigoption[permissionBackup]');
  84. $field->setDescription('tip');
  85. $field->setDefaultValue("on");
  86. $this->addField($field);
  87. //Scheduled Backup Jobs
  88. $field = new Switcher('customconfigoption[permissionBackupJob]');
  89. $field->setDescription('tip');
  90. $field->setDefaultValue("on");
  91. $this->addField($field);
  92. //Task History
  93. $field = new Switcher('customconfigoption[permissionTaskHistory]');
  94. $field->setDescription('tip');
  95. $field->setDefaultValue("on");
  96. $this->addField($field);
  97. //Network
  98. $field = new Switcher('customconfigoption[permissionNetwork]');
  99. $field->setDescription('tip');
  100. $field->setDefaultValue("on");
  101. $this->addField($field);
  102. //Snapshots
  103. $field = new Switcher('customconfigoption[permissionSnapshot]');
  104. $field->setDescription('tip');
  105. $field->setDefaultValue("on");
  106. $this->addField($field);
  107. //Firewall
  108. $field = new Switcher('customconfigoption[permissionFirewall]');
  109. $field->setDescription('tip');
  110. $field->setDefaultValue("on");
  111. $this->addField($field);
  112. //Firewall Options
  113. $field = new Switcher('customconfigoption[permissionFirewallOption]');
  114. $field->setDescription('tip');
  115. $field->setDefaultValue("on");
  116. $this->addField($field);
  117. //Disks Management
  118. $field = new Switcher('customconfigoption[permissionDisk]');
  119. $field->setDescription('tip');
  120. $field->setDefaultValue("on");
  121. $this->addField($field);
  122. //sshkeys
  123. $field = new Switcher('customconfigoption[permissionSshkeys]');
  124. $field->setDescription('tip');
  125. $field->setDefaultValue("on");
  126. $this->addField($field);
  127. //permissionfirewalOptions
  128. $field = new Select("customconfigoption[permissionFirewalOptions][]");
  129. $field->enableMultiple();
  130. $field->setDescription('description');
  131. $this->addField($field);
  132. //customTemplates
  133. $field = new Switcher('customconfigoption[permissionCustomTemplates]');
  134. $field->setDescription('tip');
  135. $field->setDefaultValue("on");
  136. $this->addField($field);
  137. //permissionVcpus
  138. $field = new Switcher('customconfigoption[permissionVcpus]');
  139. $field->setDescription('tip');
  140. $field->setDefaultValue("on");
  141. $this->addField($field);
  142. //permissionSockets
  143. $field = new Switcher('customconfigoption[permissionSockets]');
  144. $field->setDescription('tip');
  145. $field->setDefaultValue("on");
  146. $this->addField($field);
  147. //cores
  148. $field = new Switcher('customconfigoption[permissionCores]');
  149. $field->setDescription('tip');
  150. $field->setDefaultValue("on");
  151. $this->addField($field);
  152. //permissionUpgrade
  153. $field = new Switcher('customconfigoption[permissionUpgrade]');
  154. $field->setDescription('tip');
  155. $field->setDefaultValue("on");
  156. $this->addField($field);
  157. //permissionCpuLimit
  158. $field = new Switcher('customconfigoption[permissionCpuLimit]');
  159. $field->setDescription('tip');
  160. $field->setDefaultValue("on");
  161. $this->addField($field);
  162. //permissionIpv4
  163. $field = new Switcher('customconfigoption[permissionIpv4]');
  164. $field->setDescription('tip');
  165. $field->setDefaultValue("on");
  166. $this->addField($field);
  167. //permissionIpv6
  168. $field = new Switcher('customconfigoption[permissionIpv6]');
  169. $field->setDescription('tip');
  170. $field->setDefaultValue("on");
  171. $this->addField($field);
  172. //virtualNetwork
  173. $field = new Switcher('customconfigoption[permissionVirtualNetwork]');
  174. $field->setDescription('tip');
  175. $field->setDefaultValue("on");
  176. $this->addField($field);
  177. //OsTypes
  178. $field = new Select('customconfigoption[permissionOstype][]');
  179. $field->enableMultiple();
  180. $field->setDescription('tip');
  181. $field->setDefaultValue("l26");
  182. $this->addField($field);
  183. //Locations
  184. $field = new Select('customconfigoption[locations][]');
  185. $field->setDescription('tip');
  186. $field->enableMultiple();
  187. $this->addField($field);
  188. //Service Username
  189. $field = new Switcher('customconfigoption[permissionUsername]');
  190. $field->setDescription('tip');
  191. $field->setDefaultValue("on");
  192. $this->addField($field);
  193. //Service Password
  194. $field = new Switcher('customconfigoption[permissionPassword]');
  195. $field->setDescription('tip');
  196. $field->setDefaultValue("on");
  197. $this->addField($field);
  198. //Service Nameservers
  199. $field = new Switcher('customconfigoption[permissionNameservers]');
  200. $field->setDescription('tip');
  201. $this->addField($field);
  202. //DNS Domain
  203. $field = new Switcher('customconfigoption[permissionSearchdomain]');
  204. $field->setDescription('tip');
  205. $this->addField($field);
  206. //permissionCpuunits
  207. $field = new Switcher('customconfigoption[permissionCpuunits]');
  208. $field->setDescription('tip');
  209. $field->setDefaultValue("on");
  210. $this->addField($field);
  211. //calculate Sockets And Cores
  212. $field = new Switcher('customconfigoption[calculateSocketsAndCores]');
  213. $field->setDescription('tip');
  214. $this->addField($field);
  215. //cloudInitScript
  216. $field = new Select('customconfigoption[cloudInitScript][]');
  217. $field->enableMultiple();
  218. $field->setDescription('tip');
  219. $this->leftSection->addField($field);
  220. //permissionBackupCompress
  221. $field = new Select("customconfigoption[permissionBackupCompress][]");
  222. $field->enableMultiple();
  223. $field->setDescription('description');
  224. $this->addField($field);
  225. //Snapshot Jobs
  226. $field = new Switcher('customconfigoption[permissionSnapshotJob]');
  227. $field->setDescription('tip');
  228. $field->setDefaultValue("on");
  229. $this->addField($field);
  230. //How Often
  231. $field = new Select('customconfigoption[permissionSnapshotJobPeriod][]');
  232. $field->setDescription('tip');
  233. $field->enableMultiple();
  234. $this->addField($field);
  235. //permissionArchive
  236. $field = new Switcher('customconfigoption[permissionArchive]');
  237. $field->setDescription('tip');
  238. $field->setDefaultValue("on");
  239. $this->addField($field);
  240. //archive
  241. $field = new Select('customconfigoption[archive][]');
  242. $field->enableMultiple();
  243. $field->setDescription('tip');
  244. $this->rightSection->addField($field);
  245. }
  246. }