From 4e7af155949b33ce78a8fc489d87b08ff3901772 Mon Sep 17 00:00:00 2001
From: tbrehm <t.brehm@ispconfig.org>
Date: Tue, 30 Oct 2012 07:30:33 -0400
Subject: [PATCH] Fixed: FS#2398 - Setting autoresponder start/end dates for a mailbox fails
---
interface/lib/classes/remoting_lib.inc.php | 32 +++++++++++++++++---------------
1 files changed, 17 insertions(+), 15 deletions(-)
diff --git a/interface/lib/classes/remoting_lib.inc.php b/interface/lib/classes/remoting_lib.inc.php
index 67ad855..2bb1897 100644
--- a/interface/lib/classes/remoting_lib.inc.php
+++ b/interface/lib/classes/remoting_lib.inc.php
@@ -113,6 +113,7 @@
var $sys_userid;
var $sys_default_group;
var $sys_groups;
+ var $client_id;
//* Load the form definition from file.
@@ -136,12 +137,12 @@
}
//* Load the user profile
- function loadUserProfile($client_id = 0) {
+ function loadUserProfile($client_id_param = 0) {
global $app,$conf;
- $client_id = $app->functions->intval($client_id);
+ $this->client_id = $app->functions->intval($client_id_param);
- if($client_id == 0) {
+ if($this->client_id == 0) {
$this->sys_username = 'admin';
$this->sys_userid = 1;
$this->sys_default_group = 1;
@@ -159,7 +160,7 @@
}
}*/
- $user = $app->db->queryOneRecord("SELECT * FROM sys_user WHERE client_id = $client_id");
+ $user = $app->db->queryOneRecord("SELECT * FROM sys_user WHERE client_id = $this->client_id");
$this->sys_username = $user['username'];
$this->sys_userid = $user['userid'];
$this->sys_default_group = $user['default_group'];
@@ -418,18 +419,10 @@
$returnval = strtoupper($field_value);
break;
case 'IDNTOASCII':
- if(function_exists('idn_to_ascii')) {
- $returnval = idn_to_ascii($field_value);
- } else {
- $returnval = $field_value;
- }
+ $returnval = $app->functions->idn_encode($field_value);
break;
case 'IDNTOUTF8':
- if(function_exists('idn_to_utf8')) {
- $returnval = idn_to_utf8($field_value);
- } else {
- $returnval = $field_value;
- }
+ $returnval = $app->functions->idn_decode($field_value);
break;
default:
$this->errorMessage .= "Unknown Filter: ".$filter['type'];
@@ -766,7 +759,12 @@
$sql = "INSERT INTO ".$escape.$this->formDef['db_table'].$escape." ($sql_insert_key) VALUES ($sql_insert_val)";
} else {
if($primary_id != 0) {
- $sql_update = substr($sql_update,0,-2);
+ // update client permissions only if client_id > 0
+ if($this->formDef['auth'] == 'yes' && $this->client_id > 0) {
+ $sql_update .= '`sys_userid` = '.$this->sys_userid.', ';
+ $sql_update .= '`sys_groupid` = '.$this->sys_default_group.', ';
+ }
+ $sql_update = substr($sql_update,0,-2);
$sql = "UPDATE ".$escape.$this->formDef['db_table'].$escape." SET ".$sql_update." WHERE ".$this->formDef['db_table_idx']." = ".$primary_id;
if($sql_ext_where != '') $sql .= " and ".$sql_ext_where;
} else {
@@ -827,6 +825,10 @@
} else {
$modules = $app->db->quote($params['modules']);
}
+ if(isset($params['limit_client']) && $params['limit_client'] > 0) {
+ $modules .= ',client';
+ }
+
if(!isset($params['startmodule'])) {
$startmodule = 'dashboard';
} else {
--
Gitblit v1.9.1