Marius Burkard
2016-04-20 4569cae57f127afd093794310ccd290d2d9fdf36
commit | author | age
7848ce 1 <?php
T 2
3 /*
3f22a4 4   Form Definition
7848ce 5
3f22a4 6   Tabledefinition
7848ce 7
3f22a4 8   Datatypes:
V 9   - INTEGER (Forces the input to Int)
10   - DOUBLE
11   - CURRENCY (Formats the values to currency notation)
12   - VARCHAR (no format check, maxlength: 255)
13   - TEXT (no format check)
14   - DATE (Dateformat, automatic conversion to timestamps)
7848ce 15
3f22a4 16   Formtype:
V 17   - TEXT (Textfield)
18   - TEXTAREA (Textarea)
19   - PASSWORD (Password textfield, input is not shown when edited)
20   - SELECT (Select option field)
21   - RADIO
22   - CHECKBOX
23   - CHECKBOXARRAY
24   - FILE
7848ce 25
3f22a4 26   VALUE:
V 27   - Wert oder Array
7848ce 28
3f22a4 29   Hint:
V 30   The ID field of the database table is not part of the datafield definition.
31   The ID field must be always auto incement (int or bigint).
7848ce 32
T 33
3f22a4 34  */
7848ce 35
3f22a4 36 $form["title"] = "Server Config";
V 37 $form["description"] = "";
38 $form["name"] = "server_config";
39 $form["action"] = "server_config_edit.php";
40 $form["db_table"] = "server";
41 $form["db_table_idx"] = "server_id";
42 $form["db_history"] = "yes";
43 $form["tab_default"] = "server";
44 $form["list_default"] = "server_config_list.php";
45 $form["auth"] = 'yes'; // yes / no
7848ce 46
3f22a4 47 $form["auth_preset"]["userid"] = 0; // 0 = id of the user, > 0 id must match with id of current user
7848ce 48 $form["auth_preset"]["groupid"] = 0; // 0 = default groupid of the user, > 0 id must match with groupid of current user
T 49 $form["auth_preset"]["perm_user"] = 'riud'; //r = read, i = insert, u = update, d = delete
50 $form["auth_preset"]["perm_group"] = 'riud'; //r = read, i = insert, u = update, d = delete
51 $form["auth_preset"]["perm_other"] = ''; //r = read, i = insert, u = update, d = delete
52
3f22a4 53 $form["tabs"]['server'] = array(
V 54     'title' => "Server",
55     'width' => 70,
56     'template' => "templates/server_config_server_edit.htm",
57     'fields' => array(
b1a6a5 58         //#################################
MC 59         // Begin Datatable fields
60         //#################################
3f22a4 61         'auto_network_configuration' => array(
V 62             'datatype' => 'VARCHAR',
63             'formtype' => 'CHECKBOX',
64             'default' => 'n',
65             'value' => array(0 => 'n', 1 => 'y')
e08297 66         ),
3f22a4 67         'ip_address' => array(
V 68             'datatype' => 'VARCHAR',
69             'formtype' => 'TEXT',
70             'default' => '192.168.0.105',
71             'validators' => array(0 => array('type' => 'ISIPV4',
72                     'errmsg' => 'ip_address_error_wrong'),
73             ),
74             'value' => '',
75             'width' => '15',
76             'maxlength' => '255'
7848ce 77         ),
3f22a4 78         'netmask' => array(
V 79             'datatype' => 'VARCHAR',
80             'formtype' => 'TEXT',
81             'default' => '255.255.255.0',
82             'validators' => array(0 => array('type' => 'ISIPV4',
83                     'errmsg' => 'netmask_error_wrong'),
84             ),
85             'value' => '',
bd68aa 86             'width' => '15',
MC 87             'maxlength' => '255'
30fc1b 88         ),
bd68aa 89         'v6_prefix' => array(
MC 90             'datatype' => 'VARCHAR',
91             'formtype' => 'TEXT',
fbeb11 92             'validators' => array(  0 => array('type' => 'ISV6PREFIX',
FS 93                         'errmsg' => 'v6_prefix_wrong'),
94                         1 => array('type' => 'V6PREFIXEND',
95                         'errmsg' => 'v6_prefix_end'),
96                         2 => array('type' => 'V6PREFIXLENGTH',
97                         'errmsg' => 'v6_prefix_length')
b1a6a5 98             ),
MC 99             'default' => ''
30fc1b 100         ),
bd68aa 101         'gateway' => array(
MC 102             'datatype' => 'VARCHAR',
103             'formtype' => 'TEXT',
3f22a4 104             'default' => '192.168.0.1',
V 105             'validators' => array(0 => array('type' => 'ISIPV4',
106                     'errmsg' => 'gateway_error_wrong'),
107             ),
108             'value' => '',
109             'width' => '15',
110             'maxlength' => '255'
7848ce 111         ),
42f191 112         'firewall' => array(
T 113             'datatype' => 'VARCHAR',
114             'formtype' => 'SELECT',
115             'default' => 'bastille',
116             'value' => array('bastille' => 'bastille', 'ufw' => 'ufw'),
117             'width' => '40',
118             'maxlength' => '255'
119         ),
3f22a4 120         'hostname' => array(
V 121             'datatype' => 'VARCHAR',
122             'formtype' => 'TEXT',
123             'default' => 'server1.domain.tld',
bd68aa 124             'filters'   => array( 0 => array( 'event' => 'SAVE',
b1a6a5 125                     'type' => 'IDNTOASCII'),
MC 126                 1 => array( 'event' => 'SHOW',
127                     'type' => 'IDNTOUTF8'),
128                 2 => array( 'event' => 'SAVE',
129                     'type' => 'TOLOWER')
130             ),
a43eb3 131             'validators' => array(    0 => array('type' => 'NOTEMPTY',
TB 132                                                 'errmsg' => 'hostname_error_empty'),
133                                     1 => array ('type' => 'REGEX',
134                                                 'regex' => '/^[\w\.\-]{2,255}\.[a-zA-Z0-9\-]{2,30}$/',
135                                                 'errmsg'=> 'hostname_error_regex'),
3f22a4 136             ),
V 137             'value' => '',
138             'width' => '40',
139             'maxlength' => '255'
7848ce 140         ),
3f22a4 141         'nameservers' => array(
V 142             'datatype' => 'VARCHAR',
143             'formtype' => 'TEXT',
144             'default' => '192.168.0.1,192.168.0.2',
145             'validators' => array(0 => array('type' => 'NOTEMPTY',
146                     'errmsg' => 'nameservers_error_empty'),
147             ),
148             'value' => '',
149             'width' => '40',
150             'maxlength' => '255'
7848ce 151         ),
3f22a4 152         'loglevel' => array(
V 153             'datatype' => 'INTEGER',
154             'formtype' => 'SELECT',
155             'default' => '2',
156             'value' => array('0' => 'Debug', '1' => 'Warnings', '2' => 'Errors'),
157             'width' => '40',
158             'maxlength' => '255'
db0a6f 159         ),
615a0a 160         'admin_notify_events' => array(
T 161             'datatype' => 'INTEGER',
162             'formtype' => 'SELECT',
163             'default' => '1',
164             'value' => array('3' => 'no_notifications_txt', '0' => 'Debug', '1' => 'Warnings', '2' => 'Errors'),
165             'width' => '40',
166             'maxlength' => '255'
167         ),
3f22a4 168         'backup_dir' => array(
V 169             'datatype' => 'VARCHAR',
170             'formtype' => 'TEXT',
171             'default' => '/var/backup',
b48a0b 172             'validators' => array(    0 => array (     'type' => 'REGEX',
5ca959 173                                         'regex' => "/(|^\\/{1,2}(?:[\\w-]+[.]?\\/?){5,128})$/",
e98a15 174                                         'errmsg'=> 'backup_dir_error_regex'),
3f22a4 175             ),
V 176             'value' => '',
177             'width' => '40',
178             'maxlength' => '255'
c4085b 179         ),
056465 180         'backup_dir_is_mount' => array(
FT 181             'datatype' => 'VARCHAR',
182             'formtype' => 'CHECKBOX',
d5f2d5 183             'default' => 'y',
056465 184             'value' => array(0 => 'n', 1 => 'y')
FT 185         ),
5a43e7 186         'backup_mode' => array(
d12a90 187             'datatype' => 'VARCHAR',
5a43e7 188             'formtype' => 'SELECT',
T 189             'default' => 'userzip',
190             'value' => array('userzip' => 'backup_mode_userzip', 'rootgz' => 'backup_mode_rootgz'),
615a0a 191             'width' => '40',
T 192             'maxlength' => '255'
193         ),
d22277 194         'backup_time' => array(
MB 195             'datatype' => 'VARCHAR',
196             'formtype' => 'SELECT',
197             'default' => '0:00',
198             'value' => array(    '0:00' => '0:00h',
199                                 '0:15' => '0:15h',
200                                 '0:30' => '0:30h',
201                                 '0:45' => '0:45h',
202                                 '1:00' => '1:00h',
203                                 '1:15' => '1:15h',
204                                 '1:30' => '1:30h',
205                                 '1:45' => '1:45h',
206                                 '2:00' => '2:00h',
207                                 '2:15' => '2:15h',
208                                 '2:30' => '2:30h',
209                                 '2:45' => '2:45h',
210                                 '3:00' => '3:00h',
211                                 '3:15' => '3:15h',
212                                 '3:30' => '3:30h',
213                                 '3:45' => '3:45h',
214                                 '4:00' => '4:00h',
215                                 '4:15' => '4:15h',
216                                 '4:30' => '4:30h',
217                                 '4:45' => '4:45h',
218                                 '5:00' => '5:00h',
219                                 '5:15' => '5:15h',
220                                 '5:30' => '5:30h',
221                                 '5:45' => '5:45h',
222                                 '6:00' => '6:00h',
223                                 '6:15' => '6:15h',
224                                 '6:30' => '6:30h',
225                                 '6:45' => '6:45h',
226                                 '7:00' => '7:00h',
227                                 '7:15' => '7:15h',
228                                 '7:30' => '7:30h',
229                                 '7:45' => '7:45h',
230                                 '8:00' => '8:00h',
231                                 '8:15' => '8:15h',
232                                 '8:30' => '8:30h',
233                                 '8:45' => '8:45h',
234                                 '9:00' => '9:00h',
235                                 '9:15' => '9:15h',
236                                 '9:30' => '9:30h',
237                                 '9:45' => '9:45h',
238                                 '10:00' => '10:00h',
239                                 '10:15' => '10:15h',
240                                 '10:30' => '10:30h',
241                                 '10:45' => '10:45h',
242                                 '11:00' => '11:00h',
243                                 '11:15' => '11:15h',
244                                 '11:30' => '11:30h',
245                                 '11:45' => '11:45h',
246                                 '12:00' => '12:00h',
247                                 '12:15' => '12:15h',
248                                 '12:30' => '12:30h',
249                                 '12:45' => '12:45h',
250                                 '13:00' => '13:00h',
251                                 '13:15' => '13:15h',
252                                 '13:30' => '13:30h',
253                                 '13:45' => '13:45h',
254                                 '14:00' => '14:00h',
255                                 '14:15' => '14:15h',
256                                 '14:30' => '14:30h',
257                                 '14:45' => '14:45h',
258                                 '15:00' => '15:00h',
259                                 '15:15' => '15:15h',
260                                 '15:30' => '15:30h',
261                                 '15:45' => '15:45h',
262                                 '16:00' => '16:00h',
263                                 '16:15' => '16:15h',
264                                 '16:30' => '16:30h',
265                                 '16:45' => '16:45h',
266                                 '17:00' => '17:00h',
267                                 '17:15' => '17:15h',
268                                 '17:30' => '17:30h',
269                                 '17:45' => '17:45h',
270                                 '18:00' => '18:00h',
271                                 '18:15' => '18:15h',
272                                 '18:30' => '18:30h',
273                                 '18:45' => '18:45h',
274                                 '19:00' => '19:00h',
275                                 '19:15' => '19:15h',
276                                 '19:30' => '19:30h',
277                                 '19:45' => '19:45h',
278                                 '20:00' => '20:00h',
279                                 '20:15' => '20:15h',
280                                 '20:30' => '20:30h',
281                                 '20:45' => '20:45h',
282                                 '21:00' => '21:00h',
283                                 '21:15' => '21:15h',
284                                 '21:30' => '21:30h',
285                                 '21:45' => '21:45h',
286                                 '22:00' => '22:00h',
287                                 '22:15' => '22:15h',
288                                 '22:30' => '22:30h',
289                                 '22:45' => '22:45h',
290                                 '23:00' => '23:00h',
291                                 '23:15' => '23:15h',
292                                 '23:30' => '23:30h',
293                                 '23:45' => '23:45h',
294                                 ),
295             'width' => '40',
296             'maxlength' => '255'
297         ),
a81238 298         'backup_delete' => array(
FS 299             'datatype' => 'VARCHAR',
300             'formtype' => 'CHECKBOX',
301             'default' => 'y',
302             'value' => array(0 => 'n', 1 => 'y')
303         ),
615a0a 304         'monit_url' => array(
T 305             'datatype' => 'VARCHAR',
306             'formtype' => 'TEXT',
307             'default' => '',
b1a6a5 308             'validators' => array ( 0 => array ( 'type' => 'REGEX',
MC 309                     'regex' => '/^[0-9a-zA-Z\:\/\-\.\[\]]{0,255}$/',
310                     'errmsg'=> 'monit_url_error_regex'),
311             ),
615a0a 312             'value' => '',
T 313             'width' => '40',
314             'maxlength' => '255'
315         ),
316         'monit_user' => array(
317             'datatype' => 'VARCHAR',
318             'formtype' => 'TEXT',
319             'default' => '',
320             'value' => '',
321             'width' => '40',
322             'maxlength' => '255'
323         ),
324         'monit_password' => array(
325             'datatype' => 'VARCHAR',
326             'formtype' => 'TEXT',
327             'default' => '',
328             'value' => '',
329             'width' => '40',
330             'maxlength' => '255'
331         ),
332         'munin_url' => array(
333             'datatype' => 'VARCHAR',
334             'formtype' => 'TEXT',
335             'default' => '',
b1a6a5 336             'validators' => array ( 0 => array ( 'type' => 'REGEX',
MC 337                     'regex' => '/^[0-9a-zA-Z\:\/\-\.\[\]]{0,255}$/',
338                     'errmsg'=> 'munin_url_error_regex'),
339             ),
615a0a 340             'value' => '',
T 341             'width' => '40',
342             'maxlength' => '255'
343         ),
344         'munin_user' => array(
345             'datatype' => 'VARCHAR',
346             'formtype' => 'TEXT',
347             'default' => '',
348             'value' => '',
349             'width' => '40',
350             'maxlength' => '255'
351         ),
352         'munin_password' => array(
353             'datatype' => 'VARCHAR',
354             'formtype' => 'TEXT',
355             'default' => '',
356             'value' => '',
5a43e7 357             'width' => '40',
T 358             'maxlength' => '255'
d12a90 359         ),
82ff62 360         'monitor_system_updates' => array(
TB 361             'datatype' => 'VARCHAR',
362             'formtype' => 'CHECKBOX',
363             'default' => 'y',
364             'value' => array(0 => 'n', 1 => 'y')
365         ),
b1a6a5 366         //#################################
MC 367         // ENDE Datatable fields
368         //#################################
7848ce 369     )
T 370 );
371
3f22a4 372 $form["tabs"]['mail'] = array(
V 373     'title' => "Mail",
374     'width' => 60,
375     'template' => "templates/server_config_mail_edit.htm",
376     'fields' => array(
b1a6a5 377         //#################################
MC 378         // Begin Datatable fields
379         //#################################
3f22a4 380         'module' => array(
V 381             'datatype' => 'VARCHAR',
382             'formtype' => 'SELECT',
383             'default' => '',
384             'value' => array('postfix_mysql' => 'postfix_mysql')
7848ce 385         ),
3f22a4 386         'maildir_path' => array(
V 387             'datatype' => 'VARCHAR',
388             'formtype' => 'TEXT',
389             'default' => '/home/vmail/[domain]/[localpart]/',
e98a15 390             'validators' => array(    0 => array('type' => 'NOTEMPTY',
TB 391                                         'errmsg' => 'maildir_path_error_empty'),
392                                     1 => array (     'type' => 'REGEX',
393                                         'regex' => '/^\/[a-zA-Z0-9\.\-\_\/\[\]]{5,128}$/',
394                                         'errmsg'=> 'maildir_path_error_regex'),
3f22a4 395             ),
V 396             'value' => '',
397             'width' => '40',
398             'maxlength' => '255'
7848ce 399         ),
f339eb 400         'maildir_format' => array(
D 401             'datatype' => 'VARCHAR',
402             'formtype' => 'SELECT',
403             'default' => '20',
404             'value' => array('maildir' => 'Maildir', 'mdbox' => 'mdbox')
405         ),
3f22a4 406         'homedir_path' => array(
V 407             'datatype' => 'VARCHAR',
408             'formtype' => 'TEXT',
409             'default' => '/home/vmail/',
e98a15 410             'validators' => array(    0 => array('type' => 'NOTEMPTY',
TB 411                                         'errmsg' => 'homedir_path_error_empty'),
412                                     1 => array (     'type' => 'REGEX',
413                                         'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/',
414                                         'errmsg'=> 'homedir_path_error_regex'),
3f22a4 415             ),
V 416             'value' => '',
417             'width' => '40',
418             'maxlength' => '255'
7848ce 419         ),
b1a6a5 420         'dkim_path' => array(
MC 421             'datatype' => 'VARCHAR',
422             'formtype' => 'TEXT',
423             'default' => '/var/lib/amavis/dkim',
424             'value' => '',
425             'width' => '40',
426             'maxlength' => '255'
427         ),
c943b4 428         'dkim_strength' => array(
FS 429             'datatype' => 'INTEGER',
430             'formtype' => 'SELECT',
7255ec 431             'default' => '2048',
024e13 432             'value' => array('1024' => 'weak (1024)', '2048' => 'normal (2048)', '4096' => 'strong (4096)')
c943b4 433         ),
64b2a9 434         'relayhost_password' => array(
F 435             'datatype' => 'VARCHAR',
436             'formtype' => 'TEXT',
437             'default' => '',
438             'value' => '',
439             'width' => '40',
440             'maxlength' => '255'
441         ),
442
3f22a4 443         'pop3_imap_daemon' => array(
V 444             'datatype' => 'VARCHAR',
445             'formtype' => 'SELECT',
446             'default' => '20',
447             'value' => array('courier' => 'Courier', 'dovecot' => 'Dovecot')
6cc49f 448         ),
3f22a4 449         'mail_filter_syntax' => array(
V 450             'datatype' => 'VARCHAR',
451             'formtype' => 'SELECT',
452             'default' => '20',
453             'value' => array('maildrop' => 'Maildrop', 'sieve' => 'Sieve')
6cc49f 454         ),
3f22a4 455         'mailuser_uid' => array(
V 456             'datatype' => 'INTEGER',
457             'formtype' => 'TEXT',
458             'default' => '5000',
e98a15 459             'validators' => array(    0 => array('type' => 'NOTEMPTY',
TB 460                                         'errmsg' => 'mailuser_uid_error_empty'),
461                                     1 => array('type' => 'RANGE',
462                                         'range' => '1999:',
463                                         'errmsg' => 'mailuser_uid_error_range'),
3f22a4 464             ),
V 465             'value' => '',
466             'width' => '10',
467             'maxlength' => '255'
7848ce 468         ),
3f22a4 469         'mailuser_gid' => array(
V 470             'datatype' => 'INTEGER',
471             'formtype' => 'TEXT',
472             'default' => '5000',
e98a15 473             'validators' => array(    0 => array('type' => 'NOTEMPTY',
TB 474                                         'errmsg' => 'mailuser_gid_error_empty'),
475                                     1 => array('type' => 'RANGE',
476                                         'range' => '1999:',
477                                         'errmsg' => 'mailuser_gid_error_range'),
3f22a4 478             ),
V 479             'value' => '',
480             'width' => '10',
481             'maxlength' => '255'
7848ce 482         ),
3f22a4 483         'mailuser_name' => array(
V 484             'datatype' => 'VARCHAR',
485             'formtype' => 'TEXT',
486             'default' => 'vmail',
e98a15 487             'validators' => array(    0 => array('type' => 'NOTEMPTY',
TB 488                                         'errmsg' => 'mailuser_name_error_empty'),
489                                     1 => array (     'type' => 'REGEX',
490                                         'regex' => '/^(?!ispconfig|root)([a-zA-Z0-9]{1,20})$/',
491                                         'errmsg'=> 'mailuser_name_error_regex'),
3f22a4 492             ),
V 493             'value' => '',
494             'width' => '10',
495             'maxlength' => '255'
7848ce 496         ),
3f22a4 497         'mailuser_group' => array(
V 498             'datatype' => 'VARCHAR',
499             'formtype' => 'TEXT',
500             'default' => 'vmail',
e98a15 501             'validators' => array(    0 => array('type' => 'NOTEMPTY',
TB 502                                         'errmsg' => 'mailuser_group_error_empty'),
503                                     1 => array (     'type' => 'REGEX',
504                                         'regex' => '/^(?!ispconfig|root)([a-zA-Z0-9]{1,20})$/',
505                                         'errmsg'=> 'mailuser_group_name_error_regex'),
3f22a4 506             ),
V 507             'value' => '',
508             'width' => '10',
509             'maxlength' => '255'
7848ce 510         ),
185457 511         'mailbox_virtual_uidgid_maps' => array(
62995a 512             'datatype' => 'VARCHAR',
DM 513             'formtype' => 'CHECKBOX',
d7480c 514             'validators' => array (0 => array ( 'type' => 'CUSTOM',
DM 515                     'class' => 'validate_server_mail_config',
516                     'function' => 'mailbox_virtual_uidgid_maps'),
517             ),
62995a 518             'default' => 'n',
DM 519             'value' => array(0 => 'n', 1 => 'y')
185457 520         ),
3f22a4 521         'relayhost' => array(
V 522             'datatype' => 'VARCHAR',
523             'formtype' => 'TEXT',
524             'default' => '',
525             'value' => '',
526             'width' => '40',
527             'maxlength' => '255'
7848ce 528         ),
3f22a4 529         'relayhost_user' => array(
V 530             'datatype' => 'VARCHAR',
531             'formtype' => 'TEXT',
532             'default' => '',
533             'value' => '',
534             'width' => '40',
535             'maxlength' => '255'
7848ce 536         ),
3f22a4 537         'relayhost_password' => array(
V 538             'datatype' => 'VARCHAR',
539             'formtype' => 'TEXT',
540             'default' => '',
541             'value' => '',
542             'width' => '40',
543             'maxlength' => '255'
7848ce 544         ),
03b633 545         'reject_sender_login_mismatch' => array (
D 546             'datatype' => 'VARCHAR',
547             'formtype' => 'CHECKBOX',
548             'default' => 'n',
549             'value' => array(0 => 'n', 1 => 'y')
550         ),
3f22a4 551         'mailbox_size_limit' => array(
V 552             'datatype' => 'INTEGER',
553             'formtype' => 'TEXT',
554             'default' => '0',
555             'value' => '',
556             'width' => '10',
557             'maxlength' => '15'
7848ce 558         ),
3f22a4 559         'message_size_limit' => array(
V 560             'datatype' => 'INTEGER',
561             'formtype' => 'TEXT',
562             'default' => '0',
563             'value' => '',
564             'width' => '10',
565             'maxlength' => '15'
7848ce 566         ),
9db567 567         'mailbox_quota_stats' => array (
T 568             'datatype' => 'VARCHAR',
569             'formtype' => 'CHECKBOX',
570             'default' => 'y',
b1a6a5 571             'value' => array(0 => 'n', 1 => 'y')
9db567 572         ),
a296ae 573         'realtime_blackhole_list' => array(
M 574             'datatype' => 'VARCHAR',
575             'formtype' => 'TEXT',
576             'default' => '',
b1a6a5 577             'validators' => array (  0 => array ( 'type' => 'REGEX',
MC 578                     'regex' => '/^((([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\-]*[a-zA-Z0-9])\.)+([A-Za-z0-9]|[A-Za-z0-9][A-Za-z0-9\-]*[A-Za-z0-9])(,\s*(([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\-]*[a-zA-Z0-9])\.)+([A-Za-z0-9]|[A-Za-z0-9][A-Za-z0-9\-]*[A-Za-z0-9]))*)?$/',
579                     'errmsg'=> 'rbl_error_regex'),
580             ),
a296ae 581             'value' => '',
M 582             'width' => '40',
583             'maxlength' => '255'
584         ),
615a0a 585         'overquota_notify_admin' => array(
a126d7 586             'datatype' => 'VARCHAR',
615a0a 587             'formtype' => 'CHECKBOX',
T 588             'default' => 'y',
589             'value' => array(0 => 'n', 1 => 'y')
590         ),
591         'overquota_notify_client' => array(
592             'datatype' => 'VARCHAR',
593             'formtype' => 'CHECKBOX',
594             'default' => 'y',
595             'value' => array(0 => 'n', 1 => 'y')
596         ),
597         'overquota_notify_freq' => array(
598             'datatype' => 'INTEGER',
a126d7 599             'formtype' => 'TEXT',
615a0a 600             'default' => '7',
a126d7 601             'value' => '',
bd68aa 602             'width' => '20',
MC 603             'maxlength' => '255'
615a0a 604         ),
T 605         'overquota_notify_onok' => array(
606             'datatype' => 'VARCHAR',
607             'formtype' => 'CHECKBOX',
608             'default' => 'n',
609             'value' => array(0 => 'n', 1 => 'y')
a126d7 610         ),
b1a6a5 611         //#################################
MC 612         // ENDE Datatable fields
613         //#################################
7848ce 614     )
T 615 );
616
3f22a4 617 $form["tabs"]['getmail'] = array(
V 618     'title' => "Getmail",
619     'width' => 80,
620     'template' => "templates/server_config_getmail_edit.htm",
621     'fields' => array(
b1a6a5 622         //#################################
MC 623         // Begin Datatable fields
624         //#################################
3f22a4 625         'getmail_config_dir' => array(
V 626             'datatype' => 'VARCHAR',
627             'formtype' => 'TEXT',
628             'default' => '',
e98a15 629             'validators' => array(    0 => array('type' => 'NOTEMPTY',
TB 630                                         'errmsg' => 'getmail_config_dir_error_empty'),
631                                     1 => array (     'type' => 'REGEX',
632                                         'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/',
633                                         'errmsg'=> 'getmail_config_dir_error_regex'),
3f22a4 634             ),
V 635             'value' => '',
636             'width' => '40',
637             'maxlength' => '255'
7848ce 638         ),
b1a6a5 639         //#################################
MC 640         // ENDE Datatable fields
641         //#################################
7848ce 642     )
T 643 );
644
3f22a4 645 $form["tabs"]['web'] = array(
V 646     'title' => "Web",
647     'width' => 60,
648     'template' => "templates/server_config_web_edit.htm",
649     'fields' => array(
b1a6a5 650         //#################################
MC 651         // Begin Datatable fields
652         //#################################
0ae8da 653         'server_type' => array(
F 654             'datatype' => 'VARCHAR',
655             'formtype' => 'SELECT',
656             'default' => 'apache',
4ffb51 657             'value' => array('apache' => 'Apache', 'nginx' => 'Nginx')
0ae8da 658         ),
3f22a4 659         'website_basedir' => array(
V 660             'datatype' => 'VARCHAR',
661             'formtype' => 'TEXT',
662             'default' => '',
e98a15 663             'validators' => array(    0 => array('type' => 'NOTEMPTY',
TB 664                                         'errmsg' => 'website_basedir_error_empty'),
665                                     1 => array (     'type' => 'REGEX',
666                                         'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/',
667                                         'errmsg'=> 'website_basedir_error_regex'),
3f22a4 668             ),
V 669             'value' => '',
670             'width' => '40',
671             'maxlength' => '255'
fb3749 672         ),
3f22a4 673         'website_path' => array(
V 674             'datatype' => 'VARCHAR',
675             'formtype' => 'TEXT',
676             'default' => '',
e98a15 677             'validators' => array(    0 => array(    'type' => 'NOTEMPTY',
TB 678                                         'errmsg' => 'website_path_error_empty'),
679                                     1 => array (     'type' => 'REGEX',
680                                         'regex' => '/^\/[a-zA-Z0-9\.\-\_\/\[\]]{5,128}$/',
681                                         'errmsg'=> 'website_path_error_regex'),
3f22a4 682             ),
V 683             'value' => '',
684             'width' => '40',
685             'maxlength' => '255'
7848ce 686         ),
3f22a4 687         'website_symlinks' => array(
V 688             'datatype' => 'VARCHAR',
689             'formtype' => 'TEXT',
690             'default' => '',
e98a15 691             'validators' => array(    0 => array('type' => 'NOTEMPTY',
TB 692                                         'errmsg' => 'website_symlinks_error_empty'),
693                                     1 => array (     'type' => 'REGEX',
694                                         'regex' => '/^\/[a-zA-Z0-9\.\-\_\/\[\]\:]{5,128}$/',
695                                         'errmsg'=> 'website_symlinks_error_regex'),
3f22a4 696             ),
V 697             'value' => '',
698             'width' => '40',
699             'maxlength' => '255'
7848ce 700         ),
552178 701         'website_symlinks_rel' => array (
M 702             'datatype' => 'VARCHAR',
703             'formtype' => 'CHECKBOX',
704             'default' => 'n',
7fe908 705             'value' => array(0 => 'n', 1 => 'y')
552178 706         ),
074a57 707         'network_filesystem' => array (
3f22a4 708             'datatype' => 'VARCHAR',
V 709             'formtype' => 'CHECKBOX',
710             'default' => 'n',
b1a6a5 711             'value' => array(0 => 'n', 1 => 'y')
3f22a4 712         ),
3501f9 713         'website_autoalias' => array(
M 714             'datatype' => 'VARCHAR',
715             'formtype' => 'TEXT',
716             'default' => '',
717             'value' => '',
bd68aa 718             'width' => '40',
MC 719             'maxlength' => '255'
720         ),
14dff2 721         'vhost_rewrite_v6' => array (
FS 722             'datatype' => 'VARCHAR',
723             'formtype' => 'CHECKBOX',
724             'default' => 'n',
725             'value' => array(0 => 'n',1 => 'y')
726         ),
bd68aa 727         'vhost_conf_dir' => array(
MC 728             'datatype' => 'VARCHAR',
729             'formtype' => 'TEXT',
3f22a4 730             'default' => '',
e98a15 731             'validators' => array(    0 => array('type' => 'NOTEMPTY',
TB 732                                         'errmsg' => 'vhost_conf_dir_error_empty'),
733                                     1 => array (     'type' => 'REGEX',
734                                         'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/',
735                                         'errmsg'=> 'vhost_conf_dir_error_regex'),
3f22a4 736             ),
V 737             'value' => '',
738             'width' => '40',
739             'maxlength' => '255'
7848ce 740         ),
3f22a4 741         'vhost_conf_enabled_dir' => array(
V 742             'datatype' => 'VARCHAR',
743             'formtype' => 'TEXT',
744             'default' => '',
e98a15 745             'validators' => array(    0 => array('type' => 'NOTEMPTY',
TB 746                                         'errmsg' => 'vhost_conf_enabled_dir_error_empty'),
747                                     1 => array (     'type' => 'REGEX',
748                                         'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/',
749                                         'errmsg'=> 'vhost_conf_enabled_dir_error_regex'),
0ae8da 750             ),
F 751             'value' => '',
752             'width' => '40',
753             'maxlength' => '255'
754         ),
755         'nginx_vhost_conf_dir' => array(
756             'datatype' => 'VARCHAR',
757             'formtype' => 'TEXT',
758             'default' => '',
e98a15 759             'validators' => array(    0 => array('type' => 'NOTEMPTY',
TB 760                                         'errmsg' => 'nginx_vhost_conf_dir_error_empty'),
761                                     1 => array (     'type' => 'REGEX',
762                                         'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/',
763                                         'errmsg'=> 'nginx_vhost_conf_dir_error_regex'),
0ae8da 764             ),
F 765             'value' => '',
766             'width' => '40',
767             'maxlength' => '255'
768         ),
769         'nginx_vhost_conf_enabled_dir' => array(
770             'datatype' => 'VARCHAR',
771             'formtype' => 'TEXT',
772             'default' => '',
e98a15 773             'validators' => array(    0 => array('type' => 'NOTEMPTY',
TB 774                                         'errmsg' => 'nginx_vhost_conf_enabled_dir_error_empty'),
775                                     1 => array (     'type' => 'REGEX',
776                                         'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/',
777                                         'errmsg'=> 'nginx_vhost_conf_enabled_dir_error_regex'),
3f22a4 778             ),
V 779             'value' => '',
780             'width' => '40',
781             'maxlength' => '255'
7848ce 782         ),
892f21 783         'CA_path' => array(
L 784             'datatype' => 'VARCHAR',
785             'formtype' => 'TEXT',
e98a15 786             'validators' => array(    0 => array (     'type' => 'REGEX',
TB 787                                         'regex' => '/^[a-zA-Z0-9\.\-\_\/]{0,128}$/',
788                                         'errmsg'=> 'ca_path_error_regex'),
789             ),
892f21 790             'default' => '',
L 791             'value' => '',
792             'width' => '40',
793             'maxlength' => '255'
794         ),
795         'CA_pass' => array(
796             'datatype' => 'VARCHAR',
797             'formtype' => 'TEXT',
798             'default' => '',
799             'value' => '',
800             'width' => '40',
801             'maxlength' => '255'
802         ),
3f22a4 803         'security_level' => array(
V 804             'datatype' => 'VARCHAR',
805             'formtype' => 'SELECT',
806             'default' => '20',
807             'value' => array('10' => 'Medium', '20' => 'High')
6b029a 808         ),
8cf78b 809         'set_folder_permissions_on_update' => array(
T 810             'datatype' => 'VARCHAR',
811             'formtype' => 'CHECKBOX',
a505fd 812             'default' => 'n',
8cf78b 813             'value' => array(0 => 'n', 1 => 'y')
T 814         ),
4b9329 815         'web_folder_protection' => array(
T 816             'datatype' => 'VARCHAR',
817             'formtype' => 'CHECKBOX',
818             'default' => 'y',
819             'value' => array(0 => 'n', 1 => 'y')
820         ),
8cf78b 821         'add_web_users_to_sshusers_group' => array(
T 822             'datatype' => 'VARCHAR',
823             'formtype' => 'CHECKBOX',
824             'default' => 'y',
825             'value' => array(0 => 'n', 1 => 'y')
826         ),
3f22a4 827         'check_apache_config' => array(
V 828             'datatype' => 'VARCHAR',
829             'formtype' => 'CHECKBOX',
830             'default' => 'y',
831             'value' => array(0 => 'n', 1 => 'y')
7ed741 832         ),
d81a4c 833         'enable_sni' => array(
T 834             'datatype' => 'VARCHAR',
835             'formtype' => 'CHECKBOX',
836             'default' => 'y',
837             'value' => array(0 => 'n', 1 => 'y')
838         ),
02384b 839         'enable_ip_wildcard' => array(
T 840             'datatype' => 'VARCHAR',
841             'formtype' => 'CHECKBOX',
842             'default' => 'y',
843             'value' => array(0 => 'n', 1 => 'y')
844         ),
df76de 845         'overtraffic_notify_admin' => array(
T 846             'datatype' => 'VARCHAR',
847             'formtype' => 'CHECKBOX',
848             'default' => 'y',
849             'value' => array(0 => 'n', 1 => 'y')
850         ),
851         'overtraffic_notify_client' => array(
852             'datatype' => 'VARCHAR',
853             'formtype' => 'CHECKBOX',
854             'default' => 'y',
855             'value' => array(0 => 'n', 1 => 'y')
856         ),
615a0a 857         'overquota_notify_admin' => array(
T 858             'datatype' => 'VARCHAR',
859             'formtype' => 'CHECKBOX',
860             'default' => 'y',
861             'value' => array(0 => 'n', 1 => 'y')
862         ),
863         'overquota_notify_client' => array(
864             'datatype' => 'VARCHAR',
865             'formtype' => 'CHECKBOX',
866             'default' => 'y',
867             'value' => array(0 => 'n', 1 => 'y')
868         ),
0543b2 869         'overquota_db_notify_admin' => array(
F 870             'datatype' => 'VARCHAR',
871             'formtype' => 'CHECKBOX',
872             'default' => 'y',
873             'value' => array(0 => 'n', 1 => 'y')
874         ),
875         'overquota_db_notify_client' => array(
876             'datatype' => 'VARCHAR',
877             'formtype' => 'CHECKBOX',
878             'default' => 'y',
879             'value' => array(0 => 'n', 1 => 'y')
880         ),
615a0a 881         'overquota_notify_freq' => array(
T 882             'datatype' => 'INTEGER',
883             'formtype' => 'TEXT',
884             'default' => '7',
885             'value' => '',
bd68aa 886             'width' => '20',
MC 887             'maxlength' => '255'
615a0a 888         ),
T 889         'overquota_notify_onok' => array(
890             'datatype' => 'VARCHAR',
891             'formtype' => 'CHECKBOX',
892             'default' => 'n',
893             'value' => array(0 => 'n', 1 => 'y')
894         ),
3f22a4 895         'user' => array(
V 896             'datatype' => 'VARCHAR',
897             'formtype' => 'TEXT',
898             'default' => '',
899             'validators' => array(0 => array('type' => 'NOTEMPTY',
900                     'errmsg' => 'apache_user_error_empty'),
e98a15 901                     1 => array(
TB 902                             'type' => 'CUSTOM',
903                             'class' => 'validate_systemuser',
904                             'function' => 'check_sysuser',
905                             'check_names' => false,
906                             'errmsg' => 'invalid_apache_user_txt'
907                         ),
3f22a4 908             ),
V 909             'value' => '',
910             'width' => '40',
911             'maxlength' => '255'
6b029a 912         ),
3f22a4 913         'group' => array(
V 914             'datatype' => 'VARCHAR',
915             'formtype' => 'TEXT',
916             'default' => '',
917             'validators' => array(0 => array('type' => 'NOTEMPTY',
918                     'errmsg' => 'apache_group_error_empty'),
e98a15 919                     1 => array(
TB 920                             'type' => 'CUSTOM',
921                             'class' => 'validate_systemuser',
922                             'function' => 'check_sysgroup',
923                             'check_names' => false,
924                             'errmsg' => 'invalid_apache_group_txt'
925                         ),
3f22a4 926             ),
V 927             'value' => '',
928             'width' => '40',
929             'maxlength' => '255'
6b029a 930         ),
8cf78b 931         'connect_userid_to_webid' => array(
T 932             'datatype' => 'VARCHAR',
933             'formtype' => 'CHECKBOX',
934             'default' => 'n',
935             'value' => array(0 => 'n', 1 => 'y')
936         ),
937         'connect_userid_to_webid_start' => array(
938             'datatype' => 'VARCHAR',
939             'formtype' => 'TEXT',
940             'default' => '10000',
941             'validators' => array(0 => array('type' => 'ISINT',
942                     'errmsg' => 'connect_userid_to_webid_startid_isint'),
943             ),
944             'value' => '',
945             'width' => '40',
946             'maxlength' => '255'
947         ),
4ffb51 948         'nginx_user' => array(
F 949             'datatype' => 'VARCHAR',
950             'formtype' => 'TEXT',
951             'default' => '',
e98a15 952             'validators' => array(    0 => array('type' => 'NOTEMPTY',
TB 953                                         'errmsg' => 'nginx_user_error_empty'),
954                                     1 => array(
955                             'type' => 'CUSTOM',
956                             'class' => 'validate_systemuser',
957                             'function' => 'check_sysuser',
958                             'check_names' => false,
959                             'errmsg' => 'invalid_nginx_user_txt'
960                         ),
4ffb51 961             ),
F 962             'value' => '',
963             'width' => '40',
964             'maxlength' => '255'
965         ),
966         'nginx_group' => array(
967             'datatype' => 'VARCHAR',
968             'formtype' => 'TEXT',
969             'default' => '',
e98a15 970             'validators' => array(    0 => array('type' => 'NOTEMPTY',
TB 971                                         'errmsg' => 'nginx_group_error_empty'),
972                                     1 => array(
973                             'type' => 'CUSTOM',
974                             'class' => 'validate_systemuser',
975                             'function' => 'check_sysgroup',
976                             'check_names' => false,
977                             'errmsg' => 'invalid_nginx_group_txt'
978                         ),
4ffb51 979             ),
F 980             'value' => '',
981             'width' => '40',
982             'maxlength' => '255'
983         ),
3f22a4 984         'php_ini_path_apache' => array(
V 985             'datatype' => 'VARCHAR',
986             'formtype' => 'TEXT',
987             'default' => '',
e98a15 988             'validators' => array(    0 => array('type' => 'NOTEMPTY',
TB 989                                         'errmsg' => 'php_ini_path_apache_error_empty'),
990                                     1 => array (     'type' => 'REGEX',
991                                         'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/',
992                                         'errmsg'=> 'php_ini_path_apache_error_regex'),
3f22a4 993             ),
V 994             'value' => '',
995             'width' => '40',
996             'maxlength' => '255'
7fddfe 997         ),
3f22a4 998         'php_ini_path_cgi' => array(
V 999             'datatype' => 'VARCHAR',
1000             'formtype' => 'TEXT',
1001             'default' => '',
e98a15 1002             'validators' => array(    0 => array('type' => 'NOTEMPTY',
TB 1003                                         'errmsg' => 'php_ini_path_cgi_error_empty'),
1004                                     1 => array (     'type' => 'REGEX',
1005                                         'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/',
1006                                         'errmsg'=> 'php_ini_path_cgi_error_regex'),
3f22a4 1007             ),
V 1008             'value' => '',
1009             'width' => '40',
1010             'maxlength' => '255'
7fddfe 1011         ),
4ffb51 1012         'php_fpm_init_script' => array(
F 1013             'datatype' => 'VARCHAR',
1014             'formtype' => 'TEXT',
1015             'default' => '',
e98a15 1016             'validators' => array(    0 => array('type' => 'NOTEMPTY',
TB 1017                                         'errmsg' => 'php_fpm_init_script_error_empty'),
1018                                     1 => array (     'type' => 'REGEX',
1019                                         'regex' => '/^[a-zA-Z0-9\.\-\_]{1,128}$/',
1020                                         'errmsg'=> 'php_fpm_init_script_error_regex'),
4ffb51 1021             ),
F 1022             'value' => '',
1023             'width' => '40',
1024             'maxlength' => '255'
1025         ),
1026         'php_fpm_ini_path' => array(
1027             'datatype' => 'VARCHAR',
1028             'formtype' => 'TEXT',
1029             'default' => '',
e98a15 1030             'validators' => array(    0 => array('type' => 'NOTEMPTY',
TB 1031                                         'errmsg' => 'php_fpm_ini_path_error_empty'),
1032                                     1 => array (     'type' => 'REGEX',
1033                                         'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/',
1034                                         'errmsg'=> 'php_fpm_ini_path_error_regex'),
4ffb51 1035             ),
F 1036             'value' => '',
1037             'width' => '40',
1038             'maxlength' => '255'
1039         ),
1040         'php_fpm_pool_dir' => array(
1041             'datatype' => 'VARCHAR',
1042             'formtype' => 'TEXT',
1043             'default' => '',
e98a15 1044             'validators' => array(    0 => array('type' => 'NOTEMPTY',
TB 1045                                         'errmsg' => 'php_fpm_pool_dir_error_empty'),
1046                                     1 => array (     'type' => 'REGEX',
1047                                         'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/',
1048                                         'errmsg'=> 'php_fpm_pool_dir_error_regex'),
4ffb51 1049             ),
F 1050             'value' => '',
1051             'width' => '40',
1052             'maxlength' => '255'
1053         ),
1054         'php_fpm_start_port' => array(
1055             'datatype' => 'VARCHAR',
1056             'formtype' => 'TEXT',
1057             'default' => '',
e98a15 1058             'validators' => array(0 => array('type' => 'ISPOSITIVE',
4ffb51 1059                     'errmsg' => 'php_fpm_start_port_error_empty'),
F 1060             ),
1061             'value' => '',
1062             'width' => '40',
1063             'maxlength' => '255'
1064         ),
72ce78 1065         'php_fpm_socket_dir' => array(
F 1066             'datatype' => 'VARCHAR',
1067             'formtype' => 'TEXT',
1068             'default' => '',
e98a15 1069             'validators' => array(    0 => array('type' => 'NOTEMPTY',
TB 1070                                         'errmsg' => 'php_fpm_socket_dir_error_empty'),
1071                                     1 => array (     'type' => 'REGEX',
1072                                         'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/',
1073                                         'errmsg'=> 'php_fpm_socket_dir_error_regex'),
72ce78 1074             ),
F 1075             'value' => '',
1076             'width' => '40',
1077             'maxlength' => '255'
1078         ),
3f22a4 1079         'php_open_basedir' => array(
V 1080             'datatype' => 'VARCHAR',
1081             'formtype' => 'TEXT',
1082             'default' => '',
e98a15 1083             'validators' => array(    0 => array('type' => 'NOTEMPTY',
TB 1084                                         'errmsg' => 'php_open_basedir_error_empty'),
1085                                     1 => array (     'type' => 'REGEX',
1086                                         'regex' => '/^[a-zA-Z0-9\.\-\_\/\]\[\:]{1,}$/',
1087                                         'errmsg'=> 'php_open_basedir_error_regex'),
3f22a4 1088             ),
V 1089             'value' => '',
1090             'width' => '40',
0ae8da 1091             'maxlength' => '4000'
bd68aa 1092         ),
MC 1093         'php_ini_check_minutes' => array(
1094             'datatype' => 'INTEGER',
1095             'formtype' => 'TEXT',
1096             'default' => '1',
1097             'validators' => array(0 => array('type' => 'NOTEMPTY',
1098                     'errmsg' => 'php_ini_check_minutes_error_empty'),
1099             ),
1100             'value' => '',
1101             'width' => '10',
1102             'maxlength' => '255'
3ee39b 1103         ),
3245aa 1104         'php_handler' => array(
SC 1105             'datatype' => 'VARCHAR',
1106             'formtype' => 'SELECT',
1107             'default' => 'fast-cgi',
a4a4ea 1108             'value' => array('no' => 'disabled_txt', 'fast-cgi' => 'Fast-CGI', 'cgi' => 'CGI', 'mod' => 'Mod-PHP', 'suphp' => 'SuPHP', 'php-fpm' => 'PHP-FPM', 'hhvm' => 'HHVM'),
3245aa 1109             'searchable' => 2
SC 1110         ),
4ffb51 1111         'nginx_cgi_socket' => array(
F 1112             'datatype' => 'VARCHAR',
1113             'formtype' => 'TEXT',
1114             'default' => '',
e98a15 1115             'validators' => array(    0 => array('type' => 'NOTEMPTY',
TB 1116                                         'errmsg' => 'nginx_cgi_socket_empty'),
1117                                     1 => array (     'type' => 'REGEX',
1118                                         'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{1,128}$/',
1119                                         'errmsg'=> 'nginx_cgi_socket_error_regex'),
4ffb51 1120             ),
F 1121             'value' => '',
1122             'width' => '40',
1123             'maxlength' => '255'
1124         ),
3f22a4 1125         'htaccess_allow_override' => array(
V 1126             'datatype' => 'VARCHAR',
1127             'formtype' => 'TEXT',
1128             'default' => '',
e98a15 1129             'validators' => array(    0 => array('type' => 'NOTEMPTY',
TB 1130                                         'errmsg' => 'htaccess_allow_override_error_empty'),
3f22a4 1131             ),
V 1132             'value' => '',
1133             'width' => '40',
1134             'maxlength' => '255'
c8cf71 1135         ),
f7ec00 1136         'enable_spdy' => array (
PA 1137             'datatype' => 'VARCHAR',
1138             'formtype' => 'CHECKBOX',
024e13 1139             'default'  => 'y',
f7ec00 1140             'value' => array (
PA 1141                 0 => 'n',
1142                 1 => 'y'
1143             )
1144         ),
1dbd0e 1145         'apps_vhost_enabled' => array (
FS 1146             'datatype' => 'VARCHAR',
1147             'formtype' => 'CHECKBOX',
1148             'default'  => 'y',
1149             'value' => array (0 => 'n', 1 => 'y')
1150         ),
3f22a4 1151         'apps_vhost_port' => array(
V 1152             'datatype' => 'VARCHAR',
1153             'formtype' => 'TEXT',
1154             'default' => '8081',
1155             'validators' => array(0 => array('type' => 'NOTEMPTY',
1156                     'errmsg' => 'apps_vhost_port_error_empty'),
1157             ),
1158             'value' => '',
1159             'width' => '40',
1160             'maxlength' => '255'
c9b9f2 1161         ),
3f22a4 1162         'apps_vhost_ip' => array(
V 1163             'datatype' => 'VARCHAR',
1164             'formtype' => 'TEXT',
1165             'default' => '_default_',
1166             'validators' => array(0 => array('type' => 'NOTEMPTY',
1167                     'errmsg' => 'apps_vhost_ip_error_empty'),
1168             ),
1169             'value' => '',
1170             'width' => '40',
1171             'maxlength' => '255'
c9b9f2 1172         ),
3f22a4 1173         'apps_vhost_servername' => array(
V 1174             'datatype' => 'VARCHAR',
1175             'formtype' => 'TEXT',
1176             'default' => '',
1177             'value' => '',
1178             'width' => '40',
1179             'maxlength' => '255'
c9b9f2 1180         ),
3f22a4 1181         'awstats_conf_dir' => array(
V 1182             'datatype' => 'VARCHAR',
1183             'formtype' => 'TEXT',
1184             'default' => '',
1185             'value' => '',
1186             'width' => '40',
1187             'maxlength' => '255'
379a4b 1188         ),
3f22a4 1189         'awstats_data_dir' => array(
V 1190             'datatype' => 'VARCHAR',
1191             'formtype' => 'TEXT',
e98a15 1192             'validators' => array(    0 => array('type' => 'NOTEMPTY',
TB 1193                                         'errmsg' => 'awstats_data_dir_empty'),
1194                                     1 => array (     'type' => 'REGEX',
1195                                         'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{1,128}$/',
1196                                         'errmsg'=> 'awstats_data_dir_error_regex'),
1197             ),
3f22a4 1198             'default' => '',
V 1199             'value' => '',
1200             'width' => '40',
1201             'maxlength' => '255'
379a4b 1202         ),
3f22a4 1203         'awstats_pl' => array(
V 1204             'datatype' => 'VARCHAR',
1205             'formtype' => 'TEXT',
e98a15 1206             'validators' => array(    0 => array('type' => 'NOTEMPTY',
TB 1207                                         'errmsg' => 'awstats_pl_empty'),
1208                                     1 => array (     'type' => 'REGEX',
1209                                         'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{1,128}$/',
1210                                         'errmsg'=> 'awstats_pl_error_regex'),
1211             ),
3f22a4 1212             'default' => '',
V 1213             'value' => '',
1214             'width' => '40',
1215             'maxlength' => '255'
379a4b 1216         ),
3f22a4 1217         'awstats_buildstaticpages_pl' => array(
V 1218             'datatype' => 'VARCHAR',
1219             'formtype' => 'TEXT',
e98a15 1220             'validators' => array(    0 => array('type' => 'NOTEMPTY',
TB 1221                                         'errmsg' => 'awstats_buildstaticpages_pl_empty'),
1222                                     1 => array (     'type' => 'REGEX',
1223                                         'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{1,128}$/',
1224                                         'errmsg'=> 'awstats_buildstaticpages_pl_error_regex'),
1225             ),
3f22a4 1226             'default' => '',
V 1227             'value' => '',
1228             'width' => '40',
1229             'maxlength' => '255'
379a4b 1230         ),
b1a6a5 1231         //#################################
MC 1232         // ENDE Datatable fields
1233         //#################################
7848ce 1234     )
T 1235 );
1236
3f22a4 1237 $form["tabs"]['dns'] = array(
V 1238     'title' => "DNS",
1239     'width' => 60,
1240     'template' => "templates/server_config_dns_edit.htm",
1241     'fields' => array(
b1a6a5 1242         //#################################
MC 1243         // Begin Datatable fields
1244         //#################################
3f22a4 1245         'bind_user' => array(
V 1246             'datatype' => 'VARCHAR',
1247             'formtype' => 'TEXT',
1248             'default' => '',
e98a15 1249             'validators' => array(    0 => array('type' => 'NOTEMPTY',
TB 1250                                         'errmsg' => 'bind_user_error_empty'),
1251                                     1 => array (     'type' => 'REGEX',
1252                                         'regex' => '/^(?!ispconfig)([a-zA-Z0-9]{1,20})$/',
1253                                         'errmsg'=> 'invalid_bind_user_txt'),
3f22a4 1254             ),
V 1255             'value' => '',
1256             'width' => '40',
1257             'maxlength' => '255'
7dbea0 1258         ),
3f22a4 1259         'bind_group' => array(
V 1260             'datatype' => 'VARCHAR',
1261             'formtype' => 'TEXT',
1262             'default' => '',
e98a15 1263             'validators' => array(    0 => array('type' => 'NOTEMPTY',
TB 1264                                         'errmsg' => 'bind_group_error_empty'),
1265                                     1 => array (     'type' => 'REGEX',
1266                                         'regex' => '/^(?!ispconfig)([a-zA-Z0-9]{1,20})$/',
1267                                         'errmsg'=> 'invalid_bind_group_txt'),
3f22a4 1268             ),
V 1269             'value' => '',
1270             'width' => '40',
1271             'maxlength' => '255'
7dbea0 1272         ),
3f22a4 1273         'bind_zonefiles_dir' => array(
V 1274             'datatype' => 'VARCHAR',
1275             'formtype' => 'TEXT',
1276             'default' => '',
e98a15 1277             'validators' => array(    0 => array('type' => 'NOTEMPTY',
TB 1278                                         'errmsg' => 'bind_zonefiles_dir_error_empty'),
1279                                     1 => array (     'type' => 'REGEX',
1280                                         'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{1,128}$/',
1281                                         'errmsg'=> 'bind_zonefiles_dir_error_regex'),
3f22a4 1282             ),
V 1283             'value' => '',
1284             'width' => '40',
1285             'maxlength' => '255'
7dbea0 1286         ),
3f22a4 1287         'named_conf_path' => array(
V 1288             'datatype' => 'VARCHAR',
1289             'formtype' => 'TEXT',
1290             'default' => '',
e98a15 1291             'validators' => array(    0 => array('type' => 'NOTEMPTY',
TB 1292                                         'errmsg' => 'named_conf_path_error_empty'),
1293                                     1 => array (     'type' => 'REGEX',
1294                                         'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{1,128}$/',
1295                                         'errmsg'=> 'named_conf_path_error_regex'),
3f22a4 1296             ),
V 1297             'value' => '',
1298             'width' => '40',
1299             'maxlength' => '255'
7dbea0 1300         ),
3f22a4 1301         'named_conf_local_path' => array(
V 1302             'datatype' => 'VARCHAR',
1303             'formtype' => 'TEXT',
1304             'default' => '',
e98a15 1305             'validators' => array(    0 => array('type' => 'NOTEMPTY',
TB 1306                                         'errmsg' => 'named_conf_local_path_error_empty'),
1307                                     1 => array (     'type' => 'REGEX',
1308                                         'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{1,128}$/',
1309                                         'errmsg'=> 'named_conf_local_path_error_regex'),
3f22a4 1310             ),
V 1311             'value' => '',
1312             'width' => '40',
1313             'maxlength' => '255'
7dbea0 1314         ),
3fa443 1315         'disable_bind_log' => array (
FS 1316             'datatype' => 'VARCHAR',
1317             'formtype' => 'CHECKBOX',
1318             'default' => 'n',
1319             'value' => array(0 => 'n', 1 => 'y')
1320         ),
b1a6a5 1321         //#################################
MC 1322         // ENDE Datatable fields
1323         //#################################
7dbea0 1324     )
T 1325 );
1326
3f22a4 1327 $form["tabs"]['fastcgi'] = array(
V 1328     'title' => "FastCGI",
1329     'width' => 80,
1330     'template' => "templates/server_config_fastcgi_edit.htm",
1331     'fields' => array(
b1a6a5 1332         //#################################
MC 1333         // Begin Datatable fields
1334         //#################################
3f22a4 1335         'fastcgi_starter_path' => array(
V 1336             'datatype' => 'VARCHAR',
1337             'formtype' => 'TEXT',
1338             'default' => '',
e98a15 1339             'validators' => array(    0 => array('type' => 'NOTEMPTY',
TB 1340                                         'errmsg' => 'fastcgi_starter_path_error_empty'),
1341                                     1 => array (     'type' => 'REGEX',
1342                                         'regex' => '/^\/[a-zA-Z0-9\.\-\_\/\[\]]{1,128}$/',
1343                                         'errmsg'=> 'fastcgi_starter_path_error_regex'),
3f22a4 1344             ),
V 1345             'value' => '',
1346             'width' => '40',
1347             'maxlength' => '255'
7848ce 1348         ),
3f22a4 1349         'fastcgi_starter_script' => array(
V 1350             'datatype' => 'VARCHAR',
1351             'formtype' => 'TEXT',
1352             'default' => '',
e98a15 1353             'validators' => array(    0 => array('type' => 'NOTEMPTY',
TB 1354                                         'errmsg' => 'fastcgi_starter_script_error_empty'),
1355                                     1 => array (     'type' => 'REGEX',
1356                                         'regex' => '/^[a-zA-Z0-9\.\-\_\/]{1,128}$/',
1357                                         'errmsg'=> 'fastcgi_starter_script_error_regex'),
3f22a4 1358             ),
V 1359             'value' => '',
1360             'width' => '40',
1361             'maxlength' => '255'
7848ce 1362         ),
3f22a4 1363         'fastcgi_alias' => array(
V 1364             'datatype' => 'VARCHAR',
1365             'formtype' => 'TEXT',
1366             'default' => '',
e98a15 1367             'validators' => array(    0 => array('type' => 'NOTEMPTY',
TB 1368                                         'errmsg' => 'fastcgi_alias_error_empty'),
1369                                     1 => array (     'type' => 'REGEX',
1370                                         'regex' => '/^[a-zA-Z0-9\.\-\_\/]{1,128}$/',
1371                                         'errmsg'=> 'fastcgi_alias_error_regex'),
3f22a4 1372             ),
V 1373             'value' => '',
1374             'width' => '40',
1375             'maxlength' => '255'
7848ce 1376         ),
3f22a4 1377         'fastcgi_phpini_path' => array(
V 1378             'datatype' => 'VARCHAR',
1379             'formtype' => 'TEXT',
1380             'default' => '',
e98a15 1381             'validators' => array(    0 => array('type' => 'NOTEMPTY',
TB 1382                                         'errmsg' => 'fastcgi_phpini_path_error_empty'),
1383                                     1 => array (     'type' => 'REGEX',
1384                                         'regex' => '/^\/[a-zA-Z0-9\.\-\_\/\[\]]{1,128}$/',
1385                                         'errmsg'=> 'fastcgi_phpini_path_error_regex'),
3f22a4 1386             ),
V 1387             'value' => '',
1388             'width' => '40',
1389             'maxlength' => '255'
7848ce 1390         ),
3f22a4 1391         'fastcgi_children' => array(
V 1392             'datatype' => 'VARCHAR',
1393             'formtype' => 'TEXT',
1394             'default' => '',
e98a15 1395             'validators' => array(0 => array('type' => 'ISPOSITIVE',
3f22a4 1396                     'errmsg' => 'fastcgi_children_error_empty'),
V 1397             ),
1398             'value' => '',
1399             'width' => '40',
1400             'maxlength' => '255'
7848ce 1401         ),
3f22a4 1402         'fastcgi_max_requests' => array(
V 1403             'datatype' => 'VARCHAR',
1404             'formtype' => 'TEXT',
1405             'default' => '',
b1a6a5 1406             'validators' => array( 0 => array( 'type' => 'ISINT',
MC 1407                     'errmsg' => 'fastcgi_max_requests_error_empty'),
1408                 1 => array( 'type' => 'RANGE',
1409                     'range' => '0:',
1410                     'errmsg' => 'fastcgi_max_requests_error_empty'),
3f22a4 1411             ),
V 1412             'value' => '',
1413             'width' => '40',
1414             'maxlength' => '255'
7848ce 1415         ),
3f22a4 1416         'fastcgi_bin' => array(
V 1417             'datatype' => 'VARCHAR',
1418             'formtype' => 'TEXT',
1419             'default' => '',
e98a15 1420             'validators' => array(    0 => array('type' => 'NOTEMPTY',
TB 1421                                         'errmsg' => 'fastcgi_bin_error_empty'),
1422                                     1 => array (     'type' => 'REGEX',
1423                                         'regex' => '/^\/[a-zA-Z0-9\.\-\_\/\[\]]{1,128}$/',
1424                                         'errmsg'=> 'fastcgi_bin_error_regex'),
3f22a4 1425             ),
V 1426             'value' => '',
1427             'width' => '40',
1428             'maxlength' => '255'
7848ce 1429         ),
824780 1430         'fastcgi_config_syntax' => array(
T 1431             'datatype' => 'INTEGER',
1432             'formtype' => 'SELECT',
1433             'default' => '2',
8fe84f 1434             'value' => array('1' => 'Old (apache 2.0)', '2' => 'New (apache 2.2)'),
824780 1435             'width' => '40',
T 1436             'maxlength' => '255'
1437         ),
b1a6a5 1438         //#################################
MC 1439         // ENDE Datatable fields
1440         //#################################
7848ce 1441     )
T 1442 );
1443
1444
9f94a1 1445 $form["tabs"]['xmpp'] = array(
MF 1446     'title' => "XMPP",
1447     'width' => 80,
1448     'template' => "templates/server_config_xmpp_edit.htm",
1449     'fields' => array(
1450         //#################################
1451         // Begin Datatable fields
1452         //#################################
1453         'xmpp_use_ipv6' => array(
1454             'datatype' => 'VARCHAR',
1455             'formtype' => 'CHECKBOX',
1456             'default' => 'n',
1457             'value' => array(0 => 'n', 1 => 'y')
1458         ),
1459         'xmpp_bosh_max_inactivity' => array(
1460             'datatype' => 'VARCHAR',
1461             'formtype' => 'TEXT',
1462             'default' => '30',
1463             'validators' => array(0 => array('type' => 'ISINT',
1464                 'errmsg' => 'ip_address_error_wrong'),
1465                 array('type'=>'RANGE', 'range'=>'15:360', 'errmsg' => 'xmpp_bosh_timeout_range_wrong')
1466             ),
1467             'value' => '',
1468             'width' => '15'
1469         ),
1470
1471         'xmpp_server_admins' => array(
1472             'datatype' => 'VARCHAR',
1473             'formtype' => 'TEXT',
1474             'default' => 'admin@service.com, superuser@service.com',
1475             'value' => '',
1476             'width' => '15'
1477         ),
1478
1479         'xmpp_modules_enabled' => array(
1480             'datatype' => 'TEXT',
1481             'formtype' => 'TEXT',
1482             'default' => "saslauth, tls, dialback, disco, discoitems, version, uptime, time, ping, admin_adhoc, admin_telnet, bosh, posix, announce, offline, webpresence, mam, stream_management, message_carbons",
1483             'value' => '',
1484             'separator' => ","
1485         ),
1486
1487         'xmpp_port_http' => array(
1488             'datatype' => 'VARCHAR',
1489             'formtype' => 'TEXT',
1490             'default' => '5290',
1491             'validators' => array(0 => array('type' => 'ISINT')),
1492             'value' => '5290',
1493             'width' => '15'
1494         ),
1495         'xmpp_port_https' => array(
1496             'datatype' => 'VARCHAR',
1497             'formtype' => 'TEXT',
1498             'default' => '5291',
1499             'validators' => array(0 => array('type' => 'ISINT')),
1500             'value' => '5291',
1501             'width' => '15'
1502         ),
1503         'xmpp_port_pastebin' => array(
1504             'datatype' => 'VARCHAR',
1505             'formtype' => 'TEXT',
1506             'default' => '5292',
1507             'validators' => array(0 => array('type' => 'ISINT')),
1508             'value' => '5292',
1509             'width' => '15'
1510         ),
1511         'xmpp_port_bosh' => array(
1512             'datatype' => 'VARCHAR',
1513             'formtype' => 'TEXT',
1514             'default' => '5280',
1515             'validators' => array(0 => array('type' => 'ISINT')),
1516             'value' => '5280',
1517             'width' => '15'
1518         ),
1519         //#################################
1520         // ENDE Datatable fields
1521         //#################################
1522     )
1523 );
1524
3f22a4 1525 $form["tabs"]['jailkit'] = array(
V 1526     'title' => "Jailkit",
1527     'width' => 80,
1528     'template' => "templates/server_config_jailkit_edit.htm",
1529     'fields' => array(
b1a6a5 1530         //#################################
MC 1531         // Begin Datatable fields
1532         //#################################
3f22a4 1533         'jailkit_chroot_home' => array(
V 1534             'datatype' => 'VARCHAR',
1535             'formtype' => 'TEXT',
1536             'default' => '',
e98a15 1537             'validators' => array(    0 => array('type' => 'NOTEMPTY',
TB 1538                                         'errmsg' => 'jailkit_chroot_home_error_empty'),
1539                                     1 => array (     'type' => 'REGEX',
1540                                         'regex' => '/^\/[a-zA-Z0-9\.\-\_\/\[\]]{1,128}$/',
1541                                         'errmsg'=> 'jailkit_chroot_home_error_regex'),
3f22a4 1542             ),
V 1543             'value' => '',
1544             'width' => '40',
1545             'maxlength' => '255'
7848ce 1546         ),
3f22a4 1547         'jailkit_chroot_app_sections' => array(
V 1548             'datatype' => 'VARCHAR',
1549             'formtype' => 'TEXT',
1550             'default' => '',
e98a15 1551             'validators' => array(    0 => array('type' => 'NOTEMPTY',
TB 1552                                         'errmsg' => 'jailkit_chroot_app_sections_error_empty'),
1553                                     1 => array (     'type' => 'REGEX',
1554                                         'regex' => '/^[a-zA-Z0-9\-\_\ ]{1,128}$/',
1555                                         'errmsg'=> 'jailkit_chroot_app_sections_error_regex'),
3f22a4 1556             ),
V 1557             'value' => '',
1558             'width' => '40',
1559             'maxlength' => '1000'
7848ce 1560         ),
3f22a4 1561         'jailkit_chroot_app_programs' => array(
V 1562             'datatype' => 'VARCHAR',
1563             'formtype' => 'TEXT',
1564             'default' => '',
e98a15 1565             'validators' => array(    0 => array('type' => 'NOTEMPTY',
TB 1566                                         'errmsg' => 'jailkit_chroot_app_programs_error_empty'),
1567                                     1 => array (     'type' => 'REGEX',
1568                                         'regex' => '/^[a-zA-Z0-9\.\-\_\/\ ]{1,}$/',
1569                                         'errmsg'=> 'jailkit_chroot_app_programs_error_regex'),
3f22a4 1570             ),
V 1571             'value' => '',
1572             'width' => '40',
1573             'maxlength' => '1000'
7848ce 1574         ),
3f22a4 1575         'jailkit_chroot_cron_programs' => array(
V 1576             'datatype' => 'VARCHAR',
1577             'formtype' => 'TEXT',
1578             'default' => '',
e98a15 1579             'validators' => array(    0 => array('type' => 'NOTEMPTY',
TB 1580                                         'errmsg' => 'jailkit_chroot_cron_programs_error_empty'),
1581                                     1 => array (     'type' => 'REGEX',
1582                                         'regex' => '/^[a-zA-Z0-9\.\-\_\/\ ]{1,}$/',
1583                                         'errmsg'=> 'jailkit_chroot_cron_programs_error_regex'),
3f22a4 1584             ),
V 1585             'value' => '',
1586             'width' => '40',
1587             'maxlength' => '1000'
1588         ),
b1a6a5 1589         //#################################
MC 1590         // ENDE Datatable fields
1591         //#################################
7848ce 1592     )
T 1593 );
1594
8458c0 1595 /*
80e3c9 1596 $form["tabs"]['ufw_firewall'] = array (
T 1597     'title'     => "UFW Firewall",
1598     'width'     => 80,
1599     'template'     => "templates/server_config_ufw_edit.htm",
1600     'fields'     => array (
1601     ##################################
1602     # Begin Datatable fields
1603     ##################################
1604         'ufw_enable' => array (
1605             'datatype'    => 'VARCHAR',
1606             'formtype'    => 'CHECKBOX',
1607             'default'    => 'no',
1608             'value'        => array(0 => 'no',1 => 'yes')
1609         ),
1610         'ufw_manage_builtins' => array (
1611             'datatype'    => 'VARCHAR',
1612             'formtype'    => 'CHECKBOX',
1613             'default'    => 'no',
1614             'value'        => array(0 => 'no',1 => 'yes')
1615         ),
1616         'ufw_ipv6' => array (
1617             'datatype'    => 'VARCHAR',
1618             'formtype'    => 'CHECKBOX',
1619             'default'    => 'no',
1620             'value'        => array(0 => 'no',1 => 'yes')
1621         ),
1622         'ufw_default_input_policy' => array (
1623             'datatype'    => 'VARCHAR',
1624             'formtype'    => 'SELECT',
1625             'default'    => 'ACCEPT',
1626             'value'        => array('ACCEPT' => 'accept', 'DROP' => 'drop', 'REJECT' => 'reject')
1627         ),
1628         'ufw_default_output_policy' => array (
1629             'datatype'    => 'VARCHAR',
1630             'formtype'    => 'SELECT',
1631             'default'    => 'ACCEPT',
1632             'value'        => array('ACCEPT' => 'accept', 'DROP' => 'drop', 'REJECT' => 'reject')
1633         ),
1634         'ufw_default_forward_policy' => array (
1635             'datatype'    => 'VARCHAR',
1636             'formtype'    => 'SELECT',
1637             'default'    => 'ACCEPT',
1638             'value'        => array('ACCEPT' => 'accept', 'DROP' => 'drop', 'REJECT' => 'reject')
1639         ),
1640         'ufw_default_application_policy' => array (
1641             'datatype'    => 'VARCHAR',
1642             'formtype'    => 'SELECT',
1643             'default'    => 'DROP',
1644             'value'        => array('ACCEPT' => 'accept', 'DROP' => 'drop', 'REJECT' => 'reject')
1645         ),
1646         'ufw_log_level' => array (
1647             'datatype'    => 'VARCHAR',
1648             'formtype'    => 'SELECT',
1649             'default'    => 'low',
1650             'value'        => array('low' => 'low', 'medium' => 'medium', 'high' => 'high')
1651         )
1652     ##################################
1653     # ENDE Datatable fields
1654     ##################################
1655     )
1656 );
8458c0 1657 */
7848ce 1658
3f22a4 1659 $form["tabs"]['vlogger'] = array(
V 1660     'title' => "vlogger",
1661     'width' => 80,
1662     'template' => "templates/server_config_vlogger_edit.htm",
1663     'fields' => array(
b1a6a5 1664         //#################################
MC 1665         // Begin Datatable fields
1666         //#################################
3f22a4 1667         'config_dir' => array(
V 1668             'datatype' => 'VARCHAR',
1669             'formtype' => 'TEXT',
1670             'default' => '',
e98a15 1671             'validators' => array(    0 => array('type' => 'NOTEMPTY',
TB 1672                                         'errmsg' => 'vlogger_config_dir_error_empty'),
1673                                     1 => array (     'type' => 'REGEX',
1674                                         'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{1,128}$/',
1675                                         'errmsg'=> 'vlogger_config_dir_error_regex'),
3f22a4 1676             ),
V 1677             'value' => '',
1678             'width' => '40',
1679             'maxlength' => '255'
1680         ),
b1a6a5 1681         //#################################
MC 1682         // ENDE Datatable fields
1683         //#################################
3f22a4 1684     )
0b0dc9 1685 );
7848ce 1686
T 1687
1688
3f22a4 1689 $form["tabs"]['cron'] = array(
V 1690     'title' => "Cron",
1691     'width' => 80,
1692     'template' => "templates/server_config_cron_edit.htm",
1693     'fields' => array(
b1a6a5 1694         //#################################
MC 1695         // Begin Datatable fields
1696         //#################################
3f22a4 1697         'init_script' => array(
V 1698             'datatype' => 'VARCHAR',
1699             'formtype' => 'TEXT',
1700             'default' => '',
e98a15 1701             'validators' => array(    0 => array('type' => 'NOTEMPTY',
TB 1702                                         'errmsg' => 'cron_init_script_error_empty'),
1703                                     1 => array (     'type' => 'REGEX',
1704                                         'regex' => '/^[a-zA-Z0-9\-\_]{1,30}$/',
1705                                         'errmsg'=> 'cron_init_script_error_regex'),
3f22a4 1706             ),
V 1707             'value' => '',
1708             'width' => '40',
1709             'maxlength' => '255'
1710         ),
1711         'crontab_dir' => array(
1712             'datatype' => 'VARCHAR',
1713             'formtype' => 'TEXT',
1714             'default' => '',
e98a15 1715             'validators' => array(    0 => array('type' => 'NOTEMPTY',
TB 1716                                         'errmsg' => 'crontab_dir_error_empty'),
1717                                     1 => array (     'type' => 'REGEX',
1718                                         'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{1,128}$/',
1719                                         'errmsg'=> 'crontab_dir_error_regex'),
3f22a4 1720             ),
V 1721             'value' => '',
1722             'width' => '40',
1723             'maxlength' => '255'
1724         ),
1725         'wget' => array(
1726             'datatype' => 'VARCHAR',
1727             'formtype' => 'TEXT',
1728             'default' => '',
e98a15 1729             'validators' => array(    0 => array('type' => 'NOTEMPTY',
TB 1730                                         'errmsg' => 'cron_wget_error_empty'),
1731                                     1 => array (     'type' => 'REGEX',
1732                                         'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{1,128}$/',
1733                                         'errmsg'=> 'cron_wget_error_regex'),
3f22a4 1734             ),
V 1735             'value' => '',
1736             'width' => '40',
1737             'maxlength' => '255'
1738         ),
b1a6a5 1739         //#################################
MC 1740         // ENDE Datatable fields
1741         //#################################
3f22a4 1742     )
0b0dc9 1743 );
7848ce 1744
3f22a4 1745 $form["tabs"]['rescue'] = array(
V 1746     'title' => "Rescue",
1747     'width' => 80,
1748     'template' => "templates/server_config_rescue_edit.htm",
1749     'fields' => array(
b1a6a5 1750         //#################################
MC 1751         // Begin Datatable fields
1752         //#################################
3f22a4 1753         'try_rescue' => array(
V 1754             'datatype' => 'VARCHAR',
1755             'formtype' => 'CHECKBOX',
1756             'default' => 'n',
1757             'value' => array(0 => 'n', 1 => 'y')
1758         ),
8ab3cd 1759         'do_not_try_rescue_httpd' => array(
2332b2 1760             'datatype' => 'VARCHAR',
T 1761             'formtype' => 'CHECKBOX',
1762             'default' => 'n',
1763             'value' => array(0 => 'n', 1 => 'y')
1764         ),
bd68aa 1765         'do_not_try_rescue_mongodb' => array(
MC 1766             'datatype' => 'VARCHAR',
1767             'formtype' => 'CHECKBOX',
1768             'default' => 'n',
1769             'value' => array(0 => 'n', 1 => 'y')
1770         ),
3f22a4 1771         'do_not_try_rescue_mysql' => array(
V 1772             'datatype' => 'VARCHAR',
1773             'formtype' => 'CHECKBOX',
1774             'default' => 'n',
1775             'value' => array(0 => 'n', 1 => 'y')
1776         ),
1777         'do_not_try_rescue_mail' => array(
1778             'datatype' => 'VARCHAR',
1779             'formtype' => 'CHECKBOX',
1780             'default' => 'n',
1781             'value' => array(0 => 'n', 1 => 'y')
1782         ),
b1a6a5 1783         //#################################
MC 1784         // ENDE Datatable fields
1785         //#################################
3f22a4 1786     )
V 1787 );
892f21 1788 ?>