Added Wizard to create DNS records.
3 files modified
12 files added
| | |
| | | KEY `active` (`active`) |
| | | ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ; |
| | | |
| | | -- -------------------------------------------------------- |
| | | |
| | | -- |
| | | -- Tabellenstruktur für Tabelle `dns_template` |
| | | -- |
| | | |
| | | CREATE TABLE `dns_template` ( |
| | | `template_id` bigint(20) NOT NULL auto_increment, |
| | | `sys_userid` int(11) NOT NULL default '0', |
| | | `sys_groupid` int(11) NOT NULL default '0', |
| | | `sys_perm_user` varchar(5) default NULL, |
| | | `sys_perm_group` varchar(5) default NULL, |
| | | `sys_perm_other` varchar(5) default NULL, |
| | | `name` varchar(255) default NULL, |
| | | `fields` varchar(255) default NULL, |
| | | `template` text, |
| | | `visible` varchar(255) NOT NULL default 'Y', |
| | | PRIMARY KEY (`template_id`) |
| | | ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ; |
| | | |
| | | -- |
| | | -- Daten für Tabelle `dns_template` |
| | | -- |
| | | |
| | | INSERT INTO `dns_template` (`template_id`, `sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `name`, `fields`, `template`, `visible`) VALUES (1, 1, 1, 'riud', 'riud', '', 'Default', 'DOMAIN,IP,NS1,NS2,EMAIL', '[ZONE]\norigin={DOMAIN}.\nns={NS1}.\nmbox={EMAIL}.\nrefresh=28800\nretry=7200\nexpire=604800\nminimum=86400\nttl=86400\n\n[DNS_RECORDS]\nA|{DOMAIN}.|{IP}|0|86400\nA|www|{IP}|0|86400\nA|mail|{IP}|0|86400\nNS|{DOMAIN}.|{NS1}.|0|86400\nNS|{DOMAIN}.|{NS2}.|0|86400\nMX|{DOMAIN}.|mail.{DOMAIN}.|10|86400', 'y'); |
| | | |
| | | |
| | | |
| | | |
| | | -- -------------------------------------------------------- |
| | |
| | | $new_rec = $this->queryOneRecord("SELECT * FROM $tablename WHERE $index_field = '$index_value'"); |
| | | $this->datalogSave($tablename, 'INSERT', $index_field, $index_value, $old_rec, $new_rec); |
| | | |
| | | return true; |
| | | return $index_value; |
| | | } |
| | | |
| | | //** Updates a record and saves the changes into the datalog |
New file |
| | |
| | | <?php |
| | | |
| | | /* |
| | | Copyright (c) 2008, Till Brehm, projektfarm Gmbh |
| | | 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 |
| | | ******************************************/ |
| | | |
| | | $list_def_file = "list/dns_template.list.php"; |
| | | $tform_def_file = "form/dns_template.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('dns'); |
| | | |
| | | $app->uses('tpl,tform,tform_actions'); |
| | | $app->load('tform_actions'); |
| | | |
| | | class page_action extends tform_actions { |
| | | |
| | | } |
| | | |
| | | $page = new page_action; |
| | | $page->onDelete(); |
| | | |
| | | ?> |
New file |
| | |
| | | <?php |
| | | /* |
| | | Copyright (c) 2007, Till Brehm, projektfarm Gmbh |
| | | 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/dns_template.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('dns'); |
| | | |
| | | // Loading classes |
| | | $app->uses('tpl,tform,tform_actions'); |
| | | $app->load('tform_actions'); |
| | | |
| | | class page_action extends tform_actions { |
| | | |
| | | } |
| | | |
| | | $page = new page_action; |
| | | $page->onLoad(); |
| | | |
| | | ?> |
New file |
| | |
| | | <?php |
| | | require_once('../../lib/config.inc.php'); |
| | | require_once('../../lib/app.inc.php'); |
| | | |
| | | /****************************************** |
| | | * Begin Form configuration |
| | | ******************************************/ |
| | | |
| | | $list_def_file = "list/dns_template.list.php"; |
| | | |
| | | /****************************************** |
| | | * End Form configuration |
| | | ******************************************/ |
| | | |
| | | //* Check permissions for module |
| | | $app->auth->check_module_permissions('dns'); |
| | | |
| | | $app->uses('listform_actions'); |
| | | // $app->listform_actions->SQLExtWhere = "access = 'REJECT'"; |
| | | |
| | | $app->listform_actions->onLoad(); |
| | | |
| | | |
| | | ?> |
New file |
| | |
| | | <?php |
| | | |
| | | /* |
| | | Copyright (c) 2008, Till Brehm, projektfarm Gmbh |
| | | 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. |
| | | */ |
| | | |
| | | require_once('../../lib/config.inc.php'); |
| | | require_once('../../lib/app.inc.php'); |
| | | |
| | | //* Check permissions for module |
| | | $app->auth->check_module_permissions('dns'); |
| | | |
| | | |
| | | // Loading the template |
| | | $app->uses('tpl'); |
| | | $app->tpl->newTemplate("form.tpl.htm"); |
| | | $app->tpl->setInclude('content_tpl','templates/dns_wizard.htm'); |
| | | |
| | | // import variables |
| | | $template_id = (isset($_POST['template_id']))?intval($_POST['template_id']):1; |
| | | $server_id = (isset($_POST['server_id']))?intval($_POST['server_id']):1; |
| | | $sys_groupid = (isset($_POST['client_group_id']))?intval($_POST['client_group_id']):0; |
| | | |
| | | |
| | | |
| | | // Load the templates |
| | | $records = $app->db->queryAllRecords("SELECT * FROM dns_template WHERE visible = 'y'"); |
| | | $template_id_option = ''; |
| | | foreach($records as $rec){ |
| | | $checked = ($rec['template_id'] == $template_id)?' SELECTED':''; |
| | | $template_id_option .= '<option value="'.$rec['template_id'].'"'.$checked.'>'.$rec['name'].'</option>'; |
| | | } |
| | | $app->tpl->setVar("template_id_option",$template_id_option); |
| | | |
| | | // If the user is administrator |
| | | if($_SESSION['s']['user']['typ'] == 'admin') { |
| | | |
| | | // Load the list of servers |
| | | $records = $app->db->queryAllRecords("SELECT server_id, server_name FROM server WHERE dns_server = 1 ORDER BY server_name"); |
| | | $server_id_option = ''; |
| | | foreach($records as $rec){ |
| | | $checked = ($rec['server_id'] == $server_id)?' SELECTED':''; |
| | | $server_id_option .= '<option value="'.$rec['server_id'].'"'.$checked.'>'.$rec['server_name'].'</option>'; |
| | | } |
| | | $app->tpl->setVar("server_id",$server_id_option); |
| | | |
| | | // load the list of clients |
| | | $sql = "SELECT groupid, name FROM sys_group WHERE client_id > 0"; |
| | | $clients = $app->db->queryAllRecords($sql); |
| | | $client_select = ''; |
| | | if($_SESSION["s"]["user"]["typ"] == 'admin') $client_select .= "<option value='0'></option>"; |
| | | if(is_array($clients)) { |
| | | foreach( $clients as $client) { |
| | | $selected = ($client["groupid"] == $sys_groupid)?'SELECTED':''; |
| | | $client_select .= "<option value='$client[groupid]' $selected>$client[name]</option>\r\n"; |
| | | } |
| | | } |
| | | |
| | | $app->tpl->setVar("client_group_id",$client_select); |
| | | |
| | | } |
| | | |
| | | $template_record = $app->db->queryOneRecord("SELECT * FROM dns_template WHERE template_id = '$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[$field]); |
| | | } |
| | | } |
| | | |
| | | if($_POST['create'] == 1) { |
| | | |
| | | $error = ''; |
| | | |
| | | if(isset($_POST['domain']) && $_POST['domain'] == '') $error .= $app->lng('error_domain_empty'); |
| | | if(isset($_POST['ip']) && $_POST['ip'] == '') $error .= $app->lng('error_ip_empty'); |
| | | if(isset($_POST['ns1']) && $_POST['ns1'] == '') $error .= $app->lng('error_ns1_empty'); |
| | | if(isset($_POST['ns2']) && $_POST['ns2'] == '') $error .= $app->lng('error_ns2_empty'); |
| | | if(isset($_POST['email']) && $_POST['email'] == '') $error .= $app->lng('error_email_empty'); |
| | | |
| | | |
| | | // replace template placeholders |
| | | $tpl_content = $template_record['template']; |
| | | if($_POST['domain'] != '') $tpl_content = str_replace('{DOMAIN}',$_POST['domain'],$tpl_content); |
| | | if($_POST['ip'] != '') $tpl_content = str_replace('{IP}',$_POST['ip'],$tpl_content); |
| | | if($_POST['ns1'] != '') $tpl_content = str_replace('{NS1}',$_POST['ns1'],$tpl_content); |
| | | if($_POST['ns2'] != '') $tpl_content = str_replace('{NS2}',$_POST['ns2'],$tpl_content); |
| | | if($_POST['email'] != '') $tpl_content = str_replace('{EMAIL}',$_POST['email'],$tpl_content); |
| | | |
| | | // Parse the template |
| | | $tpl_rows = explode("\n",$tpl_content); |
| | | $section = ''; |
| | | $vars = array(); |
| | | $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' => $app->db->quote($parts[1]), |
| | | 'type' => $app->db->quote($parts[0]), |
| | | 'data' => $app->db->quote($parts[2]), |
| | | 'aux' => $app->db->quote($parts[3]), |
| | | 'ttl' => $app->db->quote($parts[4]) |
| | | ); |
| | | } |
| | | } |
| | | } |
| | | |
| | | } // end foreach |
| | | |
| | | if($vars['origin'] == '') $error .= $app->lng('error_origin_empty'); |
| | | if($vars['ns'] == '') $error .= $app->lng('error_ns_empty'); |
| | | if($vars['mbox'] == '') $error .= $app->lng('error_mbox_empty'); |
| | | if($vars['refresh'] == '') $error .= $app->lng('error_refresh_empty'); |
| | | if($vars['retry'] == '') $error .= $app->lng('error_retry_empty'); |
| | | if($vars['expire'] == '') $error .= $app->lng('error_expire_empty'); |
| | | if($vars['minimum'] == '') $error .= $app->lng('error_minimum_empty'); |
| | | if($vars['ttl'] == '') $error .= $app->lng('error_ttl_empty'); |
| | | |
| | | if($error == '') { |
| | | // Insert the soa record |
| | | $sys_userid = $_SESSION['s']['user']['userid']; |
| | | $origin = $app->db->quote($vars['origin']); |
| | | $ns = $app->db->quote($vars['ns']); |
| | | $mbox = $app->db->quote(str_replace('@','.',$vars['mbox'])); |
| | | $refresh = $app->db->quote($vars['refresh']); |
| | | $retry = $app->db->quote($vars['retry']); |
| | | $expire = $app->db->quote($vars['expire']); |
| | | $minimum = $app->db->quote($vars['minimum']); |
| | | $ttl = $app->db->quote($vars['ttl']); |
| | | |
| | | $insert_data = "(`sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `server_id`, `origin`, `ns`, `mbox`, `serial`, `refresh`, `retry`, `expire`, `minimum`, `ttl`, `active`, `xfer`) VALUES |
| | | ('$sys_userid', '$sys_groupid', 'riud', 'riud', '', '$server_id', '$origin', '$ns', '$mbox', '1', '$refresh', '$retry', '$expire', '$minimum', '$ttl', 'Y', '')"; |
| | | $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 = "(`sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `server_id`, `zone`, `name`, `type`, `data`, `aux`, `ttl`, `active`) VALUES |
| | | ('$sys_userid', '$sys_groupid', 'riud', 'riud', '', '$server_id', '$dns_soa_id', '$rr[name]', '$rr[type]', '$rr[data]', '$rr[aux]', '$rr[ttl]', 'Y')"; |
| | | $dns_rr_id = $app->db->datalogInsert('dns_rr', $insert_data, 'id'); |
| | | } |
| | | } |
| | | |
| | | header("Location: dns_soa_list.php"); |
| | | exit; |
| | | |
| | | } else { |
| | | $app->tpl->setVar("error",$error); |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | | |
| | | $app->tpl->setVar("title",'DNS Wizard'); |
| | | |
| | | $lng_file = 'lib/lang/'.$_SESSION['s']['language'].'_dns_wizard.lng'; |
| | | include($lng_file); |
| | | $app->tpl->setVar($wb); |
| | | |
| | | $app->tpl_defaults(); |
| | | $app->tpl->pparse(); |
| | | |
| | | |
| | | ?> |
New file |
| | |
| | | <?php |
| | | |
| | | /* |
| | | 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). |
| | | |
| | | |
| | | */ |
| | | |
| | | $form["title"] = "DNS Wizard template"; |
| | | $form["description"] = ""; |
| | | $form["name"] = "dns_template"; |
| | | $form["action"] = "dns_template_edit.php"; |
| | | $form["db_table"] = "dns_template"; |
| | | $form["db_table_idx"] = "template_id"; |
| | | $form["db_history"] = "yes"; |
| | | $form["tab_default"] = "template"; |
| | | $form["list_default"] = "dns_template_list.php"; |
| | | $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"]['template'] = array ( |
| | | 'title' => "DNS Template", |
| | | 'width' => 100, |
| | | 'template' => "templates/dns_template_edit.htm", |
| | | 'fields' => array ( |
| | | ################################## |
| | | # Begin Datatable fields |
| | | ################################## |
| | | 'name' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'TEXT', |
| | | 'validators' => array ( 0 => array ( 'type' => 'NOTEMPTY', |
| | | 'errmsg'=> 'name_error_empty'), |
| | | ), |
| | | 'default' => '', |
| | | 'value' => '', |
| | | 'width' => '40', |
| | | 'maxlength' => '255' |
| | | ), |
| | | 'fields' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'CHECKBOXARRAY', |
| | | 'default' => '', |
| | | 'separator' => ',', |
| | | 'value' => array('DOMAIN' => 'Domain','IP' => 'IP Address','NS1' => 'NS 1','NS2' => 'NS 2','EMAIL' => 'Email') |
| | | ), |
| | | 'template' => array ( |
| | | 'datatype' => 'TEXT', |
| | | 'formtype' => 'TEXTAREA', |
| | | 'default' => '', |
| | | 'value' => '', |
| | | 'cols' => '40', |
| | | 'rows' => '15' |
| | | ), |
| | | 'visible' => array ( |
| | | 'datatype' => 'VARCHAR', |
| | | 'formtype' => 'CHECKBOX', |
| | | 'default' => 'y', |
| | | 'value' => array(0 => 'n',1 => 'y') |
| | | ), |
| | | ################################## |
| | | # ENDE Datatable fields |
| | | ################################## |
| | | ) |
| | | ); |
| | | |
| | | |
| | | |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["name_txt"] = 'Name'; |
| | | $wb["fields_txt"] = 'Fields'; |
| | | $wb["template_txt"] = 'Template'; |
| | | $wb["visible_txt"] = 'Visible'; |
| | | $wb["btn_save_txt"] = 'Save'; |
| | | $wb["btn_cancel_txt"] = 'Cancel'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | $wb["list_head_txt"] = 'DNS Wizard Template'; |
| | | $wb["visible_txt"] = 'Visible'; |
| | | $wb["name_txt"] = 'Name'; |
| | | $wb["page_txt"] = 'Page'; |
| | | $wb["page_of_txt"] = 'of'; |
| | | $wb["page_next_txt"] = 'Next'; |
| | | $wb["page_back_txt"] = 'Back'; |
| | | $wb["delete_txt"] = 'Delete'; |
| | | $wb["filter_txt"] = 'Filter'; |
| | | $wb["add_new_record_txt"] = 'Add new record'; |
| | | ?> |
New file |
| | |
| | | <?php |
| | | |
| | | $wb['template_id_txt'] = 'Template'; |
| | | $wb['server_id_txt'] = 'Server'; |
| | | $wb['client_txt'] = 'Client'; |
| | | $wb["btn_save_txt"] = 'Create DNS Record'; |
| | | $wb["btn_cancel_txt"] = 'Cancel'; |
| | | $wb['domain_txt'] = 'Domain'; |
| | | $wb['email_txt'] = 'Email'; |
| | | $wb['ns1_txt'] = 'NS 1'; |
| | | $wb['ns2_txt'] = 'NS 2'; |
| | | $wb['ip_txt'] = 'IP Address'; |
| | | |
| | | $wb['error_origin_empty'] = 'Origin empty.'; |
| | | |
| | | ?> |
| | |
| | | $module["nav"][] = array( 'title' => 'DNS', |
| | | 'open' => 1, |
| | | 'items' => $items); |
| | | |
| | | unset($items); |
| | | |
| | | |
| | | $items[] = array( 'title' => "Add DNS Zone", |
| | | 'target' => 'content', |
| | | 'link' => 'dns/dns_wizard.php'); |
| | | |
| | | |
| | | $items[] = array( 'title' => "Templates", |
| | | 'target' => 'content', |
| | | 'link' => 'dns/dns_template_list.php'); |
| | | |
| | | |
| | | |
| | | $module["nav"][] = array( 'title' => 'DNS Wizard', |
| | | 'open' => 1, |
| | | 'items' => $items); |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | ?> |
New file |
| | |
| | | <?php |
| | | |
| | | /* |
| | | Datatypes: |
| | | - INTEGER |
| | | - DOUBLE |
| | | - CURRENCY |
| | | - VARCHAR |
| | | - TEXT |
| | | - DATE |
| | | */ |
| | | |
| | | |
| | | |
| | | // Name of the list |
| | | $liste["name"] = "dns_template"; |
| | | |
| | | // Database table |
| | | $liste["table"] = "dns_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"] = "dns_template_list.php"; |
| | | |
| | | // Script file of the edit form |
| | | $liste["edit_file"] = "dns_template_edit.php"; |
| | | |
| | | // Script File of the delete script |
| | | $liste["delete_file"] = "dns_template_del.php"; |
| | | |
| | | // Paging Template |
| | | $liste["paging_tpl"] = "templates/paging.tpl.htm"; |
| | | |
| | | // Enable auth |
| | | $liste["auth"] = "yes"; |
| | | |
| | | |
| | | /***************************************************** |
| | | * Suchfelder |
| | | *****************************************************/ |
| | | |
| | | |
| | | $liste["item"][] = array( 'field' => "visible", |
| | | 'datatype' => "VARCHAR", |
| | | 'formtype' => "SELECT", |
| | | 'op' => "=", |
| | | 'prefix' => "", |
| | | 'suffix' => "", |
| | | 'width' => "", |
| | | 'value' => array('y' => "<div id=\"ir-Yes\" class=\"swap\"><span>Yes</span></div>",'n' => "<div class=\"swap\" id=\"ir-No\"><span>No</span></div>")); |
| | | |
| | | |
| | | $liste["item"][] = array( 'field' => "name", |
| | | 'datatype' => "VARCHAR", |
| | | 'formtype' => "TEXT", |
| | | 'op' => "like", |
| | | 'prefix' => "%", |
| | | 'suffix' => "%", |
| | | 'width' => "", |
| | | 'value' => ""); |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | ?> |
New file |
| | |
| | | <h2><tmpl_var name="list_head_txt"></h2>
|
| | |
|
| | | <div class="panel panel_dns_template">
|
| | |
|
| | | <div class="pnl_formsarea">
|
| | | <fieldset id="wf_area_dns_template"><legend>DNS Template</legend>
|
| | | <span class="wf_oneField">
|
| | | <label for="name" class="wf_preField">{tmpl_var name='name_txt'}</label>
|
| | | <input type="text" id="name" name="name" value="{tmpl_var name='name'}" size="40" maxlength="255">
|
| | | </span>
|
| | | <span class="wf_oneField">
|
| | | <span class="wf_label wf_preField">{tmpl_var name='fields_txt'}</span> <fieldset>
|
| | | {tmpl_var name='fields'}
|
| | | </fieldset>
|
| | | </span>
|
| | | <span class="wf_oneField">
|
| | | <label for="template" class="wf_preField">{tmpl_var name='template_txt'}</label>
|
| | | <textarea id="template" name="template" cols='40' rows='15'>{tmpl_var name='template'}</textarea>
|
| | | </span>
|
| | | <span class="wf_oneField">
|
| | | <label for="visible" class="wf_preField">{tmpl_var name='visible_txt'}</label> <span class="">
|
| | | {tmpl_var name='visible'}
|
| | | </span>
|
| | | </span>
|
| | | </fieldset>
|
| | |
|
| | | <input type="hidden" name="id" value="{tmpl_var name='id'}">
|
| | |
|
| | | <div class="wf_actions buttons">
|
| | | <button class="positive iconstxt icoPositive" type="button" value="{tmpl_var name='btn_save_txt'}" onClick="submitForm('pageForm','dns/dns_template_edit.php');"><span>{tmpl_var name='btn_save_txt'}</span></button>
|
| | | <button class="negative iconstxt icoNegative" type="button" value="{tmpl_var name='btn_cancel_txt'}" onClick="loadContent('dns/dns_template_list.php');"><span>{tmpl_var name='btn_cancel_txt'}</span></button>
|
| | | </div>
|
| | | </div>
|
| | | |
| | | </div>
|
New file |
| | |
| | | <h2><tmpl_var name="list_head_txt"></h2>
|
| | |
|
| | | <div class="panel panel_list_dns_template">
|
| | |
|
| | | <div class="pnl_toolsarea">
|
| | | <fieldset><legend>Tools</legend>
|
| | | <div class="buttons">
|
| | | <button class="iconstxt icoAdd" type="button" onClick="loadContent('dns/dns_template_edit.php');">
|
| | | <span>{tmpl_var name="add_new_record_txt"}</span>
|
| | | </button>
|
| | | </div>
|
| | | </fieldset>
|
| | | </div>
|
| | |
|
| | | <div class="pnl_listarea">
|
| | | <fieldset><legend><tmpl_var name="list_head_txt"></legend>
|
| | | <table class="list">
|
| | | <thead>
|
| | | <tr>
|
| | | <th class="tbl_col_visible" scope="col"><tmpl_var name="visible_txt"></th>
|
| | | <th class="tbl_col_name" scope="col"><tmpl_var name="name_txt"></th>
|
| | | <th class="tbl_col_buttons" scope="col"> </th>
|
| | | </tr>
|
| | | <tr>
|
| | | <td class="tbl_col_visible"><select name="search_visible" onChange="submitForm('pageForm','dns/dns_template_list.php');">{tmpl_var name='search_visible'}</select></td>
|
| | | <td class="tbl_col_name"><input type="text" name="search_name" value="{tmpl_var name='search_name'}" /></td>
|
| | | <td class="tbl_col_buttons"><div class="buttons"><button type="button" class="icons16 icoFilter" name="Filter" id="Filter" value="{tmpl_var name="filter_txt"}" onClick="submitForm('pageForm','dns/dns_template_list.php');"><span>{tmpl_var name="filter_txt"}</span></button></div></td>
|
| | | </tr>
|
| | | </thead>
|
| | | <tbody>
|
| | | <tmpl_loop name="records">
|
| | | <tr class="tbl_row_<tmpl_if name='__EVEN__'}even<tmpl_else>uneven</tmpl_if>">
|
| | | <td class="tbl_col_visible"><a href="#" onClick="loadContent('dns/dns_template_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="visible"}</a></td>
|
| | | <td class="tbl_col_name"><a href="#" onClick="loadContent('dns/dns_template_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="name"}</a></td>
|
| | | <td class="tbl_col_buttons">
|
| | | <div class="buttons icons16"> |
| | | <a class="icons16 icoDelete" href="javascript: del_record('dns/dns_template_del.php?id={tmpl_var name='id'}&phpsessid={tmpl_var name='phpsessid'}','{tmpl_var name='delete_confirmation'}');"><span>{tmpl_var name='delete_txt'}</span></a>
|
| | | </div>
|
| | | </td>
|
| | | </tr>
|
| | | </tmpl_loop>
|
| | | </tbody>
|
| | | <tfoot>
|
| | | <tr>
|
| | | <td class="tbl_footer tbl_paging" colspan="3"><tmpl_var name="paging"></td>
|
| | | </tr>
|
| | | </tfoot>
|
| | | </table>
|
| | | </fieldset>
|
| | | </div>
|
| | |
|
| | | </div>
|
New file |
| | |
| | | <h2><tmpl_var name="title"></h2> |
| | | |
| | | <div class="panel panel_dns_wizard"> |
| | | |
| | | <div class="pnl_formsarea"> |
| | | <fieldset><legend><tmpl_var name="title"></legend> |
| | | <tmpl_if name="error"> |
| | | <div class="error"><tmpl_var name="error"></div> |
| | | </tmpl_if> |
| | | <span class="wf_oneField"> |
| | | <label for="template_id" class="wf_preField">{tmpl_var name='template_id_txt'}</label> |
| | | <select id="template_id" name="template_id" onChange="submitForm('pageForm','dns/dns_wizard.php')">{tmpl_var name='template_id_option'}</select> |
| | | </span> |
| | | <tmpl_if name="is_admin"> |
| | | <span class="wf_oneField"> |
| | | <label for="server_id" class="wf_preField">{tmpl_var name='server_id_txt'}</label> |
| | | <select id="server_id" name="server_id">{tmpl_var name='server_id'}</select> |
| | | </span> |
| | | <span class="wf_oneField"> |
| | | <label for="client_group_id" class="wf_preField">{tmpl_var name='client_txt'}</label> |
| | | <select id="client_group_id" name="client_group_id">{tmpl_var name='client_group_id'}</select> |
| | | </span> |
| | | </tmpl_if> |
| | | <tmpl_if name="DOMAIN_VISIBLE"> |
| | | <span class="wf_oneField"> |
| | | <label for="domain" class="wf_preField">{tmpl_var name='domain_txt'}</label> |
| | | <input type="text" id="domain" name="domain" value="{tmpl_var name='domain'}" size="30" maxlength="255"> |
| | | </span> |
| | | </tmpl_if> |
| | | <tmpl_if name="IP_VISIBLE"> |
| | | <span class="wf_oneField"> |
| | | <label for="ip" class="wf_preField">{tmpl_var name='ip_txt'}</label> |
| | | <input type="text" id="ip" name="ip" value="{tmpl_var name='ip'}" size="30" maxlength="255"> |
| | | </span> |
| | | </tmpl_if> |
| | | <tmpl_if name="NS1_VISIBLE"> |
| | | <span class="wf_oneField"> |
| | | <label for="ns1" class="wf_preField">{tmpl_var name='ns1_txt'}</label> |
| | | <input type="text" id="ns1" name="ns1" value="{tmpl_var name='ns1'}" size="30" maxlength="255"> |
| | | </span> |
| | | </tmpl_if> |
| | | <tmpl_if name="NS2_VISIBLE"> |
| | | <span class="wf_oneField"> |
| | | <label for="ns2" class="wf_preField">{tmpl_var name='ns2_txt'}</label> |
| | | <input type="text" id="ns2" name="ns2" value="{tmpl_var name='ns2'}" size="30" maxlength="255"> |
| | | </span> |
| | | </tmpl_if> |
| | | <tmpl_if name="EMAIL_VISIBLE"> |
| | | <span class="wf_oneField"> |
| | | <label for="email" class="wf_preField">{tmpl_var name='email_txt'}</label> |
| | | <input type="text" id="email" name="email" value="{tmpl_var name='email'}" size="30" maxlength="255"> |
| | | </span> |
| | | </tmpl_if> |
| | | <div class="wf_actions buttons"> |
| | | <input type="hidden" name="create" value="0" /> |
| | | <button class="positive iconstxt icoPositive" type="button" value="{tmpl_var name='btn_save_txt'}" name="btn_create" onClick="document.pageForm.create.value=1; submitForm('pageForm','dns/dns_wizard.php');"><span>{tmpl_var name='btn_save_txt'}</span></button> |
| | | <button class="negative iconstxt icoNegative" type="button" value="{tmpl_var name='btn_cancel_txt'}" onClick="loadContent('dns/dns_wizard.php');"><span>{tmpl_var name='btn_cancel_txt'}</span></button> |
| | | </div> |
| | | </fieldset> |
| | | </div> |
| | | |
| | | </div> |