| @@ -0,0 +1,25 @@ | |||||
| Copyright (c) 2016, Kristián Feldsam, FELDSAM s.r.o. <info@feldsam.cz> | |||||
| All rights reserved. | |||||
| Redistribution and use in source and binary forms, with or without modification, | |||||
| are permitted provided that the following conditions are met: | |||||
| - Redistributions of source code must retain the above copyright notice, | |||||
| this list of conditions and the following disclaimer. | |||||
| - Redistributions in binary form must reproduce the above copyright notice, | |||||
| this list of conditions and the following disclaimer in the documentation | |||||
| and/or other materials provided with the distribution. | |||||
| - Neither the name of ISPConfig nor the names of its contributors | |||||
| may be used to endorse or promote products derived from this software without | |||||
| specific prior written permission. | |||||
| THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND | |||||
| ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED | |||||
| WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. | |||||
| IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, | |||||
| INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, | |||||
| BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | |||||
| DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY | |||||
| OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING | |||||
| NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, | |||||
| EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | |||||
| @@ -0,0 +1,12 @@ | |||||
| # ISPConfig WebDNS module | |||||
| Este módulo crea las DNS y Sitio web introduciendo el dominio y un cliente. | |||||
| This module is compatible with ISPConfig version 3.1.3 | |||||
| ## Installation | |||||
| -Crear nuevo registro en la tabla dns_template lanzando el archivo webdns_db.sql 'mysql -u root -p < webdns_db.sql' | |||||
| -Copiar el módulo en la carpeta web de ispconfig. | |||||
| -Activa el módulo desde ispconfig en System->CP Users->Admin User->Check "webdns" y guardar. | |||||
| -Logout y login para ver el módulo. | |||||
| @@ -0,0 +1,123 @@ | |||||
| <?php | |||||
| /* | |||||
| Copyright (c) 2017, David Ramos García, Open6Hosting <dramos@open6hosting.com> | |||||
| All rights reserved. | |||||
| Redistribution and use in source and binary forms, with or without modification, | |||||
| are permitted provided that the following conditions are met: | |||||
| * Redistributions of source code must retain the above copyright notice, | |||||
| this list of conditions and the following disclaimer. | |||||
| * Redistributions in binary form must reproduce the above copyright notice, | |||||
| this list of conditions and the following disclaimer in the documentation | |||||
| and/or other materials provided with the distribution. | |||||
| * Neither the name of ISPConfig nor the names of its contributors | |||||
| may be used to endorse or promote products derived from this software without | |||||
| specific prior written permission. | |||||
| THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND | |||||
| ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED | |||||
| WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. | |||||
| IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, | |||||
| INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, | |||||
| BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | |||||
| DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY | |||||
| OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING | |||||
| NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, | |||||
| EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | |||||
| Form Definition | |||||
| Tabledefinition | |||||
| Datatypes: | |||||
| - INTEGER (Forces the input to Int) | |||||
| - DOUBLE | |||||
| - CURRENCY (Formats the values to currency notation) | |||||
| - VARCHAR (no format check, maxlength: 255) | |||||
| - TEXT (no format check) | |||||
| - DATE (Dateformat, automatic conversion to timestamps) | |||||
| Formtype: | |||||
| - TEXT (Textfield) | |||||
| - TEXTAREA (Textarea) | |||||
| - PASSWORD (Password textfield, input is not shown when edited) | |||||
| - SELECT (Select option field) | |||||
| - RADIO | |||||
| - CHECKBOX | |||||
| - CHECKBOXARRAY | |||||
| - FILE | |||||
| VALUE: | |||||
| - Wert oder Array | |||||
| Hint: | |||||
| The ID field of the database table is not part of the datafield definition. | |||||
| The ID field must be always auto incement (int or bigint). | |||||
| Search: | |||||
| - searchable = 1 or searchable = 2 include the field in the search | |||||
| - searchable = 1: this field will be the title of the search result | |||||
| - searchable = 2: this field will be included in the description of the search result | |||||
| */ | |||||
| $form["title"] = "Nuevo servicio Web"; | |||||
| $form["description"] = ""; | |||||
| $form["name"] = "new_service_webdns"; | |||||
| $form["action"] = "new_service_webdns.php"; | |||||
| $form["db_table"] = "server"; | |||||
| $form["db_table_idx"] = "server_id"; | |||||
| $form["db_history"] = "no"; | |||||
| $form["tab_default"] = "webdns"; | |||||
| $form["auth"] = 'yes'; // yes / no | |||||
| $form["auth_preset"]["userid"] = 0; // 0 = id of the user, > 0 id must match with id of current user | |||||
| $form["auth_preset"]["groupid"] = 0; // 0 = default groupid of the user, > 0 id must match with groupid of current user | |||||
| $form["auth_preset"]["perm_user"] = 'riud'; //r = read, i = insert, u = update, d = delete | |||||
| $form["auth_preset"]["perm_group"] = 'riud'; //r = read, i = insert, u = update, d = delete | |||||
| $form["auth_preset"]["perm_other"] = ''; //r = read, i = insert, u = update, d = delete | |||||
| $form["tabs"]['webdns'] = array( | |||||
| 'title' => "Alta", | |||||
| 'description' => 'Crea un el sitio web y su dominio.', | |||||
| 'width' => 100, | |||||
| 'template' => "templates/new_service_webdns.htm", | |||||
| 'fields' => array ( | |||||
| 'domain' => array ( | |||||
| 'datatype' => 'VARCHAR', | |||||
| 'formtype' => 'TEXT', | |||||
| 'filters' => array( | |||||
| 0 => array( 'event' => 'SAVE', | |||||
| 'type' => 'IDNTOASCII'), | |||||
| 1 => array( 'event' => 'SHOW', | |||||
| 'type' => 'IDNTOUTF8'), | |||||
| 2 => array( 'event' => 'SAVE', | |||||
| 'type' => 'TOLOWER') | |||||
| ), | |||||
| 'validators' => array ( | |||||
| 0 => array ( 'type' => 'NOTEMPTY', | |||||
| 'errmsg'=> 'domain_error_empty'), | |||||
| 2 => array ( 'type' => 'REGEX', | |||||
| 'regex' => '/^[\w\.\-]{2,255}\.[a-zA-Z0-9\-]{2,30}$/', | |||||
| 'errmsg'=> 'domain_error_regex'), | |||||
| ), | |||||
| 'default' => '', | |||||
| 'value' => '', | |||||
| 'width' => '30', | |||||
| 'maxlength' => '255' | |||||
| ), | |||||
| 'client_id' => array ( | |||||
| 'datatype' => 'INTEGER', | |||||
| 'formtype' => 'SELECT', | |||||
| 'default' => '', | |||||
| 'datasource' => array ( 'type' => 'SQL', | |||||
| 'querystring' => "SELECT sys_group.groupid, sys_group.client_id, sys_group.name, CONCAT(IF(client.company_name != '', CONCAT(client.company_name, ' :: '), ''), client.contact_name, ' (', client.username, IF(client.customer_no != '', CONCAT(', ', client.customer_no), ''), ')') as contactname FROM sys_group, client WHERE sys_group.client_id = client.client_id AND sys_group.client_id > 0 ORDER BY client.company_name, client.contact_name, sys_group.name", | |||||
| 'keyfield'=> 'client_id', | |||||
| 'valuefield'=> 'contactname' | |||||
| ), | |||||
| 'value' => '' | |||||
| ), | |||||
| ) | |||||
| ); | |||||
| @@ -0,0 +1,6 @@ | |||||
| <?php | |||||
| /* | |||||
| The admin.conf.php file contains menu definitions to be displayed in the administration module. | |||||
| In this example there are none. | |||||
| */ | |||||
| @@ -0,0 +1,183 @@ | |||||
| <?php | |||||
| $wb["client_id_txt"] = 'Client'; | |||||
| $wb["domain_txt"] = 'Domain'; | |||||
| $wb["db_txt"] = 'Create DB'; | |||||
| $wb["db_type_txt"] = 'DB type'; | |||||
| $wb["ftp_txt"] = 'Create FTP'; | |||||
| $wb["ssh_txt"] = 'Create SSH'; | |||||
| $wb["domain_error_empty"] = 'The domain-name is empty'; | |||||
| $wb["domain_error_regex"] = 'This domain-name is not allowed'; | |||||
| $wb['domain_error_unique'] = 'The domain already exists'; | |||||
| $wb["template_id_txt"] = 'Template'; | |||||
| $wb["mail_txt"] = 'Create Mail'; | |||||
| $wb["mailboxes_txt"] = 'Mailboxes'; | |||||
| $wb["mailboxes_help_txt"] = 'Separated by comma, just mailbox name without @domain.tld'; | |||||
| $wb["dkim_txt"] = 'Enable DKIM'; | |||||
| $wb["dkim_private_txt"] = 'DKIM Private-key'; | |||||
| $wb["dkim_public_txt"] = 'DKIM Public-key\nfor information only'; | |||||
| $wb["dkim_generate_txt"] = 'Generate DKIM Private-key'; | |||||
| $wb["dkim_dns_txt"] = 'DNS-Record'; | |||||
| $wb["dkim_settings_txt"] = 'DomainKeys Identified Mail (DKIM)'; | |||||
| $wb['dkim_selector_txt'] = 'DKIM-Selector'; | |||||
| $wb["dkim_private_key_error"] = 'Invalid DKIM-Private key'; | |||||
| $wb["dns_txt"] = 'Create DNS Zone'; | |||||
| $wb['email_txt'] = 'Email'; | |||||
| $wb['dnssec_txt'] = 'Sign zone (DNSSEC)'; | |||||
| $wb['ns1_txt'] = 'NS 1'; | |||||
| $wb['ns2_txt'] = 'NS 2'; | |||||
| $wb['ip_txt'] = 'IP Address'; | |||||
| $wb['ipv6_txt'] = 'IPv6 Address'; | |||||
| $wb['error_origin_empty'] = 'Origin empty.'; | |||||
| $wb['error_ns_empty'] = 'NS empty.'; | |||||
| $wb['error_mbox_empty'] = 'Mbox empty.'; | |||||
| $wb['error_refresh_empty'] = 'Refresh empty.'; | |||||
| $wb['error_retry_empty'] = 'Retry empty.'; | |||||
| $wb['error_expire_empty'] = 'Expire empty.'; | |||||
| $wb['error_minimum_empty'] = 'Minimum empty.'; | |||||
| $wb['error_ttl_empty'] = 'TTL empty.'; | |||||
| $wb['error_domain_empty'] = 'Domain empty'; | |||||
| $wb['error_ip_empty'] = 'IP empty.'; | |||||
| $wb['error_ipv6_empty'] = 'IPv6 empty.'; | |||||
| $wb['error_ns1_empty'] = 'NS1 empty.'; | |||||
| $wb['error_ns2_empty'] = 'NS2 empty.'; | |||||
| $wb['error_email_empty'] = 'Email empty.'; | |||||
| $wb['error_domain_regex'] = 'Domain contains invalid characters.'; | |||||
| $wb['error_ns1_regex'] = 'NS1 contains invalid characters.'; | |||||
| $wb['error_ns2_regex'] = 'NS2 contains invalid characters.'; | |||||
| $wb['error_email_regex'] = 'Email does not contain a valid email address.'; | |||||
| $wb["backup_interval_txt"] = 'Backup interval'; | |||||
| $wb["backup_copies_txt"] = 'Number of backup copies'; | |||||
| $wb["ssl_state_txt"] = 'State'; | |||||
| $wb["ssl_locality_txt"] = 'Locality'; | |||||
| $wb["ssl_organisation_txt"] = 'Organisation'; | |||||
| $wb["ssl_organisation_unit_txt"] = 'Organisation Unit'; | |||||
| $wb["ssl_country_txt"] = 'Country'; | |||||
| $wb["ssl_key_txt"] = 'SSL Key'; | |||||
| $wb["ssl_request_txt"] = 'SSL Request'; | |||||
| $wb["ssl_cert_txt"] = 'SSL Certificate'; | |||||
| $wb["ssl_bundle_txt"] = 'SSL Bundle'; | |||||
| $wb["ssl_action_txt"] = 'SSL Action'; | |||||
| $wb["ssl_domain_txt"] = 'SSL Domain'; | |||||
| $wb["server_id_txt"] = 'Server'; | |||||
| $wb["domain_txt"] = 'Domain'; | |||||
| $wb['web_folder_error_regex'] = 'Invalid folder entered. Please do not enter a slash.'; | |||||
| $wb["type_txt"] = 'Type'; | |||||
| $wb["parent_domain_id_txt"] = 'Parent Website'; | |||||
| $wb["redirect_type_txt"] = 'Redirect Type'; | |||||
| $wb["redirect_path_txt"] = 'Redirect Path'; | |||||
| $wb["active_txt"] = 'Active'; | |||||
| $wb["document_root_txt"] = 'Documentroot'; | |||||
| $wb["system_user_txt"] = 'Linux User'; | |||||
| $wb["system_group_txt"] = 'Linux Group'; | |||||
| $wb["ip_address_txt"] = 'IPv4-Address'; | |||||
| $wb["ipv6_address_txt"] = 'IPv6-Address'; | |||||
| $wb["vhost_type_txt"] = 'VHost Type'; | |||||
| $wb["hd_quota_txt"] = 'Harddisk Quota'; | |||||
| $wb["traffic_quota_txt"] = 'Traffic Quota'; | |||||
| $wb["cgi_txt"] = 'CGI'; | |||||
| $wb["ssi_txt"] = 'SSI'; | |||||
| $wb["errordocs_txt"] = 'Own Error-Documents'; | |||||
| $wb["subdomain_txt"] = 'Auto-Subdomain'; | |||||
| $wb["ssl_txt"] = 'SSL'; | |||||
| $wb["suexec_txt"] = 'SuEXEC'; | |||||
| $wb["php_txt"] = 'PHP'; | |||||
| $wb["client_txt"] = 'Client'; | |||||
| $wb["limit_web_domain_txt"] = 'The max. number of web domains for your account is reached.'; | |||||
| $wb["limit_web_aliasdomain_txt"] = 'The max. number of aliasdomains for your account is reached.'; | |||||
| $wb["limit_web_subdomain_txt"] = 'The max. number of web subdomains for your account is reached.'; | |||||
| $wb["apache_directives_txt"] = 'Apache Directives'; | |||||
| $wb["domain_error_empty"] = 'Domain is empty.'; | |||||
| $wb["domain_error_unique"] = 'There is already a website or sub / aliasdomain with this domain name.'; | |||||
| $wb["domain_error_regex"] = 'Domain name invalid.'; | |||||
| $wb["domain_error_autosub"] = 'There is already a subdomain with these settings.'; | |||||
| $wb["hd_quota_error_empty"] = 'Harddisk quota is 0 or empty.'; | |||||
| $wb["traffic_quota_error_empty"] = 'Traffic quota is empty.'; | |||||
| $wb["error_ssl_state_empty"] = 'SSL State is empty.'; | |||||
| $wb["error_ssl_locality_empty"] = 'SSL Locality is empty.'; | |||||
| $wb["error_ssl_organisation_empty"] = 'SSL Organisation is empty.'; | |||||
| $wb["error_ssl_organisation_unit_empty"] = 'SSL Organisation Unit is empty.'; | |||||
| $wb["error_ssl_country_empty"] = 'SSL Country is empty.'; | |||||
| $wb["error_ssl_cert_empty"] = 'SSL Certificate field is empty'; | |||||
| $wb["client_group_id_txt"] = 'Client'; | |||||
| $wb["stats_password_txt"] = 'Set Webstatistics password'; | |||||
| $wb["allow_override_txt"] = 'Apache AllowOverride'; | |||||
| $wb["limit_web_quota_free_txt"] = 'Max. available Harddisk Quota'; | |||||
| $wb["ssl_state_error_regex"] = 'Invalid SSL State. Valid characters are: a-z, 0-9 and .,-_&äöüÄÖÜ'; | |||||
| $wb["ssl_locality_error_regex"] = 'Invalid SSL Locality. Valid characters are: a-z, 0-9 and .,-_&äöüÄÖÜ'; | |||||
| $wb["ssl_organisation_error_regex"] = 'Invalid SSL Organisation. Valid characters are: a-z, 0-9 and .,-_&äöüÄÖÜ'; | |||||
| $wb["ssl_organistaion_unit_error_regex"] = 'Invalid SSL Organisation Unit. Valid characters are: a-z, 0-9 and .,-_&äöüÄÖÜ'; | |||||
| $wb["ssl_country_error_regex"] = 'Invalid SSL Country. Valid characters are: A-Z'; | |||||
| $wb["limit_traffic_quota_free_txt"] = 'Max. available Traffic Quota'; | |||||
| $wb["redirect_error_regex"] = 'Invalid redirect path. Valid redirects are for example: /test/ or http://www.domain.tld/test/'; | |||||
| $wb["php_open_basedir_txt"] = 'PHP open_basedir'; | |||||
| $wb["traffic_quota_exceeded_txt"] = 'Traffic quota exceeded'; | |||||
| $wb["ruby_txt"] = 'Ruby'; | |||||
| $wb["stats_user_txt"] = 'Webstatistics username'; | |||||
| $wb["stats_type_txt"] = 'Webstatistics program'; | |||||
| $wb["custom_php_ini_txt"] = 'Custom php.ini settings'; | |||||
| $wb['none_txt'] = 'None'; | |||||
| $wb['disabled_txt'] = 'Disabled'; | |||||
| $wb['no_redirect_txt'] = 'No redirect'; | |||||
| $wb['no_flag_txt'] = 'No flag'; | |||||
| $wb['save_certificate_txt'] = 'Save certificate'; | |||||
| $wb['create_certificate_txt'] = 'Create certificate'; | |||||
| $wb['delete_certificate_txt'] = 'Delete certificate'; | |||||
| $wb["nginx_directives_txt"] = 'nginx Directives'; | |||||
| $wb["seo_redirect_txt"] = 'SEO Redirect'; | |||||
| $wb["non_www_to_www_txt"] = 'Non-www -> www'; | |||||
| $wb["www_to_non_www_txt"] = 'www -> non-www'; | |||||
| $wb["php_fpm_use_socket_txt"] = 'Use Socket For PHP-FPM'; | |||||
| $wb["error_no_sni_txt"] = 'SNI for SSL is not activated on this server. You can enable only one SSL certificate on each IP address.'; | |||||
| $wb["python_txt"] = 'Python'; | |||||
| $wb["perl_txt"] = 'Perl'; | |||||
| $wb["pm_max_children_txt"] = 'PHP-FPM pm.max_children'; | |||||
| $wb["pm_start_servers_txt"] = 'PHP-FPM pm.start_servers'; | |||||
| $wb["pm_min_spare_servers_txt"] = 'PHP-FPM pm.min_spare_servers'; | |||||
| $wb["pm_max_spare_servers_txt"] = 'PHP-FPM pm.max_spare_servers'; | |||||
| $wb["error_php_fpm_pm_settings_txt"] = 'Values of PHP-FPM pm settings must be as follows: pm.max_children >= pm.max_spare_servers >= pm.start_servers >= pm.min_spare_servers > 0'; | |||||
| $wb["pm_max_children_error_regex"] = 'PHP-FPM pm.max_children must be a positive integer value.'; | |||||
| $wb["pm_start_servers_error_regex"] = 'PHP-FPM pm.start_servers must be a positive integer value.'; | |||||
| $wb["pm_min_spare_servers_error_regex"] = 'PHP-FPM pm.min_spare_servers must be a positive integer value.'; | |||||
| $wb["pm_max_spare_servers_error_regex"] = 'PHP-FPM pm.max_spare_servers must be a positive integer value.'; | |||||
| $wb["hd_quota_error_regex"] = 'Harddisk quota is invalid.'; | |||||
| $wb["traffic_quota_error_regex"] = 'Traffic quota is invalid.'; | |||||
| $wb["fastcgi_php_version_txt"] = 'PHP Version'; | |||||
| $wb["pm_txt"] = 'PHP-FPM Process Manager'; | |||||
| $wb["pm_process_idle_timeout_txt"] = 'PHP-FPM pm.process_idle_timeout'; | |||||
| $wb["pm_max_requests_txt"] = 'PHP-FPM pm.max_requests'; | |||||
| $wb["pm_process_idle_timeout_error_regex"] = 'PHP-FPM pm.process_idle_timeout must be a positive integer value.'; | |||||
| $wb["pm_max_requests_error_regex"] = 'PHP-FPM pm.max_requests must be an integer value >= 0.'; | |||||
| $wb["pm_ondemand_hint_txt"] = 'Please note that you must have PHP version >= 5.3.9 in order to use the ondemand process manager. If you select ondemand for an older PHP version, PHP will not start anymore!'; | |||||
| $wb['generate_password_txt'] = 'Generate Password'; | |||||
| $wb['repeat_password_txt'] = 'Repeat Password'; | |||||
| $wb['password_mismatch_txt'] = 'The passwords do not match.'; | |||||
| $wb['password_match_txt'] = 'The passwords do match.'; | |||||
| $wb['available_php_directive_snippets_txt'] = 'Available PHP Directive Snippets:'; | |||||
| $wb['available_apache_directive_snippets_txt'] = 'Available Apache Directive Snippets:'; | |||||
| $wb['available_nginx_directive_snippets_txt'] = 'Available nginx Directive Snippets:'; | |||||
| $wb['proxy_directives_txt'] = 'Proxy Directives'; | |||||
| $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; | |||||
| $wb['no_server_error'] = 'No server selected.'; | |||||
| $wb['no_backup_txt'] = 'No backup'; | |||||
| $wb['daily_backup_txt'] = 'Daily'; | |||||
| $wb['weekly_backup_txt'] = 'Weekly'; | |||||
| $wb['monthly_backup_txt'] = 'Monthly'; | |||||
| $wb['rewrite_rules_txt'] = 'Rewrite Rules'; | |||||
| $wb['invalid_rewrite_rules_txt'] = 'Invalid Rewrite Rules'; | |||||
| $wb['allowed_rewrite_rule_directives_txt'] = 'Allowed Directives:'; | |||||
| $wb['configuration_error_txt'] = "CONFIGURATION ERROR"; | |||||
| $wb['variables_txt'] = 'Variables'; | |||||
| $wb['added_by_txt'] = 'Added by'; | |||||
| $wb['added_date_txt'] = 'Added date'; | |||||
| $wb['backup_excludes_txt'] = 'Excluded Directories'; | |||||
| $wb['backup_excludes_note_txt'] = '(Separate multiple directories with commas. Example: web/cache/*,web/backup)'; | |||||
| $wb['backup_excludes_error_regex'] = 'The excluded directories contain invalid characters.'; | |||||
| $wb['invalid_custom_php_ini_settings_txt'] = 'Invalid php.ini settings'; | |||||
| $wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group'; | |||||
| $wb['apache_directive_blocked_error'] = 'Apache directive blocked by security settings:'; | |||||
| $wb['http_port_txt'] = 'HTTP Port'; | |||||
| $wb['https_port_txt'] = 'HTTPS Port'; | |||||
| $wb['http_port_error_regex'] = 'HTTP Port invalid.'; | |||||
| $wb['https_port_error_regex'] = 'HTTPS Port invalid.'; | |||||
| ?> | |||||
| @@ -0,0 +1,81 @@ | |||||
| <?php | |||||
| $wb["server_id_txt"] = 'Server'; | |||||
| $wb["ip_address_txt"] = 'IPv4-Address'; | |||||
| $wb["ipv6_address_txt"] = 'IPv6-Address'; | |||||
| $wb["traffic_quota_txt"] = 'Traffic Quota'; | |||||
| $wb['hd_quota_txt'] = 'Harddisk Quota'; | |||||
| $wb["cgi_txt"] = 'CGI'; | |||||
| $wb["ssi_txt"] = 'SSI'; | |||||
| $wb["errordocs_txt"] = 'Own Error-Documents'; | |||||
| $wb["subdomain_txt"] = 'Auto-Subdomain'; | |||||
| $wb["ssl_txt"] = 'SSL'; | |||||
| $wb["suexec_txt"] = 'SuEXEC'; | |||||
| $wb["php_txt"] = 'PHP'; | |||||
| $wb["perl_txt"] = 'Perl'; | |||||
| $wb["ruby_txt"] = 'Ruby'; | |||||
| $wb["python_txt"] = 'Python'; | |||||
| $wb["allow_override_txt"] = 'Apache AllowOverride'; | |||||
| $wb["fastcgi_php_version_txt"] = 'PHP Version'; | |||||
| $wb["pm_txt"] = 'PHP-FPM Process Manager'; | |||||
| $wb["pm_process_idle_timeout_txt"] = 'PHP-FPM pm.process_idle_timeout'; | |||||
| $wb["pm_max_requests_txt"] = 'PHP-FPM pm.max_requests'; | |||||
| $wb["pm_process_idle_timeout_error_regex"] = 'PHP-FPM pm.process_idle_timeout must be a positive integer value.'; | |||||
| $wb["pm_max_requests_error_regex"] = 'PHP-FPM pm.max_requests must be an integer value >= 0.'; | |||||
| $wb["pm_ondemand_hint_txt"] = 'Please note that you must have PHP version >= 5.3.9 in order to use the ondemand process manager. If you select ondemand for an older PHP version, PHP will not start anymore!'; | |||||
| $wb["pm_max_children_txt"] = 'PHP-FPM pm.max_children'; | |||||
| $wb["pm_start_servers_txt"] = 'PHP-FPM pm.start_servers'; | |||||
| $wb["pm_min_spare_servers_txt"] = 'PHP-FPM pm.min_spare_servers'; | |||||
| $wb["pm_max_spare_servers_txt"] = 'PHP-FPM pm.max_spare_servers'; | |||||
| $wb["error_php_fpm_pm_settings_txt"] = 'Values of PHP-FPM pm settings must be as follows: pm.max_children >= pm.max_spare_servers >= pm.start_servers >= pm.min_spare_servers > 0'; | |||||
| $wb["pm_max_children_error_regex"] = 'PHP-FPM pm.max_children must be a positive integer value.'; | |||||
| $wb["pm_start_servers_error_regex"] = 'PHP-FPM pm.start_servers must be a positive integer value.'; | |||||
| $wb["pm_min_spare_servers_error_regex"] = 'PHP-FPM pm.min_spare_servers must be a positive integer value.'; | |||||
| $wb["pm_max_spare_servers_error_regex"] = 'PHP-FPM pm.max_spare_servers must be a positive integer value.'; | |||||
| $wb["apache_directives_txt"] = 'Apache Directives'; | |||||
| $wb["nginx_directives_txt"] = 'Nginx Directives'; | |||||
| $wb["proxy_directives_txt"] = 'Proxy Directives'; | |||||
| $wb["custom_php_ini_txt"] = 'Custom php.ini settings'; | |||||
| $wb["seo_redirect_txt"] = 'SEO Redirect'; | |||||
| $wb['rewrite_to_https_txt'] = 'Rewrite HTTP to HTTPS'; | |||||
| $wb["no_redirect_txt"] = 'No redirect'; | |||||
| $wb["none_txt"] = 'None'; | |||||
| $wb["php_fpm_use_socket_txt"] = 'Use Socket For PHP-FPM'; | |||||
| $wb["traffic_quota_error_regex"] = 'Traffic quota is invalid.'; | |||||
| $wb['traffic_quota_error_empty'] = 'Traffic quota is empty.'; | |||||
| $wb['hd_quota_error_regex'] = 'Harddisk quota is invalid.'; | |||||
| $wb['hd_quota_error_empty'] = 'Harddisk quota is 0 or empty.'; | |||||
| $wb["btn_save_txt"] = 'Save'; | |||||
| $wb["btn_cancel_txt"] = 'Cancel'; | |||||
| $wb["variables_txt"] = 'Variables'; | |||||
| $wb["disabled_txt"] = 'Disabled'; | |||||
| $wb["template_name_txt"] = 'Template name'; | |||||
| $wb["template_name_error_empty"] = 'Template name can not be empty!'; | |||||
| $wb["policy_txt"] = 'Spamfilter'; | |||||
| $wb["no_policy"] = '- not enabled -'; | |||||
| $wb["dkim_txt"] = 'Enable DKIM'; | |||||
| $wb['dkim_selector_txt'] = 'DKIM-Selector'; | |||||
| $wb['dkim_selector_error'] = 'Invalid DKIM-Selector. Use only lower-case alphanumeric characters (a-z or 0-9) up to 63 chars'; | |||||
| $wb["remote_access_txt"] = 'Remote Access'; | |||||
| $wb["remote_ips_txt"] = 'Remote Access IPs (separate by , and leave blank for <i>any</i>)'; | |||||
| $wb["database_charset_txt"] = 'Database charset'; | |||||
| $wb["database_remote_error_ips"] = 'At least one of the entered ip addresses is invalid.'; | |||||
| $wb['limit_database_quota_txt'] = 'Database quota'; | |||||
| $wb['limit_database_quota_error_notint'] = 'The database quota limit must be a number.'; | |||||
| $wb["quota_files_txt"] = 'Filequota'; | |||||
| $wb["quota_files_unity_txt"] = 'Files'; | |||||
| $wb["ul_ratio_txt"] = 'Upload ratio'; | |||||
| $wb["dl_ratio_txt"] = 'Download ratio'; | |||||
| $wb["ul_bandwidth_txt"] = 'Upload bandwidth'; | |||||
| $wb["dl_bandwidth_txt"] = 'Download bandwidth'; | |||||
| $wb['shell_txt'] = "Shell"; | |||||
| $wb['chroot_txt'] = "Chroot Shell"; | |||||
| $wb['shell_error_regex'] = 'Invalid shell'; | |||||
| $wb['shell_error_empty'] = 'Shell is empty!'; | |||||
| $wb["enablesmtp_txt"] = 'Enable SMTP (sending)'; | |||||
| $wb["enableimap_txt"] = 'Enable IMAP'; | |||||
| $wb["enablepop3_txt"] = 'Enable POP3'; | |||||
| $wb["mailbox_quota_txt"] = 'Mailbox quota (0 for unlimited)'; | |||||
| $wb["quota_error_isint"] = 'Mailbox size must be a number.'; | |||||
| $wb["quota_error_value"] = 'Invalid quota value. Allowed values are: 0 for unlimited or numbers > 1'; | |||||
| $wb['http_port_txt'] = 'HTTP Port'; | |||||
| $wb['https_port_txt'] = 'HTTPS Port'; | |||||
| @@ -0,0 +1,183 @@ | |||||
| <?php | |||||
| $wb["client_id_txt"] = 'Cliente'; | |||||
| $wb["domain_txt"] = 'Dominio'; | |||||
| $wb["db_txt"] = 'Crear DB'; | |||||
| $wb["db_type_txt"] = 'Tipo DB'; | |||||
| $wb["ftp_txt"] = 'Crear FTP'; | |||||
| $wb["ssh_txt"] = 'Crear SSH'; | |||||
| $wb["domain_error_empty"] = 'El nombre del dominio esta vacio'; | |||||
| $wb["domain_error_regex"] = 'No se permite ese nombre de dominio'; | |||||
| $wb['domain_error_unique'] = 'El dominio ya existe'; | |||||
| $wb["template_id_txt"] = 'Plantilla'; | |||||
| $wb["mail_txt"] = 'Crear Correo'; | |||||
| $wb["mailboxes_txt"] = 'Buzones'; | |||||
| $wb["mailboxes_help_txt"] = 'Separados por coma, solo el nombre sin el parte @tudominio.com'; | |||||
| $wb["dkim_txt"] = 'Habilitar DKIM'; | |||||
| $wb["dkim_private_txt"] = 'Clave-privada DKIM'; | |||||
| $wb["dkim_public_txt"] = 'DKIM Clave-privada\npor informacion unicamente'; | |||||
| $wb["dkim_generate_txt"] = 'Generar Clave-privada DKIM'; | |||||
| $wb["dkim_dns_txt"] = 'DNS-Record'; | |||||
| $wb["dkim_settings_txt"] = 'DomainKeys Identified Mail (DKIM)'; | |||||
| $wb['dkim_selector_txt'] = 'Selector-DKIM'; | |||||
| $wb["dkim_private_key_error"] = 'Clave-privada DKIM erronea'; | |||||
| $wb["dns_txt"] = 'Crear Zona DNS'; | |||||
| $wb['email_txt'] = 'Email'; | |||||
| $wb['dnssec_txt'] = 'Firmar zona (DNSSEC)'; | |||||
| $wb['ns1_txt'] = 'NS 1'; | |||||
| $wb['ns2_txt'] = 'NS 2'; | |||||
| $wb['ip_txt'] = 'Direccion IP'; | |||||
| $wb['ipv6_txt'] = 'Direccion IPv6'; | |||||
| $wb['error_origin_empty'] = 'El campo Origin esta vacio.'; | |||||
| $wb['error_ns_empty'] = 'El campo NS esta vacio.'; | |||||
| $wb['error_mbox_empty'] = 'El campo Email esta vacio.'; | |||||
| $wb['error_refresh_empty'] = 'El campo Refresh esta vacio.'; | |||||
| $wb['error_retry_empty'] = 'El campo Retry esta vacio.'; | |||||
| $wb['error_expire_empty'] = 'El campo Expire esta vacio.'; | |||||
| $wb['error_minimum_empty'] = 'El campo Minimum esta vacio.'; | |||||
| $wb['error_ttl_empty'] = 'El campo TTL esta vacio.'; | |||||
| $wb['error_domain_empty'] = 'El campo Domain esta vacio'; | |||||
| $wb['error_ip_empty'] = 'El campo IP esta vacio.'; | |||||
| $wb['error_ipv6_empty'] = 'El campo IPv6 esta vacio.'; | |||||
| $wb['error_ns1_empty'] = 'El campo NS1 esta vacio.'; | |||||
| $wb['error_ns2_empty'] = 'El campo NS2 esta vacio.'; | |||||
| $wb['error_email_empty'] = 'El campo Email esta vacio.'; | |||||
| $wb['error_domain_regex'] = 'El dominio contiene caracteres erroneos.'; | |||||
| $wb['error_ns1_regex'] = 'NS1 contiene caracteres erroneos.'; | |||||
| $wb['error_ns2_regex'] = 'NS2 contiene caracteres erroneos.'; | |||||
| $wb['error_email_regex'] = 'El Email no contiene una direccion valida.'; | |||||
| $wb['backup_interval_txt'] = 'Intervalo de copia de seguridad'; | |||||
| $wb['backup_copies_txt'] = 'Número de copias de seguridad'; | |||||
| $wb['ssl_state_txt'] = 'Estado/Provincia'; | |||||
| $wb['ssl_locality_txt'] = 'Localidad'; | |||||
| $wb['ssl_organisation_txt'] = 'Organización'; | |||||
| $wb['ssl_organisation_unit_txt'] = 'Departamento de la organización'; | |||||
| $wb['ssl_country_txt'] = 'País'; | |||||
| $wb['ssl_request_txt'] = 'SSL Request'; | |||||
| $wb['ssl_cert_txt'] = 'SSL Certificate'; | |||||
| $wb['ssl_bundle_txt'] = 'SSL Bundle'; | |||||
| $wb['ssl_action_txt'] = 'SSL Action'; | |||||
| $wb['ssl_domain_txt'] = 'SSL Dominio'; | |||||
| $wb['server_id_txt'] = 'Servidor'; | |||||
| $wb['domain_txt'] = 'Dominio'; | |||||
| $wb['type_txt'] = 'Tipo'; | |||||
| $wb['parent_domain_id_txt'] = 'Sitio web padre'; | |||||
| $wb['redirect_type_txt'] = 'Tipo redirección'; | |||||
| $wb['redirect_path_txt'] = 'Ruta redirección'; | |||||
| $wb['active_txt'] = 'Activar'; | |||||
| $wb['document_root_txt'] = 'Documentroot'; | |||||
| $wb['system_user_txt'] = 'Usuario Linux'; | |||||
| $wb['system_group_txt'] = 'Grupo Linux'; | |||||
| $wb['ip_address_txt'] = 'IPv4-Address'; | |||||
| $wb['ipv6_address_txt'] = 'IPv6-Address'; | |||||
| $wb['vhost_type_txt'] = 'VHost Tipo'; | |||||
| $wb['hd_quota_txt'] = 'Couta disco duro'; | |||||
| $wb['traffic_quota_txt'] = 'Cuota de tráfico'; | |||||
| $wb['cgi_txt'] = 'CGI'; | |||||
| $wb['ssi_txt'] = 'SSI'; | |||||
| $wb['errordocs_txt'] = 'Documentos propios de error'; | |||||
| $wb['subdomain_txt'] = 'Auto-Subdominio'; | |||||
| $wb['ssl_txt'] = 'SSL'; | |||||
| $wb['suexec_txt'] = 'SuEXEC'; | |||||
| $wb['php_txt'] = 'PHP'; | |||||
| $wb['client_txt'] = 'Cliente'; | |||||
| $wb['limit_web_domain_txt'] = 'Se ha alcanzado el número máximo de dominios web de esta cuenta'; | |||||
| $wb['limit_web_aliasdomain_txt'] = 'Se ha alcanzado el número máximo de alias de dominios de esta cuenta'; | |||||
| $wb['limit_web_subdomain_txt'] = 'Se ha alcanzado el número máximo de subdominios web de esta cuenta'; | |||||
| $wb['apache_directives_txt'] = 'Directivas de Apache'; | |||||
| $wb['domain_error_empty'] = 'El dominio está vacío.'; | |||||
| $wb['domain_error_unique'] = 'Ya existe un sitio web o sub/aliasdominio con este nombre de dominio.'; | |||||
| $wb['domain_error_regex'] = 'El nombre de dominio no es válido'; | |||||
| $wb['hd_quota_error_empty'] = 'Cuota de disco duro es 0 o vacío.'; | |||||
| $wb['traffic_quota_error_empty'] = 'Cuota de tráfico está vacío.'; | |||||
| $wb['error_ssl_state_empty'] = 'Estado SSL está vacío.'; | |||||
| $wb['error_ssl_locality_empty'] = 'Sitio SSL está vacío.'; | |||||
| $wb['error_ssl_organisation_empty'] = 'SSL Organización está vacío.'; | |||||
| $wb['error_ssl_organisation_unit_empty'] = 'SSL Unidad de Organización está vacío.'; | |||||
| $wb['error_ssl_country_empty'] = 'País SSL está vacío.'; | |||||
| $wb['error_ssl_cert_empty'] = 'Campo de certificado SSL está vacío.'; | |||||
| $wb['client_group_id_txt'] = 'Cliente'; | |||||
| $wb['stats_password_txt'] = 'Contraseña de estadísticas Web '; | |||||
| $wb['allow_override_txt'] = 'Apache AllowOverride'; | |||||
| $wb['limit_web_quota_free_txt'] = 'Max. cuota disco duro disponible'; | |||||
| $wb['ssl_state_error_regex'] = 'Estado no válido de SSL. Los caracteres válidos son: a-z, 0-9 y,-_.'; | |||||
| $wb['ssl_locality_error_regex'] = 'Invalid Sitio válido SSL. Los caracteres válidos son: a-z, 0-9 y,-_.'; | |||||
| $wb['ssl_organisation_error_regex'] = 'Organización no válido SSL. Los caracteres válidos son: a-z, 0-9 y,-_.'; | |||||
| $wb['ssl_organistaion_unit_error_regex'] = 'Unidad de Organización no válido SSL. Los caracteres válidos son: a-z, 0-9 y,-_.'; | |||||
| $wb['ssl_country_error_regex'] = 'País no válido SSL. Los caracteres válidos son: A-Z'; | |||||
| $wb['limit_traffic_quota_free_txt'] = 'Max. Cuota de tráfico disponible'; | |||||
| $wb['redirect_error_regex'] = 'Redirección no válida camino. Redirecciones válidos son, por ejemplo,: /test/ or http://www.domain.tld/test/'; | |||||
| $wb['php_open_basedir_txt'] = 'PHP open_basedir'; | |||||
| $wb['traffic_quota_exceeded_txt'] = 'Cuota de tráfico excedida'; | |||||
| $wb['ruby_txt'] = 'Ruby'; | |||||
| $wb['stats_user_txt'] = 'Estadísticas Web nombre de usuario'; | |||||
| $wb['stats_type_txt'] = 'Estadísticas Web del programa'; | |||||
| $wb['custom_php_ini_txt'] = 'Configuración personalizada de php.ini'; | |||||
| $wb['none_txt'] = 'Ninguno'; | |||||
| $wb['disabled_txt'] = 'Desactivado'; | |||||
| $wb['no_redirect_txt'] = 'No redirigir'; | |||||
| $wb['no_flag_txt'] = 'No flag'; | |||||
| $wb['save_certificate_txt'] = 'Guardar el certificado'; | |||||
| $wb['create_certificate_txt'] = 'Crear el certificado'; | |||||
| $wb['delete_certificate_txt'] = 'Eliminar certificado'; | |||||
| $wb['nginx_directives_txt'] = 'nginx Directives'; | |||||
| $wb['seo_redirect_txt'] = 'SEO Redirect'; | |||||
| $wb['non_www_to_www_txt'] = 'Non-www -> www'; | |||||
| $wb['www_to_non_www_txt'] = 'www -> non-www'; | |||||
| $wb['php_fpm_use_socket_txt'] = 'Usar Socket para PHP-FPM'; | |||||
| $wb['error_no_sni_txt'] = 'SNI para SSL no está activado en este servidor. Sólo es posible activar un certificado SSL en cada dirección IP.'; | |||||
| $wb['python_txt'] = 'Python'; | |||||
| $wb['pm_max_children_txt'] = 'PHP-FPM pm.max_children'; | |||||
| $wb['pm_start_servers_txt'] = 'PHP-FPM pm.start_servers'; | |||||
| $wb['pm_min_spare_servers_txt'] = 'PHP-FPM pm.min_spare_servers'; | |||||
| $wb['pm_max_spare_servers_txt'] = 'PHP-FPM pm.max_spare_servers'; | |||||
| $wb['error_php_fpm_pm_settings_txt'] = 'Los valores de configuración de PHP-FPM pm debe ser como sigue: pm.max_children> = pm.max_spare_servers> = pm.start_servers> = pm.min_spare_servers> 0'; | |||||
| $wb['pm_max_children_error_regex'] = 'PHP-FPM pm.max_children debe ser un valor entero positivo.'; | |||||
| $wb['pm_start_servers_error_regex'] = 'PHP-FPM pm.start_servers debe ser un valor entero positivo.'; | |||||
| $wb['pm_min_spare_servers_error_regex'] = 'PHP-FPM pm.min_spare_servers debe ser un valor entero positivo.'; | |||||
| $wb['pm_max_spare_servers_error_regex'] = 'PHP-FPM pm.max_spare_servers debe ser un valor entero positivo.'; | |||||
| $wb['ssl_key_txt'] = 'SSL Key'; | |||||
| $wb['web_folder_error_regex'] = 'Invalid folder entered. Please do not enter a slash.'; | |||||
| $wb['domain_error_autosub'] = 'There is already a subdomain with these settings.'; | |||||
| $wb['perl_txt'] = 'Perl'; | |||||
| $wb['hd_quota_error_regex'] = 'Harddisk quota is invalid.'; | |||||
| $wb['traffic_quota_error_regex'] = 'Traffic quota is invalid.'; | |||||
| $wb['fastcgi_php_version_txt'] = 'PHP Version'; | |||||
| $wb['pm_txt'] = 'PHP-FPM Process Manager'; | |||||
| $wb['pm_process_idle_timeout_txt'] = 'PHP-FPM pm.process_idle_timeout'; | |||||
| $wb['pm_max_requests_txt'] = 'PHP-FPM pm.max_requests'; | |||||
| $wb['pm_process_idle_timeout_error_regex'] = 'PHP-FPM pm.process_idle_timeout must be a positive integer value.'; | |||||
| $wb['pm_max_requests_error_regex'] = 'PHP-FPM pm.max_requests must be an integer value >= 0.'; | |||||
| $wb['pm_ondemand_hint_txt'] = 'Please note that you must have PHP version >= 5.3.9 in order to use the ondemand process manager. If you select ondemand for an older PHP version, PHP will not start anymore!'; | |||||
| $wb['generate_password_txt'] = 'Generate Password'; | |||||
| $wb['repeat_password_txt'] = 'Repeat Password'; | |||||
| $wb['password_mismatch_txt'] = 'The passwords do not match.'; | |||||
| $wb['password_match_txt'] = 'The passwords do match.'; | |||||
| $wb['available_php_directive_snippets_txt'] = 'Available PHP Directive Snippets:'; | |||||
| $wb['available_apache_directive_snippets_txt'] = 'Available Apache Directive Snippets:'; | |||||
| $wb['available_nginx_directive_snippets_txt'] = 'Available nginx Directive Snippets:'; | |||||
| $wb['proxy_directives_txt'] = 'Proxy Directives'; | |||||
| $wb['available_proxy_directive_snippets_txt'] = 'Available Proxy Directive Snippets:'; | |||||
| $wb['no_server_error'] = 'No server selected.'; | |||||
| $wb['no_backup_txt'] = 'No backup'; | |||||
| $wb['daily_backup_txt'] = 'Daily'; | |||||
| $wb['weekly_backup_txt'] = 'Weekly'; | |||||
| $wb['monthly_backup_txt'] = 'Monthly'; | |||||
| $wb['rewrite_rules_txt'] = 'Rewrite Rules'; | |||||
| $wb['invalid_rewrite_rules_txt'] = 'Invalid Rewrite Rules'; | |||||
| $wb['allowed_rewrite_rule_directives_txt'] = 'Allowed Directives:'; | |||||
| $wb['configuration_error_txt'] = 'CONFIGURATION ERROR'; | |||||
| $wb['variables_txt'] = 'Variables'; | |||||
| $wb['added_by_txt'] = 'Added by'; | |||||
| $wb['added_date_txt'] = 'Added date'; | |||||
| $wb['backup_excludes_txt'] = 'Excluded Directories'; | |||||
| $wb['backup_excludes_note_txt'] = '(Separate multiple directories with commas. Example: web/cache/*,web/backup)'; | |||||
| $wb['backup_excludes_error_regex'] = 'The excluded directories contain invalid characters.'; | |||||
| $wb['invalid_custom_php_ini_settings_txt'] = 'Invalid php.ini settings'; | |||||
| $wb['invalid_system_user_or_group_txt'] = 'Invalid system user or group'; | |||||
| $wb['apache_directive_blocked_error'] = 'Apache directive blocked by security settings:'; | |||||
| $wb['http_port_txt'] = 'HTTP Port'; | |||||
| $wb['https_port_txt'] = 'HTTPS Port'; | |||||
| $wb['http_port_error_regex'] = 'HTTP Port invalid.'; | |||||
| $wb['https_port_error_regex'] = 'HTTPS Port invalid.'; | |||||
| ?> | |||||
| @@ -0,0 +1,81 @@ | |||||
| <?php | |||||
| $wb["server_id_txt"] = 'Servidor'; | |||||
| $wb["ip_address_txt"] = 'Direccion IPv4'; | |||||
| $wb["ipv6_address_txt"] = 'Direccion IPv6'; | |||||
| $wb["traffic_quota_txt"] = 'Cuota trafico'; | |||||
| $wb['hd_quota_txt'] = 'Cuota disco'; | |||||
| $wb["cgi_txt"] = 'CGI'; | |||||
| $wb["ssi_txt"] = 'SSI'; | |||||
| $wb["errordocs_txt"] = 'Error-Documents personalizados'; | |||||
| $wb["subdomain_txt"] = 'Auto-Subdominio'; | |||||
| $wb["ssl_txt"] = 'SSL'; | |||||
| $wb["suexec_txt"] = 'SuEXEC'; | |||||
| $wb["php_txt"] = 'PHP'; | |||||
| $wb["perl_txt"] = 'Perl'; | |||||
| $wb["ruby_txt"] = 'Ruby'; | |||||
| $wb["python_txt"] = 'Python'; | |||||
| $wb["allow_override_txt"] = 'Apache AllowOverride'; | |||||
| $wb["fastcgi_php_version_txt"] = 'Version PHP'; | |||||
| $wb["pm_txt"] = 'PHP-FPM Process Manager'; | |||||
| $wb["pm_process_idle_timeout_txt"] = 'PHP-FPM pm.process_idle_timeout'; | |||||
| $wb["pm_max_requests_txt"] = 'PHP-FPM pm.max_requests'; | |||||
| $wb["pm_process_idle_timeout_error_regex"] = 'El valor PHP-FPM pm.process_idle_timeout debe ser valor de entero positivo.'; | |||||
| $wb["pm_max_requests_error_regex"] = 'El valor PHP-FPM pm.max_requests debe ser un valor entero >= 0.'; | |||||
| $wb["pm_ondemand_hint_txt"] = 'Por favor verifica que la version PHP es >= 5.3.9 para usar process manager ondemand. Si seleccionas ondemand para una version mas antigua PHP no se iniciara!'; | |||||
| $wb["pm_max_children_txt"] = 'PHP-FPM pm.max_children'; | |||||
| $wb["pm_start_servers_txt"] = 'PHP-FPM pm.start_servers'; | |||||
| $wb["pm_min_spare_servers_txt"] = 'PHP-FPM pm.min_spare_servers'; | |||||
| $wb["pm_max_spare_servers_txt"] = 'PHP-FPM pm.max_spare_servers'; | |||||
| $wb["error_php_fpm_pm_settings_txt"] = 'Los ajustes de PHP-FPM pm settings deben cumplir esto: pm.max_children >= pm.max_spare_servers >= pm.start_servers >= pm.min_spare_servers > 0'; | |||||
| $wb["pm_max_children_error_regex"] = 'El valor de PHP-FPM pm.max_children debe ser un valor de entero positivo.'; | |||||
| $wb["pm_start_servers_error_regex"] = 'El valor de PHP-FPM pm.start_servers debe ser un valor de entero positivo.'; | |||||
| $wb["pm_min_spare_servers_error_regex"] = 'El valor de PHP-FPM pm.min_spare_servers debe ser un valor de entero positivo.'; | |||||
| $wb["pm_max_spare_servers_error_regex"] = 'El valor de PHP-FPM pm.max_spare_servers debe ser un valor de entero positivo.'; | |||||
| $wb["apache_directives_txt"] = 'Directivas Apache'; | |||||
| $wb["nginx_directives_txt"] = 'Directivas Nginx'; | |||||
| $wb["proxy_directives_txt"] = 'Directivas Proxy'; | |||||
| $wb["custom_php_ini_txt"] = 'Ajustes php.ini personalizados'; | |||||
| $wb["seo_redirect_txt"] = 'Redireccion SEO'; | |||||
| $wb['rewrite_to_https_txt'] = 'Rewrite HTTP a HTTPS'; | |||||
| $wb["no_redirect_txt"] = 'No redirigir'; | |||||
| $wb["none_txt"] = 'Ninguno'; | |||||
| $wb["php_fpm_use_socket_txt"] = 'Usar Socket para PHP-FPM'; | |||||
| $wb["traffic_quota_error_regex"] = 'Cuota de trafico erronea.'; | |||||
| $wb['traffic_quota_error_empty'] = 'Cuota de trafico vacia.'; | |||||
| $wb['hd_quota_error_regex'] = 'Cuota de disco erronea.'; | |||||
| $wb['hd_quota_error_empty'] = 'Cuota de disco 0 o vacia.'; | |||||
| $wb["btn_save_txt"] = 'Guardar'; | |||||
| $wb["btn_cancel_txt"] = 'Cancelar'; | |||||
| $wb["variables_txt"] = 'Variables'; | |||||
| $wb["disabled_txt"] = 'Desactivado'; | |||||
| $wb["template_name_txt"] = 'Nombre plantilla'; | |||||
| $wb["template_name_error_empty"] = 'El nombre de la plantilla no puede estar vacio!'; | |||||
| $wb["policy_txt"] = 'Spamfilter'; | |||||
| $wb["no_policy"] = '- not enabled -'; | |||||
| $wb["dkim_txt"] = 'Habilitar DKIM'; | |||||
| $wb['dkim_selector_txt'] = 'Selector-DKIM'; | |||||
| $wb['dkim_selector_error'] = 'Selector-DKIM erroneo. Usa unicamente caracteres alfanumericos en minusculas (a-z o 0-9) con un maximo de 63 caracteres'; | |||||
| $wb["remote_access_txt"] = 'Accesso remoto'; | |||||
| $wb["remote_ips_txt"] = 'IPs de acceso remoto (separadas por , o dejalo en blanco para <i>todas</i>)'; | |||||
| $wb["database_charset_txt"] = 'Database charset'; | |||||
| $wb["database_remote_error_ips"] = 'Al menos una de las IPs introducidas es erronea.'; | |||||
| $wb['limit_database_quota_txt'] = 'Cuota de base de datos'; | |||||
| $wb['limit_database_quota_error_notint'] = 'La cuota de base de datos debe ser un numero.'; | |||||
| $wb["quota_files_txt"] = 'Cuota de archivos'; | |||||
| $wb["quota_files_unity_txt"] = 'Archivos'; | |||||
| $wb["ul_ratio_txt"] = 'Ratio de subida'; | |||||
| $wb["dl_ratio_txt"] = 'Ratio de descarga'; | |||||
| $wb["ul_bandwidth_txt"] = 'Ancho de banda de subida'; | |||||
| $wb["dl_bandwidth_txt"] = 'Ancho de banda de descarga'; | |||||
| $wb['shell_txt'] = "Shell"; | |||||
| $wb['chroot_txt'] = "Chroot Shell"; | |||||
| $wb['shell_error_regex'] = 'Shell erronea'; | |||||
| $wb['shell_error_empty'] = 'Shell vacia!'; | |||||
| $wb["enablesmtp_txt"] = 'Habilitar SMTP (envio)'; | |||||
| $wb["enableimap_txt"] = 'Habilitar IMAP'; | |||||
| $wb["enablepop3_txt"] = 'Habilitar POP3'; | |||||
| $wb["mailbox_quota_txt"] = 'Cuota del buzon (0 para ilimitada)'; | |||||
| $wb["quota_error_isint"] = 'La cuota debe ser un numero.'; | |||||
| $wb["quota_error_value"] = 'Valor de cuota erroneo. Los valores permitidos son: 0 para ilimitada o numeros > 1'; | |||||
| $wb['http_port_txt'] = 'Puerto HTTP'; | |||||
| $wb['https_port_txt'] = 'Puerto HTTPS'; | |||||
| @@ -0,0 +1,51 @@ | |||||
| <?php | |||||
| //**** Module Definition **** | |||||
| // Name of the module. The module name must match the name of the module directory. | |||||
| // The module name may not contain spaces. | |||||
| $module['name'] = 'webdns'; | |||||
| // Title of the module which is dispalayed in the top navigation. | |||||
| $module['title'] = 'WebDNS'; | |||||
| // The template file of the module. This is always 'module.tpl.htm' unless | |||||
| // there are any special requirements such as a three column layout. | |||||
| $module['template'] = 'module.tpl.htm'; | |||||
| // The page that is displayed when the module is loaded. | |||||
| // The path must is relative to the web/ directory | |||||
| $module['startpage'] = 'webdns/new_service_webdns.php'; | |||||
| // The width of the tab. Normally you should leave this empty and | |||||
| // let the browser define the width automatically. | |||||
| $module['tab_width'] = ''; | |||||
| //**** Menu Definition **** | |||||
| // Make sure that the items array is empty | |||||
| $items = array(); | |||||
| // Add a menu item with the label 'Send message' | |||||
| $items[] = array( 'title' => 'Nuevo servicio web', | |||||
| 'target' => 'content', | |||||
| 'link' => 'webdns/new_service_webdns.php', | |||||
| 'html_id' => 'new_service_webdns'); | |||||
| /*$items[] = array( 'title' => 'Sitio Web', | |||||
| 'target' => 'content', | |||||
| 'link' => 'customdns/webdns_vhost_domain_edit.php?type=domain' | |||||
| //'../sites/web_vhost_domain_edit.php?type=domain' | |||||
| ); | |||||
| $items[] = array( 'title' => 'Web DNS2', | |||||
| 'target' => 'content', | |||||
| 'link' => 'customdns/new_service_dns2.php', | |||||
| 'html_id' => 'new_service_dns2');*/ | |||||
| // Append the menu $items defined above to a menu section labeled 'Support' | |||||
| $module['nav'][] = array( 'title' => 'WebDNS', | |||||
| 'open' => 1, | |||||
| 'items' => $items | |||||
| ); | |||||
| @@ -0,0 +1,12 @@ | |||||
| <?php | |||||
| $function_list['sites_cron_get,sites_cron_add,sites_cron_update,sites_cron_delete'] = 'Sites cron functions'; | |||||
| $function_list['sites_database_get,sites_database_add,sites_database_update,sites_database_delete, sites_database_get_all_by_user,sites_database_user_get,sites_database_user_add,sites_database_user_update,sites_database_user_delete, sites_database_user_get_all_by_user'] = 'Sites database functions'; | |||||
| $function_list['sites_web_folder_get,sites_web_folder_add,sites_web_folder_update,sites_web_folder_delete,sites_web_folder_user_get,sites_web_folder_user_add,sites_web_folder_user_update,sites_web_folder_user_delete'] = 'Sites Protected folder functions'; | |||||
| $function_list['sites_ftp_user_get,sites_ftp_user_server_get,sites_ftp_user_add,sites_ftp_user_update,sites_ftp_user_delete'] = 'Sites FTP-User functions'; | |||||
| $function_list['sites_shell_user_get,sites_shell_user_add,sites_shell_user_update,sites_shell_user_delete'] = 'Sites Shell-User functions'; | |||||
| $function_list['sites_web_domain_get,sites_web_domain_add,sites_web_domain_update,sites_web_domain_delete,sites_web_domain_set_status'] = 'Sites Domain functions'; | |||||
| $function_list['sites_web_domain_backup'] = 'Sites Backup functions'; | |||||
| $function_list['sites_web_aliasdomain_get,sites_web_aliasdomain_add,sites_web_aliasdomain_update,sites_web_aliasdomain_delete'] = 'Sites Aliasdomain functions'; | |||||
| $function_list['sites_web_subdomain_get,sites_web_subdomain_add,sites_web_subdomain_update,sites_web_subdomain_delete'] = 'Sites Subdomain functions'; | |||||
| $function_list['sites_aps_update_package_list,sites_aps_available_packages_list,sites_aps_change_package_status,sites_aps_install_package,sites_aps_get_package_details,sites_aps_get_package_file,sites_aps_get_package_settings,sites_aps_instance_get,sites_aps_instance_delete'] = 'Sites APS functions'; | |||||
| ?> | |||||
| @@ -0,0 +1,58 @@ | |||||
| <?php | |||||
| /* | |||||
| Datatypes: | |||||
| - INTEGER | |||||
| - DOUBLE | |||||
| - CURRENCY | |||||
| - VARCHAR | |||||
| - TEXT | |||||
| - DATE | |||||
| */ | |||||
| // Name of the list | |||||
| $liste["name"] = "wizard_template"; | |||||
| // Database table | |||||
| $liste["table"] = "wizard_template"; | |||||
| // Index index field of the database table | |||||
| $liste["table_idx"] = "template_id"; | |||||
| // Search Field Prefix | |||||
| $liste["search_prefix"] = "search_"; | |||||
| // Records per page | |||||
| $liste["records_per_page"] = "15"; | |||||
| // Script File of the list | |||||
| $liste["file"] = "template_list.php"; | |||||
| // Script file of the edit form | |||||
| $liste["edit_file"] = "template_edit.php"; | |||||
| // Script File of the delete script | |||||
| $liste["delete_file"] = "template_del.php"; | |||||
| // Paging Template | |||||
| $liste["paging_tpl"] = "templates/paging.tpl.htm"; | |||||
| // Enable auth | |||||
| $liste["auth"] = "yes"; | |||||
| /***************************************************** | |||||
| * Suchfelder | |||||
| *****************************************************/ | |||||
| $liste["item"][] = array( 'field' => "template_name", | |||||
| 'datatype' => "VARCHAR", | |||||
| 'formtype' => "TEXT", | |||||
| 'op' => "like", | |||||
| 'prefix' => "%", | |||||
| 'suffix' => "%", | |||||
| 'width' => "", | |||||
| 'value' => ""); | |||||
| @@ -0,0 +1,359 @@ | |||||
| <?php | |||||
| /* | |||||
| 2017, David Ramos García, Open6Hosting <dramos@open6hosting.com> | |||||
| All rights reserved. | |||||
| */ | |||||
| /****************************************** | |||||
| * Begin Form configuration | |||||
| ******************************************/ | |||||
| //Solo se puede tener una variable para cargar los distintos formularios | |||||
| $tform_def_file = "form/new_service_webdns.tform.php"; | |||||
| /****************************************** | |||||
| * End Form configuration | |||||
| ******************************************/ | |||||
| require_once '../../lib/config.inc.php'; | |||||
| require_once '../../lib/app.inc.php'; | |||||
| //* Check permissions for module | |||||
| $app->auth->check_module_permissions('webdns'); | |||||
| // Check the module permissions and redirect if not allowed. | |||||
| /*if(!stristr($_SESSION['s']['user']['modules'],'customdns')) { | |||||
| header('Location: ../index.php'); | |||||
| die; | |||||
| }*/ | |||||
| // Loading classes | |||||
| $app->uses('tpl,tform,tform_actions,remoting,tools_sites,remoting_lib'); | |||||
| $app->load('tform_actions'); | |||||
| class page_action extends tform_actions { | |||||
| //Con esta funcion se parsean y preparan los campos del formulario, new_service_dns.tform.php | |||||
| //justo después de la carga de este. | |||||
| /*function onShowEnd() { | |||||
| global $app, $conf;*/ | |||||
| //FORMULARIO | |||||
| //Con esta llamada a al clase $app cargo todos los campos definidos en el formulario, | |||||
| //en este caso, los definidos en el array $form["tabs"]['webdns']; | |||||
| //$fields = $app->tform->encode($this->dataRecord, $app->tform->getCurrentTab(), true); | |||||
| // select first template as default | |||||
| /*if($fields['dns_template_id'] == 0) | |||||
| { | |||||
| $first_template = $app->db->queryOneRecord("SELECT template_id FROM dns_template WHERE visible = 'Y' ORDER BY name ASC"); | |||||
| $fields['dns_template_id'] = $first_template['template_id']; | |||||
| }*/ | |||||
| //BASE DE DATOS - TEMPLATE | |||||
| //Cargo todos los valores de la tabla dns_template que coincidan con id del template seleccionado. | |||||
| ///$template_record = $app->db->queryOneRecord("SELECT * FROM dns_template WHERE template_id = ?", $fields['dns_template_id']); | |||||
| //IMPORTANTE, aquí cargo el campo fields de la tabla dns_template | |||||
| //que contiene una lista de los campos que se muestran en el template(vista) | |||||
| /*$fields = explode(',', $template_record['fields']); | |||||
| if(is_array($fields)) { | |||||
| foreach($fields as $field) { | |||||
| $app->tpl->setVar($field."_VISIBLE", 1); | |||||
| $field = strtolower($field); | |||||
| $app->tpl->setVar($field, $_POST['dns_'.$field]); | |||||
| } | |||||
| }*/ | |||||
| /*parent::onShowEnd(); | |||||
| }*/ | |||||
| function onSubmit() { | |||||
| global $app, $conf; | |||||
| //Carga de campos del formulario. | |||||
| $fields = $app->tform->encode($this->dataRecord, $app->tform->getCurrentTab(), true); | |||||
| // check for domain unique name | |||||
| if($app->db->queryOneRecord('SELECT domain_id FROM domain WHERE domain = "'.$fields['domain'].'"')) { | |||||
| $app->tform->errorMessage = $app->tform->wordbook['domain_error_unique']; | |||||
| } | |||||
| if($app->tform->errorMessage) | |||||
| { | |||||
| $this->onError(); | |||||
| return; | |||||
| } | |||||
| //Esta variable nos llega por jQuery desde el htm para el control de errores en la vista. | |||||
| if($_POST['create'] != 1) | |||||
| { | |||||
| $app->tform->errorMessage = 'DUMMY'; | |||||
| $app->tpl->setVar($this->dataRecord); | |||||
| $this->onShow(); | |||||
| return; | |||||
| } | |||||
| // Domain OK, continue | |||||
| $remote = new remote_actions; | |||||
| // client prefix and group id | |||||
| $res = $app->db->queryOneRecord("SELECT groupid FROM sys_group WHERE client_id = ".$app->functions->intval($fields['client_id'])); | |||||
| $client_group_id = $res['groupid']; | |||||
| $client_prefix = 'c'.$fields['client_id']; | |||||
| // add domain. Llamada que inserta el dominio en la tabla domain | |||||
| $domain_id = $remote->insert_query('../client/form/domain.tform.php', $fields['client_id'], array('domain' => $fields['domain'])); | |||||
| //Carga del formulario dns_soa para guardar en base de datos | |||||
| $tform_def_file = "../dns/form/dns_soa.tform.php"; | |||||
| $app->tform->loadFormDef($tform_def_file); | |||||
| // Carga y seleccion de dns_template, si no esta creado se informa de que tiene que crearse | |||||
| $template_record = $app->db->queryOneRecord("SELECT * FROM dns_template WHERE visible = 'Y' AND name = 'webdns'"); /*'open6hosting'");*/ | |||||
| /*if($template_record) { | |||||
| //echo '<br><br>Teplate '.$template_record.', '; | |||||
| $app->tform->errorMessage = 'Error hay que crear un template llamado webdns'; | |||||
| $this->onError(); | |||||
| return; | |||||
| } else { | |||||
| $app->tform->errorMessage = 'Error hay que crear un template llamado webdnsssssss'; | |||||
| $this->onError(); | |||||
| return; | |||||
| }*/ | |||||
| /*if($app->tform->errorMessage) | |||||
| { | |||||
| $this->onError(); | |||||
| return; | |||||
| }*/ | |||||
| //$template_record = $app->db->queryOneRecord("SELECT * FROM dns_template WHERE visible = 'Y' AND name = 'webdns'"); /*'open6hosting'");*/ | |||||
| //Llamada a la tabla server_ip para recuperar la ip4 e ip6 | |||||
| $dns_ip_servidor = $app->db->queryOneRecord("SELECT ip_type, ip_address FROM server_ip WHERE client_id = ".$app->functions->intval($fields['client_id']. " AND ip_type='IPv4'")); | |||||
| $dns_ip_servidor_ipv6 = $app->db->queryOneRecord("SELECT ip_type, ip_address FROM server_ip WHERE client_id = ".$fields['client_id']." AND ip_type='IPv6'"); | |||||
| //Comprobamos que el resultado para el cliente seleccionado no esta vacío, | |||||
| //si lo esta tomamos los datos del cliente id 0 | |||||
| if(!$dns_ip_servidor_ipv6){ | |||||
| $dns_ip_servidor = $app->db->queryOneRecord("SELECT ip_type, ip_address FROM server_ip WHERE client_id = 0 AND ip_type='IPv4'"); | |||||
| $dns_ip_servidor_ipv6 = $app->db->queryOneRecord("SELECT ip_type, ip_address FROM server_ip WHERE client_id = 0 AND ip_type='IPv6'"); | |||||
| /*echo '<br><br>Valor de la consulta '.$dns_ip_servidor_ipv6[ip_address].' '; | |||||
| echo '<br><br>Valor de la consulta '.$dns_ip_servidor[ip_address].' ';*/ | |||||
| } | |||||
| $tpl_content = $template_record['template']; | |||||
| // Reemplazo la variable que nos encontramos en base de datos por el valor que se ha introducido en el formulario | |||||
| $tpl_content = str_replace('{DOMAIN}', $fields['domain'], $tpl_content); | |||||
| //Carga de los datos en las variables ns | |||||
| $tpl_content = str_replace('{IP}', $dns_ip_servidor['ip_address'], $tpl_content); | |||||
| $tpl_content = str_replace('{IPV6}', $dns_ip_servidor_ipv6['ip_address'], $tpl_content); | |||||
| /*$tpl_content = str_replace('{NS1}', '.open6servers.com', $tpl_content); | |||||
| $tpl_content = str_replace('{NS2}', '.open6servers.com', $tpl_content); */ | |||||
| $enable_dnssec = 'N';//(($_POST['dns_dnssec'] == 'Y') ? 'Y' : 'N'); | |||||
| // Parse the template | |||||
| $tpl_rows = explode("\n", $tpl_content); | |||||
| $section = ''; | |||||
| $vars = array(); | |||||
| $vars['xfer']=''; | |||||
| $dns_rr = array(); | |||||
| foreach($tpl_rows as $row) { | |||||
| $row = trim($row); | |||||
| if(substr($row, 0, 1) == '[') { | |||||
| if($row == '[ZONE]') { | |||||
| $section = 'zone'; | |||||
| } elseif($row == '[DNS_RECORDS]') { | |||||
| $section = 'dns_records'; | |||||
| } else { | |||||
| die('Unknown section type'); | |||||
| } | |||||
| } else { | |||||
| if($row != '') { | |||||
| // Handle zone section | |||||
| if($section == 'zone') { | |||||
| $parts = explode('=', $row); | |||||
| $key = trim($parts[0]); | |||||
| $val = trim($parts[1]); | |||||
| if($key != '') $vars[$key] = $val; | |||||
| } | |||||
| // Handle DNS Record rows | |||||
| if($section == 'dns_records') { | |||||
| $parts = explode('|', $row); | |||||
| $dns_rr[] = array( | |||||
| 'name' => $parts[1], | |||||
| 'type' => $parts[0], | |||||
| 'data' => $parts[2], | |||||
| 'aux' => $parts[3], | |||||
| 'ttl' => $parts[4] | |||||
| ); | |||||
| } | |||||
| } | |||||
| } | |||||
| } // end foreach | |||||
| $dns_error = ''; | |||||
| /*if($vars['origin'] == '') $dns_error .= $app->lng('error_origin_empty').'<br />'; | |||||
| if($vars['ns'] == '') $dns_error .= $app->lng('error_ns_empty').'<br />'; | |||||
| if($vars['mbox'] == '') $dns_error .= $app->lng('error_mbox_empty').'<br />'; | |||||
| if($vars['refresh'] == '') $dns_error .= $app->lng('error_refresh_empty').'<br />'; | |||||
| if($vars['retry'] == '') $dns_error .= $app->lng('error_retry_empty').'<br />'; | |||||
| if($vars['expire'] == '') $dns_error .= $app->lng('error_expire_empty').'<br />'; | |||||
| if($vars['minimum'] == '') $dns_error .= $app->lng('error_minimum_empty').'<br />'; | |||||
| if($vars['ttl'] == '') $dns_error .= $app->lng('error_ttl_empty').'<br />'; | |||||
| // check for dns errors | |||||
| if($dns_error) | |||||
| { | |||||
| $app->tform->errorMessage = $dns_error; | |||||
| $this->onError(); | |||||
| return; | |||||
| }*/ | |||||
| //Llamada a la tabla client para recuperar el client_id y su default_dnsserver | |||||
| $dns_servidor = $app->db->queryOneRecord("SELECT client_id, default_dnsserver, default_webserver FROM client WHERE client_id = ".$app->functions->intval($fields['client_id'])); | |||||
| $valor_recuperado1 = $dns_servidor['client_id']; | |||||
| /*$valor_recuperado2 = $dns_servidor['default_dnsserver']; | |||||
| $valor_recuperado3 = $dns_servidor['default_webserver']; | |||||
| */ | |||||
| // Insert the soa record | |||||
| $sys_userid = $_SESSION['s']['user']['userid']; | |||||
| $origin = $vars['origin']; | |||||
| $ns = $vars['ns']; | |||||
| $mbox = str_replace('@', '.', $vars['mbox']); | |||||
| $refresh = $vars['refresh']; | |||||
| $retry = $vars['retry']; | |||||
| $expire = $vars['expire']; | |||||
| $minimum = $vars['minimum']; | |||||
| $ttl = $vars['ttl']; | |||||
| $xfer = $vars['xfer']; | |||||
| $also_notify = $vars['also_notify']; | |||||
| $update_acl = $vars['update_acl']; | |||||
| $serial = $app->validate_dns->increase_serial(0); | |||||
| $insert_data = array( | |||||
| "sys_userid" => $sys_userid, | |||||
| "sys_groupid" => $client_group_id, | |||||
| "sys_perm_user" => 'riud', | |||||
| "sys_perm_group" => 'riud', | |||||
| "sys_perm_other" => '', | |||||
| "server_id" => $dns_servidor['default_dnsserver'], | |||||
| "origin" => $origin, | |||||
| "ns" => $ns, | |||||
| "mbox" => $mbox, | |||||
| "serial" => $serial, | |||||
| "refresh" => $refresh, | |||||
| "retry" => $retry, | |||||
| "expire" => $expire, | |||||
| "minimum" => $minimum, | |||||
| "ttl" => $ttl, | |||||
| "active" => 'Y', | |||||
| "xfer" => $xfer, | |||||
| "also_notify" => $also_notify, | |||||
| "update_acl" => $update_acl, | |||||
| "dnssec_wanted" => $enable_dnssec | |||||
| ); | |||||
| $dns_soa_id = $app->db->datalogInsert('dns_soa', $insert_data, 'id'); | |||||
| // Insert the dns_rr records | |||||
| if(is_array($dns_rr) && $dns_soa_id > 0) { | |||||
| foreach($dns_rr as $rr) { | |||||
| $insert_data = array( | |||||
| "sys_userid" => $sys_userid, | |||||
| "sys_groupid" => $client_group_id, | |||||
| "sys_perm_user" => 'riud', | |||||
| "sys_perm_group" => 'riud', | |||||
| "sys_perm_other" => '', | |||||
| "server_id" => $dns_servidor['default_dnsserver'], | |||||
| "zone" => $dns_soa_id, | |||||
| "name" => $rr['name'], | |||||
| "type" => $rr['type'], | |||||
| "data" => $rr['data'], | |||||
| "aux" => $rr['aux'], | |||||
| "ttl" => $rr['ttl'], | |||||
| "active" => 'Y' | |||||
| ); | |||||
| $dns_rr_id = $app->db->datalogInsert('dns_rr', $insert_data, 'id'); | |||||
| } | |||||
| } | |||||
| //sites_web_domain_add | |||||
| $tform_def_file = "../sites/form/web_vhost_domain.tform.php"; | |||||
| $app->tform->loadFormDef($tform_def_file); | |||||
| //$app->remoting_lib->loadFormDef($tform_def_file); | |||||
| // add site | |||||
| $paramsite = array( | |||||
| 'type' => 'vhost', | |||||
| 'domain' => $fields['domain'], | |||||
| 'server_id' => $dns_servidor['default_webserver'], | |||||
| 'ip_address' => '*', //$dns_ip_servidor['ip_address'], | |||||
| 'ipv6_address' => $dns_ip_servidor_ipv6['ip_address'], | |||||
| 'traffic_quota' => '-1', | |||||
| 'hd_quota' => '0', | |||||
| 'cgi' => 'y', | |||||
| 'ssi' => 'y', | |||||
| 'suexec' => 'y', | |||||
| 'ruby' => 'n', | |||||
| 'python' => 'n', | |||||
| 'perl' => 'n', | |||||
| 'errordocs' => '1', | |||||
| 'subdomain' => 'www', | |||||
| 'php' => 'php-fpm', | |||||
| 'fastcgi_php_version' => '', | |||||
| 'seo_redirect' => '', | |||||
| 'rewrite_to_https' => 'n', | |||||
| 'allow_override' => 'All', | |||||
| 'http_port' => 80, | |||||
| 'https_port' => 443, | |||||
| 'apache_directives' => '', | |||||
| 'nginx_directives' => '', | |||||
| 'php_fpm_use_socket' => 'y', | |||||
| 'pm' => 'ondemand', | |||||
| 'pm_max_children' => 10, | |||||
| 'pm_start_servers' => 1, | |||||
| 'pm_min_spare_servers' => 1, | |||||
| 'pm_max_spare_servers' => 5, | |||||
| 'pm_process_idle_timeout' => 10, | |||||
| 'pm_max_requests' => 0, | |||||
| 'custom_php_ini' => '', | |||||
| 'active' => 'y', | |||||
| 'document_root' => '-', | |||||
| 'system_user' => '-', | |||||
| 'system_group' => '-', | |||||
| 'log_retention' => 30, | |||||
| 'client_group_id' => $client_group_id, | |||||
| ); | |||||
| //El último parámetro es para lanzar un evento que llama a la función on_after_insert que prepara los campos document_root, system_user y system_group | |||||
| $site_id = $remote->insert_query('../sites/form/web_vhost_domain.tform.php', $fields['client_id'], $paramsite, 'sites:web_vhost_domain:on_after_insert'); | |||||
| // get site data | |||||
| $app->uses('remoting_lib'); | |||||
| $app->remoting_lib->loadFormDef('../sites/form/web_vhost_domain.tform.php'); | |||||
| $site_data = $app->remoting_lib->getDataRecord($site_id); | |||||
| //$remote->insert_query('../sites/form/web_vhost_domain.tform.php', $fields['client_id'], $paramsite); | |||||
| //Si todo va bien, el resultado | |||||
| echo '<br><br>Altas Web y DNS del dominio '.$fields['domain'].', ¡Creadas correctamente!<br>'; | |||||
| //parent::onSubmit(); | |||||
| } | |||||
| } | |||||
| class remote_actions extends remoting { | |||||
| public function insert_query($formdef_file, $client_id, $params, $event_identifier = '') { | |||||
| return $this->insertQuery($formdef_file, $client_id, $params, $event_identifier); | |||||
| } | |||||
| } | |||||
| $page = new page_action; | |||||
| $page->onLoad(); | |||||
| @@ -0,0 +1,429 @@ | |||||
| <div class="form-group"> | |||||
| <label class="col-sm-3 control-label" for="domain">{tmpl_var name='domain_txt'}</label> | |||||
| <div class="col-sm-9"> | |||||
| <input class="form-control" id="domain" maxlength="255" name="domain" size="30" type="text" value="{tmpl_var name='domain'}"> | |||||
| </div> | |||||
| </div> | |||||
| <div class="form-group"> | |||||
| <label class="col-sm-3 control-label" for="client_id">{tmpl_var name='client_id_txt'}</label> | |||||
| <div class="col-sm-9"> | |||||
| <select class="form-control" id="client_id" name="client_id"> | |||||
| {tmpl_var name='client_id'} | |||||
| </select> | |||||
| </div> | |||||
| </div> | |||||
| <!--div class="form-group"> | |||||
| <label class="col-sm-3 control-label" for="template_id">{tmpl_var name='template_id_txt'}</label> | |||||
| <div class="col-sm-9"> | |||||
| <select class="form-control" id="template_id" name="template_id"> | |||||
| {tmpl_var name='template_id'} | |||||
| </select> | |||||
| </div> | |||||
| </div --> | |||||
| <!--div class="form-group"> | |||||
| <label class="col-sm-3 control-label">{tmpl_var name='db_txt'}</label> | |||||
| <div class="col-sm-9"> | |||||
| {tmpl_var name='db'} | |||||
| </div> | |||||
| </div> | |||||
| <div class="form-group db"> | |||||
| <label class="col-sm-3 control-label" for="db_type">{tmpl_var name='db_type_txt'}</label> | |||||
| <div class="col-sm-9"> | |||||
| <select class="form-control" id="db_type" name="db_type"> | |||||
| {tmpl_var name='db_type'} | |||||
| </select> | |||||
| </div> | |||||
| </div> | |||||
| <div class="form-group"> | |||||
| <label class="col-sm-3 control-label">{tmpl_var name='ftp_txt'}</label> | |||||
| <div class="col-sm-9"> | |||||
| {tmpl_var name='ftp'} | |||||
| </div> | |||||
| </div> | |||||
| <div class="form-group"> | |||||
| <label class="col-sm-3 control-label">{tmpl_var name='ssh_txt'}</label> | |||||
| <div class="col-sm-9"> | |||||
| {tmpl_var name='ssh'} | |||||
| </div> | |||||
| </div> | |||||
| <div class="form-group"> | |||||
| <label class="col-sm-3 control-label">{tmpl_var name='mail_txt'}</label> | |||||
| <div class="col-sm-9"> | |||||
| {tmpl_var name='mail'} | |||||
| </div> | |||||
| </div> | |||||
| <div class="form-group mail"> | |||||
| <label for="mailboxes" class="col-sm-3 control-label">{tmpl_var name='mailboxes_txt'}</label> | |||||
| <div class="col-sm-6"> | |||||
| <textarea class="form-control" name="mailboxes" id="mailboxes" rows='3' cols='50'>{tmpl_var name='mailboxes'}</textarea> | |||||
| </div> | |||||
| <div class="col-sm-3">{tmpl_var name='mailboxes_help_txt'}</div> | |||||
| </div> | |||||
| <div class="form-group mail"> | |||||
| <label class="col-sm-3 control-label">{tmpl_var name='dkim_txt'}</label> | |||||
| <div class="col-sm-9"> | |||||
| {tmpl_var name='dkim'} | |||||
| </div> | |||||
| </div> | |||||
| <div class="form-group dkim"> | |||||
| <label for="dkim_selector" class="col-sm-3 control-label">{tmpl_var name='dkim_selector_txt'}</label> | |||||
| <div class="col-sm-9"> | |||||
| <input type="text" name="dkim_selector" id="dkim_selector" value="{tmpl_var name='dkim_selector'}" class="form-control" /> | |||||
| </div> | |||||
| </div> | |||||
| <div class="form-group dkim"> | |||||
| <label for="dkim_private" class="col-sm-3 control-label">{tmpl_var name='dkim_private_txt'}</label> | |||||
| <div class="col-sm-9"> | |||||
| <textarea class="form-control" name="dkim_private" id="dkim_private" rows='10' cols='30'>{tmpl_var name='dkim_private'}</textarea> | |||||
| </div> | |||||
| </div> | |||||
| <div class="form-group dkim"> | |||||
| <div class="col-sm-9 col-sm-push-3"> | |||||
| <a class="btn btn-default formbutton-default" href="javascript:setRequest('create')" value="{tmpl_var name='dkim_generate_txt'}">{tmpl_var name='dkim_generate_txt'}</a> | |||||
| </div> | |||||
| </div> | |||||
| <div class="form-group dkim"> | |||||
| <div class="col-sm-9"> | |||||
| <textarea class="form-control" name="dkim_public" style="display:none;" id="dkim_public" rows='5' cols='30' readonly>{tmpl_var name='dkim_public'}</textarea> | |||||
| </div> | |||||
| </div --> | |||||
| <!--div class="form-group dkim"> | |||||
| <label for="dns_record" class="col-sm-3 control-label">{tmpl_var name='dkim_dns_txt'}</label> | |||||
| <div class="col-sm-9"> | |||||
| <textarea class="form-control" name="dns_record" id="dns_record" rows='10' cols='30' readonly>{tmpl_var name='dns_record'}</textarea> | |||||
| </div> | |||||
| </div> | |||||
| <div class="form-group"> | |||||
| <label class="col-sm-3 control-label">{tmpl_var name='dns_txt'}</label> | |||||
| <div class="col-sm-9"> | |||||
| {tmpl_var name='dns'} | |||||
| </div> | |||||
| </div --> | |||||
| <!--div class="form-group dns"> | |||||
| <label for="dns_template_id" class="col-sm-3 control-label">DNS {tmpl_var name='template_id_txt'}</label> | |||||
| <div class="col-sm-9"> | |||||
| <select name="dns_template_id" id="dns_template_id" class="form-control" onChange="ISPConfig.submitForm('pageForm','customdns/new_service_dns.php')"> | |||||
| {tmpl_var name='dns_template_id'} | |||||
| </select></div> | |||||
| </div --> | |||||
| <!--tmpl_if name="IP_VISIBLE"> | |||||
| <div class="form-group dns"> | |||||
| <label for="dns_ip" class="col-sm-3 control-label">{tmpl_var name='ip_txt'}</label> | |||||
| <div class="col-sm-9"><input type="text" name="dns_ip" id="dns_ip" value="{tmpl_var name='dns_ip'}" class="form-control" /></div></div> | |||||
| </tmpl_if> | |||||
| <tmpl_if name="IPV6_VISIBLE"> | |||||
| <div class="form-group dns"> | |||||
| <label for="dns_ipv6" class="col-sm-3 control-label">{tmpl_var name='ipv6_txt'}</label> | |||||
| <div class="col-sm-9"><input type="text" name="dns_ipv6" id="dns_ipv6" value="{tmpl_var name='dns_ipv6'}" class="form-control" /></div></div> | |||||
| </tmpl_if> | |||||
| <tmpl_if name="NS1_VISIBLE"> | |||||
| <div class="form-group dns"> | |||||
| <label for="dns_ns1" class="col-sm-3 control-label">{tmpl_var name='ns1_txt'}</label> | |||||
| <div class="col-sm-9"><input type="text" name="dns_ns1" id="dns_ns1" value="{tmpl_var name='dns_ns1'}" class="form-control" /></div></div> | |||||
| </tmpl_if> | |||||
| <tmpl_if name="NS2_VISIBLE"> | |||||
| <div class="form-group dns"> | |||||
| <label for="dns_ns2" class="col-sm-3 control-label">{tmpl_var name='ns2_txt'}</label> | |||||
| <div class="col-sm-9"><input type="text" name="dns_ns2" id="dns_ns2" value="{tmpl_var name='dns_ns2'}" class="form-control" /></div></div> | |||||
| </tmpl_if> | |||||
| <tmpl_if name="EMAIL_VISIBLE"> | |||||
| <div class="form-group dns"> | |||||
| <label for="dns_email" class="col-sm-3 control-label">{tmpl_var name='email_txt'}</label> | |||||
| <div class="col-sm-9"><input type="text" name="dns_email" id="dns_email" value="{tmpl_var name='dns_email'}" class="form-control" /></div></div> | |||||
| </tmpl_if> | |||||
| <tmpl_if name="DNSSEC_VISIBLE"> | |||||
| <div class="form-group dns"> | |||||
| <label for="dns_dnssec" class="col-sm-3 control-label">{tmpl_var name='dnssec_txt'}</label> | |||||
| <div class="col-sm-9"><input type="checkbox" name="dns_dnssec" value="Y"></div></div> | |||||
| </tmpl_if --> | |||||
| <!-- variable control de error --> | |||||
| <input id="create_service" name="create" type="hidden" value="0"> | |||||
| <form> | |||||
| <input name="id" type="hidden" value="{tmpl_var name='id'}"> | |||||
| </form> | |||||
| <!-- añadido --> | |||||
| <!--div class="panel panel_web_vhost_domain"> | |||||
| <div class="pnl_formsarea"> | |||||
| <fieldset class="inlineLabels"><legend>Domain</legend> | |||||
| <div class="ctrlHolder"> | |||||
| <label for="server_id">{tmpl_var name='server_id_txt'}</label> | |||||
| <select name="server_id" id="server_id" class="selectInput"> | |||||
| {tmpl_var name='server_id'} | |||||
| </select> | |||||
| </div> | |||||
| <div class="ctrlHolder"> | |||||
| <label for="ip_address">{tmpl_var name='ip_address_txt'}</label> | |||||
| <select name="ip_address" id="ip_address" class="selectInput"> | |||||
| {tmpl_var name='ip_address'} | |||||
| </select> | |||||
| </div> | |||||
| <div class="ctrlHolder"> | |||||
| <label for="ipv6_address">{tmpl_var name='ipv6_address_txt'}</label> | |||||
| <select name="ipv6_address" id="ipv6_address" class="selectInput"> | |||||
| {tmpl_var name='ipv6_address'} | |||||
| </select> | |||||
| </div> | |||||
| <div class="ctrlHolder"> | |||||
| <label for="domain">{tmpl_var name='domain_txt'}</label> | |||||
| <input name="domain" id="domain" value="{tmpl_var name='domain'}" size="30" maxlength="255" type="text" class="textInput" /> | |||||
| </div> | |||||
| <div class="ctrlHolder"> | |||||
| <label for="type">{tmpl_var name='type_txt'}</label> | |||||
| <select name="type" id="type" class="selectInput"> | |||||
| {tmpl_var name='type'} | |||||
| </select> | |||||
| </div> | |||||
| <div class="ctrlHolder"> | |||||
| <label for="parent_domain_id">{tmpl_var name='parent_domain_id_txt'}</label> | |||||
| <select name="parent_domain_id" id="parent_domain_id" class="selectInput"> | |||||
| {tmpl_var name='parent_domain_id'} | |||||
| </select> | |||||
| </div> | |||||
| <div class="ctrlHolder"> | |||||
| <label for="vhost_type">{tmpl_var name='vhost_type_txt'}</label> | |||||
| <select name="vhost_type" id="vhost_type" class="selectInput"> | |||||
| {tmpl_var name='vhost_type'} | |||||
| </select> | |||||
| </div> | |||||
| <div class="ctrlHolder"> | |||||
| <label for="hd_quota">{tmpl_var name='hd_quota_txt'}</label> | |||||
| <input name="hd_quota" id="hd_quota" value="{tmpl_var name='hd_quota'}" size="7" maxlength="7" type="text" class="textInput" /> | |||||
| </div> | |||||
| <div class="ctrlHolder"> | |||||
| <label for="traffic_quota">{tmpl_var name='traffic_quota_txt'}</label> | |||||
| <input name="traffic_quota" id="traffic_quota" value="{tmpl_var name='traffic_quota'}" size="7" maxlength="7" type="text" class="textInput" /> | |||||
| </div> | |||||
| <div class="ctrlHolder"> | |||||
| <p class="label">{tmpl_var name='cgi_txt'}</p> | |||||
| <div class="multiField"> | |||||
| {tmpl_var name='cgi'} | |||||
| </div> | |||||
| </div> | |||||
| <div class="ctrlHolder"> | |||||
| <p class="label">{tmpl_var name='ssi_txt'}</p> | |||||
| <div class="multiField"> | |||||
| {tmpl_var name='ssi'} | |||||
| </div> | |||||
| </div> | |||||
| <div class="ctrlHolder"> | |||||
| <p class="label">{tmpl_var name='suexec_txt'}</p> | |||||
| <div class="multiField"> | |||||
| {tmpl_var name='suexec'} | |||||
| </div> | |||||
| </div> | |||||
| <div class="ctrlHolder"> | |||||
| <p class="label">{tmpl_var name='errordocs_txt'}</p> | |||||
| <div class="multiField"> | |||||
| {tmpl_var name='errordocs'} | |||||
| </div> | |||||
| </div> | |||||
| <div class="ctrlHolder"> | |||||
| <label for="subdomain">{tmpl_var name='subdomain_txt'}</label> | |||||
| <select name="subdomain" id="subdomain" class="selectInput"> | |||||
| {tmpl_var name='subdomain'} | |||||
| </select> | |||||
| </div> | |||||
| <div class="ctrlHolder"> | |||||
| <p class="label">{tmpl_var name='ssl_txt'}</p> | |||||
| <div class="multiField"> | |||||
| {tmpl_var name='ssl'} | |||||
| </div> | |||||
| </div> | |||||
| <div class="ctrlHolder"> | |||||
| <p class="label">{tmpl_var name='ssl_letsencrypt_txt'}</p> | |||||
| <div class="multiField"> | |||||
| {tmpl_var name='ssl_letsencrypt'} | |||||
| </div> | |||||
| </div> | |||||
| <div class="ctrlHolder"> | |||||
| <label for="php">{tmpl_var name='php_txt'}</label> | |||||
| <select name="php" id="php" class="selectInput"> | |||||
| {tmpl_var name='php'} | |||||
| </select> | |||||
| </div> | |||||
| <div class="ctrlHolder"> | |||||
| <label for="fastcgi_php_version">{tmpl_var name='fastcgi_php_version_txt'}</label> | |||||
| <select name="fastcgi_php_version" id="fastcgi_php_version" class="selectInput"> | |||||
| {tmpl_var name='fastcgi_php_version'} | |||||
| </select> | |||||
| </div> | |||||
| <div class="ctrlHolder"> | |||||
| <p class="label">{tmpl_var name='perl_txt'}</p> | |||||
| <div class="multiField"> | |||||
| {tmpl_var name='perl'} | |||||
| </div> | |||||
| </div> | |||||
| <div class="ctrlHolder"> | |||||
| <p class="label">{tmpl_var name='ruby_txt'}</p> | |||||
| <div class="multiField"> | |||||
| {tmpl_var name='ruby'} | |||||
| </div> | |||||
| </div> | |||||
| <div class="ctrlHolder"> | |||||
| <p class="label">{tmpl_var name='python_txt'}</p> | |||||
| <div class="multiField"> | |||||
| {tmpl_var name='python'} | |||||
| </div> | |||||
| </div> | |||||
| <div class="ctrlHolder"> | |||||
| <p class="label">{tmpl_var name='enable_pagespeed_txt'}</p> | |||||
| <div class="multiField"> | |||||
| {tmpl_var name='enable_pagespeed'} | |||||
| </div> | |||||
| </div> | |||||
| <div class="ctrlHolder"> | |||||
| <p class="label">{tmpl_var name='active_txt'}</p> | |||||
| <div class="multiField"> | |||||
| {tmpl_var name='active'} | |||||
| </div> | |||||
| </div> | |||||
| <div class="ctrlHolder"> | |||||
| <label for="web_folder">{tmpl_var name='web_folder_txt'}</label> | |||||
| <input name="web_folder" id="web_folder" value="{tmpl_var name='web_folder'}" size="30" maxlength="255" type="text" class="textInput" /> | |||||
| </div> | |||||
| <div class="ctrlHolder"> | |||||
| <label for="_csrf_id">{tmpl_var name='_csrf_id_txt'}</label> | |||||
| <input name="_csrf_id" id="_csrf_id" value="{tmpl_var name='_csrf_id'}" size="" maxlength="" type="text" class="textInput" /> | |||||
| </div> | |||||
| <div class="ctrlHolder"> | |||||
| <label for="_csrf_key">{tmpl_var name='_csrf_key_txt'}</label> | |||||
| <input name="_csrf_key" id="_csrf_key" value="{tmpl_var name='_csrf_key'}" size="" maxlength="" type="text" class="textInput" /> | |||||
| </div> | |||||
| </fieldset> | |||||
| <input type="hidden" name="id" value="{tmpl_var name='id'}"> | |||||
| <div class="buttonHolder buttons"> | |||||
| <button class="positive iconstxt icoPositive" type="button" value="{tmpl_var name='btn_save_txt'}" onclick="ISPConfig.submitForm('pageForm','customdns/new_service_dns.php');"><span>{tmpl_var name='btn_save_txt'}</span></button> | |||||
| <button class="negative iconstxt icoNegative" type="button" value="{tmpl_var name='btn_cancel_txt'}" data-load-content="customdns/new_service_dns.php"><span>{tmpl_var name='btn_cancel_txt'}</span></button> | |||||
| </div> | |||||
| </div> | |||||
| </div> | |||||
| <!-- fin añadido --> | |||||
| <div class="clear"> | |||||
| <div class="right"> | |||||
| <button class="btn btn-default formbutton-success" id="dom-edit-submit" type="button" value="{tmpl_var name='btn_save_txt'}">{tmpl_var name='btn_save_txt'}</button> | |||||
| <button class="btn btn-default formbutton-default" data-load-content="webdns/index.php" type="button" value="{tmpl_var name='btn_cancel_txt'}">{tmpl_var name='btn_cancel_txt'}</button> | |||||
| </div> | |||||
| </div> | |||||
| <script type="text/javascript"> | |||||
| $("input[name=db]").change(function(){ | |||||
| if($(this).is(':checked')) | |||||
| { | |||||
| $(".db").show(); | |||||
| } | |||||
| else | |||||
| { | |||||
| $(".db").hide(); | |||||
| } | |||||
| }); | |||||
| $("input[name=mail]").change(function(){ | |||||
| if($(this).is(':checked')) | |||||
| { | |||||
| $(".mail").show(); | |||||
| } | |||||
| else | |||||
| { | |||||
| $(".mail").hide(); | |||||
| $(".dkim").hide(); | |||||
| $("input[name=dkim]").prop('checked', false); | |||||
| } | |||||
| }); | |||||
| if( ! $("input[name=dkim]").is(':checked')) | |||||
| { | |||||
| $(".dkim").hide(); | |||||
| } | |||||
| $("input[name=dkim]").change(function(){ | |||||
| if($(this).is(':checked')) | |||||
| { | |||||
| $(".dkim").show(); | |||||
| $(".dns").show(); | |||||
| $("input[name=dns]").prop('checked', true); | |||||
| } | |||||
| else | |||||
| { | |||||
| $(".dkim").hide(); | |||||
| } | |||||
| }); | |||||
| $("input[name=dns]").change(function(){ | |||||
| if($(this).is(':checked')) | |||||
| { | |||||
| $(".dns").show(); | |||||
| } | |||||
| else | |||||
| { | |||||
| $(".dns").hide(); | |||||
| $(".dkim").hide(); | |||||
| $("input[name=dkim]").prop('checked', false); | |||||
| } | |||||
| }); | |||||
| jQuery('#dom-edit-submit').click(function() { | |||||
| $("#create_service").val("1"); | |||||
| ISPConfig.submitForm('pageForm','webdns/new_service_webdns.php'); | |||||
| //Debuggeo | |||||
| //alert(document.getElementById("create_service").value); | |||||
| }); | |||||
| jQuery('#dns_ip').ispconfigSearch({ | |||||
| dataSrc: '/dns/ajax_get_json.php?type=get_ipv4', | |||||
| resultsLimit: '$ <tmpl_var name="globalsearch_resultslimit_of_txt"> % <tmpl_var name="globalsearch_resultslimit_results_txt">', | |||||
| ResultsTextPrefix: '<tmpl_var name="globalsearch_suggestions_text_txt">', | |||||
| noResultsText: '<tmpl_var name="globalsearch_noresults_text_txt">', | |||||
| noResultsLimit: '<tmpl_var name="globalsearch_noresults_limit_txt">', | |||||
| minChars: 0, | |||||
| cssPrefix: 'df-', | |||||
| fillSearchField: true, | |||||
| fillSearchFieldWith: 'fill_text', | |||||
| searchFieldWatermark: '', | |||||
| resultBoxPosition: '' | |||||
| }); | |||||
| jQuery('#dns_ipv6').ispconfigSearch({ | |||||
| dataSrc: '/dns/ajax_get_json.php?type=get_ipv6', | |||||
| resultsLimit: '$ <tmpl_var name="globalsearch_resultslimit_of_txt"> % <tmpl_var name="globalsearch_resultslimit_results_txt">', | |||||
| ResultsTextPrefix: '<tmpl_var name="globalsearch_suggestions_text_txt">', | |||||
| noResultsText: '<tmpl_var name="globalsearch_noresults_text_txt">', | |||||
| noResultsLimit: '<tmpl_var name="globalsearch_noresults_limit_txt">', | |||||
| minChars: 0, | |||||
| cssPrefix: 'df-', | |||||
| fillSearchField: true, | |||||
| fillSearchFieldWith: 'fill_text', | |||||
| searchFieldWatermark: '', | |||||
| resultBoxPosition: '' | |||||
| }); | |||||
| </script> | |||||
| <script language="JavaScript" type="text/javascript" src="js/mail_domain_dkim.js"></script> | |||||
| @@ -0,0 +1,37 @@ | |||||
| /* | |||||
| Copyright (c) 2017, David Ramos García, Open6Hosting <dramos@open6hosting.com> | |||||
| All rights reserved. | |||||
| Redistribution and use in source and binary forms, with or without modification, | |||||
| are permitted provided that the following conditions are met: | |||||
| * Redistributions of source code must retain the above copyright notice, | |||||
| this list of conditions and the following disclaimer. | |||||
| * Redistributions in binary form must reproduce the above copyright notice, | |||||
| this list of conditions and the following disclaimer in the documentation | |||||
| and/or other materials provided with the distribution. | |||||
| * Neither the name of ISPConfig nor the names of its contributors | |||||
| may be used to endorse or promote products derived from this software without | |||||
| specific prior written permission. | |||||
| THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND | |||||
| ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED | |||||
| WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. | |||||
| IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, | |||||
| INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, | |||||
| BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | |||||
| DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY | |||||
| OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING | |||||
| NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, | |||||
| EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | |||||
| */ | |||||
| /*CONFIGURACIÓN WEBDNS*/ | |||||
| USE `dbispconfig`; | |||||
| INSERT INTO `dns_template` (`sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `name`, `fields`, `template`, `visible`) VALUES | |||||
| (1, 1, 'riud', 'riud', '', 'webdns', 'DOMAIN,IP,IPV6,NS1,NS2,EMAIL', '[ZONE]\r\norigin={DOMAIN}.\r\nns=119.open6servers.com.\r\nmbox=soporte@open6hosting.com.\r\nrefresh=7200\r\nretry=540\r\nexpire=604800\r\nminimum=3600\r\nttl=3600\r\n\r\n[DNS_RECORDS]\r\nA|{DOMAIN}.|{IP}|0|3600\r\nA|www|{IP}|0|3600\r\nA|mail|{IP}|0|3600\r\nA|smtp|{IP}|0|3600\r\nA|ftp|{IP}|0|3600\r\nNS|{DOMAIN}.|119.open6servers.com.|0|3600\r\nNS|{DOMAIN}.|119a.open6servers.com.|0|3600\r\nMX|{DOMAIN}.|mail.{DOMAIN}.|10|3600\r\nTXT|{DOMAIN}.|v=spf1 mx a ip6:{IPV6}/64 -all|0|3600\r\nAAAA|{DOMAIN}.|{IPV6}|0|3600\r\nAAAA|www|{IPV6}|0|3600\r\nAAAA|ftp|{IPV6}|0|3600\r\nAAAA|smtp|{IPV6}|0|3600\r\nAAAA|mail|{IPV6}|0|3600', 'Y'); | |||||