From 00d96ba2cd3f93272474e51a2c7f5b1a35616ec3 Mon Sep 17 00:00:00 2001
From: tbrehm <t.brehm@ispconfig.org>
Date: Fri, 23 May 2008 13:58:42 -0400
Subject: [PATCH] Rewriting of the config files is optional during update now.

---
 interface/lib/classes/tform.inc.php |   13 +++++++------
 1 files changed, 7 insertions(+), 6 deletions(-)

diff --git a/interface/lib/classes/tform.inc.php b/interface/lib/classes/tform.inc.php
index 61ddefd..8e07f13 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'])) {
@@ -693,7 +693,7 @@
                                                         $sql_insert_key .= "`$key`, ";
                                                         if($field['encryption'] == 'CRYPT') {
                                                                 $salt="$1$";
-																for ($n=0;$n<8;$n++) {
+																for ($n=0;$n<11;$n++) {
 																	$salt.=chr(mt_rand(64,126));
 																}
 																$salt.="$";
@@ -702,7 +702,7 @@
                                                         } else {
                                                                 $record[$key] = md5($record[$key]);
                                                         }
-														$sql_insert_val .= "'".$record[$key]."', ";
+														$sql_insert_val .= "'".addslashes($record[$key])."', ";
                                                 } elseif ($field['formtype'] == 'CHECKBOX') {
                                                         $sql_insert_key .= "`$key`, ";
 														if($record[$key] == '') {
@@ -720,7 +720,7 @@
                                                 if($field['formtype'] == 'PASSWORD') {
 														if(isset($field['encryption']) && $field['encryption'] == 'CRYPT') {
                                                                 $salt="$1$";
-																for ($n=0;$n<8;$n++) {
+																for ($n=0;$n<11;$n++) {
 																	$salt.=chr(mt_rand(64,126));
 																}
 																$salt.="$";
@@ -729,7 +729,7 @@
                                                         } else {
                                                                 $record[$key] = md5($record[$key]);
                                                         }
-                                                        $sql_update .= "`$key` = '".$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
@@ -903,7 +903,8 @@
 
                 if(is_array($record_old) && count($record_old) > 0) {
                         foreach($record_old as $key => $val) {
-                                if(isset($record_new[$key]) && $record_new[$key] != $val) {
+                                //if(isset($record_new[$key]) && $record_new[$key] != $val) {
+								if(!isset($record_new[$key]) || $record_new[$key] != $val) {
                                     // Record has changed
 									$diffrec_full['old'][$key] = $val;
 									$diffrec_full['new'][$key] = $record_new[$key];

--
Gitblit v1.9.1