diff --git a/interface/web/admin/form/system_config.tform.php b/interface/web/admin/form/system_config.tform.php index 2e08130aa7bae17d24557e97d6b8c6732db5bf7b..86ed19f1a2a9f8253adabe177f488385fefe31ae 100644 --- a/interface/web/admin/form/system_config.tform.php +++ b/interface/web/admin/form/system_config.tform.php @@ -172,6 +172,28 @@ $form["tabs"]['sites'] = array ( 'default' => 'n', 'value' => array(0 => 'n', 1 => 'y') ), + 'default_webserver' => array ( + 'datatype' => 'INTEGER', + 'formtype' => 'SELECT', + 'default' => '1', + 'datasource' => array ( 'type' => 'CUSTOM', + 'class'=> 'custom_datasource', + 'function'=> 'client_servers' + ), + 'value' => '', + 'name' => 'default_webserver' + ), + 'default_dbserver' => array ( + 'datatype' => 'INTEGER', + 'formtype' => 'SELECT', + 'default' => '1', + 'datasource' => array ( 'type' => 'CUSTOM', + 'class'=> 'custom_datasource', + 'function'=> 'client_servers' + ), + 'value' => '', + 'name' => 'default_dbserver' + ), //################################# // ENDE Datatable fields //################################# @@ -321,6 +343,53 @@ $form["tabs"]['mail'] = array ( 'default' => '', 'value' => array('' => 'No', 'ssl' => 'SSL', 'tls' => 'STARTTLS') ), + 'default_mailserver' => array ( + 'datatype' => 'INTEGER', + 'formtype' => 'SELECT', + 'default' => '1', + 'datasource' => array ( 'type' => 'CUSTOM', + 'class'=> 'custom_datasource', + 'function'=> 'client_servers' + ), + 'value' => '', + 'name' => 'default_mailserver' + ), + //################################# + // ENDE Datatable fields + //################################# + ) +); + +$form["tabs"]['dns'] = array ( + 'title' => "DNS", + 'width' => 70, + 'template' => "templates/system_config_dns_edit.htm", + 'fields' => array ( + //################################# + // Begin Datatable fields + //################################# + 'default_dnsserver' => array ( + 'datatype' => 'INTEGER', + 'formtype' => 'SELECT', + 'default' => '1', + 'datasource' => array ( 'type' => 'CUSTOM', + 'class'=> 'custom_datasource', + 'function'=> 'client_servers' + ), + 'value' => '', + 'name' => 'default_dnsserver' + ), + 'default_slave_dnsserver' => array ( + 'datatype' => 'INTEGER', + 'formtype' => 'SELECT', + 'default' => '1', + 'datasource' => array ( 'type' => 'CUSTOM', + 'class'=> 'custom_datasource', + 'function'=> 'client_servers' + ), + 'value' => '', + 'name' => 'default_slave_dnsserver' + ), //################################# // ENDE Datatable fields //################################# diff --git a/interface/web/admin/lib/lang/en.lng b/interface/web/admin/lib/lang/en.lng index d9cbc7f8392567bfc902daa51cd6c30788faf29c..0d075c1165f313999869728b14aad2be41a21b67 100644 --- a/interface/web/admin/lib/lang/en.lng +++ b/interface/web/admin/lib/lang/en.lng @@ -41,6 +41,8 @@ $wb['Firewall'] = 'Firewall'; $wb['Interface'] = 'Interface'; $wb['Interface Config'] = 'Main Config'; + $wb['Sites'] = 'Sites'; + $wb['DNS'] = 'DNS'; $wb['Domains'] = 'Domains'; $wb['Misc'] = 'Misc'; @@ -59,4 +61,4 @@ $wb['Import'] = 'Import'; $wb['Remote Actions'] = 'Remote Actions'; $wb['Do OS-Update'] = 'Do OS-Update'; $wb['Do ISPConfig-Update'] = 'Do ISPConfig-Update'; -?> \ No newline at end of file +?> diff --git a/interface/web/admin/lib/lang/en_system_config.lng b/interface/web/admin/lib/lang/en_system_config.lng index 51131ef3d6265d38a237c4e8bc3925ad20b7a30c..3fa210f07d32d8ca3375463feca37927a989c265 100644 --- a/interface/web/admin/lib/lang/en_system_config.lng +++ b/interface/web/admin/lib/lang/en_system_config.lng @@ -73,4 +73,9 @@ $wb['session_allow_endless_txt'] = 'Enable "stay logged in"'; $wb['No'] = 'No'; $wb['min_password_length_txt'] = 'Minimum password length'; $wb['min_password_strength_txt'] = 'Minimum password strength'; +$wb["default_mailserver_txt"] = 'Default Mailserver'; +$wb["default_webserver_txt"] = 'Default Webserver'; +$wb["default_dnsserver_txt"] = 'Default DNS Server'; +$wb["default_slave_dnsserver_txt"] = 'Default Secondary DNS Server'; +$wb["default_dbserver_txt"] = 'Default Database Server'; ?> diff --git a/interface/web/admin/lib/lang/es.lng b/interface/web/admin/lib/lang/es.lng index 8e5b0843f171e04d0c2aa24bef4b026a80a0b61b..cd26b06c2d9b3e78857de9c25359d8c11adc4140 100644 --- a/interface/web/admin/lib/lang/es.lng +++ b/interface/web/admin/lib/lang/es.lng @@ -47,4 +47,6 @@ $wb['Directive Snippets'] = 'Fragmentos de Directivas'; $wb['Interface'] = 'Interfaz'; $wb['Domains'] = 'Dominios'; $wb['Misc'] = 'Misc'; +$wb['Sites'] = 'Sitios'; +$wb['DNS'] = 'DNS'; ?> diff --git a/interface/web/admin/lib/lang/es_system_config.lng b/interface/web/admin/lib/lang/es_system_config.lng index ec1cb69051b697032d3ab186f2242271287813b1..503d844b7f8746ff566e17d411eab78c40f3cfd2 100644 --- a/interface/web/admin/lib/lang/es_system_config.lng +++ b/interface/web/admin/lib/lang/es_system_config.lng @@ -70,4 +70,9 @@ $wb['min_password_length_txt'] = 'Longitud de contraseña mÃnima'; $wb['min_password_strength_txt'] = 'Fortaleza de contraseña mÃnima'; $wb['Sites'] = 'Sitios'; $wb['System Config'] = 'Configuración de sistema'; +$wb['default_mailserver_txt'] = 'Servidor de correo por defecto'; +$wb['default_webserver_txt'] = 'Servidor web por defecto'; +$wb['default_dnsserver_txt'] = 'Servidor DNS por defecto'; +$wb['default_slave_dnsserver_txt'] = 'Servidor DNS secundario por defecto'; +$wb['default_dbserver_txt'] = 'Servidor de bases de datos por defecto'; ?> diff --git a/interface/web/admin/system_config_edit.php b/interface/web/admin/system_config_edit.php index 3a2ac8e76584ddb13750d56ae7a0b7dfcbeceffd..a793a83eecdea358d570e5b13cfc6b4a0ac45ff3 100644 --- a/interface/web/admin/system_config_edit.php +++ b/interface/web/admin/system_config_edit.php @@ -64,6 +64,9 @@ class page_action extends tform_actions { $server_id = $this->id; $this->dataRecord = $app->getconf->get_global_config($section); + if (is_null($this->dataRecord)) { + $this->dataRecord = array(); + } if ($section == 'domains'){ if (isset($this->dataRecord['use_domain_module'])){ $_SESSION['use_domain_module_old_value'] = $this->dataRecord['use_domain_module']; diff --git a/interface/web/admin/templates/system_config_mail_edit.htm b/interface/web/admin/templates/system_config_mail_edit.htm index 98966fd2b9d248cd8d3704b0492cbd02b3f0ff19..b231495b49ff7429289bd4aea39b331781c323d5 100644 --- a/interface/web/admin/templates/system_config_mail_edit.htm +++ b/interface/web/admin/templates/system_config_mail_edit.htm @@ -85,6 +85,12 @@ {tmpl_var name='smtp_crypt'} </select> </div> + <div class="ctrlHolder"> + <label for="default_mailserver">{tmpl_var name='default_mailserver_txt'}</label> + <select name="default_mailserver" id="default_mailserver" class="selectInput"> + {tmpl_var name='default_mailserver'} + </select> + </div> </fieldset> <input type="hidden" name="id" value="{tmpl_var name='id'}"> diff --git a/interface/web/admin/templates/system_config_sites_edit.htm b/interface/web/admin/templates/system_config_sites_edit.htm index f98493ee79be98c6562b9ffc63a5d31e1718c422..7811b17550091c2c00b88b045eece5439bf399e1 100644 --- a/interface/web/admin/templates/system_config_sites_edit.htm +++ b/interface/web/admin/templates/system_config_sites_edit.htm @@ -63,6 +63,18 @@ {tmpl_var name='reseller_can_use_options'} </div> </div> + <div class="ctrlHolder"> + <label for="default_webserver">{tmpl_var name='default_webserver_txt'}</label> + <select name="default_webserver" id="default_webserver" class="selectInput"> + {tmpl_var name='default_webserver'} + </select> + </div> + <div class="ctrlHolder"> + <label for="default_dbserver">{tmpl_var name='default_dbserver_txt'}</label> + <select name="default_dbserver" id="default_dbserver" class="selectInput"> + {tmpl_var name='default_dbserver'} + </select> + </div> </fieldset> <input type="hidden" name="id" value="{tmpl_var name='id'}"> diff --git a/interface/web/dns/dns_import.php b/interface/web/dns/dns_import.php index c78e41ad2293eaa1962a46f4faf1d74314cfd3c1..845dfd0345752cc586adebf38e380f9e20e5923c 100644 --- a/interface/web/dns/dns_import.php +++ b/interface/web/dns/dns_import.php @@ -56,7 +56,8 @@ if (isset($_POST['server_id'])) { $server_id = $app->functions->intval($_POST['server_id_value']); $post_server_id = true; } else { - $server_id = 1; + $settings = $app->getconf->get_global_config('dns'); + $server_id = $app->functions->intval($settings['default_dnsserver']); $post_server_id = false; } diff --git a/interface/web/dns/dns_slave_edit.php b/interface/web/dns/dns_slave_edit.php index dfca92e08398c6d50cdecbcbb208efde647dcba2..c647a1771bb338c4b11a302a07c8296f0d6dfc30 100644 --- a/interface/web/dns/dns_slave_edit.php +++ b/interface/web/dns/dns_slave_edit.php @@ -61,6 +61,9 @@ class page_action extends tform_actions { if(!$app->tform->checkResellerLimit('limit_dns_slave_zone')) { $app->error('Reseller: '.$app->tform->wordbook["limit_dns_slave_zone_txt"]); } + } else { + $settings = $app->getconf->get_global_config('dns'); + $app->tform->formDef['tabs']['dns_slave']['fields']['server_id']['default'] = intval($settings['default_slave_dnsserver']); } parent::onShowNew(); diff --git a/interface/web/dns/dns_soa_edit.php b/interface/web/dns/dns_soa_edit.php index 17c704ed12e34537053d6d9e0dc81617592e6171..0397ed08d24ae28a1f185c0f495c7f6dfd28ab62 100644 --- a/interface/web/dns/dns_soa_edit.php +++ b/interface/web/dns/dns_soa_edit.php @@ -71,6 +71,9 @@ class page_action extends tform_actions { if(!$app->tform->checkResellerLimit('limit_dns_zone')) { $app->error('Reseller: '.$app->tform->wordbook["limit_dns_zone_txt"]); } + } else { + $settings = $app->getconf->get_global_config('dns'); + $app->tform->formDef['tabs']['dns_soa']['fields']['server_id']['default'] = intval($settings['default_dnsserver']); } parent::onShowNew(); diff --git a/interface/web/dns/dns_wizard.php b/interface/web/dns/dns_wizard.php index 93996ed39e1bcd05f34a14d263561f31f680757c..6ed3fcce1e290e38ee01491838ceaf3859be08c3 100644 --- a/interface/web/dns/dns_wizard.php +++ b/interface/web/dns/dns_wizard.php @@ -53,7 +53,8 @@ if (isset($_POST['server_id'])) { $server_id = $app->functions->intval($_POST['server_id_value']); $post_server_id = true; } else { - $server_id = 1; + $settings = $app->getconf->get_global_config('dns'); + $server_id = $app->functions->intval($settings['default_dnsserver']); $post_server_id = false; } diff --git a/interface/web/mail/mail_domain_edit.php b/interface/web/mail/mail_domain_edit.php index 8220c2ce861260d6ab6f298557e4d1beb43e99ef..262ee16e5d49c80580d6f602387d7c29196e1339 100644 --- a/interface/web/mail/mail_domain_edit.php +++ b/interface/web/mail/mail_domain_edit.php @@ -61,6 +61,9 @@ class page_action extends tform_actions { if(!$app->tform->checkResellerLimit('limit_maildomain')) { $app->error('Reseller: '.$app->tform->wordbook["limit_maildomain_txt"]); } + } else { + $settings = $app->getconf->get_global_config('mail'); + $app->tform->formDef['tabs']['domain']['fields']['server_id']['default'] = intval($settings['default_mailserver']); } parent::onShowNew(); diff --git a/interface/web/sites/database_edit.php b/interface/web/sites/database_edit.php index 58cb0a623c5c6ec0fa5238b3adea1f684c8e3159..79183c4612c26c8b4049ce187f0be53868e96dfd 100644 --- a/interface/web/sites/database_edit.php +++ b/interface/web/sites/database_edit.php @@ -61,6 +61,9 @@ class page_action extends tform_actions { if(!$app->tform->checkResellerLimit('limit_database')) { $app->error('Reseller: '.$app->tform->wordbook["limit_database_txt"]); } + } else { + $settings = $app->getconf->get_global_config('sites'); + $app->tform->formDef['tabs']['database']['fields']['server_id']['default'] = intval($settings['default_dbserver']); } parent::onShowNew(); diff --git a/interface/web/sites/web_vhost_domain_edit.php b/interface/web/sites/web_vhost_domain_edit.php index de731bd644a0df5c06eaf2732b507c1d36065255..bd495ef41304fb4d96101af695c8515e9c874aa3 100644 --- a/interface/web/sites/web_vhost_domain_edit.php +++ b/interface/web/sites/web_vhost_domain_edit.php @@ -115,6 +115,9 @@ class page_action extends tform_actions { $web_servers = explode(',', $client['web_servers']); $app->tpl->setVar("server_id_value", $web_servers[0]); unset($web_servers); + } else { + $settings = $app->getconf->get_global_config('sites'); + $app->tform->formDef['tabs']['domain']['fields']['server_id']['default'] = intval($settings['default_webserver']); } $app->tform->formDef['tabs']['domain']['readonly'] = false;