From f7ec00b2f8ba3efc5bdeacef9c813f8a826ae3be Mon Sep 17 00:00:00 2001
From: Patrick Anders <p.anders@timmehosting.de>
Date: Wed, 10 Dec 2014 08:44:26 -0500
Subject: [PATCH] add Spdy option - http://en.wikipedia.org/wiki/SPDY
---
interface/web/admin/form/server_config.tform.php | 418 +++++++++++++++++++++++++++++++++++++++++++++--------------
1 files changed, 318 insertions(+), 100 deletions(-)
diff --git a/interface/web/admin/form/server_config.tform.php b/interface/web/admin/form/server_config.tform.php
index 5b270c6..209a0a4 100644
--- a/interface/web/admin/form/server_config.tform.php
+++ b/interface/web/admin/form/server_config.tform.php
@@ -128,8 +128,11 @@
2 => array( 'event' => 'SAVE',
'type' => 'TOLOWER')
),
- 'validators' => array(0 => array('type' => 'NOTEMPTY',
- 'errmsg' => 'hostname_error_empty'),
+ 'validators' => array( 0 => array('type' => 'NOTEMPTY',
+ 'errmsg' => 'hostname_error_empty'),
+ 1 => array ('type' => 'REGEX',
+ 'regex' => '/^[\w\.\-]{2,255}\.[a-zA-Z0-9\-]{2,30}$/',
+ 'errmsg'=> 'hostname_error_regex'),
),
'value' => '',
'width' => '40',
@@ -166,8 +169,11 @@
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'default' => '/var/backup',
- 'validators' => array(0 => array('type' => 'NOTEMPTY',
- 'errmsg' => 'backup_dir_error_empty'),
+ 'validators' => array( 0 => array('type' => 'NOTEMPTY',
+ 'errmsg' => 'backup_dir_error_empty'),
+ 1 => array ( 'type' => 'REGEX',
+ 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/',
+ 'errmsg'=> 'backup_dir_error_regex'),
),
'value' => '',
'width' => '40',
@@ -178,14 +184,6 @@
'formtype' => 'CHECKBOX',
'default' => 'n',
'value' => array(0 => 'n', 1 => 'y')
- ),
- 'backup_dir_mount_cmd' => array(
- 'datatype' => 'VARCHAR',
- 'formtype' => 'TEXT',
- 'default' => '',
- 'value' => '',
- 'width' => '40',
- 'maxlength' => '255'
),
'backup_mode' => array(
'datatype' => 'VARCHAR',
@@ -257,6 +255,12 @@
'width' => '40',
'maxlength' => '255'
),
+ 'monitor_system_updates' => array(
+ 'datatype' => 'VARCHAR',
+ 'formtype' => 'CHECKBOX',
+ 'default' => 'y',
+ 'value' => array(0 => 'n', 1 => 'y')
+ ),
//#################################
// ENDE Datatable fields
//#################################
@@ -281,8 +285,11 @@
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'default' => '/home/vmail/[domain]/[localpart]/',
- 'validators' => array(0 => array('type' => 'NOTEMPTY',
- 'errmsg' => 'maildir_path_error_empty'),
+ 'validators' => array( 0 => array('type' => 'NOTEMPTY',
+ 'errmsg' => 'maildir_path_error_empty'),
+ 1 => array ( 'type' => 'REGEX',
+ 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/\[\]]{5,128}$/',
+ 'errmsg'=> 'maildir_path_error_regex'),
),
'value' => '',
'width' => '40',
@@ -292,8 +299,11 @@
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'default' => '/home/vmail/',
- 'validators' => array(0 => array('type' => 'NOTEMPTY',
- 'errmsg' => 'homedir_path_error_empty'),
+ 'validators' => array( 0 => array('type' => 'NOTEMPTY',
+ 'errmsg' => 'homedir_path_error_empty'),
+ 1 => array ( 'type' => 'REGEX',
+ 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/',
+ 'errmsg'=> 'homedir_path_error_regex'),
),
'value' => '',
'width' => '40',
@@ -306,6 +316,12 @@
'value' => '',
'width' => '40',
'maxlength' => '255'
+ ),
+ 'dkim_strength' => array(
+ 'datatype' => 'INTEGER',
+ 'formtype' => 'SELECT',
+ 'default' => '1024',
+ 'value' => array('1024' => 'normal (1024)', '2048' => 'strong (2048)', '4096' => 'very strong (4096)')
),
'relayhost_password' => array(
'datatype' => 'VARCHAR',
@@ -332,8 +348,11 @@
'datatype' => 'INTEGER',
'formtype' => 'TEXT',
'default' => '5000',
- 'validators' => array(0 => array('type' => 'NOTEMPTY',
- 'errmsg' => 'mailuser_uid_error_empty'),
+ 'validators' => array( 0 => array('type' => 'NOTEMPTY',
+ 'errmsg' => 'mailuser_uid_error_empty'),
+ 1 => array('type' => 'RANGE',
+ 'range' => '1999:',
+ 'errmsg' => 'mailuser_uid_error_range'),
),
'value' => '',
'width' => '10',
@@ -343,8 +362,11 @@
'datatype' => 'INTEGER',
'formtype' => 'TEXT',
'default' => '5000',
- 'validators' => array(0 => array('type' => 'NOTEMPTY',
- 'errmsg' => 'mailuser_gid_error_empty'),
+ 'validators' => array( 0 => array('type' => 'NOTEMPTY',
+ 'errmsg' => 'mailuser_gid_error_empty'),
+ 1 => array('type' => 'RANGE',
+ 'range' => '1999:',
+ 'errmsg' => 'mailuser_gid_error_range'),
),
'value' => '',
'width' => '10',
@@ -354,8 +376,11 @@
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'default' => 'vmail',
- 'validators' => array(0 => array('type' => 'NOTEMPTY',
- 'errmsg' => 'mailuser_name_error_empty'),
+ 'validators' => array( 0 => array('type' => 'NOTEMPTY',
+ 'errmsg' => 'mailuser_name_error_empty'),
+ 1 => array ( 'type' => 'REGEX',
+ 'regex' => '/^(?!ispconfig|root)([a-zA-Z0-9]{1,20})$/',
+ 'errmsg'=> 'mailuser_name_error_regex'),
),
'value' => '',
'width' => '10',
@@ -365,8 +390,11 @@
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'default' => 'vmail',
- 'validators' => array(0 => array('type' => 'NOTEMPTY',
- 'errmsg' => 'mailuser_group_error_empty'),
+ 'validators' => array( 0 => array('type' => 'NOTEMPTY',
+ 'errmsg' => 'mailuser_group_error_empty'),
+ 1 => array ( 'type' => 'REGEX',
+ 'regex' => '/^(?!ispconfig|root)([a-zA-Z0-9]{1,20})$/',
+ 'errmsg'=> 'mailuser_group_name_error_regex'),
),
'value' => '',
'width' => '10',
@@ -375,6 +403,10 @@
'mailbox_virtual_uidgid_maps' => array(
'datatype' => 'VARCHAR',
'formtype' => 'CHECKBOX',
+ 'validators' => array (0 => array ( 'type' => 'CUSTOM',
+ 'class' => 'validate_server_mail_config',
+ 'function' => 'mailbox_virtual_uidgid_maps'),
+ ),
'default' => 'n',
'value' => array(0 => 'n', 1 => 'y')
),
@@ -480,8 +512,11 @@
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'default' => '',
- 'validators' => array(0 => array('type' => 'NOTEMPTY',
- 'errmsg' => 'getmail_config_dir_error_empty'),
+ 'validators' => array( 0 => array('type' => 'NOTEMPTY',
+ 'errmsg' => 'getmail_config_dir_error_empty'),
+ 1 => array ( 'type' => 'REGEX',
+ 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/',
+ 'errmsg'=> 'getmail_config_dir_error_regex'),
),
'value' => '',
'width' => '40',
@@ -511,8 +546,11 @@
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'default' => '',
- 'validators' => array(0 => array('type' => 'NOTEMPTY',
- 'errmsg' => 'website_basedir_error_empty'),
+ 'validators' => array( 0 => array('type' => 'NOTEMPTY',
+ 'errmsg' => 'website_basedir_error_empty'),
+ 1 => array ( 'type' => 'REGEX',
+ 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/',
+ 'errmsg'=> 'website_basedir_error_regex'),
),
'value' => '',
'width' => '40',
@@ -522,8 +560,11 @@
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'default' => '',
- 'validators' => array(0 => array('type' => 'NOTEMPTY',
- 'errmsg' => 'website_path_error_empty'),
+ 'validators' => array( 0 => array( 'type' => 'NOTEMPTY',
+ 'errmsg' => 'website_path_error_empty'),
+ 1 => array ( 'type' => 'REGEX',
+ 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/\[\]]{5,128}$/',
+ 'errmsg'=> 'website_path_error_regex'),
),
'value' => '',
'width' => '40',
@@ -533,14 +574,23 @@
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'default' => '',
- 'validators' => array(0 => array('type' => 'NOTEMPTY',
- 'errmsg' => 'website_symlinks_error_empty'),
+ 'validators' => array( 0 => array('type' => 'NOTEMPTY',
+ 'errmsg' => 'website_symlinks_error_empty'),
+ 1 => array ( 'type' => 'REGEX',
+ 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/\[\]\:]{5,128}$/',
+ 'errmsg'=> 'website_symlinks_error_regex'),
),
'value' => '',
'width' => '40',
'maxlength' => '255'
),
'website_symlinks_rel' => array (
+ 'datatype' => 'VARCHAR',
+ 'formtype' => 'CHECKBOX',
+ 'default' => 'n',
+ 'value' => array(0 => 'n', 1 => 'y')
+ ),
+ 'network_filesystem' => array (
'datatype' => 'VARCHAR',
'formtype' => 'CHECKBOX',
'default' => 'n',
@@ -566,8 +616,11 @@
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'default' => '',
- 'validators' => array(0 => array('type' => 'NOTEMPTY',
- 'errmsg' => 'vhost_conf_dir_error_empty'),
+ 'validators' => array( 0 => array('type' => 'NOTEMPTY',
+ 'errmsg' => 'vhost_conf_dir_error_empty'),
+ 1 => array ( 'type' => 'REGEX',
+ 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/',
+ 'errmsg'=> 'vhost_conf_dir_error_regex'),
),
'value' => '',
'width' => '40',
@@ -577,8 +630,11 @@
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'default' => '',
- 'validators' => array(0 => array('type' => 'NOTEMPTY',
- 'errmsg' => 'vhost_conf_enabled_dir_error_empty'),
+ 'validators' => array( 0 => array('type' => 'NOTEMPTY',
+ 'errmsg' => 'vhost_conf_enabled_dir_error_empty'),
+ 1 => array ( 'type' => 'REGEX',
+ 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/',
+ 'errmsg'=> 'vhost_conf_enabled_dir_error_regex'),
),
'value' => '',
'width' => '40',
@@ -588,8 +644,11 @@
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'default' => '',
- 'validators' => array(0 => array('type' => 'NOTEMPTY',
- 'errmsg' => 'nginx_vhost_conf_dir_error_empty'),
+ 'validators' => array( 0 => array('type' => 'NOTEMPTY',
+ 'errmsg' => 'nginx_vhost_conf_dir_error_empty'),
+ 1 => array ( 'type' => 'REGEX',
+ 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/',
+ 'errmsg'=> 'nginx_vhost_conf_dir_error_regex'),
),
'value' => '',
'width' => '40',
@@ -599,8 +658,11 @@
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'default' => '',
- 'validators' => array(0 => array('type' => 'NOTEMPTY',
- 'errmsg' => 'nginx_vhost_conf_enabled_dir_error_empty'),
+ 'validators' => array( 0 => array('type' => 'NOTEMPTY',
+ 'errmsg' => 'nginx_vhost_conf_enabled_dir_error_empty'),
+ 1 => array ( 'type' => 'REGEX',
+ 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/',
+ 'errmsg'=> 'nginx_vhost_conf_enabled_dir_error_regex'),
),
'value' => '',
'width' => '40',
@@ -609,6 +671,10 @@
'CA_path' => array(
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
+ 'validators' => array( 0 => array ( 'type' => 'REGEX',
+ 'regex' => '/^[a-zA-Z0-9\.\-\_\/]{0,128}$/',
+ 'errmsg'=> 'ca_path_error_regex'),
+ ),
'default' => '',
'value' => '',
'width' => '40',
@@ -688,6 +754,18 @@
'default' => 'y',
'value' => array(0 => 'n', 1 => 'y')
),
+ 'overquota_db_notify_admin' => array(
+ 'datatype' => 'VARCHAR',
+ 'formtype' => 'CHECKBOX',
+ 'default' => 'y',
+ 'value' => array(0 => 'n', 1 => 'y')
+ ),
+ 'overquota_db_notify_client' => array(
+ 'datatype' => 'VARCHAR',
+ 'formtype' => 'CHECKBOX',
+ 'default' => 'y',
+ 'value' => array(0 => 'n', 1 => 'y')
+ ),
'overquota_notify_freq' => array(
'datatype' => 'INTEGER',
'formtype' => 'TEXT',
@@ -708,6 +786,13 @@
'default' => '',
'validators' => array(0 => array('type' => 'NOTEMPTY',
'errmsg' => 'apache_user_error_empty'),
+ 1 => array(
+ 'type' => 'CUSTOM',
+ 'class' => 'validate_systemuser',
+ 'function' => 'check_sysuser',
+ 'check_names' => false,
+ 'errmsg' => 'invalid_apache_user_txt'
+ ),
),
'value' => '',
'width' => '40',
@@ -719,6 +804,13 @@
'default' => '',
'validators' => array(0 => array('type' => 'NOTEMPTY',
'errmsg' => 'apache_group_error_empty'),
+ 1 => array(
+ 'type' => 'CUSTOM',
+ 'class' => 'validate_systemuser',
+ 'function' => 'check_sysgroup',
+ 'check_names' => false,
+ 'errmsg' => 'invalid_apache_group_txt'
+ ),
),
'value' => '',
'width' => '40',
@@ -745,8 +837,15 @@
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'default' => '',
- 'validators' => array(0 => array('type' => 'NOTEMPTY',
- 'errmsg' => 'nginx_user_error_empty'),
+ 'validators' => array( 0 => array('type' => 'NOTEMPTY',
+ 'errmsg' => 'nginx_user_error_empty'),
+ 1 => array(
+ 'type' => 'CUSTOM',
+ 'class' => 'validate_systemuser',
+ 'function' => 'check_sysuser',
+ 'check_names' => false,
+ 'errmsg' => 'invalid_nginx_user_txt'
+ ),
),
'value' => '',
'width' => '40',
@@ -756,8 +855,15 @@
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'default' => '',
- 'validators' => array(0 => array('type' => 'NOTEMPTY',
- 'errmsg' => 'nginx_group_error_empty'),
+ 'validators' => array( 0 => array('type' => 'NOTEMPTY',
+ 'errmsg' => 'nginx_group_error_empty'),
+ 1 => array(
+ 'type' => 'CUSTOM',
+ 'class' => 'validate_systemuser',
+ 'function' => 'check_sysgroup',
+ 'check_names' => false,
+ 'errmsg' => 'invalid_nginx_group_txt'
+ ),
),
'value' => '',
'width' => '40',
@@ -767,8 +873,11 @@
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'default' => '',
- 'validators' => array(0 => array('type' => 'NOTEMPTY',
- 'errmsg' => 'php_ini_path_apache_error_empty'),
+ 'validators' => array( 0 => array('type' => 'NOTEMPTY',
+ 'errmsg' => 'php_ini_path_apache_error_empty'),
+ 1 => array ( 'type' => 'REGEX',
+ 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/',
+ 'errmsg'=> 'php_ini_path_apache_error_regex'),
),
'value' => '',
'width' => '40',
@@ -778,8 +887,11 @@
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'default' => '',
- 'validators' => array(0 => array('type' => 'NOTEMPTY',
- 'errmsg' => 'php_ini_path_cgi_error_empty'),
+ 'validators' => array( 0 => array('type' => 'NOTEMPTY',
+ 'errmsg' => 'php_ini_path_cgi_error_empty'),
+ 1 => array ( 'type' => 'REGEX',
+ 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/',
+ 'errmsg'=> 'php_ini_path_cgi_error_regex'),
),
'value' => '',
'width' => '40',
@@ -789,8 +901,11 @@
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'default' => '',
- 'validators' => array(0 => array('type' => 'NOTEMPTY',
- 'errmsg' => 'php_fpm_init_script_error_empty'),
+ 'validators' => array( 0 => array('type' => 'NOTEMPTY',
+ 'errmsg' => 'php_fpm_init_script_error_empty'),
+ 1 => array ( 'type' => 'REGEX',
+ 'regex' => '/^[a-zA-Z0-9\.\-\_]{1,128}$/',
+ 'errmsg'=> 'php_fpm_init_script_error_regex'),
),
'value' => '',
'width' => '40',
@@ -800,8 +915,11 @@
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'default' => '',
- 'validators' => array(0 => array('type' => 'NOTEMPTY',
- 'errmsg' => 'php_fpm_ini_path_error_empty'),
+ 'validators' => array( 0 => array('type' => 'NOTEMPTY',
+ 'errmsg' => 'php_fpm_ini_path_error_empty'),
+ 1 => array ( 'type' => 'REGEX',
+ 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/',
+ 'errmsg'=> 'php_fpm_ini_path_error_regex'),
),
'value' => '',
'width' => '40',
@@ -811,8 +929,11 @@
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'default' => '',
- 'validators' => array(0 => array('type' => 'NOTEMPTY',
- 'errmsg' => 'php_fpm_pool_dir_error_empty'),
+ 'validators' => array( 0 => array('type' => 'NOTEMPTY',
+ 'errmsg' => 'php_fpm_pool_dir_error_empty'),
+ 1 => array ( 'type' => 'REGEX',
+ 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/',
+ 'errmsg'=> 'php_fpm_pool_dir_error_regex'),
),
'value' => '',
'width' => '40',
@@ -822,7 +943,7 @@
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'default' => '',
- 'validators' => array(0 => array('type' => 'NOTEMPTY',
+ 'validators' => array(0 => array('type' => 'ISPOSITIVE',
'errmsg' => 'php_fpm_start_port_error_empty'),
),
'value' => '',
@@ -833,8 +954,11 @@
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'default' => '',
- 'validators' => array(0 => array('type' => 'NOTEMPTY',
- 'errmsg' => 'php_fpm_socket_dir_error_empty'),
+ 'validators' => array( 0 => array('type' => 'NOTEMPTY',
+ 'errmsg' => 'php_fpm_socket_dir_error_empty'),
+ 1 => array ( 'type' => 'REGEX',
+ 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{5,128}$/',
+ 'errmsg'=> 'php_fpm_socket_dir_error_regex'),
),
'value' => '',
'width' => '40',
@@ -844,8 +968,11 @@
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'default' => '',
- 'validators' => array(0 => array('type' => 'NOTEMPTY',
- 'errmsg' => 'php_open_basedir_error_empty'),
+ 'validators' => array( 0 => array('type' => 'NOTEMPTY',
+ 'errmsg' => 'php_open_basedir_error_empty'),
+ 1 => array ( 'type' => 'REGEX',
+ 'regex' => '/^[a-zA-Z0-9\.\-\_\/\]\[\:]{1,}$/',
+ 'errmsg'=> 'php_open_basedir_error_regex'),
),
'value' => '',
'width' => '40',
@@ -862,12 +989,22 @@
'width' => '10',
'maxlength' => '255'
),
+ 'php_handler' => array(
+ 'datatype' => 'VARCHAR',
+ 'formtype' => 'SELECT',
+ 'default' => 'fast-cgi',
+ 'value' => array('no' => 'disabled_txt', 'fast-cgi' => 'Fast-CGI', 'cgi' => 'CGI', 'mod' => 'Mod-PHP', 'suphp' => 'SuPHP', 'php-fpm' => 'PHP-FPM', 'hhvm' => 'HHVM'),
+ 'searchable' => 2
+ ),
'nginx_cgi_socket' => array(
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'default' => '',
- 'validators' => array(0 => array('type' => 'NOTEMPTY',
- 'errmsg' => 'nginx_cgi_socket_empty'),
+ 'validators' => array( 0 => array('type' => 'NOTEMPTY',
+ 'errmsg' => 'nginx_cgi_socket_empty'),
+ 1 => array ( 'type' => 'REGEX',
+ 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{1,128}$/',
+ 'errmsg'=> 'nginx_cgi_socket_error_regex'),
),
'value' => '',
'width' => '40',
@@ -877,12 +1014,21 @@
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'default' => '',
- 'validators' => array(0 => array('type' => 'NOTEMPTY',
- 'errmsg' => 'htaccess_allow_override_error_empty'),
+ 'validators' => array( 0 => array('type' => 'NOTEMPTY',
+ 'errmsg' => 'htaccess_allow_override_error_empty'),
),
'value' => '',
'width' => '40',
'maxlength' => '255'
+ ),
+ 'enable_spdy' => array (
+ 'datatype' => 'VARCHAR',
+ 'formtype' => 'CHECKBOX',
+ 'default' => 'y',
+ 'value' => array (
+ 0 => 'n',
+ 1 => 'y'
+ )
),
'apps_vhost_port' => array(
'datatype' => 'VARCHAR',
@@ -925,6 +1071,12 @@
'awstats_data_dir' => array(
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
+ 'validators' => array( 0 => array('type' => 'NOTEMPTY',
+ 'errmsg' => 'awstats_data_dir_empty'),
+ 1 => array ( 'type' => 'REGEX',
+ 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{1,128}$/',
+ 'errmsg'=> 'awstats_data_dir_error_regex'),
+ ),
'default' => '',
'value' => '',
'width' => '40',
@@ -933,6 +1085,12 @@
'awstats_pl' => array(
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
+ 'validators' => array( 0 => array('type' => 'NOTEMPTY',
+ 'errmsg' => 'awstats_pl_empty'),
+ 1 => array ( 'type' => 'REGEX',
+ 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{1,128}$/',
+ 'errmsg'=> 'awstats_pl_error_regex'),
+ ),
'default' => '',
'value' => '',
'width' => '40',
@@ -941,6 +1099,12 @@
'awstats_buildstaticpages_pl' => array(
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
+ 'validators' => array( 0 => array('type' => 'NOTEMPTY',
+ 'errmsg' => 'awstats_buildstaticpages_pl_empty'),
+ 1 => array ( 'type' => 'REGEX',
+ 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{1,128}$/',
+ 'errmsg'=> 'awstats_buildstaticpages_pl_error_regex'),
+ ),
'default' => '',
'value' => '',
'width' => '40',
@@ -964,8 +1128,11 @@
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'default' => '',
- 'validators' => array(0 => array('type' => 'NOTEMPTY',
- 'errmsg' => 'bind_user_error_empty'),
+ 'validators' => array( 0 => array('type' => 'NOTEMPTY',
+ 'errmsg' => 'bind_user_error_empty'),
+ 1 => array ( 'type' => 'REGEX',
+ 'regex' => '/^(?!ispconfig)([a-zA-Z0-9]{1,20})$/',
+ 'errmsg'=> 'invalid_bind_user_txt'),
),
'value' => '',
'width' => '40',
@@ -975,8 +1142,11 @@
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'default' => '',
- 'validators' => array(0 => array('type' => 'NOTEMPTY',
- 'errmsg' => 'bind_group_error_empty'),
+ 'validators' => array( 0 => array('type' => 'NOTEMPTY',
+ 'errmsg' => 'bind_group_error_empty'),
+ 1 => array ( 'type' => 'REGEX',
+ 'regex' => '/^(?!ispconfig)([a-zA-Z0-9]{1,20})$/',
+ 'errmsg'=> 'invalid_bind_group_txt'),
),
'value' => '',
'width' => '40',
@@ -986,8 +1156,11 @@
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'default' => '',
- 'validators' => array(0 => array('type' => 'NOTEMPTY',
- 'errmsg' => 'bind_zonefiles_dir_error_empty'),
+ 'validators' => array( 0 => array('type' => 'NOTEMPTY',
+ 'errmsg' => 'bind_zonefiles_dir_error_empty'),
+ 1 => array ( 'type' => 'REGEX',
+ 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{1,128}$/',
+ 'errmsg'=> 'bind_zonefiles_dir_error_regex'),
),
'value' => '',
'width' => '40',
@@ -997,8 +1170,11 @@
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'default' => '',
- 'validators' => array(0 => array('type' => 'NOTEMPTY',
- 'errmsg' => 'named_conf_path_error_empty'),
+ 'validators' => array( 0 => array('type' => 'NOTEMPTY',
+ 'errmsg' => 'named_conf_path_error_empty'),
+ 1 => array ( 'type' => 'REGEX',
+ 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{1,128}$/',
+ 'errmsg'=> 'named_conf_path_error_regex'),
),
'value' => '',
'width' => '40',
@@ -1008,8 +1184,11 @@
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'default' => '',
- 'validators' => array(0 => array('type' => 'NOTEMPTY',
- 'errmsg' => 'named_conf_local_path_error_empty'),
+ 'validators' => array( 0 => array('type' => 'NOTEMPTY',
+ 'errmsg' => 'named_conf_local_path_error_empty'),
+ 1 => array ( 'type' => 'REGEX',
+ 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{1,128}$/',
+ 'errmsg'=> 'named_conf_local_path_error_regex'),
),
'value' => '',
'width' => '40',
@@ -1033,8 +1212,11 @@
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'default' => '',
- 'validators' => array(0 => array('type' => 'NOTEMPTY',
- 'errmsg' => 'fastcgi_starter_path_error_empty'),
+ 'validators' => array( 0 => array('type' => 'NOTEMPTY',
+ 'errmsg' => 'fastcgi_starter_path_error_empty'),
+ 1 => array ( 'type' => 'REGEX',
+ 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/\[\]]{1,128}$/',
+ 'errmsg'=> 'fastcgi_starter_path_error_regex'),
),
'value' => '',
'width' => '40',
@@ -1044,8 +1226,11 @@
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'default' => '',
- 'validators' => array(0 => array('type' => 'NOTEMPTY',
- 'errmsg' => 'fastcgi_starter_script_error_empty'),
+ 'validators' => array( 0 => array('type' => 'NOTEMPTY',
+ 'errmsg' => 'fastcgi_starter_script_error_empty'),
+ 1 => array ( 'type' => 'REGEX',
+ 'regex' => '/^[a-zA-Z0-9\.\-\_\/]{1,128}$/',
+ 'errmsg'=> 'fastcgi_starter_script_error_regex'),
),
'value' => '',
'width' => '40',
@@ -1055,8 +1240,11 @@
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'default' => '',
- 'validators' => array(0 => array('type' => 'NOTEMPTY',
- 'errmsg' => 'fastcgi_alias_error_empty'),
+ 'validators' => array( 0 => array('type' => 'NOTEMPTY',
+ 'errmsg' => 'fastcgi_alias_error_empty'),
+ 1 => array ( 'type' => 'REGEX',
+ 'regex' => '/^[a-zA-Z0-9\.\-\_\/]{1,128}$/',
+ 'errmsg'=> 'fastcgi_alias_error_regex'),
),
'value' => '',
'width' => '40',
@@ -1066,8 +1254,11 @@
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'default' => '',
- 'validators' => array(0 => array('type' => 'NOTEMPTY',
- 'errmsg' => 'fastcgi_phpini_path_error_empty'),
+ 'validators' => array( 0 => array('type' => 'NOTEMPTY',
+ 'errmsg' => 'fastcgi_phpini_path_error_empty'),
+ 1 => array ( 'type' => 'REGEX',
+ 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/\[\]]{1,128}$/',
+ 'errmsg'=> 'fastcgi_phpini_path_error_regex'),
),
'value' => '',
'width' => '40',
@@ -1077,7 +1268,7 @@
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'default' => '',
- 'validators' => array(0 => array('type' => 'NOTEMPTY',
+ 'validators' => array(0 => array('type' => 'ISPOSITIVE',
'errmsg' => 'fastcgi_children_error_empty'),
),
'value' => '',
@@ -1102,8 +1293,11 @@
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'default' => '',
- 'validators' => array(0 => array('type' => 'NOTEMPTY',
- 'errmsg' => 'fastcgi_bin_error_empty'),
+ 'validators' => array( 0 => array('type' => 'NOTEMPTY',
+ 'errmsg' => 'fastcgi_bin_error_empty'),
+ 1 => array ( 'type' => 'REGEX',
+ 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/\[\]]{1,128}$/',
+ 'errmsg'=> 'fastcgi_bin_error_regex'),
),
'value' => '',
'width' => '40',
@@ -1136,8 +1330,11 @@
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'default' => '',
- 'validators' => array(0 => array('type' => 'NOTEMPTY',
- 'errmsg' => 'jailkit_chroot_home_error_empty'),
+ 'validators' => array( 0 => array('type' => 'NOTEMPTY',
+ 'errmsg' => 'jailkit_chroot_home_error_empty'),
+ 1 => array ( 'type' => 'REGEX',
+ 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/\[\]]{1,128}$/',
+ 'errmsg'=> 'jailkit_chroot_home_error_regex'),
),
'value' => '',
'width' => '40',
@@ -1147,8 +1344,11 @@
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'default' => '',
- 'validators' => array(0 => array('type' => 'NOTEMPTY',
- 'errmsg' => 'jailkit_chroot_app_sections_error_empty'),
+ 'validators' => array( 0 => array('type' => 'NOTEMPTY',
+ 'errmsg' => 'jailkit_chroot_app_sections_error_empty'),
+ 1 => array ( 'type' => 'REGEX',
+ 'regex' => '/^[a-zA-Z0-9\-\_\ ]{1,128}$/',
+ 'errmsg'=> 'jailkit_chroot_app_sections_error_regex'),
),
'value' => '',
'width' => '40',
@@ -1158,8 +1358,11 @@
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'default' => '',
- 'validators' => array(0 => array('type' => 'NOTEMPTY',
- 'errmsg' => 'jailkit_chroot_app_programs_error_empty'),
+ 'validators' => array( 0 => array('type' => 'NOTEMPTY',
+ 'errmsg' => 'jailkit_chroot_app_programs_error_empty'),
+ 1 => array ( 'type' => 'REGEX',
+ 'regex' => '/^[a-zA-Z0-9\.\-\_\/\ ]{1,}$/',
+ 'errmsg'=> 'jailkit_chroot_app_programs_error_regex'),
),
'value' => '',
'width' => '40',
@@ -1169,8 +1372,11 @@
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'default' => '',
- 'validators' => array(0 => array('type' => 'NOTEMPTY',
- 'errmsg' => 'jailkit_chroot_cron_programs_error_empty'),
+ 'validators' => array( 0 => array('type' => 'NOTEMPTY',
+ 'errmsg' => 'jailkit_chroot_cron_programs_error_empty'),
+ 1 => array ( 'type' => 'REGEX',
+ 'regex' => '/^[a-zA-Z0-9\.\-\_\/\ ]{1,}$/',
+ 'errmsg'=> 'jailkit_chroot_cron_programs_error_regex'),
),
'value' => '',
'width' => '40',
@@ -1258,8 +1464,11 @@
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'default' => '',
- 'validators' => array(0 => array('type' => 'NOTEMPTY',
- 'errmsg' => 'vlogger_config_dir_error_empty'),
+ 'validators' => array( 0 => array('type' => 'NOTEMPTY',
+ 'errmsg' => 'vlogger_config_dir_error_empty'),
+ 1 => array ( 'type' => 'REGEX',
+ 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{1,128}$/',
+ 'errmsg'=> 'vlogger_config_dir_error_regex'),
),
'value' => '',
'width' => '40',
@@ -1285,8 +1494,11 @@
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'default' => '',
- 'validators' => array(0 => array('type' => 'NOTEMPTY',
- 'errmsg' => 'cron_init_script_error_empty'),
+ 'validators' => array( 0 => array('type' => 'NOTEMPTY',
+ 'errmsg' => 'cron_init_script_error_empty'),
+ 1 => array ( 'type' => 'REGEX',
+ 'regex' => '/^[a-zA-Z0-9\-\_]{1,30}$/',
+ 'errmsg'=> 'cron_init_script_error_regex'),
),
'value' => '',
'width' => '40',
@@ -1296,8 +1508,11 @@
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'default' => '',
- 'validators' => array(0 => array('type' => 'NOTEMPTY',
- 'errmsg' => 'crontab_dir_error_empty'),
+ 'validators' => array( 0 => array('type' => 'NOTEMPTY',
+ 'errmsg' => 'crontab_dir_error_empty'),
+ 1 => array ( 'type' => 'REGEX',
+ 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{1,128}$/',
+ 'errmsg'=> 'crontab_dir_error_regex'),
),
'value' => '',
'width' => '40',
@@ -1307,8 +1522,11 @@
'datatype' => 'VARCHAR',
'formtype' => 'TEXT',
'default' => '',
- 'validators' => array(0 => array('type' => 'NOTEMPTY',
- 'errmsg' => 'cron_wget_error_empty'),
+ 'validators' => array( 0 => array('type' => 'NOTEMPTY',
+ 'errmsg' => 'cron_wget_error_empty'),
+ 1 => array ( 'type' => 'REGEX',
+ 'regex' => '/^\/[a-zA-Z0-9\.\-\_\/]{1,128}$/',
+ 'errmsg'=> 'cron_wget_error_regex'),
),
'value' => '',
'width' => '40',
--
Gitblit v1.9.1