From ada1e6979c92651c13e8538881d2d756c7b54e6d Mon Sep 17 00:00:00 2001
From: redray <redray@ispconfig3>
Date: Sun, 08 Mar 2009 13:36:34 -0400
Subject: [PATCH] better form lengths

---
 interface/web/mail/mail_user_edit.php |   42 ++++++++++++++++++++++++++++++------------
 1 files changed, 30 insertions(+), 12 deletions(-)

diff --git a/interface/web/mail/mail_user_edit.php b/interface/web/mail/mail_user_edit.php
index cd3347a..fd11f66 100644
--- a/interface/web/mail/mail_user_edit.php
+++ b/interface/web/mail/mail_user_edit.php
@@ -200,7 +200,28 @@
 		$app->db->query("UPDATE mail_user SET sys_groupid = ".$domain["sys_groupid"]." WHERE mailuser_id = ".$this->id);
 		
 		// send a welcome email to create the mailbox
-		mail($this->dataRecord["email"],$app->tform->wordbook["welcome_mail_subject"],$app->tform->wordbook["welcome_mail_message"]);
+//		mail($this->dataRecord["email"],$app->tform->wordbook["welcome_mail_subject"],$app->tform->wordbook["welcome_mail_message"]);
+		
+		// tries to detect current charset, and encode subject-header and body from it to ISO-8859-1.
+		$fromCharset      = mb_detect_encoding($app->tform->wordbook["welcome_mail_subject"]);
+		$iconvPreferences = array("input-charset" => $fromCharset,
+					"output-charset" => "ISO-8859-1",
+					"line-length" => 76,
+					"line-break-chars" => "\n",
+					"scheme" => "Q");
+
+		$welcomeFromName  = $app->tform->wordbook["welcome_mail_fromname_txt"];
+		$welcomeFromEmail = $app->tform->wordbook["welcome_mail_fromemail_txt"];
+		$mailHeaders      = "MIME-Version: 1.0" . "\n";
+		$mailHeaders     .= "Content-type: text/plain; charset=iso-8859-1" . "\n";
+		$mailHeaders     .= "From: $welcomeFromName  <$welcomeFromEmail>" . "\n";
+		$mailHeaders     .= "Reply-To: <$welcomeFromEmail>" . "\n";
+		$mailTarget       = $this->dataRecord["email"];
+		$mailSubject      = iconv_mime_encode("trimoff", $app->tform->wordbook["welcome_mail_subject"], $iconvPreferences);
+		$mailSubject      = str_replace("trimoff: ", "", $mailSubject);
+		$mailBody         = iconv ($fromCharset, "ISO-8859-1", $app->tform->wordbook["welcome_mail_message"]);
+
+		mail($mailTarget, $mailSubject, $mailBody, $mailHeaders);
 		
 		// Spamfilter policy
 		$policy_id = intval($this->dataRecord["policy"]);
@@ -208,13 +229,12 @@
 			$tmp_user = $app->db->queryOneRecord("SELECT id FROM spamfilter_users WHERE email = '".mysql_real_escape_string($this->dataRecord["email"])."'");
 			if($tmp_user["id"] > 0) {
 				// There is already a record that we will update
-				$sql = "UPDATE spamfilter_users SET policy_id = $ploicy_id WHERE id = ".$tmp_user["id"];
-				$app->db->query($sql);
+				$app->db->datalogUpdate('spamfilter_users', "policy_id = $ploicy_id", 'id', $tmp_user["id"]);
 			} else {
 				// We create a new record
-				$sql = "INSERT INTO `spamfilter_users` (`sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `server_id`, `priority`, `policy_id`, `email`, `fullname`, `local`) 
+				$insert_data = "(`sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `server_id`, `priority`, `policy_id`, `email`, `fullname`, `local`) 
 				        VALUES (".$_SESSION["s"]["user"]["userid"].", ".$domain["sys_groupid"].", 'riud', 'riud', '', ".$domain["server_id"].", 1, ".$policy_id.", '".mysql_real_escape_string($this->dataRecord["email"])."', '".mysql_real_escape_string($this->dataRecord["email"])."', 'Y')";
-				$app->db->query($sql);
+				$app->db->datalogInsert('spamfilter_users', $insert_data, 'id');
 			}
 		}  // endif spamfilter policy
 		
@@ -234,19 +254,17 @@
 			if($policy_id > 0) {
 				if($tmp_user["id"] > 0) {
 					// There is already a record that we will update
-					$sql = "UPDATE spamfilter_users SET policy_id = $policy_id WHERE id = ".$tmp_user["id"];
-					$app->db->query($sql);
+					$app->db->datalogUpdate('spamfilter_users', "policy_id = $ploicy_id", 'id', $tmp_user["id"]);
 				} else {
 					// We create a new record
-					$sql = "INSERT INTO `spamfilter_users` (`sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `server_id`, `priority`, `policy_id`, `email`, `fullname`, `local`) 
+					$insert_data = "(`sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `server_id`, `priority`, `policy_id`, `email`, `fullname`, `local`) 
 				        	VALUES (".$_SESSION["s"]["user"]["userid"].", ".$domain["sys_groupid"].", 'riud', 'riud', '', ".$domain["server_id"].", 1, ".$policy_id.", '".mysql_real_escape_string($this->dataRecord["email"])."', '".mysql_real_escape_string($this->dataRecord["email"])."', 'Y')";
-					$app->db->query($sql);
+					$app->db->datalogInsert('spamfilter_users', $insert_data, 'id');
 				}
 			}else {
 				if($tmp_user["id"] > 0) {
 					// There is already a record but the user shall have no policy, so we delete it
-					$sql = "DELETE FROM spamfilter_users WHERE id = ".$tmp_user["id"];
-					$app->db->query($sql);
+					$app->db->datalogDelete('spamfilter_users', 'id', $tmp_user["id"]);
 				}
 			} // endif spamfilter policy
 		}
@@ -258,4 +276,4 @@
 $app->tform_actions = new page_action;
 $app->tform_actions->onLoad();
 
-?>
\ No newline at end of file
+?>

--
Gitblit v1.9.1