From c46870f6ad01452c00b53c4599110ebbf79decb2 Mon Sep 17 00:00:00 2001 From: tbrehm <t.brehm@ispconfig.org> Date: Thu, 18 Sep 2008 08:29:00 -0400 Subject: [PATCH] Fixed bugs 207 and 208 - Website symlinks in wrong client directory created. - Standard indes page gets replaced when a alias domain is added. --- interface/lib/classes/tform.inc.php | 52 ++++++++++++++++++++++++++++++++++++++++++++-------- 1 files changed, 44 insertions(+), 8 deletions(-) diff --git a/interface/lib/classes/tform.inc.php b/interface/lib/classes/tform.inc.php index 251a9f9..51e5ffe 100644 --- a/interface/lib/classes/tform.inc.php +++ b/interface/lib/classes/tform.inc.php @@ -388,7 +388,7 @@ $out .= "<option value='$k'$selected>$v</option>\r\n"; } } - $new_record[$key] = $out; + if(isset($out)) $new_record[$key] = $out; break; case 'MULTIPLE': if(is_array($field['value'])) { @@ -482,14 +482,14 @@ switch ($field['datatype']) { case 'VARCHAR': if(!@is_array($record[$key])) { - $new_record[$key] = (isset($record[$key]))?addslashes($record[$key]):''; + $new_record[$key] = (isset($record[$key]))?mysql_real_escape_string($record[$key]):''; } else { $new_record[$key] = implode($field['separator'],$record[$key]); } break; case 'TEXT': if(!is_array($record[$key])) { - $new_record[$key] = addslashes($record[$key]); + $new_record[$key] = mysql_real_escape_string($record[$key]); } else { $new_record[$key] = implode($field['separator'],$record[$key]); } @@ -508,7 +508,7 @@ //if($key == 'refresh') die($record[$key]); break; case 'DOUBLE': - $new_record[$key] = addslashes($record[$key]); + $new_record[$key] = mysql_real_escape_string($record[$key]); break; case 'CURRENCY': $new_record[$key] = str_replace(",",".",$record[$key]); @@ -699,10 +699,16 @@ $salt.="$"; // $salt = substr(md5(time()),0,2); $record[$key] = crypt($record[$key],$salt); + $sql_insert_val .= "'".mysql_real_escape_string($record[$key])."', "; + } elseif ($field['encryption'] == 'MYSQL') { + $sql_insert_val .= "PASSWORD('".mysql_real_escape_string($record[$key])."'), "; + } elseif ($field['encryption'] == 'CLEARTEXT') { + $sql_insert_val .= "'".mysql_real_escape_string($record[$key])."', "; } else { $record[$key] = md5($record[$key]); + $sql_insert_val .= "'".mysql_real_escape_string($record[$key])."', "; } - $sql_insert_val .= "'".addslashes($record[$key])."', "; + } elseif ($field['formtype'] == 'CHECKBOX') { $sql_insert_key .= "`$key`, "; if($record[$key] == '') { @@ -726,10 +732,16 @@ $salt.="$"; // $salt = substr(md5(time()),0,2); $record[$key] = crypt($record[$key],$salt); + $sql_update .= "`$key` = '".mysql_real_escape_string($record[$key])."', "; + } elseif (isset($field['encryption']) && $field['encryption'] == 'MYSQL') { + $sql_update .= "`$key` = PASSWORD('".mysql_real_escape_string($record[$key])."'), "; + } elseif (isset($field['encryption']) && $field['encryption'] == 'CLEARTEXT') { + $sql_update .= "`$key` = '".mysql_real_escape_string($record[$key])."', "; } else { $record[$key] = md5($record[$key]); + $sql_update .= "`$key` = '".mysql_real_escape_string($record[$key])."', "; } - $sql_update .= "`$key` = '".addslashes($record[$key])."', "; + } elseif ($field['formtype'] == 'CHECKBOX') { if($record[$key] == '') { // if a checkbox is not set, we set it to the unchecked value @@ -821,6 +833,9 @@ // �berpr�fe, ob das Template existiert, wenn nicht // dann generiere das Template + + // Translate the title of the tab + $tab['title'] = $this->lng($tab['title']); if(!is_file($tab["template"])) { $app->uses('tform_tpl_generator'); @@ -849,8 +864,8 @@ $app->tpl->setVar('form_active_tab',$active_tab); // Set form title - $form_hint = '<b>'.$this->formDef["title"].'</b>'; - if($this->formDef["description"] != '') $form_hint .= '<br><br>'.$this->formDef["description"]; + $form_hint = '<b>'.$this->lng($this->formDef["title"]).'</b>'; + if($this->formDef["description"] != '') $form_hint .= '<br><br>'.$this->lng($this->formDef["description"]); $app->tpl->setVar('form_hint',$form_hint); // Set Wordbook for this form @@ -1020,6 +1035,27 @@ function getCurrentTab() { return $_SESSION["s"]["form"]["tab"]; } + + function isReadonlyTab($tab) { + if(isset($this->formDef['tabs'][$tab]['readonly']) && $this->formDef['tabs'][$tab]['readonly'] == true) { + return true; + } else { + return false; + } + } + + + // translation function for forms, tries the form wordbook first and if this fails, it tries the global wordbook + function lng($msg) { + global $app; + + if(isset($this->wordbook[$msg])) { + return $this->wordbook[$msg]; + } else { + return $app->lng($msg); + } + + } } -- Gitblit v1.9.1