From e1ceb050e19c7574bca146a8da7047ee4ff456b5 Mon Sep 17 00:00:00 2001
From: Marius Burkard <m.burkard@pixcept.de>
Date: Sun, 10 Jul 2016 05:02:35 -0400
Subject: [PATCH] Merge branch 'stable-3.1'
---
interface/lib/classes/tform_tpl_generator.inc.php | 429 +++++++++++++++++++++++++++--------------------------
1 files changed, 220 insertions(+), 209 deletions(-)
diff --git a/interface/lib/classes/tform_tpl_generator.inc.php b/interface/lib/classes/tform_tpl_generator.inc.php
index 7bc9944..f841a09 100644
--- a/interface/lib/classes/tform_tpl_generator.inc.php
+++ b/interface/lib/classes/tform_tpl_generator.inc.php
@@ -1,7 +1,7 @@
<?php
/*
-Copyright (c) 2005, Till Brehm, projektfarm Gmbh
+Copyright (c) 2007, Till Brehm, projektfarm Gmbh
All rights reserved.
Redistribution and use in source and binary forms, with or without modification,
@@ -28,198 +28,206 @@
EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-
class tform_tpl_generator {
-
- function buildHTML($formDef,$tab) {
-
+
+ function buildHTML($formDef, $tab) {
+
global $app;
-
+
$module = $_SESSION["s"]["module"]["name"];
-
- $html = '<table width="500" border="0" cellspacing="0" cellpadding="2">';
+
+ $html = '<h2><tmpl_var name="list_head_txt"></h2>
+<p><tmpl_var name="list_desc_txt"></p>
+
+<div class="panel panel_'.$formDef['name'].'">
+
+ <div class="pnl_formsarea">
+ <fieldset class="inlineLabels"><legend>'.$formDef['tabs'][$tab]['title'].'</legend>';
+
$lang = array();
-
+ $html_reqestedelement = "<em>*</em> ";
+
foreach($formDef['tabs'][$tab]['fields'] as $key => $field) {
+ if ($field['required'] == true ) { $html_reqcode = $html_reqestedelement; } else { $html_reqcode = ''; }
+
switch ($field['formtype']) {
- case 'TEXT':
- $html .= "
- <tr>
- <td class=\"frmText11\">{tmpl_var name='".$key."_txt'}:</td>
- <td class=\"frmText11\"><input name=\"".$key."\" type=\"text\" class=\"text\" value=\"{tmpl_var name='".$key."'}\" size=\"".$field['width']."\" maxlength=\"".$field['maxlength']."\"></td>
- </tr>";
- break;
- case 'TEXTAREA':
- $html .= "
- <tr>
- <td class=\"frmText11\">{tmpl_var name='".$key."_txt'}:</td>
- <td class=\"frmText11\"><textarea name='$key' cols='".$field['cols']."' rows='".$field['rows']."'>{tmpl_var name='".$key."'}</textarea></td>
- </tr>";
- break;
- case 'SELECT':
+ case 'TEXT':
$html .= "
- <tr>
- <td class=\"frmText11\">{tmpl_var name='".$key."_txt'}:</td>
- <td class=\"frmText11\">
- <select name=\"".$key."\" class=\"text\">
- {tmpl_var name='".$key."'}
- </select>
- </td>
- </tr>";
+ <div class=\"ctrlHolder\">
+ <label for=\"".$key."\">".$html_reqcode."{tmpl_var name='".$key."_txt'}</label>
+ <input name=\"".$key."\" id=\"".$key."\" value=\"{tmpl_var name='".$key."'}\" size=\"".$field['width']."\" maxlength=\"".$field['maxlength']."\" type=\"text\" class=\"textInput\" />
+ </div>";
break;
- case 'MULTIPLE':
+ case 'TEXTAREA':
$html .= "
- <tr>
- <td class=\"frmText11\">{tmpl_var name='".$key."_txt'}:</td>
- <td class=\"frmText11\">
- <select name=\"".$key."\" class=\"text\" size=\"".$field['rows']."\" multiple>
- {tmpl_var name='".$key."'}
- </select>
- </td>
- </tr>";
+ <div class=\"ctrlHolder\">
+ <label for=\"".$key."\">".$html_reqcode."{tmpl_var name='".$key."_txt'}</label>
+ <textarea name=\"".$key."\" id=\"".$key."\" rows='".$field['rows']."' cols='".$field['cols']."'>{tmpl_var name='".$key."'}</textarea>
+ </div>";
break;
- case 'PASSWORD':
+ case 'SELECT':
$html .= "
- <tr>
- <td class=\"frmText11\">{tmpl_var name='".$key."_txt'}:</td>
- <td class=\"frmText11\"><input name=\"".$key."\" type=\"password\" class=\"text\" value=\"{tmpl_var name='".$key."'}\" size=\"".$field['width']."\" maxlength=\"".$field['maxlength']."\"></td>
- </tr>";
+ <div class=\"ctrlHolder\">
+ <label for=\"".$key."\">".$html_reqcode."{tmpl_var name='".$key."_txt'}</label>
+ <select name=\"".$key."\" id=\"".$key."\" class=\"selectInput\">
+ {tmpl_var name='".$key."'}
+ </select>
+ </div>";
break;
- case 'CHECKBOX':
+ case 'MULTIPLE':
$html .= "
- <tr>
- <td class=\"frmText11\">{tmpl_var name='".$key."_txt'}:</td>
- <td class=\"frmText11\">{tmpl_var name='".$key."'}</td>
- </tr>";
+ <div class=\"ctrlHolder\">
+ <label for=\"".$key."\">".$html_reqcode."{tmpl_var name='".$key."_txt'}</label>
+ <select multiple name=\"".$key."\" id=\"".$key."\" class=\"selectInput\">
+ {tmpl_var name='".$key."'}
+ </select>
+ </div>";
break;
- case 'CHECKBOXARRAY':
+ case 'PASSWORD':
$html .= "
- <tr>
- <td class=\"frmText11\">{tmpl_var name='".$key."_txt'}:</td>
- <td class=\"frmText11\">{tmpl_var name='".$key."'}</td>
- </tr>";
+ <div class=\"ctrlHolder\">
+ <label for=\"".$key."\">".$html_reqcode."{tmpl_var name='".$key."_txt'}</label>
+ <input name=\"".$key."\" id=\"".$key."\" value=\"{tmpl_var name='".$key."'}\" size=\"".$field['width']."\" maxlength=\"".$field['maxlength']."\" type=\"password\" class=\"textInput\" />
+ </div>";
break;
- case 'RADIO':
+ case 'CHECKBOX':
$html .= "
- <tr>
- <td class=\"frmText11\">{tmpl_var name='".$key."_txt'}:</td>
- <td class=\"frmText11\">{tmpl_var name='".$key."'}</td>
- </tr>";
+ <div class=\"ctrlHolder\">
+ <p class=\"label\">".$html_reqcode."{tmpl_var name='".$key."_txt'}</p>
+ <div class=\"multiField\">
+ {tmpl_var name='".$key."'}
+ </div>
+ </div>";
+ break;
+ case 'CHECKBOXARRAY':
+ $html .= "
+ <div class=\"ctrlHolder\">
+ <p class=\"label\">".$html_reqcode."{tmpl_var name='".$key."_txt'}</p>
+ <div class=\"multiField\">
+ {tmpl_var name='".$key."'}
+ </div>
+ </div>";
+ break;
+ case 'RADIO':
+ $html .= "
+ <div class=\"ctrlHolder\">
+ <p class=\"label\">".$html_reqcode."{tmpl_var name='".$key."_txt'}</p>
+ <div class=\"multiField\">
+ {tmpl_var name='".$key."'}
+ </div>
+ </div>";
break;
}
-
- // Language File Eintrag f�r "Feld-Titel" anlegen
+
+ // Language File Eintrag für "Feld-Titel" anlegen
$lang[$key."_txt"] = $key;
-
- // language File Eintrag, f�r error-Text anlegen
- if($field["errmsg"] != '') {
+
+ // language File Eintrag, für error-Text anlegen
+ if(isset($field["errmsg"]) && $field["errmsg"] != '') {
$errmsg = $field["errmsg"];
$lang[$errmsg] = $errmsg;
}
-
-
+
}
-
- $html .= " <tr>
- <td class=\"frmText11\"> </td>
- <td class=\"frmText11\"> </td>
- </tr>
- <tr>
- <td> </td>
- <td><input name=\"btn_save\" type=\"button\" class=\"button\" value=\"{tmpl_var name='btn_save_txt'}\" onClick=\"submitForm('pageForm','".$module."/".$formDef["action"]."');\"><div class=\"buttonEnding\"></div>
- <input name=\"btn_cancel\" type=\"button\" class=\"button\" value=\"{tmpl_var name='btn_cancel_txt'}\" onClick=\"loadContent('".$module."/".$formDef["list_default"]."');\"><div class=\"buttonEnding\"></div>
- </td>
- </tr>";
-
- $lang['btn_save_txt'] = "Save";
- $lang['btn_cancel_txt'] = "Cancel";
-
- $html .= "\r\n</table>\r\n<input type=\"hidden\" name=\"id\" value=\"{tmpl_var name='id'}\">";
-
+
+ $html .= "
+ </fieldset>
+
+ <input type=\"hidden\" name=\"id\" value=\"{tmpl_var name='id'}\">
+
+ <div class=\"buttonHolder buttons\">
+ <button class=\"positive iconstxt icoPositive\" type=\"button\" value=\"{tmpl_var name='btn_save_txt'}\" onclick=\"ISPConfig.submitForm('pageForm','".$module."/".$formDef["action"]."');\"><span>{tmpl_var name='btn_save_txt'}</span></button>
+ <button class=\"negative iconstxt icoNegative\" type=\"button\" value=\"{tmpl_var name='btn_cancel_txt'}\" data-load-content=\"".$module."/".$formDef["list_default"]."\"><span>{tmpl_var name='btn_cancel_txt'}</span></button>
+ </div>
+ </div>
+
+</div>
+";
+
+
// speichere Template
- if (!$handle = fopen($formDef['tabs'][$tab]['template'], 'w')) {
- print "Cannot open file ($filename)";
- exit;
- }
-
- if (!fwrite($handle, $html)) {
- print "Cannot write to file ($filename)";
- exit;
+ if (!$handle = fopen($formDef['tabs'][$tab]['template'], 'w')) {
+ print "Cannot open file (".$formDef['tabs'][$tab]['template'].")";
+ exit;
+ }
+
+ if (!fwrite($handle, $html)) {
+ print "Cannot write to file ($filename)";
+ exit;
}
fclose($handle);
-
- // speichere language Datei
- $this->lng_add($lang,$formDef);
-
- // �berpr�fe, ob es die Tabelle schon gibt,
+
+ $this->lng_add($lang, $formDef);
+
+ // überprüfe, ob es die Tabelle schon gibt,
// ansonsten wird sie angelegt
$tables = $app->db->getTables();
-
- if(!@in_array($formDef['db_table'],$tables)) {
+
+ if(!@in_array($formDef['db_table'], $tables)) {
// Datenbank noch nicht vorhanden
-
+
$columns = array();
-
- // f�ge ID Feld hinzu
- $col = array( 'action' => 'add',
- 'name' => $formDef["db_table_idx"],
- 'type' => 'int64',
- 'typeValue' => '',
- 'defaultValue' => false,
- 'notNull' => true,
- 'autoInc' => true,
- 'option' => 'primary'
- );
-
+
+ // füge ID Feld hinzu
+ $col = array( 'action' => 'add',
+ 'name' => $formDef["db_table_idx"],
+ 'type' => 'int64',
+ 'typeValue' => '',
+ 'defaultValue' => false,
+ 'notNull' => true,
+ 'autoInc' => true,
+ 'option' => 'primary'
+ );
+
$columns[] = $col;
$app->db->show_error_messages = true;
-
+
if($formDef["auth"] == 'yes') {
-
- $col = array( 'action' => 'add',
- 'name' => 'sys_userid',
- 'type' => 'int32',
- 'typeValue' => '',
- 'defaultValue' => '0',
- 'notNull' => true
- );
+
+ $col = array( 'action' => 'add',
+ 'name' => 'sys_userid',
+ 'type' => 'int32',
+ 'typeValue' => '',
+ 'defaultValue' => '0',
+ 'notNull' => true
+ );
$columns[] = $col;
- $col = array( 'action' => 'add',
- 'name' => 'sys_groupid',
- 'type' => 'int32',
- 'typeValue' => '',
- 'defaultValue' => '0',
- 'notNull' => true
- );
+ $col = array( 'action' => 'add',
+ 'name' => 'sys_groupid',
+ 'type' => 'int32',
+ 'typeValue' => '',
+ 'defaultValue' => '0',
+ 'notNull' => true
+ );
$columns[] = $col;
- $col = array( 'action' => 'add',
- 'name' => 'sys_perm_user',
- 'type' => 'varchar',
- 'typeValue' => '5',
- 'defaultValue' => 'NULL',
- 'notNull' => true
- );
+ $col = array( 'action' => 'add',
+ 'name' => 'sys_perm_user',
+ 'type' => 'varchar',
+ 'typeValue' => '5',
+ 'defaultValue' => 'NULL',
+ 'notNull' => true
+ );
$columns[] = $col;
- $col = array( 'action' => 'add',
- 'name' => 'sys_perm_group',
- 'type' => 'varchar',
- 'typeValue' => '5',
- 'defaultValue' => 'NULL',
- 'notNull' => true
- );
+ $col = array( 'action' => 'add',
+ 'name' => 'sys_perm_group',
+ 'type' => 'varchar',
+ 'typeValue' => '5',
+ 'defaultValue' => 'NULL',
+ 'notNull' => true
+ );
$columns[] = $col;
- $col = array( 'action' => 'add',
- 'name' => 'sys_perm_other',
- 'type' => 'varchar',
- 'typeValue' => '5',
- 'defaultValue' => 'NULL',
- 'notNull' => true
- );
+ $col = array( 'action' => 'add',
+ 'name' => 'sys_perm_other',
+ 'type' => 'varchar',
+ 'typeValue' => '5',
+ 'defaultValue' => 'NULL',
+ 'notNull' => true
+ );
$columns[] = $col;
-
+
}
-
-
+
+
foreach($formDef['tabs'] as $tab) {
foreach($tab["fields"] as $name => $field) {
/*
@@ -232,85 +240,88 @@
notNull => true | false
autoInc => true | false
option => unique | primary | index)
-
-
+
+
*/
switch ($field["datatype"]) {
- case 'INTEGER':
- $type = 'int32';
- $typevalue = '';
- $defaultValue = ($field["default"] != '')?$field["default"]:'0';
+ case 'INTEGER':
+ $type = 'int32';
+ $typevalue = '';
+ $defaultValue = ($field["default"] != '')?$field["default"]:'0';
break;
- case 'DOUBLE':
- $type = 'double';
- $typevalue = '';
- $defaultValue = ($field["default"] != '')?$field["default"]:'0';
+ case 'DOUBLE':
+ $type = 'double';
+ $typevalue = '';
+ $defaultValue = ($field["default"] != '')?$field["default"]:'0';
break;
- case 'CURRENCY':
- $type = 'double';
- $typevalue = '';
- $defaultValue = ($field["default"] != '')?$field["default"]:'0';
+ case 'CURRENCY':
+ $type = 'double';
+ $typevalue = '';
+ $defaultValue = ($field["default"] != '')?$field["default"]:'0';
break;
- case 'VARCHAR':
- $type = 'varchar';
- $typeValue = ($field["maxlength"] > 0 and $field["maxlength"] <= 256)?$field["maxlength"]:255;
- // $defaultValue = ($field["default"] != '')?$field["default"]:'NOT NULL';
- $defaultValue = ($field["default"] != '')?$field["default"]:'NULL';
+ case 'VARCHAR':
+ $type = 'varchar';
+ $typeValue = ($field["maxlength"] > 0 and $field["maxlength"] <= 256)?$field["maxlength"]:255;
+ // $defaultValue = ($field["default"] != '')?$field["default"]:'NOT NULL';
+ $defaultValue = ($field["default"] != '')?$field["default"]:'NULL';
break;
- case 'TEXT':
- $type = 'text';
- $typevalue = '';
- $defaultValue = 'NULL';
+ case 'TEXT':
+ $type = 'text';
+ $typevalue = '';
+ $defaultValue = NULL;
break;
- case 'DATE':
- $type = 'int64';
- $typevalue = '';
- $defaultValue = ($field["default"] != '')?$field["default"]:'0';
+ case 'DATE':
+ $type = 'date';
+ $typevalue = '';
+ $defaultValue = ($field["default"] != '')?$field["default"]:null;
break;
}
-
-
- $col = array( 'action' => 'add',
- 'name' => $name,
- 'type' => $type,
- 'typeValue' => $typeValue,
- 'defaultValue' => $defaultValue,
- 'notNull' => true
- );
-
+
+
+ $col = array( 'action' => 'add',
+ 'name' => $name,
+ 'type' => $type,
+ 'typeValue' => $typeValue,
+ 'defaultValue' => $defaultValue,
+ 'notNull' => true
+ );
+
$columns[] = $col;
}
}
-
- $app->db->createTable($formDef["db_table"],$columns);
-
+
+ $app->db->createTable($formDef["db_table"], $columns);
+
}
- }
-
- function lng_add($lang,$formDef) {
- global $go_api, $go_info,$conf;
-
+ }
+
+ function lng_add($lang, $formDef) {
+ global $go_api, $go_info, $conf;
+
$lng_file = "lib/lang/".$conf["language"]."_".$formDef['name'].".lng";
if(is_file($lng_file)) {
- include($lng_file);
+ include $lng_file;
} else {
$wb = array();
}
-
- $wb_out = array_merge($lang,$wb);
-
+
+ $wb_out = array_merge($lang, $wb);
+
if(is_array($wb_out)) {
- $fp = fopen ($lng_file, "w");
- fwrite($fp,"<?php\r\n");
+ $fp = fopen($lng_file, "w");
+ fwrite($fp, "<?php\n");
foreach($wb_out as $key => $val) {
- $new_line = '$wb["'.$key.'"] = '."'$val';\r\n";
- fwrite($fp,$new_line);
-
+ $val = str_replace("'", "\\'",$val);
+ $key = str_replace("'", "\\'",$key);
+ $new_line = '$wb["'.$key.'"] = '."'$val';\n";
+ fwrite($fp, $new_line);
+
}
- fwrite($fp,"?>");
+ fwrite($fp, "?>");
fclose($fp);
}
}
+
}
-?>
\ No newline at end of file
+?>
--
Gitblit v1.9.1