From cab9249b25719fd2611be5917326671b7f73e67c Mon Sep 17 00:00:00 2001
From: tbrehm <t.brehm@ispconfig.org>
Date: Fri, 28 May 2010 05:20:59 -0400
Subject: [PATCH] Fixed several bugs (revisions 1783-1788 from stable branch).

---
 interface/web/client/client_edit.php                  |    8 ++++++++
 interface/web/client/reseller_edit.php                |    8 ++++++++
 install/tpl/apache_ispconfig.vhost.master             |    5 +++++
 interface/lib/plugins/mail_user_filter_plugin.inc.php |    4 ++--
 server/conf/autoresponder.master                      |    2 +-
 interface/web/client/templates/clients_list.htm       |    2 +-
 6 files changed, 25 insertions(+), 4 deletions(-)

diff --git a/install/tpl/apache_ispconfig.vhost.master b/install/tpl/apache_ispconfig.vhost.master
index be1b7f8..e464ec4 100644
--- a/install/tpl/apache_ispconfig.vhost.master
+++ b/install/tpl/apache_ispconfig.vhost.master
@@ -38,6 +38,11 @@
   # ErrorLog /var/log/apache2/error.log
   # CustomLog /var/log/apache2/access.log combined
   ServerSignature Off
+  
+  <IfModule mod_security2.c>
+    SecRuleEngine Off
+  </IfModule>
+
 
 </VirtualHost>
 
diff --git a/interface/lib/plugins/mail_user_filter_plugin.inc.php b/interface/lib/plugins/mail_user_filter_plugin.inc.php
index 4766176..7715e3f 100644
--- a/interface/lib/plugins/mail_user_filter_plugin.inc.php
+++ b/interface/lib/plugins/mail_user_filter_plugin.inc.php
@@ -72,13 +72,13 @@
 			}
 			if($skip == false && $line != '') $out .= $line ."\n";
 			if($line == '### END FILTER_ID:'.$page_form->id) {
-				$out .= $this->mail_user_filter_get_rule($page_form);
+				if($page_form->dataRecord["active"] == 'y') $out .= $this->mail_user_filter_get_rule($page_form);
 				$skip = false;
 			}
 		}
 		
 		// We did not found our rule, so we add it now as first rule.
-		if($found == false) {
+		if($found == false && $page_form->dataRecord["active"] == 'y') {
 			$new_rule = $this->mail_user_filter_get_rule($page_form);
 			$out = $new_rule . $out;
 		}
diff --git a/interface/web/client/client_edit.php b/interface/web/client/client_edit.php
index 9808b8f..1a24b09 100644
--- a/interface/web/client/client_edit.php
+++ b/interface/web/client/client_edit.php
@@ -197,6 +197,14 @@
 			$app->db->query($sql);
 		}
 		
+		// language changed
+		if(isset($this->dataRecord['language']) && $this->dataRecord['language'] != '' && $this->oldDataRecord['language'] != $this->dataRecord['language']) {
+			$language = $app->db->quote($this->dataRecord["language"]);
+			$client_id = $this->id;
+			$sql = "UPDATE sys_user SET language = '$language' WHERE client_id = $client_id";
+			$app->db->query($sql);
+		}
+		
 		// reseller status changed
 		if(isset($this->dataRecord["limit_client"]) && $this->dataRecord["limit_client"] != $this->oldDataRecord["limit_client"]) {
 			$modules = ISPC_INTERFACE_MODULES_ENABLED;
diff --git a/interface/web/client/reseller_edit.php b/interface/web/client/reseller_edit.php
index 3df9375..2e8fb94 100644
--- a/interface/web/client/reseller_edit.php
+++ b/interface/web/client/reseller_edit.php
@@ -192,6 +192,14 @@
 			$app->db->query($sql);
 		}
 		
+		// language changed
+		if(isset($this->dataRecord['language']) && $this->dataRecord['language'] != '' && $this->oldDataRecord['language'] != $this->dataRecord['language']) {
+			$language = $app->db->quote($this->dataRecord["language"]);
+			$client_id = $this->id;
+			$sql = "UPDATE sys_user SET language = '$language' WHERE client_id = $client_id";
+			$app->db->query($sql);
+		}
+		
 		// reseller status changed
 		if(isset($this->dataRecord["limit_client"]) && $this->dataRecord["limit_client"] != $this->oldDataRecord["limit_client"]) {
 			$modules = ISPC_INTERFACE_MODULES_ENABLED.',client';
diff --git a/interface/web/client/templates/clients_list.htm b/interface/web/client/templates/clients_list.htm
index 8ed9e5e..f93ebcf 100644
--- a/interface/web/client/templates/clients_list.htm
+++ b/interface/web/client/templates/clients_list.htm
@@ -44,7 +44,7 @@
             <td class="tbl_col_country"><a href="#" onClick="loadContent('client/client_edit.php?id={tmpl_var name='id'}');">{tmpl_var name="country"}</a></td>
             <td class="tbl_col_buttons">
               <div class="buttons icons16" style="width:60px;">
-			    <a class="icons16 icoLoginAs" href="#" onclick="loadContent('admin/login_as.php?cid={tmpl_var name='id'}');"><span>{tmpl_var name='login_as_txt'}</span></a>  
+			    <tmpl_if name="is_admin"><a class="icons16 icoLoginAs" href="#" onclick="loadContent('admin/login_as.php?cid={tmpl_var name='id'}');"><span>{tmpl_var name='login_as_txt'}</span></a>  </tmpl_if>
                 <a class="icons16 icoDelete" href="javascript: del_record('client/client_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>
diff --git a/server/conf/autoresponder.master b/server/conf/autoresponder.master
index 4c062a2..98ff122 100644
--- a/server/conf/autoresponder.master
+++ b/server/conf/autoresponder.master
@@ -1,4 +1,4 @@
-`test -f /var/vmail/mailfilters/$HOST/$USER/.vacation.msg && exit 1 || exit 0`
+`test -f {vmail_mailbox_base}/mailfilters/$HOST/$USER/.vacation.msg && exit 1 || exit 0`
 if ($RETURNCODE==1)
 {
        {

--
Gitblit v1.9.1