Merge branch 'stable-3.1'
| | |
| | | ALTER TABLE `mail_forwarding` ADD COLUMN `allow_send_as` ENUM('n','y') NOT NULL DEFAULT 'n' AFTER `active`; |
| | | UPDATE `mail_forwarding` SET `allow_send_as` = 'y' WHERE `type` = 'alias'; |
| | | |
| | | --- DNSSEC-Implementation by dark alex |
| | | --- TODO: Review and resolve conflicts if more has been done in that column |
| | | ALTER TABLE `dns_rr` CHANGE COLUMN `type` `type` ENUM('A','AAAA','ALIAS','CNAME','DS','HINFO','LOC','MX','NAPTR','NS','PTR','RP','SRV','TXT','TLSA','DNSKEY') NULL DEFAULT NULL AFTER `name`; |
| | | |
| | | ALTER TABLE `dns_soa` |
| | | ADD COLUMN `dnssec_initialized` ENUM('Y','N') NOT NULL DEFAULT 'N', |
| | | ADD COLUMN `dnssec_wanted` ENUM('Y','N') NOT NULL DEFAULT 'N', |
| | | ADD COLUMN `dnssec_last_signed` BIGINT NOT NULL DEFAULT '0', |
| | | ADD COLUMN `dnssec_info` TEXT NULL; |
| | | ADD COLUMN `dnssec_info` TEXT NULL; |
| | | |
| | | ALTER TABLE `client` ADD COLUMN `limit_ssl_letsencrypt` enum('n','y') NOT NULL DEFAULT 'n' AFTER `limit_ssl`; |
| | | ALTER TABLE `client_template` ADD COLUMN `limit_ssl_letsencrypt` enum('n','y') NOT NULL DEFAULT 'n' AFTER `limit_ssl`; |
| | |
| | | `limit_hterror` enum('n','y') NOT NULL DEFAULT 'n', |
| | | `limit_wildcard` enum('n','y') NOT NULL DEFAULT 'n', |
| | | `limit_ssl` enum('n','y') NOT NULL DEFAULT 'n', |
| | | `limit_ssl_letsencrypt` enum('n','y') NOT NULL DEFAULT 'n', |
| | | `limit_web_subdomain` int(11) NOT NULL DEFAULT '-1', |
| | | `limit_web_aliasdomain` int(11) NOT NULL DEFAULT '-1', |
| | | `limit_ftp_user` int(11) NOT NULL DEFAULT '-1', |
| | |
| | | `limit_hterror` enum('n','y') NOT NULL DEFAULT 'n', |
| | | `limit_wildcard` enum('n','y') NOT NULL DEFAULT 'n', |
| | | `limit_ssl` enum('n','y') NOT NULL DEFAULT 'n', |
| | | `limit_ssl_letsencrypt` enum('n','y') NOT NULL DEFAULT 'n', |
| | | `limit_web_subdomain` int(11) NOT NULL default '-1', |
| | | `limit_web_aliasdomain` int(11) NOT NULL default '-1', |
| | | `limit_ftp_user` int(11) NOT NULL default '-1', |
| | |
| | | 'default' => 'n', |
| | | 'value' => array(0 => 'n', 1 => 'y') |
| | | ), |
| | | 'limit_ssl_letsencrypt' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'CHECKBOX', |
| | | 'default' => 'n', |
| | | 'value' => array(0 => 'n', 1 => 'y') |
| | | ), |
| | | 'limit_web_aliasdomain' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | |
| | | 'default' => 'y', |
| | | 'value' => array(0 => 'n', 1 => 'y') |
| | | ), |
| | | 'limit_directive_snippets' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'CHECKBOX', |
| | | 'default' => 'n', |
| | | 'value' => array(0 => 'n', 1 => 'y') |
| | | ), |
| | | 'default_dnsserver' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'SELECT', |
| | |
| | | 'default' => 'n', |
| | | 'value' => array(0 => 'n', 1 => 'y') |
| | | ), |
| | | 'limit_ssl_letsencrypt' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'CHECKBOX', |
| | | 'default' => 'n', |
| | | 'value' => array(0 => 'n', 1 => 'y') |
| | | ), |
| | | 'limit_web_aliasdomain' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | |
| | | 'default' => 'y', |
| | | 'value' => array(0 => 'n', 1 => 'y') |
| | | ), |
| | | 'limit_directive_snippets' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'CHECKBOX', |
| | | 'default' => 'n', |
| | | 'value' => array(0 => 'n', 1 => 'y') |
| | | ), |
| | | 'default_dnsserver' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'SELECT', |
| | |
| | | 'default' => 'n', |
| | | 'value' => array(0 => 'n', 1 => 'y') |
| | | ), |
| | | 'limit_ssl_letsencrypt' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'CHECKBOX', |
| | | 'default' => 'n', |
| | | 'value' => array(0 => 'n', 1 => 'y') |
| | | ), |
| | | 'limit_web_aliasdomain' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'TEXT', |
| | |
| | | 'default' => 'y', |
| | | 'value' => array(0 => 'n', 1 => 'y') |
| | | ), |
| | | 'limit_directive_snippets' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'CHECKBOX', |
| | | 'default' => 'n', |
| | | 'value' => array(0 => 'n', 1 => 'y') |
| | | ), |
| | | 'default_dnsserver' => array ( |
| | | 'datatype' => 'INTEGER', |
| | | 'formtype' => 'SELECT', |
| | |
| | | $wb['limit_hterror_txt'] = 'Eigene Fehlerseiten verfügbar'; |
| | | $wb['limit_wildcard_txt'] = 'Wildcard Subdomain verfügbar'; |
| | | $wb['limit_ssl_txt'] = 'SSL verfügbar'; |
| | | $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt verfügbar'; |
| | | $wb['limit_client_error'] = 'Die maximale Anzahl an Kunden wurde erreicht.'; |
| | | $wb['limit_mailaliasdomain_txt'] = 'Max. Anzahl an Domain Aliases'; |
| | | $wb['limit_mailaliasdomain_error_notint'] = 'Das E-Mail Domain Alias Limit muss eine Zahl sein.'; |
| | |
| | | $wb['limit_xmpp_vjud_txt'] = 'VJUD user directory available'; |
| | | $wb['limit_xmpp_proxy_txt'] = 'Bytestream proxy available'; |
| | | $wb['limit_xmpp_status_txt'] = 'Status host available'; |
| | | $wb['limit_directive_snippets_txt'] = 'Webserver-Konfigurationsauswahl sichtbar'; |
| | | ?> |
| | |
| | | $wb['limit_hterror_txt'] = 'Eigene Fehlerseiten verfügbar'; |
| | | $wb['limit_wildcard_txt'] = 'Wildcard Subdomain verfügbar'; |
| | | $wb['limit_ssl_txt'] = 'SSL verfügbar'; |
| | | $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt verfügbar'; |
| | | $wb['template_type_txt'] = 'Vorlagen Typ'; |
| | | $wb['template_name_txt'] = 'Vorlagen Name'; |
| | | $wb['web_limits_txt'] = 'Web Limits'; |
| | |
| | | $wb['limit_xmpp_proxy_txt'] = 'Bytestream proxy available'; |
| | | $wb['limit_xmpp_status_txt'] = 'Status host available'; |
| | | $wb['dns_servers_txt'] = 'DNS servers'; |
| | | $wb['limit_directive_snippets_txt'] = 'Webserver-Konfigurationsauswahl sichtbar'; |
| | | ?> |
| | |
| | | $wb['limit_hterror_txt'] = 'Eigene Fehlerseiten verfügbar'; |
| | | $wb['limit_wildcard_txt'] = 'Wildcard Subdomain verfügbar'; |
| | | $wb['limit_ssl_txt'] = 'SSL verfügbar'; |
| | | $wb['limit_ssl_letsencrypt_txt'] = 'Let\'s Encrypt verfügbar'; |
| | | $wb['limit_client_error'] = 'Die maximale Anzahl an Kunden wurde erreicht.'; |
| | | $wb['limit_client_error_positive_or_unlimited'] = 'Die Anzahl an Kunden muss > 0 sein'; |
| | | $wb['limit_web_quota_txt'] = 'Speicherplatzbeschränkung'; |
| | |
| | | $wb['limit_xmpp_vjud_txt'] = 'VJUD user directory available'; |
| | | $wb['limit_xmpp_proxy_txt'] = 'Bytestream proxy available'; |
| | | $wb['limit_xmpp_status_txt'] = 'Status host available'; |
| | | $wb['limit_directive_snippets_txt'] = 'Webserver-Konfigurationsauswahl sichtbar'; |
| | | ?> |
| | |
| | | $wb["limit_hterror_txt"] = "Custom error docs available"; |
| | | $wb["limit_wildcard_txt"] = "Wildcard subdomain available"; |
| | | $wb["limit_ssl_txt"] = "SSL available"; |
| | | $wb["limit_ssl_letsencrypt_txt"] = "Let\'s Encrypt available"; |
| | | $wb["limit_client_error"] = 'The max. number of clients is reached.'; |
| | | $wb["limit_web_quota_txt"] = 'Web Quota'; |
| | | $wb["limit_traffic_quota_txt"] = 'Traffic Quota'; |
| | |
| | | $wb['btn_cancel_txt'] = "Cancel"; |
| | | $wb['invalid_vat_id'] = 'The VAT ID is invalid.'; |
| | | $wb["email_error_empty"] = "Email is empty"; |
| | | $wb['limit_directive_snippets_txt'] = 'Show web server config selection'; |
| | | ?> |
| | |
| | | $wb["limit_hterror_txt"] = "Custom error docs available"; |
| | | $wb["limit_wildcard_txt"] = "Wildcard subdomain available"; |
| | | $wb["limit_ssl_txt"] = "SSL available"; |
| | | $wb["limit_ssl_letsencrypt_txt"] = "Let\'s Encrypt available"; |
| | | $wb["web_limits_txt"] = 'Web Limits'; |
| | | $wb["email_limits_txt"] = 'Email Limits'; |
| | | $wb["database_limits_txt"] = 'Database Limits'; |
| | |
| | | $wb['limit_xmpp_proxy_txt'] = 'Bytestream proxy available'; |
| | | $wb['limit_xmpp_status_txt'] = 'Status host available'; |
| | | $wb["dns_servers_txt"] = 'DNS servers'; |
| | | $wb['limit_directive_snippets_txt'] = 'Show web server config selection'; |
| | | ?> |
| | |
| | | $wb["limit_hterror_txt"] = "Custom error docs available"; |
| | | $wb["limit_wildcard_txt"] = "Wildcard subdomain available"; |
| | | $wb["limit_ssl_txt"] = "SSL available"; |
| | | $wb["limit_ssl_letsencrypt_txt"] = "Let\'s Encrypt available"; |
| | | $wb["limit_client_error"] = 'The max. number of clients is reached.'; |
| | | $wb["limit_client_error_positive_or_unlimited"] = 'The number of clients must be > 0 or -1 (unlimited)'; |
| | | $wb["limit_web_quota_txt"] = 'Web Quota'; |
| | |
| | | $wb["btn_save_txt"] = "Save"; |
| | | $wb["btn_cancel_txt"] = "Cancel"; |
| | | $wb["email_error_empty"] = "Email is empty"; |
| | | $wb['limit_directive_snippets_txt'] = 'Show web server config selection'; |
| | | |
| | | ?> |
| | |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">{tmpl_var name='limit_ssl_letsencrypt_txt'}</label> |
| | | <div class="col-sm-9"> |
| | | {tmpl_var name='limit_ssl_letsencrypt'} |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label for="limit_web_aliasdomain" class="col-sm-3 control-label">{tmpl_var name='limit_web_aliasdomain_txt'}</label> |
| | | <div class="col-sm-9"><input type="text" name="limit_web_aliasdomain" id="limit_web_aliasdomain" value="{tmpl_var name='limit_web_aliasdomain'}" class="form-control" /></div></div> |
| | | <div class="form-group"> |
| | |
| | | {tmpl_var name='limit_backup'} |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">{tmpl_var name='limit_directive_snippets_txt'}</label> |
| | | <div class="col-sm-9"> |
| | | {tmpl_var name='limit_directive_snippets'} |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">{tmpl_var name='limit_ssl_letsencrypt_txt'}</label> |
| | | <div class="col-sm-9"> |
| | | {tmpl_var name='limit_ssl_letsencrypt'} |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label for="limit_web_aliasdomain" class="col-sm-3 control-label">{tmpl_var name='limit_web_aliasdomain_txt'}</label> |
| | | <div class="col-sm-9"><input type="text" name="limit_web_aliasdomain" id="limit_web_aliasdomain" value="{tmpl_var name='limit_web_aliasdomain'}" class="form-control" /></div></div> |
| | | <div class="form-group"> |
| | |
| | | {tmpl_var name='limit_backup'} |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">{tmpl_var name='limit_directive_snippets_txt'}</label> |
| | | <div class="col-sm-9"> |
| | | {tmpl_var name='limit_directive_snippets'} |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">{tmpl_var name='limit_ssl_letsencrypt_txt'}</label> |
| | | <div class="col-sm-9"> |
| | | {tmpl_var name='limit_ssl_letsencrypt'} |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label for="limit_web_aliasdomain" class="col-sm-3 control-label">{tmpl_var name='limit_web_aliasdomain_txt'}</label> |
| | | <div class="col-sm-9"><input type="text" name="limit_web_aliasdomain" id="limit_web_aliasdomain" value="{tmpl_var name='limit_web_aliasdomain'}" class="form-control" /></div></div> |
| | | <div class="form-group"> |
| | |
| | | {tmpl_var name='limit_backup'} |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">{tmpl_var name='limit_directive_snippets_txt'}</label> |
| | | <div class="col-sm-9"> |
| | | {tmpl_var name='limit_directive_snippets'} |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | |
| | | $backup_available = ($vhostdomain_type == 'domain'); |
| | | if(!$app->auth->is_admin()) { |
| | | $client_group_id = $_SESSION["s"]["user"]["default_group"]; |
| | | $client = $app->db->queryOneRecord("SELECT limit_wildcard, limit_ssl, limit_backup FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = ?", $client_group_id); |
| | | $client = $app->db->queryOneRecord("SELECT limit_wildcard, limit_ssl, limit_ssl_letsencrypt, limit_backup FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = ?", $client_group_id); |
| | | |
| | | if($client['limit_wildcard'] != 'y') $wildcard_available = false; |
| | | if($client['limit_ssl'] != 'y') $ssl_available = false; |
| | | if($client['limit_ssl_letsencrypt'] == 'y') $ssl_available = false; |
| | | if($client['limit_backup'] != 'y') $backup_available = false; |
| | | } |
| | | |
| | |
| | | $wb['subdomain_error_empty'] = 'The subdommain field is empty or contains invalid characters.'; |
| | | $wb['rewrite_to_https_txt'] = 'Rewrite HTTP to HTTPS'; |
| | | $wb['password_strength_txt'] = 'Password strength'; |
| | | $wb['directive_snippets_id_txt'] = 'Webserver-Konfiguration'; |
| | | ?> |
| | |
| | | $wb['ssl_letsencrypt_txt'] = 'Let\'s Encrypt SSL'; |
| | | $wb['rewrite_to_https_txt'] = 'Rewrite HTTP to HTTPS'; |
| | | $wb['password_strength_txt'] = 'Password strength'; |
| | | $wb['directive_snippets_id_txt'] = 'Web server config'; |
| | | ?> |
| | |
| | | {tmpl_var name='ssl'} |
| | | </div> |
| | | </div> |
| | | <tmpl_if name="limit_ssl_letsencrypt" op="==" value="y"> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">{tmpl_var name='ssl_letsencrypt_txt'}</label> |
| | | <div class="col-sm-9"> |
| | | {tmpl_var name='ssl_letsencrypt'} |
| | | </div> |
| | | </div></tmpl_if> |
| | | </tmpl_if> |
| | | <div class="form-group"> |
| | | <label for="php" class="col-sm-3 control-label">{tmpl_var name='php_txt'}</label> |
| | | <div class="col-sm-9"><select name="php" id="php" class="form-control"> |
| | |
| | | {tmpl_var name='fastcgi_php_version'} |
| | | </select></div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <tmpl_if name="limit_directive_snippets" op="==" value="y"><div class="form-group"> |
| | | <label for="directive_snippets_id" class="col-sm-3 control-label">{tmpl_var name='directive_snippets_id_txt'}</label> |
| | | <div class="col-sm-9"><select name="directive_snippets_id" id="directive_snippets_id" class="form-control"> |
| | | {tmpl_var name='directive_snippets_id'} |
| | | </select></div> |
| | | </div> |
| | | </div></tmpl_if> |
| | | {tmpl_hook name="field_enable_pagespeed"} |
| | | <div class="form-group nginx pagespeed"> |
| | | <label class="col-sm-3 control-label">{tmpl_var name='enable_pagespeed_txt'}</label> |
| | |
| | | $app->uses('ini_parser,getconf'); |
| | | $settings = $app->getconf->get_global_config('domains'); |
| | | |
| | | $read_limits = array('limit_cgi', 'limit_ssi', 'limit_perl', 'limit_ruby', 'limit_python', 'force_suexec', 'limit_hterror', 'limit_wildcard', 'limit_ssl'); |
| | | $read_limits = array('limit_cgi', 'limit_ssi', 'limit_perl', 'limit_ruby', 'limit_python', 'force_suexec', 'limit_hterror', 'limit_wildcard', 'limit_ssl', 'limit_ssl_letsencrypt', 'limit_directive_snippets'); |
| | | |
| | | if($this->_vhostdomain_type != 'domain') $parent_domain = $app->db->queryOneRecord("select * FROM web_domain WHERE domain_id = ?", @$this->dataRecord["parent_domain_id"]); |
| | | |
| | |
| | | $this->parent_domain_record = $parent_domain; |
| | | } |
| | | |
| | | $read_limits = array('limit_cgi', 'limit_ssi', 'limit_perl', 'limit_ruby', 'limit_python', 'force_suexec', 'limit_hterror', 'limit_wildcard', 'limit_ssl'); |
| | | $read_limits = array('limit_cgi', 'limit_ssi', 'limit_perl', 'limit_ruby', 'limit_python', 'force_suexec', 'limit_hterror', 'limit_wildcard', 'limit_ssl', 'limit_ssl_letsencrypt', 'limit_directive_snippets'); |
| | | |
| | | /* check if the domain module is used - and check if the selected domain can be used! */ |
| | | if($app->tform->getCurrentTab() == 'domain') { |
| | |
| | | if($client['limit_hterror'] != 'y') $this->dataRecord['errordocs'] = 'n'; |
| | | if($client['limit_wildcard'] != 'y' && $this->dataRecord['subdomain'] == '*') $this->dataRecord['subdomain'] = 'n'; |
| | | if($client['limit_ssl'] != 'y') $this->dataRecord['ssl'] = 'n'; |
| | | if($client['limit_ssl_letsencrypt'] != 'y') $this->dataRecord['ssl_letsencrypt'] = 'n'; |
| | | if($client['limit_directive_snippets'] != 'y') $this->dataRecord['directive_snippets_id'] = 0 |
| | | |
| | | // only generate quota and traffic warnings if value has changed |
| | | if($this->id > 0) { |