| @@ -0,0 +1,230 @@ | |||||
| <?php | |||||
| /* | |||||
| 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. | |||||
| 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"] = "Baicon, queso y Ftp con BBDD"; | |||||
| $form["description"] = ""; | |||||
| $form["name"] = "ftp_bd_service"; | |||||
| $form["action"] = "ftp_bd_service.php"; | |||||
| $form["db_table"] = "server"; | |||||
| $form["db_table_idx"] = "server_id"; | |||||
| $form["db_history"] = "no"; | |||||
| $form["tab_default"] = "client"; | |||||
| $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"]['client'] = array( | |||||
| 'title' => "Ftp vs BBDD", | |||||
| 'description' => 'Create domain, mail domain, site, database and ftp/ssh', | |||||
| 'width' => 100, | |||||
| 'template' => "templates/ftp_bd_service.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' => '' | |||||
| ), | |||||
| 'template_id' => array( | |||||
| 'datatype' => 'INTEGER', | |||||
| 'formtype' => 'SELECT', | |||||
| 'default' => '', | |||||
| 'datasource' => array ( 'type' => 'SQL', | |||||
| 'querystring' => 'SELECT template_id, template_name FROM wizard_template WHERE {AUTHSQL} ORDER BY template_name', | |||||
| 'keyfield'=> 'template_id', | |||||
| 'valuefield'=> 'template_name' | |||||
| ), | |||||
| 'value' => '', | |||||
| ), | |||||
| 'db' => array ( | |||||
| 'datatype' => 'VARCHAR', | |||||
| 'formtype' => 'CHECKBOX', | |||||
| 'default' => 'y', | |||||
| 'value' => array(0 => 'n', 1 => 'y') | |||||
| ), | |||||
| 'db_type' => array ( | |||||
| 'datatype' => 'VARCHAR', | |||||
| 'formtype' => 'SELECT', | |||||
| 'default' => 'mysql', | |||||
| 'value' => array( | |||||
| //'mongo' => 'MongoDB', | |||||
| 'mysql' => 'MySQL' | |||||
| ) | |||||
| ), | |||||
| 'ftp' => array ( | |||||
| 'datatype' => 'VARCHAR', | |||||
| 'formtype' => 'CHECKBOX', | |||||
| 'default' => 'y', | |||||
| 'value' => array(0 => 'n', 1 => 'y') | |||||
| ), | |||||
| 'ssh' => array ( | |||||
| 'datatype' => 'VARCHAR', | |||||
| 'formtype' => 'CHECKBOX', | |||||
| 'default' => 'y', | |||||
| 'value' => array(0 => 'n', 1 => 'y') | |||||
| ), | |||||
| 'mail' => array ( | |||||
| 'datatype' => 'VARCHAR', | |||||
| 'formtype' => 'CHECKBOX', | |||||
| 'default' => 'y', | |||||
| 'value' => array(0 => 'n', 1 => 'y') | |||||
| ), | |||||
| 'mailboxes' => array ( | |||||
| 'datatype' => 'TEXT', | |||||
| 'formtype' => 'TEXTAREA', | |||||
| 'default' => '', | |||||
| 'value' => '', | |||||
| 'width' => '30', | |||||
| ), | |||||
| 'dkim' => array ( | |||||
| 'datatype' => 'VARCHAR', | |||||
| 'formtype' => 'CHECKBOX', | |||||
| 'default' => 'n', | |||||
| 'value' => array(0 => 'n', 1 => 'y') | |||||
| ), | |||||
| 'dkim_private' => array ( | |||||
| 'datatype' => 'TEXT', | |||||
| 'formtype' => 'TEXTAREA', | |||||
| 'default' => '', | |||||
| 'value' => '', | |||||
| 'cols' => '30', | |||||
| 'rows' => '10', | |||||
| 'validators' => array ( 0 => array ('type' => 'CUSTOM', | |||||
| 'class' => 'validate_dkim', | |||||
| 'function' => 'check_private_key', | |||||
| 'errmsg'=> 'dkim_private_key_error'), | |||||
| ), | |||||
| ), | |||||
| 'dkim_public' => array ( | |||||
| 'datatype' => 'TEXT', | |||||
| 'formtype' => 'TEXTAREA', | |||||
| 'default' => '', | |||||
| 'value' => '', | |||||
| 'cols' => '30', | |||||
| 'rows' => '10' | |||||
| ), | |||||
| 'dkim_selector' => array ( | |||||
| 'datatype' => 'VARCHAR', | |||||
| 'formtype' => 'TEXT', | |||||
| 'default' => 'default', | |||||
| 'value' => 'default', | |||||
| 'width' => '20', | |||||
| 'maxlength' => '63', | |||||
| 'validators' => array ( 0 => array ( 'type' => 'REGEX', | |||||
| 'regex' => '/^[a-z0-9]{0,63}$/', | |||||
| 'errmsg'=> 'dkim_selector_error'), | |||||
| ), | |||||
| ), | |||||
| 'dns' => array ( | |||||
| 'datatype' => 'VARCHAR', | |||||
| 'formtype' => 'CHECKBOX', | |||||
| 'default' => 'y', | |||||
| 'value' => array(0 => 'n', 1 => 'y') | |||||
| ), | |||||
| 'dns_template_id' => array( | |||||
| 'datatype' => 'INTEGER', | |||||
| 'formtype' => 'SELECT', | |||||
| 'default' => '', | |||||
| 'datasource' => array ( 'type' => 'SQL', | |||||
| 'querystring' => "SELECT template_id, name FROM dns_template WHERE visible = 'Y' ORDER BY name ASC", | |||||
| 'keyfield'=> 'template_id', | |||||
| 'valuefield'=> 'name' | |||||
| ), | |||||
| 'value' => '', | |||||
| ), | |||||
| ) | |||||
| ); | |||||
| @@ -0,0 +1,618 @@ | |||||
| <?php | |||||
| /* | |||||
| 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. | |||||
| */ | |||||
| /****************************************** | |||||
| * Begin Form configuration | |||||
| ******************************************/ | |||||
| $tform_def_file = "form/ftp_bd_service.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'); | |||||
| // Loading classes | |||||
| $app->uses('tpl,tform,remoting'); | |||||
| $app->load('tform_actions'); | |||||
| class page_action extends tform_actions { | |||||
| function onShowEnd() { | |||||
| global $app, $conf; | |||||
| $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']; | |||||
| } | |||||
| $template_record = $app->db->queryOneRecord("SELECT * FROM dns_template WHERE template_id = ?", $fields['dns_template_id']); | |||||
| $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; | |||||
| $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; | |||||
| } | |||||
| if($_POST['create'] != 1) | |||||
| { | |||||
| $app->tform->errorMessage = 'DUMMY'; | |||||
| $app->tpl->setVar($this->dataRecord); | |||||
| $this->onShow(); | |||||
| return; | |||||
| } | |||||
| // Domain OK, continue | |||||
| $remote = new remote_actions; | |||||
| // load template | |||||
| $template = $app->db->queryOneRecord("SELECT * FROM wizard_template WHERE template_id = ? LIMIT 0,1", $fields['template_id']); | |||||
| // 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 | |||||
| $domain_id = $remote->insert_query('../client/form/domain.tform.php', $fields['client_id'], array('domain' => $fields['domain'])); | |||||
| // DNS Zone | |||||
| if($fields['dns']) | |||||
| { | |||||
| if(isset($_POST['dns_ns1']) && $_POST['dns_ns1'] != ''){ | |||||
| $_POST['dns_ns1'] = $app->functions->idn_encode($_POST['dns_ns1']); | |||||
| $_POST['dns_ns1'] = strtolower($_POST['dns_ns1']); | |||||
| } | |||||
| if(isset($_POST['dns_ns2']) && $_POST['dns_ns2'] != ''){ | |||||
| $_POST['dns_ns2'] = $app->functions->idn_encode($_POST['dns_ns2']); | |||||
| $_POST['dns_ns2'] = strtolower($_POST['dns_ns2']); | |||||
| } | |||||
| if(isset($_POST['dns_email']) && $_POST['dns_email'] != ''){ | |||||
| $_POST['dns_email'] = $app->functions->idn_encode($_POST['dns_email']); | |||||
| $_POST['dns_email'] = strtolower($_POST['dns_email']); | |||||
| } | |||||
| $dns_error = ''; | |||||
| if(isset($_POST['dns_ip']) && $_POST['dns_ip'] == '') $dns_error .= $app->lng('error_ip_empty').'<br />'; | |||||
| if(isset($_POST['dns_ipv6']) && $_POST['dns_ipv6'] == '') $dns_error .= $app->lng('error_ipv6_empty').'<br />'; | |||||
| if(isset($_POST['dns_ns1']) && $_POST['dns_ns1'] == '') $dns_error .= $app->lng('error_ns1_empty').'<br />'; | |||||
| elseif(isset($_POST['ns1']) && !preg_match('/^[\w\.\-]{2,64}\.[a-zA-Z0-9]{2,30}$/', $_POST['ns1'])) $dns_error .= $app->lng('error_ns1_regex').'<br />'; | |||||
| if(isset($_POST['dns_ns2']) && $_POST['dns_ns2'] == '') $dns_error .= $app->lng('error_ns2_empty').'<br />'; | |||||
| elseif(isset($_POST['ns2']) && !preg_match('/^[\w\.\-]{2,64}\.[a-zA-Z0-9]{2,30}$/', $_POST['ns2'])) $dns_error .= $app->lng('error_ns2_regex').'<br />'; | |||||
| if(isset($_POST['dns_email']) && $_POST['dns_email'] == '') $dns_error .= $app->lng('error_email_empty').'<br />'; | |||||
| elseif(isset($_POST['dns_email']) && filter_var($_POST['dns_email'], FILTER_VALIDATE_EMAIL) === false) $dns_error .= $app->lng('error_email_regex').'<br />'; | |||||
| // check for dns errors | |||||
| if($dns_error) | |||||
| { | |||||
| $app->tform->errorMessage = $dns_error; | |||||
| $this->onError(); | |||||
| return; | |||||
| } | |||||
| $tform_def_file = "../dns/form/dns_soa.tform.php"; | |||||
| $app->tform->loadFormDef($tform_def_file); | |||||
| // replace template placeholders | |||||
| $template_record = $app->db->queryOneRecord("SELECT * FROM dns_template WHERE template_id = ?", $fields['dns_template_id']); | |||||
| $tpl_content = $template_record['template']; | |||||
| $tpl_content = str_replace('{DOMAIN}', $fields['domain'], $tpl_content); | |||||
| if($_POST['dns_ip'] != '') $tpl_content = str_replace('{IP}', $_POST['dns_ip'], $tpl_content); | |||||
| if($_POST['dns_ipv6'] != '') $tpl_content = str_replace('{IPV6}',$_POST['dns_ipv6'],$tpl_content); | |||||
| if($_POST['dns_ns1'] != '') $tpl_content = str_replace('{NS1}', $_POST['dns_ns1'], $tpl_content); | |||||
| if($_POST['dns_ns2'] != '') $tpl_content = str_replace('{NS2}', $_POST['dns_ns2'], $tpl_content); | |||||
| if($_POST['dns_email'] != '') $tpl_content = str_replace('{EMAIL}', $_POST['dns_email'], $tpl_content); | |||||
| $enable_dnssec = (($_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; | |||||
| } | |||||
| // 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" => $template['dns_server_id'], | |||||
| "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" => $template['dns_server_id'], | |||||
| "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'); | |||||
| } | |||||
| if($fields['dkim']) | |||||
| { | |||||
| $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" => $template['dns_server_id'], | |||||
| "zone" => $dns_soa_id, | |||||
| "name" => $fields['dkim_selector'].'._domainkey.'.$fields['domain'].'.', | |||||
| "type" => 'TXT', | |||||
| "data" => 'v=DKIM1; t=s; p='.str_replace(array('-----BEGIN PUBLIC KEY-----','-----END PUBLIC KEY-----',"\r","\n"), '', $_POST['dkim_public']), | |||||
| "aux" => 0, | |||||
| "ttl" => 86400, | |||||
| "active" => 'Y' | |||||
| ); | |||||
| $dns_rr_id = $app->db->datalogInsert('dns_rr', $insert_data, 'id'); | |||||
| } | |||||
| } | |||||
| $tform_def_file = "form/ftp_bd_service.tform.php"; | |||||
| $app->tform->loadFormDef($tform_def_file); | |||||
| } | |||||
| if($fields['mail']) | |||||
| { | |||||
| // add mail domain | |||||
| $params = array( | |||||
| 'server_id' => $template['mail_server_id'], | |||||
| 'domain' => $fields['domain'], | |||||
| 'dkim' => $fields['dkim'], | |||||
| 'dkim_private' => $_POST['dkim_private'], | |||||
| 'dkim_public' => $_POST['dkim_public'], | |||||
| 'dkim_selector' => $fields['dkim_selector'], | |||||
| 'active' => 'y' | |||||
| ); | |||||
| $mail_domain_id = $remote->insert_query('../mail/form/mail_domain.tform.php', $fields['client_id'], $params); | |||||
| if($template['policy']) | |||||
| { | |||||
| $params = array( | |||||
| 'server_id' => $template['mail_server_id'], | |||||
| 'policy_id' => $template['policy'], | |||||
| 'priority' => 5, | |||||
| 'email' => '@'.$fields['domain'], | |||||
| 'fullname' => '@'.$fields['domain'], | |||||
| 'local' => 'Y', | |||||
| ); | |||||
| $remote->insert_query('../mail/form/spamfilter_users.tform.php', $fields['client_id'], $params); | |||||
| } | |||||
| if($fields['mailboxes']) | |||||
| { | |||||
| $mailboxes = explode(',', $fields['mailboxes']); | |||||
| $mailbox_passwords = array(); | |||||
| foreach($mailboxes as $alias) | |||||
| { | |||||
| $alias = strtolower($app->functions->idn_encode($alias)); | |||||
| $mailbox = $alias.'@'.$fields['domain']; | |||||
| // validate, on error skip | |||||
| if( ! preg_match('/^[_a-z0-9][\w\.\-_\+@]{1,63}$/', $mailbox)) continue; | |||||
| $mailbox_passwords[$mailbox] = substr(sha1(rand()), 0, 10); | |||||
| $params = array( | |||||
| 'server_id' => $template['mail_server_id'], | |||||
| 'uid' => -1, | |||||
| 'gid' => -1, | |||||
| 'email' => $mailbox, | |||||
| 'login' => $mailbox, | |||||
| 'password' => $mailbox_passwords[$mailbox], | |||||
| 'quota' => $template['mailbox_quota']*1024*1024, | |||||
| 'postfix' => 'y', | |||||
| 'disableimap' => ($template['enableimap'] == 'y' ? 'n' : 'y'), | |||||
| 'disablepop3' => ($template['enablepop3'] == 'y' ? 'n' : 'y'), | |||||
| 'disablesmtp' => ($template['enablesmtp'] == 'y' ? 'n' : 'y'), | |||||
| 'maildir' => '/var/vmail/'.$fields['domain'].'/'.$alias, | |||||
| 'homedir' => '/var/vmail', | |||||
| ); | |||||
| $remote->insert_query('../mail/form/mail_user.tform.php', $fields['client_id'], $params); | |||||
| } | |||||
| } | |||||
| } | |||||
| // add site | |||||
| $params = array( | |||||
| 'type' => 'vhost', | |||||
| 'domain' => $fields['domain'], | |||||
| 'server_id' => $template['web_server_id'], | |||||
| 'ip_address' => $template['ip_address'], | |||||
| 'ipv6_address' => $template['ipv6_address'], | |||||
| 'traffic_quota' => $template['traffic_quota'], | |||||
| 'hd_quota' => $template['hd_quota'], | |||||
| 'cgi' => $template['cgi'], | |||||
| 'ssi' => $template['ssi'], | |||||
| 'suexec' => $template['suexec'], | |||||
| 'ruby' => $template['ruby'], | |||||
| 'python' => $template['python'], | |||||
| 'perl' => $template['perl'], | |||||
| 'errordocs' => $template['errordocs'], | |||||
| 'subdomain' => $template['subdomain'], | |||||
| 'php' => $template['php'], | |||||
| 'fastcgi_php_version' => $template['fastcgi_php_version'], | |||||
| 'seo_redirect' => $template['seo_redirect'], | |||||
| 'rewrite_to_https' => $template['rewrite_to_https'], | |||||
| 'allow_override' => $template['allow_override'], | |||||
| 'http_port' => $template['http_port'], | |||||
| 'https_port' => $template['https_port'], | |||||
| 'apache_directives' => $template['apache_directives'], | |||||
| 'nginx_directives' => $template['nginx_directives'], | |||||
| 'php_fpm_use_socket' => $template['php_fpm_use_socket'], | |||||
| 'pm' => $template['pm'], | |||||
| 'pm_max_children' => $template['pm_max_children'], | |||||
| 'pm_start_servers' => $template['pm_start_servers'], | |||||
| 'pm_min_spare_servers' => $template['pm_min_spare_servers'], | |||||
| 'pm_max_spare_servers' => $template['pm_max_spare_servers'], | |||||
| 'pm_process_idle_timeout' => $template['pm_process_idle_timeout'], | |||||
| 'pm_max_requests' => $template['pm_max_requests'], | |||||
| 'custom_php_ini' => $template['custom_php_ini'], | |||||
| 'active' => 'y', | |||||
| 'document_root' => '-', | |||||
| 'system_user' => '-', | |||||
| 'system_group' => '-', | |||||
| 'client_group_id' => $client_group_id, | |||||
| ); | |||||
| $site_id = $remote->insert_query('../sites/form/web_vhost_domain.tform.php', $fields['client_id'], $params, '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); | |||||
| // generate username | |||||
| $generated_username = $client_prefix.substr(sha1(rand()), 0, 8); | |||||
| if($fields['db']) | |||||
| { | |||||
| // add database user | |||||
| $db_user_params = array( | |||||
| 'server_id' => $template['database_server_id'], | |||||
| 'database_user' => $generated_username, | |||||
| 'database_password' => substr(sha1(rand()), 0, 10) | |||||
| ); | |||||
| $db_user_id = $remote->insert_query('../sites/form/database_user.tform.php', $fields['client_id'], $db_user_params, 'sites:web_database_user:on_after_insert'); | |||||
| // add database | |||||
| $params = array( | |||||
| 'server_id' => $template['database_server_id'], | |||||
| 'parent_domain_id' => $site_id, | |||||
| 'type' => $fields['db_type'], | |||||
| 'database_quota' => $template['database_quota'], | |||||
| 'database_name' => $db_user_params['database_user'], | |||||
| 'database_user_id' => $db_user_id, | |||||
| 'database_charset' => $template['database_charset'], | |||||
| 'remote_access' => $template['database_remote_access'], | |||||
| 'remote_ips' => $template['database_remote_ips'], | |||||
| 'active' => 'y' | |||||
| ); | |||||
| $remote->sites_database_add($fields['client_id'], $params); | |||||
| } | |||||
| if($fields['ftp']) { | |||||
| // add ftp user | |||||
| $ftp_params = array( | |||||
| 'server_id' => $template['web_server_id'], | |||||
| 'parent_domain_id' => $site_id, | |||||
| 'username' => $generated_username, | |||||
| 'password' => substr(sha1(rand()), 0, 10), | |||||
| 'quota_size' => $template['hd_quota'], | |||||
| 'dir' => $site_data['document_root'], | |||||
| 'uid' => $site_data['system_user'], | |||||
| 'gid' => $site_data['system_group'], | |||||
| 'sys_groupid' => $site_data['sys_groupid'], | |||||
| 'quota_files' => $template['quota_files'], | |||||
| 'ul_ratio' => $template['ul_ratio'], | |||||
| 'dl_ratio' => $template['dl_ratio'], | |||||
| 'ul_bandwidth' => $template['ul_bandwidth'], | |||||
| 'dl_bandwidth' => $template['dl_bandwidth'], | |||||
| 'active' => 'y', | |||||
| ); | |||||
| $remote->insert_query('../sites/form/ftp_user.tform.php', $fields['client_id'], $ftp_params); | |||||
| } | |||||
| if($fields['ssh']) { | |||||
| // add ssh user | |||||
| $ssh_params = array( | |||||
| 'server_id' => $template['web_server_id'], | |||||
| 'parent_domain_id' => $site_id, | |||||
| 'quota_size' => $template['hd_quota'], | |||||
| 'dir' => $site_data['document_root'], | |||||
| 'puser' => $site_data['system_user'], | |||||
| 'pgroup' => $site_data['system_group'], | |||||
| 'sys_groupid' => $site_data['sys_groupid'], | |||||
| 'chroot' => $template['shell_chroot'], | |||||
| 'shell' => $template['shell'], | |||||
| 'active' => 'y', | |||||
| 'username' => $generated_username, | |||||
| ); | |||||
| // username, password | |||||
| if(isset($ftp_params)) { | |||||
| $ssh_params['password'] = $ftp_params['password']; | |||||
| } else { | |||||
| $ssh_params['password'] = substr(sha1(rand()), 0, 10); | |||||
| } | |||||
| $remote->insert_query('../sites/form/shell_user.tform.php', $fields['client_id'], $ssh_params); | |||||
| } | |||||
| // results | |||||
| echo ' | |||||
| <div class="page-header"> | |||||
| <h1>New service</h1> | |||||
| </div> | |||||
| <div class="table-wrapper marginTop15"> | |||||
| <table class="table"> | |||||
| <thead class="dark"> | |||||
| <tr> | |||||
| <th colspan="2">'.$fields['domain'].'</th> | |||||
| </tr> | |||||
| </thead> | |||||
| <tbody>'; | |||||
| if(isset($db_user_params)) { | |||||
| echo | |||||
| '<tr class="info"> | |||||
| <th>DB name/user</th> | |||||
| <th>DB password</th> | |||||
| </tr> | |||||
| <tr> | |||||
| <td>'.$db_user_params['database_user'].'</td> | |||||
| <td>'.$db_user_params['database_password'].'</td> | |||||
| </tr>'; | |||||
| } | |||||
| if(isset($ftp_params)) { | |||||
| echo' | |||||
| <tr class="info"> | |||||
| <th>FTP user</th> | |||||
| <th>FTP password</th> | |||||
| </tr> | |||||
| <tr> | |||||
| <td>'.$ftp_params['username'].'</td> | |||||
| <td>'.$ftp_params['password'].'</td> | |||||
| </tr>'; | |||||
| } | |||||
| if(isset($ssh_params)) { | |||||
| echo' | |||||
| <tr class="info"> | |||||
| <th>SSH user</th> | |||||
| <th>SSH password</th> | |||||
| </tr> | |||||
| <tr> | |||||
| <td>'.$ssh_params['username'].'</td> | |||||
| <td>'.$ssh_params['password'].'</td> | |||||
| </tr>'; | |||||
| } | |||||
| if(isset($mailbox_passwords) and (bool)count($mailbox_passwords)) | |||||
| { | |||||
| echo ' | |||||
| <tr class="info"> | |||||
| <th>Mailbox</th> | |||||
| <th>Password</th> | |||||
| </tr>'; | |||||
| foreach($mailbox_passwords as $mail => $pass) | |||||
| { | |||||
| echo' | |||||
| <tr> | |||||
| <td>'.$mail.'</td> | |||||
| <td>'.$pass.'</td> | |||||
| </tr>'; | |||||
| } | |||||
| } | |||||
| echo' | |||||
| </tbody> | |||||
| </table> | |||||
| </div> | |||||
| '; | |||||
| } | |||||
| private function clean_private_key($key) | |||||
| { | |||||
| return str_replace('\r\n', '', $key); | |||||
| } | |||||
| } | |||||
| 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); | |||||
| } | |||||
| public function sites_database_add($client_id, $params) | |||||
| { | |||||
| global $app; | |||||
| $sql = $this->insertQueryPrepare('../sites/form/database.tform.php', $client_id, $params); | |||||
| if($sql !== false) { | |||||
| $app->uses('sites_database_plugin'); | |||||
| $this->id = 0; | |||||
| $this->dataRecord = $params; | |||||
| $app->sites_database_plugin->processDatabaseInsert($this); | |||||
| $retval = $this->insertQueryExecute($sql, $params); | |||||
| // set correct values for backup_interval and backup_copies | |||||
| if(isset($params['backup_interval']) || isset($params['backup_copies'])){ | |||||
| $sql_set = array(); | |||||
| if(isset($params['backup_interval'])) $sql_set[] = "backup_interval = '".$app->db->quote($params['backup_interval'])."'"; | |||||
| if(isset($params['backup_copies'])) $sql_set[] = "backup_copies = ".$app->functions->intval($params['backup_copies']); | |||||
| //$app->db->query("UPDATE web_database SET ".implode(', ', $sql_set)." WHERE database_id = ".$retval); | |||||
| $this->updateQueryExecute("UPDATE web_database SET ".implode(', ', $sql_set)." WHERE database_id = ".$retval, $retval, $params); | |||||
| } | |||||
| return $retval; | |||||
| } | |||||
| return false; | |||||
| } | |||||
| } | |||||
| $page = new page_action; | |||||
| $page->onLoad(); | |||||
| @@ -0,0 +1,188 @@ | |||||
| <?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.'; | |||||
| $wb['error_dominio_mas_puntos'] = 'El dominio no es correcto, hay 3 puntos o más.'; | |||||
| $wb['error_dominio_www'] = 'El dominio no es correcto. No escriba "www" antes del dominio.'; | |||||
| $wb['error_no_existe_dominio_padre'] = 'El dominio padre para este subdominio, no existe.'; | |||||
| $wb['error_no_ip'] = 'No tiene ip, necesita añadirla en la configuración.'; | |||||
| $wb['error_subdominio_existe'] = 'Este subdominio existe.'; | |||||
| ?> | |||||
| @@ -1,81 +1,86 @@ | |||||
| <?php | <?php | ||||
| $wb["server_id_txt"] = 'Server'; | |||||
| $wb["ip_address_txt"] = 'IPv4-Address'; | $wb["ip_address_txt"] = 'IPv4-Address'; | ||||
| $wb["ipv6_address_txt"] = 'IPv6-Address'; | $wb["ipv6_address_txt"] = 'IPv6-Address'; | ||||
| $wb["hd_quota_txt"] = 'Harddisk Quota'; | |||||
| $wb["traffic_quota_txt"] = 'Traffic Quota'; | $wb["traffic_quota_txt"] = 'Traffic Quota'; | ||||
| $wb['hd_quota_txt'] = 'Harddisk Quota'; | |||||
| $wb["cgi_txt"] = 'CGI'; | $wb["cgi_txt"] = 'CGI'; | ||||
| $wb["ssi_txt"] = 'SSI'; | $wb["ssi_txt"] = 'SSI'; | ||||
| $wb["suexec_txt"] = 'SuEXEC'; | |||||
| $wb["errordocs_txt"] = 'Own Error-Documents'; | $wb["errordocs_txt"] = 'Own Error-Documents'; | ||||
| $wb["subdomain_txt"] = 'Auto-Subdomain'; | $wb["subdomain_txt"] = 'Auto-Subdomain'; | ||||
| $wb["ssl_txt"] = 'SSL'; | |||||
| $wb["suexec_txt"] = 'SuEXEC'; | |||||
| $wb["php_txt"] = 'PHP'; | $wb["php_txt"] = 'PHP'; | ||||
| $wb["fastcgi_php_version_txt"] = 'PHP Version'; | |||||
| $wb["perl_txt"] = 'Perl'; | $wb["perl_txt"] = 'Perl'; | ||||
| $wb["ruby_txt"] = 'Ruby'; | $wb["ruby_txt"] = 'Ruby'; | ||||
| $wb["python_txt"] = 'Python'; | $wb["python_txt"] = 'Python'; | ||||
| $wb["seo_redirect_txt"] = 'SEO Redirect'; | |||||
| $wb["rewrite_to_https_txt"] = 'Rewrite HTTP to HTTPS'; | |||||
| $wb["allow_override_txt"] = 'Apache AllowOverride'; | $wb["allow_override_txt"] = 'Apache AllowOverride'; | ||||
| $wb["fastcgi_php_version_txt"] = 'PHP Version'; | |||||
| $wb["php_fpm_use_socket_txt"] = 'Use Socket For PHP-FPM'; | |||||
| $wb["pm_txt"] = 'PHP-FPM Process Manager'; | $wb["pm_txt"] = 'PHP-FPM Process Manager'; | ||||
| $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["pm_process_idle_timeout_txt"] = 'PHP-FPM pm.process_idle_timeout'; | $wb["pm_process_idle_timeout_txt"] = 'PHP-FPM pm.process_idle_timeout'; | ||||
| $wb["pm_max_requests_txt"] = 'PHP-FPM pm.max_requests'; | $wb["pm_max_requests_txt"] = 'PHP-FPM pm.max_requests'; | ||||
| $wb["custom_php_ini_txt"] = 'Custom php.ini settings'; | |||||
| $wb["apache_directives_txt"] = 'Apache Directives'; | |||||
| $wb["nginx_directives_txt"] = 'Nginx Directives'; | |||||
| $wb["http_port_txt"] = 'HTTP Port'; | |||||
| $wb["https_port_txt"] = 'HTTPS Port'; | |||||
| $wb["log_retention_txt"] = 'log_retention'; | |||||
| $wb["web_server_id_txt"] = 'web_server_id'; | |||||
| $wb["template_name_txt"] = 'Template name'; | |||||
| $wb["_csrf_id_txt"] = '_csrf_id'; | |||||
| $wb["_csrf_key_txt"] = '_csrf_key'; | |||||
| $wb["server_id_txt"] = 'Server'; | |||||
| $wb["ssl_txt"] = 'SSL'; | |||||
| $wb["pm_process_idle_timeout_error_regex"] = 'PHP-FPM pm.process_idle_timeout must be a positive integer value.'; | $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_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_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["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_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_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_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["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["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["no_redirect_txt"] = 'No redirect'; | ||||
| $wb["none_txt"] = 'None'; | $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_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["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_save_txt"] = 'Save'; | ||||
| $wb["btn_cancel_txt"] = 'Cancel'; | $wb["btn_cancel_txt"] = 'Cancel'; | ||||
| $wb["variables_txt"] = 'Variables'; | $wb["variables_txt"] = 'Variables'; | ||||
| $wb["disabled_txt"] = 'Disabled'; | $wb["disabled_txt"] = 'Disabled'; | ||||
| $wb["template_name_txt"] = 'Template name'; | |||||
| $wb["template_name_error_empty"] = 'Template name can not be empty!'; | $wb["template_name_error_empty"] = 'Template name can not be empty!'; | ||||
| $wb["policy_txt"] = 'Spamfilter'; | $wb["policy_txt"] = 'Spamfilter'; | ||||
| $wb["no_policy"] = '- not enabled -'; | $wb["no_policy"] = '- not enabled -'; | ||||
| $wb["dkim_txt"] = 'Enable DKIM'; | $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["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_access_txt"] = 'Remote Access'; | ||||
| $wb["remote_ips_txt"] = 'Remote Access IPs (separate by , and leave blank for <i>any</i>)'; | $wb["remote_ips_txt"] = 'Remote Access IPs (separate by , and leave blank for <i>any</i>)'; | ||||
| $wb["database_charset_txt"] = 'Database charset'; | $wb["database_charset_txt"] = 'Database charset'; | ||||
| $wb["database_remote_error_ips"] = 'At least one of the entered ip addresses is invalid.'; | $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["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_txt"] = 'Filequota'; | ||||
| $wb["quota_files_unity_txt"] = 'Files'; | $wb["quota_files_unity_txt"] = 'Files'; | ||||
| $wb["ul_ratio_txt"] = 'Upload ratio'; | $wb["ul_ratio_txt"] = 'Upload ratio'; | ||||
| $wb["dl_ratio_txt"] = 'Download ratio'; | $wb["dl_ratio_txt"] = 'Download ratio'; | ||||
| $wb["ul_bandwidth_txt"] = 'Upload bandwidth'; | $wb["ul_bandwidth_txt"] = 'Upload bandwidth'; | ||||
| $wb["dl_bandwidth_txt"] = 'Download 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["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["enablesmtp_txt"] = 'Enable SMTP (sending)'; | ||||
| $wb["enableimap_txt"] = 'Enable IMAP'; | $wb["enableimap_txt"] = 'Enable IMAP'; | ||||
| $wb["enablepop3_txt"] = 'Enable POP3'; | $wb["enablepop3_txt"] = 'Enable POP3'; | ||||
| $wb["mailbox_quota_txt"] = 'Mailbox quota (0 for unlimited)'; | $wb["mailbox_quota_txt"] = 'Mailbox quota (0 for unlimited)'; | ||||
| $wb["quota_error_isint"] = 'Mailbox size must be a number.'; | $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["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,188 @@ | |||||
| <?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.'; | |||||
| $wb['error_dominio_mas_puntos'] = 'El dominio no es correcto, hay 3 puntos o más.'; | |||||
| $wb['error_dominio_www'] = 'El dominio no es correcto. No escriba "www" antes del dominio.'; | |||||
| $wb['error_no_existe_dominio_padre'] = 'El dominio padre para este subdominio, no existe.'; | |||||
| $wb['error_no_ip'] = 'No tiene ip, necesita añadirla en la configuración.'; | |||||
| $wb['error_subdominio_existe'] = 'Este subdominio existe.'; | |||||
| ?> | |||||
| @@ -32,6 +32,11 @@ $items[] = array( 'title' => 'Nuevo servicio web', | |||||
| 'link' => 'webdns/new_service_webdns.php', | 'link' => 'webdns/new_service_webdns.php', | ||||
| 'html_id' => 'new_service_webdns'); | 'html_id' => 'new_service_webdns'); | ||||
| $items[] = array( 'title' => 'FTP con BD', | |||||
| 'target' => 'content', | |||||
| 'link' => 'webdns/ftp_bd_service.php', | |||||
| 'html_id' =>'ftp_service' | |||||
| ); | |||||
| $items[] = array( 'title' => 'Versión', | $items[] = array( 'title' => 'Versión', | ||||
| 'target' => 'content', | 'target' => 'content', | ||||
| 'link' => 'webdns/version_webdns.php', | 'link' => 'webdns/version_webdns.php', | ||||
| @@ -0,0 +1,258 @@ | |||||
| <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','webdns/ftp_bd_service.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> | |||||
| --!> | |||||
| <input id="create_service" name="create" type="hidden" value="0"> | |||||
| <form> | |||||
| <input name="id" type="hidden" value="{tmpl_var name='id'}"> | |||||
| </form> | |||||
| <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/ftp_bd_service.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/ftp_bd_service.php'); | |||||
| }); | |||||
| 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> | |||||