Completed
Push — 16.1 ( da3266...d5e8cd )
by Klaus
19:17
created
api/src/Json/Msg.php 2 patches
Doc Comments   +5 added lines, -3 removed lines patch added patch discarded remove patch
@@ -82,8 +82,7 @@  discard block
 block discarded – undo
82 82
 	/**
83 83
 	 * Allows to call a global javascript function with given parameters: window[$func].call(window[, $param1[, ...]])
84 84
 	 *
85
-	 * @param string $func name of the global (window) javascript function to call
86
-	 * @param mixed $parameters variable number of parameters
85
+	 * @param string $function
87 86
 	 */
88 87
 	public function call($function)
89 88
 	{
@@ -108,7 +107,7 @@  discard block
 block discarded – undo
108 107
 	 *
109 108
 	 * @param string $selector jquery selector
110 109
 	 * @param string $method name of the jquery to call
111
-	 * @param array $parameters =array()
110
+	 * @param string[] $parameters =array()
112 111
 	 */
113 112
 	public function jquery($selector,$method,array $parameters=array())
114 113
 	{
@@ -126,6 +125,9 @@  discard block
 block discarded – undo
126 125
 		}
127 126
 	}
128 127
 
128
+	/**
129
+	 * @param string $type
130
+	 */
129 131
 	public function generic($type, array $parameters = array())
130 132
 	{
131 133
 		if (is_string($type))
Please login to merge, or discard this patch.
Spacing   +4 added lines, -4 removed lines patch added patch discarded remove patch
@@ -64,7 +64,7 @@  discard block
 block discarded – undo
64 64
 	 * @param string $function name of the global (window) javascript function to call
65 65
 	 * @param array $parameters =array()
66 66
 	 */
67
-	public function apply($function,array $parameters=array())
67
+	public function apply($function, array $parameters = array())
68 68
 	{
69 69
 		if (is_string($function))
70 70
 		{
@@ -88,7 +88,7 @@  discard block
 block discarded – undo
88 88
 	public function call($function)
89 89
 	{
90 90
 		$parameters = func_get_args();
91
-		array_shift($parameters);	// shift off $function
91
+		array_shift($parameters); // shift off $function
92 92
 
93 93
 		if (is_string($function))
94 94
 		{
@@ -110,7 +110,7 @@  discard block
 block discarded – undo
110 110
 	 * @param string $method name of the jquery to call
111 111
 	 * @param array $parameters =array()
112 112
 	 */
113
-	public function jquery($selector,$method,array $parameters=array())
113
+	public function jquery($selector, $method, array $parameters = array())
114 114
 	{
115 115
 		if (is_string($selector) && is_string($method))
116 116
 		{
@@ -169,7 +169,7 @@  discard block
 block discarded – undo
169 169
 	 * @param string $app =null default current app from flags
170 170
 	 * or only the current application
171 171
 	 */
172
-	public function redirect($url, $global = false, $app=null)
172
+	public function redirect($url, $global = false, $app = null)
173 173
 	{
174 174
 		if (is_string($url) && is_bool($global))
175 175
 		{
Please login to merge, or discard this patch.
api/src/Json/Response.php 4 patches
Doc Comments   +1 added lines, -2 removed lines patch added patch discarded remove patch
@@ -180,7 +180,6 @@  discard block
 block discarded – undo
180 180
 	/**
181 181
 	 * Init responseArray
182 182
 	 *
183
-	 * @param array $arr
184 183
 	 * @return array previous content
185 184
 	 */
186 185
 	public function initResponseArray()
@@ -264,7 +263,7 @@  discard block
 block discarded – undo
264 263
 	 *
265 264
 	 * @param midex $var
266 265
 	 * @param string $prefix =''
267
-	 * @return mixed
266
+	 * @return midex|null
268 267
 	 */
269 268
 	public static function fix_content($var, $prefix='')
270 269
 	{
Please login to merge, or discard this patch.
Indentation   +7 added lines, -7 removed lines patch added patch discarded remove patch
@@ -242,13 +242,13 @@
 block discarded – undo
242 242
 		if ($ret === false && ($err = json_last_error()))
243 243
 		{
244 244
 			static $json_err2str = array(
245
-	        	JSON_ERROR_NONE => 'No errors',
246
-	        	JSON_ERROR_DEPTH => 'Maximum stack depth exceeded',
247
-	        	JSON_ERROR_STATE_MISMATCH => 'Underflow or the modes mismatch',
248
-	        	JSON_ERROR_CTRL_CHAR => 'Unexpected control character found',
249
-	        	JSON_ERROR_SYNTAX => 'Syntax error, malformed JSON',
250
-	        	JSON_ERROR_UTF8 => 'Malformed UTF-8 characters, possibly incorrectly encoded',
251
-	        );
245
+				JSON_ERROR_NONE => 'No errors',
246
+				JSON_ERROR_DEPTH => 'Maximum stack depth exceeded',
247
+				JSON_ERROR_STATE_MISMATCH => 'Underflow or the modes mismatch',
248
+				JSON_ERROR_CTRL_CHAR => 'Unexpected control character found',
249
+				JSON_ERROR_SYNTAX => 'Syntax error, malformed JSON',
250
+				JSON_ERROR_UTF8 => 'Malformed UTF-8 characters, possibly incorrectly encoded',
251
+			);
252 252
 			error_log(__METHOD__.'('.array2string($var).') json_last_error()='.$err.'='.$json_err2str[$err]);
253 253
 
254 254
 			if (($var = self::fix_content($var)))
Please login to merge, or discard this patch.
Braces   +4 added lines, -1 removed lines patch added patch discarded remove patch
@@ -268,7 +268,10 @@
 block discarded – undo
268 268
 	 */
269 269
 	public static function fix_content($var, $prefix='')
270 270
 	{
271
-		if (json_encode($var) !== false) return $var;
271
+		if (json_encode($var) !== false)
272
+		{
273
+			return $var;
274
+		}
272 275
 
273 276
 		if (is_scalar($var))
274 277
 		{
Please login to merge, or discard this patch.
Spacing   +4 added lines, -4 removed lines patch added patch discarded remove patch
@@ -226,9 +226,9 @@  discard block
 block discarded – undo
226 226
 		// Wrap the result array into a parent "response" Object
227 227
 		$res = array(
228 228
 			'response' => $inst->responseArray,
229
-		)+Api\Framework::get_page_generation_time();
229
+		) + Api\Framework::get_page_generation_time();
230 230
 
231
-		return self::json_encode($res);	//PHP5.3+, JSON_HEX_TAG | JSON_HEX_APOS | JSON_HEX_QUOT | JSON_HEX_AMP);
231
+		return self::json_encode($res); //PHP5.3+, JSON_HEX_TAG | JSON_HEX_APOS | JSON_HEX_QUOT | JSON_HEX_AMP);
232 232
 	}
233 233
 
234 234
 	/**
@@ -268,7 +268,7 @@  discard block
 block discarded – undo
268 268
 	 * @param string $prefix =''
269 269
 	 * @return mixed
270 270
 	 */
271
-	public static function fix_content($var, $prefix='')
271
+	public static function fix_content($var, $prefix = '')
272 272
 	{
273 273
 		if (json_encode($var) !== false) return $var;
274 274
 
@@ -279,7 +279,7 @@  discard block
 block discarded – undo
279 279
 		}
280 280
 		else
281 281
 		{
282
-			foreach($var as $name => &$value)
282
+			foreach ($var as $name => &$value)
283 283
 			{
284 284
 				$value = self::fix_content($value, $prefix ? $prefix.'['.$name.']' : $name);
285 285
 			}
Please login to merge, or discard this patch.
api/src/Ldap/ServerInfo.php 4 patches
Doc Comments   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -81,7 +81,7 @@  discard block
 block discarded – undo
81 81
 	/**
82 82
 	* gets the version
83 83
 	*
84
-	* @return integer the supported ldap version
84
+	* @return string the supported ldap version
85 85
 	*/
86 86
 	function getVersion()
87 87
 	{
@@ -159,7 +159,7 @@  discard block
 block discarded – undo
159 159
 	 * @param resource $ds
160 160
 	 * @param string $host
161 161
 	 * @param int $version 2 or 3
162
-	 * @return ldapserverinfo
162
+	 * @return ServerInfo
163 163
 	 */
164 164
 	public static function get($ds, $host, $version=3)
165 165
 	{
Please login to merge, or discard this patch.
Indentation   +40 added lines, -40 removed lines patch added patch discarded remove patch
@@ -32,33 +32,33 @@  discard block
 block discarded – undo
32 32
 	const SAMBA4 = 2;
33 33
 
34 34
 	/**
35
-	* @var array $namingContext holds the supported namingcontexts
36
-	*/
35
+	 * @var array $namingContext holds the supported namingcontexts
36
+	 */
37 37
 	var $namingContext = array();
38 38
 
39 39
 	/**
40
-	* @var string $version holds the LDAP server version
41
-	*/
40
+	 * @var string $version holds the LDAP server version
41
+	 */
42 42
 	var $version = 2;
43 43
 
44 44
 	/**
45
-	* @var integer $serverType holds the type of LDAP server(OpenLDAP, ADS, NDS, ...)
46
-	*/
45
+	 * @var integer $serverType holds the type of LDAP server(OpenLDAP, ADS, NDS, ...)
46
+	 */
47 47
 	var $serverType = 0;
48 48
 
49 49
 	/**
50
-	* @var string $_subSchemaEntry the subschema entry DN
51
-	*/
50
+	 * @var string $_subSchemaEntry the subschema entry DN
51
+	 */
52 52
 	var $subSchemaEntry = '';
53 53
 
54 54
 	/**
55
-	* @var array $supportedObjectClasses the supported objectclasses
56
-	*/
55
+	 * @var array $supportedObjectClasses the supported objectclasses
56
+	 */
57 57
 	var $supportedObjectClasses = array();
58 58
 
59 59
 	/**
60
-	* @var array $supportedOIDs the supported OIDs
61
-	*/
60
+	 * @var array $supportedOIDs the supported OIDs
61
+	 */
62 62
 	var $supportedOIDs = array();
63 63
 
64 64
 	/**
@@ -79,50 +79,50 @@  discard block
 block discarded – undo
79 79
 	}
80 80
 
81 81
 	/**
82
-	* gets the version
83
-	*
84
-	* @return integer the supported ldap version
85
-	*/
82
+	 * gets the version
83
+	 *
84
+	 * @return integer the supported ldap version
85
+	 */
86 86
 	function getVersion()
87 87
 	{
88 88
 		return $this->version;
89 89
 	}
90 90
 
91 91
 	/**
92
-	* sets the namingcontexts
93
-	*
94
-	* @param array $_namingContext the supported namingcontexts
95
-	*/
92
+	 * sets the namingcontexts
93
+	 *
94
+	 * @param array $_namingContext the supported namingcontexts
95
+	 */
96 96
 	function setNamingContexts($_namingContext)
97 97
 	{
98 98
 		$this->namingContext = $_namingContext;
99 99
 	}
100 100
 
101 101
 	/**
102
-	* sets the type of the ldap server(OpenLDAP, ADS, NDS, ...)
103
-	*
104
-	* @param integer $_serverType the type of ldap server
105
-	*/
102
+	 * sets the type of the ldap server(OpenLDAP, ADS, NDS, ...)
103
+	 *
104
+	 * @param integer $_serverType the type of ldap server
105
+	 */
106 106
 	function setServerType($_serverType)
107 107
 	{
108 108
 		$this->serverType = $_serverType;
109 109
 	}
110 110
 
111 111
 	/**
112
-	* sets the DN for the subschema entry
113
-	*
114
-	* @param string $_subSchemaEntry the subschema entry DN
115
-	*/
112
+	 * sets the DN for the subschema entry
113
+	 *
114
+	 * @param string $_subSchemaEntry the subschema entry DN
115
+	 */
116 116
 	function setSubSchemaEntry($_subSchemaEntry)
117 117
 	{
118 118
 		$this->subSchemaEntry = $_subSchemaEntry;
119 119
 	}
120 120
 
121 121
 	/**
122
-	* sets the supported objectclasses
123
-	*
124
-	* @param array $_supportedObjectClasses the supported objectclasses
125
-	*/
122
+	 * sets the supported objectclasses
123
+	 *
124
+	 * @param array $_supportedObjectClasses the supported objectclasses
125
+	 */
126 126
 	function setSupportedObjectClasses($_supportedObjectClasses)
127 127
 	{
128 128
 		$this->supportedOIDs = $_supportedObjectClasses;
@@ -130,20 +130,20 @@  discard block
 block discarded – undo
130 130
 	}
131 131
 
132 132
 	/**
133
-	* sets the version
134
-	*
135
-	* @param integer $_version the supported ldap version
136
-	*/
133
+	 * sets the version
134
+	 *
135
+	 * @param integer $_version the supported ldap version
136
+	 */
137 137
 	function setVersion($_version)
138 138
 	{
139 139
 		$this->version = $_version;
140 140
 	}
141 141
 
142 142
 	/**
143
-	* checks for supported objectclasses
144
-	*
145
-	* @return bool returns true if the ldap server supports this objectclass
146
-	*/
143
+	 * checks for supported objectclasses
144
+	 *
145
+	 * @return bool returns true if the ldap server supports this objectclass
146
+	 */
147 147
 	function supportsObjectClass($_objectClass)
148 148
 	{
149 149
 		if($this->supportedObjectClasses[strtolower($_objectClass)])
Please login to merge, or discard this patch.
Spacing   +19 added lines, -19 removed lines patch added patch discarded remove patch
@@ -146,7 +146,7 @@  discard block
 block discarded – undo
146 146
 	*/
147 147
 	function supportsObjectClass($_objectClass)
148 148
 	{
149
-		if($this->supportedObjectClasses[strtolower($_objectClass)])
149
+		if ($this->supportedObjectClasses[strtolower($_objectClass)])
150 150
 		{
151 151
 			return true;
152 152
 		}
@@ -161,21 +161,21 @@  discard block
 block discarded – undo
161 161
 	 * @param int $version 2 or 3
162 162
 	 * @return ldapserverinfo
163 163
 	 */
164
-	public static function get($ds, $host, $version=3)
164
+	public static function get($ds, $host, $version = 3)
165 165
 	{
166
-		$filter='(objectclass=*)';
167
-		$justthese = array('structuralObjectClass','namingContexts','supportedLDAPVersion','subschemaSubentry','vendorname');
168
-		if(($sr = @ldap_read($ds, '', $filter, $justthese)))
166
+		$filter = '(objectclass=*)';
167
+		$justthese = array('structuralObjectClass', 'namingContexts', 'supportedLDAPVersion', 'subschemaSubentry', 'vendorname');
168
+		if (($sr = @ldap_read($ds, '', $filter, $justthese)))
169 169
 		{
170
-			if(($info = ldap_get_entries($ds, $sr)))
170
+			if (($info = ldap_get_entries($ds, $sr)))
171 171
 			{
172 172
 				$ldapServerInfo = new ServerInfo($host);
173 173
 				$ldapServerInfo->setVersion($version);
174 174
 
175 175
 				// check for naming contexts
176
-				if($info[0]['namingcontexts'])
176
+				if ($info[0]['namingcontexts'])
177 177
 				{
178
-					for($i=0; $i<$info[0]['namingcontexts']['count']; $i++)
178
+					for ($i = 0; $i < $info[0]['namingcontexts']['count']; $i++)
179 179
 					{
180 180
 						$namingcontexts[] = $info[0]['namingcontexts'][$i];
181 181
 					}
@@ -183,9 +183,9 @@  discard block
 block discarded – undo
183 183
 				}
184 184
 
185 185
 				// check for ldap server type
186
-				if($info[0]['structuralobjectclass'])
186
+				if ($info[0]['structuralobjectclass'])
187 187
 				{
188
-					switch($info[0]['structuralobjectclass'][0])
188
+					switch ($info[0]['structuralobjectclass'][0])
189 189
 					{
190 190
 						case 'OpenLDAProotDSE':
191 191
 							$ldapServerType = OPENLDAP_LDAPSERVER;
@@ -202,30 +202,30 @@  discard block
 block discarded – undo
202 202
 				}
203 203
 
204 204
 				// check for subschema entry dn
205
-				if($info[0]['subschemasubentry'])
205
+				if ($info[0]['subschemasubentry'])
206 206
 				{
207 207
 					$subschemasubentry = $info[0]['subschemasubentry'][0];
208 208
 					$ldapServerInfo->setSubSchemaEntry($subschemasubentry);
209 209
 				}
210 210
 
211 211
 				// create list of supported objetclasses
212
-				if(!empty($subschemasubentry))
212
+				if (!empty($subschemasubentry))
213 213
 				{
214
-					$filter='(objectclass=*)';
214
+					$filter = '(objectclass=*)';
215 215
 					$justthese = array('objectClasses');
216 216
 
217
-					if(($sr = ldap_read($ds, $subschemasubentry, $filter, $justthese)))
217
+					if (($sr = ldap_read($ds, $subschemasubentry, $filter, $justthese)))
218 218
 					{
219
-						if(($info = ldap_get_entries($ds, $sr)))
219
+						if (($info = ldap_get_entries($ds, $sr)))
220 220
 						{
221
-							if($info[0]['objectclasses']) {
222
-								for($i=0; $i<$info[0]['objectclasses']['count']; $i++)
221
+							if ($info[0]['objectclasses']) {
222
+								for ($i = 0; $i < $info[0]['objectclasses']['count']; $i++)
223 223
 								{
224 224
 									$matches = null;
225
-									if(preg_match('/^\( (.*) NAME \'(\w*)\' /', $info[0]['objectclasses'][$i], $matches))
225
+									if (preg_match('/^\( (.*) NAME \'(\w*)\' /', $info[0]['objectclasses'][$i], $matches))
226 226
 									{
227 227
 										#_debug_array($matches);
228
-										if(count($matches) == 3)
228
+										if (count($matches) == 3)
229 229
 										{
230 230
 											$supportedObjectClasses[$matches[1]] = strtolower($matches[2]);
231 231
 										}
Please login to merge, or discard this patch.
Braces   +2 added lines, -1 removed lines patch added patch discarded remove patch
@@ -218,7 +218,8 @@
 block discarded – undo
218 218
 					{
219 219
 						if(($info = ldap_get_entries($ds, $sr)))
220 220
 						{
221
-							if($info[0]['objectclasses']) {
221
+							if($info[0]['objectclasses'])
222
+							{
222 223
 								for($i=0; $i<$info[0]['objectclasses']['count']; $i++)
223 224
 								{
224 225
 									$matches = null;
Please login to merge, or discard this patch.
api/src/Link/Storage.php 5 patches
Doc Comments   +6 added lines, -1 removed lines patch added patch discarded remove patch
@@ -176,6 +176,11 @@  discard block
 block discarded – undo
176 176
 		return is_array($id) ? $links : ($links[$id] ? $links[$id] : array());
177 177
 	}
178 178
 
179
+	/**
180
+	 * @param boolean $left
181
+	 * @param string $only_app
182
+	 * @param boolean $not_only
183
+	 */
179 184
 	private static function _add2links($row,$left,$only_app,$not_only,array &$links)
180 185
 	{
181 186
 		$linked_app = $left ? $row['link_app2'] : $row['link_app1'];
@@ -206,7 +211,7 @@  discard block
 block discarded – undo
206 211
 	 * @param string $id ='' id in $app, if no integer link_id given in $app_link_id
207 212
 	 * @param string $app2 ='' appname of 2. endpoint of the link, if no integer link_id given in $app_link_id
208 213
 	 * @param string $id2 ='' id in $app2, if no integer link_id given in $app_link_id
209
-	 * @return array with link-data or False
214
+	 * @return string with link-data or False
210 215
 	 */
211 216
 	static function get_link($app_link_id,$id='',$app2='',$id2='')
212 217
 	{
Please login to merge, or discard this patch.
Indentation   +9 added lines, -9 removed lines patch added patch discarded remove patch
@@ -66,7 +66,7 @@  discard block
 block discarded – undo
66 66
 			echo "<p>solink.link('$app1',$id1,'$app2',$id2,'$remark',$owner)</p>\n";
67 67
 		}
68 68
 		if ($app1 == $app2 && $id1 == $id2 ||
69
-		    $id1 == '' || $id2 == '' || $app1 == '' || $app2 == '')
69
+			$id1 == '' || $id2 == '' || $app1 == '' || $app2 == '')
70 70
 		{
71 71
 			return False;	// dont link to self or other nosense
72 72
 		}
@@ -412,26 +412,26 @@  discard block
 block discarded – undo
412 412
 			array('table'=>self::TABLE,
413 413
 				'cols'=>'c.*,b.link_app1 AS app3,b.link_id1 AS id3,b.link_id AS link3',
414 414
 				'where'=>'a.link_app1='.self::$db->quote($app).' AND c.link_app2='.self::$db->quote($target_app).
415
-                        		(!$target_id ? '' : self::$db->expression(self::TABLE,' AND c.',array('link_id2' => $target_id))),
416
-                        	'join'=>" a
415
+								(!$target_id ? '' : self::$db->expression(self::TABLE,' AND c.',array('link_id2' => $target_id))),
416
+							'join'=>" a
417 417
                         		JOIN $table b ON a.link_id2=b.link_id1 AND a.link_app2=b.link_app1
418 418
                        			JOIN $table c ON a.link_id1=c.link_id1 AND a.link_app1=c.link_app1 AND a.link_id!=c.link_id AND c.link_app2=b.link_app2 AND c.link_id2=b.link_id2",
419 419
 			),
420 420
 			// retrieve the type of links, where the relation is realized as timesheet->infolog/tracker and projectmanager->timesheet
421 421
 			array('table'=>self::TABLE,
422 422
 				'cols'=>'b.link_id, b.link_app2 as app1, b.link_id2 as id1, b.link_app1 as app2, b.link_id1 as id2, b.link_remark,b.link_lastmod,b.link_owner,b.deleted,c.link_app1 AS app3,c.link_id1 AS id3,c.link_id AS link3',
423
-                       		'where'=>'a.link_app1='.self::$db->quote($app).' AND b.link_app1='.self::$db->quote($target_app).
424
-                        		(!$target_id ? '' : self::$db->expression(self::TABLE,' AND b.',array('link_id1' => $target_id))),
425
-                        	'join'=>" a
423
+					   		'where'=>'a.link_app1='.self::$db->quote($app).' AND b.link_app1='.self::$db->quote($target_app).
424
+								(!$target_id ? '' : self::$db->expression(self::TABLE,' AND b.',array('link_id1' => $target_id))),
425
+							'join'=>" a
426 426
                         		JOIN $table b ON a.link_id1=b.link_id2 AND a.link_app1=b.link_app2
427 427
                         		JOIN $table c ON a.link_id2=c.link_id1 AND a.link_app2=c.link_app1 AND a.link_id!=c.link_id AND c.link_app2=b.link_app1 AND c.link_id2=b.link_id1",
428 428
 			),
429 429
 			// retrieve the type of links, where the relation is realized as timesheet->projectmanager and infolog->timesheet
430 430
 			array('table'=>self::TABLE,
431 431
 				'cols'=>'a.*,c.link_app1 AS app3,c.link_id1 AS id3,c.link_id AS link3',
432
-                     		'where'=>'a.link_app1='.self::$db->quote($app).' AND a.link_app2='.self::$db->quote($target_app).
433
-                        		(!$target_id ? '' : self::$db->expression(self::TABLE,' AND a.',array('link_id2' => $target_id))),
434
-                       		'join'=>" a
432
+					 		'where'=>'a.link_app1='.self::$db->quote($app).' AND a.link_app2='.self::$db->quote($target_app).
433
+								(!$target_id ? '' : self::$db->expression(self::TABLE,' AND a.',array('link_id2' => $target_id))),
434
+					   		'join'=>" a
435 435
                        			JOIN $table b ON a.link_id1=b.link_id2 AND a.link_app1=b.link_app2
436 436
                         		JOIN $table c ON a.link_id2=c.link_id2 AND a.link_app2=c.link_app2 AND a.link_id!=c.link_id AND c.link_app1=b.link_app1 AND c.link_id1=b.link_id1",
437 437
 			),
Please login to merge, or discard this patch.
Spacing   +58 added lines, -58 removed lines patch added patch discarded remove patch
@@ -59,7 +59,7 @@  discard block
 block discarded – undo
59 59
 	 * @param int $lastmod =0 timestamp of last modification (defaults to now=time())
60 60
 	 * @return int/boolean False (for db or param-error) or on success link_id (Please not the return-value of $id1)
61 61
 	 */
62
-	static function link( $app1,&$id1,$app2,$id2='',$remark='',$owner=0,$lastmod=0 )
62
+	static function link($app1, &$id1, $app2, $id2 = '', $remark = '', $owner = 0, $lastmod = 0)
63 63
 	{
64 64
 		if (self::DEBUG)
65 65
 		{
@@ -68,21 +68,21 @@  discard block
 block discarded – undo
68 68
 		if ($app1 == $app2 && $id1 == $id2 ||
69 69
 		    $id1 == '' || $id2 == '' || $app1 == '' || $app2 == '')
70 70
 		{
71
-			return False;	// dont link to self or other nosense
71
+			return False; // dont link to self or other nosense
72 72
 		}
73
-		if (($link = self::get_link($app1,$id1,$app2,$id2)))
73
+		if (($link = self::get_link($app1, $id1, $app2, $id2)))
74 74
 		{
75 75
 			if ($link['link_remark'] != $remark)
76 76
 			{
77
-				self::update_remark($link['link_id'],$remark);
77
+				self::update_remark($link['link_id'], $remark);
78 78
 			}
79
-			return $link['link_id'];	// link alread exist
79
+			return $link['link_id']; // link alread exist
80 80
 		}
81 81
 		if (!$owner)
82 82
 		{
83 83
 			$owner = $GLOBALS['egw_info']['user']['account_id'];
84 84
 		}
85
-		return self::$db->insert(self::TABLE,array(
85
+		return self::$db->insert(self::TABLE, array(
86 86
 				'link_app1'		=> $app1,
87 87
 				'link_id1'		=> $id1,
88 88
 				'link_app2'		=> $app2,
@@ -90,7 +90,7 @@  discard block
 block discarded – undo
90 90
 				'link_remark'	=> $remark,
91 91
 				'link_lastmod'	=> $lastmod ? $lastmod : time(),
92 92
 				'link_owner'	=> $owner,
93
-			),False,__LINE__,__FILE__) ? self::$db->get_last_insert_id(self::TABLE,'link_id') : false;
93
+			), False, __LINE__, __FILE__) ? self::$db->get_last_insert_id(self::TABLE, 'link_id') : false;
94 94
 	}
95 95
 
96 96
 	/**
@@ -100,14 +100,14 @@  discard block
 block discarded – undo
100 100
 	 * @param string $remark new text for the remark
101 101
 	 * @return boolean true on success, else false
102 102
 	 */
103
-	static function update_remark($link_id,$remark)
103
+	static function update_remark($link_id, $remark)
104 104
 	{
105
-		return self::$db->update(self::TABLE,array(
105
+		return self::$db->update(self::TABLE, array(
106 106
 				'link_remark'	=> $remark,
107 107
 				'link_lastmod'	=> time(),
108
-			),array(
108
+			), array(
109 109
 				'link_id'	=> $link_id,
110
-			),__LINE__,__FILE__);
110
+			), __LINE__, __FILE__);
111 111
 	}
112 112
 
113 113
 	/**
@@ -121,15 +121,15 @@  discard block
 block discarded – undo
121 121
 	 * @param int|array $limit =null number of entries to return, default null = all or array(offset, num_rows) to return num_rows starting from offset
122 122
 	 * @return array id => links pairs if $id is an array or just the links (only_app: ids) or empty array if no matching links found
123 123
 	 */
124
-	static function get_links($app, $id, $only_app='', $order='link_lastmod DESC', $deleted=false, $limit=null)
124
+	static function get_links($app, $id, $only_app = '', $order = 'link_lastmod DESC', $deleted = false, $limit = null)
125 125
 	{
126 126
 		if (self::DEBUG)
127 127
 		{
128
-			echo "<p>solink.get_links($app,".print_r($id,true).",$only_app,$order,$deleted)</p>\n";
128
+			echo "<p>solink.get_links($app,".print_r($id, true).",$only_app,$order,$deleted)</p>\n";
129 129
 		}
130 130
 		if (($not_only = $only_app[0] == '!'))
131 131
 		{
132
-			$only_app = substr($only_app,1);
132
+			$only_app = substr($only_app, 1);
133 133
 		}
134 134
 
135 135
 		$offset = false;
@@ -137,32 +137,32 @@  discard block
 block discarded – undo
137 137
 		{
138 138
 			list($offset, $limit) = $limit;
139 139
 		}
140
-		elseif($limit)
140
+		elseif ($limit)
141 141
 		{
142 142
 			$offset = 0;
143 143
 		}
144 144
 
145 145
 		$links = array();
146 146
 		try {
147
-			foreach(self::$db->select(self::TABLE, '*', self::$db->expression(self::TABLE, '((', array(
147
+			foreach (self::$db->select(self::TABLE, '*', self::$db->expression(self::TABLE, '((', array(
148 148
 						'link_app1'	=> $app,
149 149
 						'link_id1'	=> $id,
150
-					),') OR (',array(
150
+					), ') OR (', array(
151 151
 						'link_app2'	=> $app,
152 152
 						'link_id2'	=> $id,
153
-					),'))',
153
+					), '))',
154 154
 					$deleted ? '' : ' AND deleted IS NULL'
155 155
 				), __LINE__, __FILE__, $offset, $order ? " ORDER BY $order" : '', 'phpgwapi', $limit) as $row)
156 156
 			{
157 157
 				// check if left side (1) is one of our targets --> add it
158
-				if ($row['link_app1'] == $app && in_array($row['link_id1'],(array)$id))
158
+				if ($row['link_app1'] == $app && in_array($row['link_id1'], (array)$id))
159 159
 				{
160
-					self::_add2links($row,true,$only_app,$not_only,$links);
160
+					self::_add2links($row, true, $only_app, $not_only, $links);
161 161
 				}
162 162
 				// check if right side (2) is one of our targets --> add it (both can be true for multiple targets!)
163
-				if ($row['link_app2'] == $app && in_array($row['link_id2'],(array)$id))
163
+				if ($row['link_app2'] == $app && in_array($row['link_id2'], (array)$id))
164 164
 				{
165
-					self::_add2links($row,false,$only_app,$not_only,$links);
165
+					self::_add2links($row, false, $only_app, $not_only, $links);
166 166
 				}
167 167
 			}
168 168
 			// if query returns exactly limit rows, we assume there are more and therefore set self::$limit_exceeded
@@ -170,18 +170,18 @@  discard block
 block discarded – undo
170 170
 		}
171 171
 		// catch Illegal mix of collations (ascii_general_ci,IMPLICIT) and (utf8_general_ci,COERCIBLE) for operation '=' (1267)
172 172
 		// caused by non-ascii chars compared with ascii field uid
173
-		catch(Api\Db\Exception $e) {
173
+		catch (Api\Db\Exception $e) {
174 174
 			_egw_log_exception($e);
175 175
 		}
176 176
 		return is_array($id) ? $links : ($links[$id] ? $links[$id] : array());
177 177
 	}
178 178
 
179
-	private static function _add2links($row,$left,$only_app,$not_only,array &$links)
179
+	private static function _add2links($row, $left, $only_app, $not_only, array &$links)
180 180
 	{
181 181
 		$linked_app = $left ? $row['link_app2'] : $row['link_app1'];
182 182
 		$linked_id  = $left ? $row['link_id2'] : $row['link_id1'];
183 183
 		$app_id = $left ? $row['link_id1'] : $row['link_id2'];
184
-		list($app) = explode('-',$linked_app);
184
+		list($app) = explode('-', $linked_app);
185 185
 		if ($only_app && $not_only == ($linked_app == $only_app) || !$GLOBALS['egw_info']['user']['apps'][$app])
186 186
 		{
187 187
 			#echo "$linked_app == $only_app, ";var_dump($linked_app == $only_app);echo "	->dont return a link<br>";
@@ -208,13 +208,13 @@  discard block
 block discarded – undo
208 208
 	 * @param string $id2 ='' id in $app2, if no integer link_id given in $app_link_id
209 209
 	 * @return array with link-data or False
210 210
 	 */
211
-	static function get_link($app_link_id,$id='',$app2='',$id2='')
211
+	static function get_link($app_link_id, $id = '', $app2 = '', $id2 = '')
212 212
 	{
213 213
 		if (self::DEBUG)
214 214
 		{
215 215
 			echo "<p>solink.get_link('$app_link_id',$id,'$app2','$id2')</p>\n";
216 216
 		}
217
-		if ((int) $app_link_id > 0)
217
+		if ((int)$app_link_id > 0)
218 218
 		{
219 219
 			$where = array('link_id' => $app_link_id);
220 220
 		}
@@ -224,24 +224,24 @@  discard block
 block discarded – undo
224 224
 			{
225 225
 				return False;
226 226
 			}
227
-			$where = self::$db->expression(self::TABLE,'(',array(
227
+			$where = self::$db->expression(self::TABLE, '(', array(
228 228
 					'link_app1'	=> $app_link_id,
229 229
 					'link_id1'	=> $id,
230 230
 					'link_app2'	=> $app2,
231 231
 					'link_id2'	=> $id2,
232
-				),') OR (',array(
232
+				), ') OR (', array(
233 233
 					'link_app2'	=> $app_link_id,
234 234
 					'link_id2'	=> $id,
235 235
 					'link_app1'	=> $app2,
236 236
 					'link_id1'	=> $id2,
237
-				),')');
237
+				), ')');
238 238
 		}
239 239
 		try {
240
-			return self::$db->select(self::TABLE,'*',$where,__LINE__,__FILE__)->fetch(ADODB_FETCH_ASSOC);
240
+			return self::$db->select(self::TABLE, '*', $where, __LINE__, __FILE__)->fetch(ADODB_FETCH_ASSOC);
241 241
 		}
242 242
 		// catch Illegal mix of collations (ascii_general_ci,IMPLICIT) and (utf8_general_ci,COERCIBLE) for operation '=' (1267)
243 243
 		// caused by non-ascii chars compared with ascii field uid
244
-		catch(Api\Db\Exception $e) {
244
+		catch (Api\Db\Exception $e) {
245 245
 			_egw_log_exception($e);
246 246
 		}
247 247
 		return false;
@@ -259,7 +259,7 @@  discard block
 block discarded – undo
259 259
 	 * @param boolean $hold_for_purge Don't really delete the link, just mark it as deleted and wait for final delete of linked entry
260 260
 	 * @return array with deleted links
261 261
 	 */
262
-	static function unlink($link_id,$app='',$id='',$owner=0,$app2='',$id2='',$hold_for_purge=false)
262
+	static function unlink($link_id, $app = '', $id = '', $owner = 0, $app2 = '', $id2 = '', $hold_for_purge = false)
263 263
 	{
264 264
 		if (self::DEBUG)
265 265
 		{
@@ -284,21 +284,21 @@  discard block
 block discarded – undo
284 284
 					$check1['link_id1'] = $id;
285 285
 					$check2['link_id2'] = $id;
286 286
 				}
287
-				$where = self::$db->expression(self::TABLE,'((',$check1,') OR (',$check2,'))');
287
+				$where = self::$db->expression(self::TABLE, '((', $check1, ') OR (', $check2, '))');
288 288
 			}
289 289
 			elseif ($app != '' && $app2 != '')
290 290
 			{
291
-				$where = self::$db->expression(self::TABLE,'(',array(
291
+				$where = self::$db->expression(self::TABLE, '(', array(
292 292
 						'link_app1'	=> $app,
293 293
 						'link_id1'	=> $id,
294 294
 						'link_app2'	=> $app2,
295 295
 						'link_id2'	=> $id2,
296
-					),') OR (',array(
296
+					), ') OR (', array(
297 297
 						'link_app1'	=> $app2,
298 298
 						'link_id1'	=> $id2,
299 299
 						'link_app2'	=> $app,
300 300
 						'link_id2'	=> $id,
301
-					),')');
301
+					), ')');
302 302
 			}
303 303
 			if ($owner)
304 304
 			{
@@ -308,25 +308,25 @@  discard block
 block discarded – undo
308 308
 		}
309 309
 		$deleted = array();
310 310
 		try {
311
-			foreach(self::$db->select(self::TABLE,'*',$where,__LINE__,__FILE__) as $row)
311
+			foreach (self::$db->select(self::TABLE, '*', $where, __LINE__, __FILE__) as $row)
312 312
 			{
313 313
 				$deleted[] = $row;
314 314
 			}
315
-			if($hold_for_purge)
315
+			if ($hold_for_purge)
316 316
 			{
317
-				self::$db->update(self::TABLE,array(
317
+				self::$db->update(self::TABLE, array(
318 318
 					'deleted' => time(),
319 319
 					'link_lastmod' => time(),
320
-				), $where, __LINE__,__FILE__);
320
+				), $where, __LINE__, __FILE__);
321 321
 			}
322 322
 			else
323 323
 			{
324
-				self::$db->delete(self::TABLE,$where,__LINE__,__FILE__);
324
+				self::$db->delete(self::TABLE, $where, __LINE__, __FILE__);
325 325
 			}
326 326
 		}
327 327
 		// catch Illegal mix of collations (ascii_general_ci,IMPLICIT) and (utf8_general_ci,COERCIBLE) for operation '=' (1267)
328 328
 		// caused by non-ascii chars compared with ascii field uid
329
-		catch(Api\Db\Exception $e) {
329
+		catch (Api\Db\Exception $e) {
330 330
 			_egw_log_exception($e);
331 331
 		}
332 332
 
@@ -357,8 +357,8 @@  discard block
 block discarded – undo
357 357
 			$check1['link_id1'] = $id;
358 358
 			$check2['link_id2'] = $id;
359 359
 		}
360
-		$where = self::$db->expression(self::TABLE,'((',$check1,') OR (',$check2,'))');
361
-		self::$db->update(self::TABLE,array('deleted'=> null), $where, __LINE__,__FILE__);
360
+		$where = self::$db->expression(self::TABLE, '((', $check1, ') OR (', $check2, '))');
361
+		self::$db->update(self::TABLE, array('deleted'=> null), $where, __LINE__, __FILE__);
362 362
 	}
363 363
 
364 364
 	/**
@@ -371,13 +371,13 @@  discard block
 block discarded – undo
371 371
 	 * @param int $new_owner account_id of new owner
372 372
 	 * @return int number of links changed
373 373
 	 */
374
-	static function chown($owner,$new_owner)
374
+	static function chown($owner, $new_owner)
375 375
 	{
376
-		if ((int)$owner <= 0 || (int) $new_owner <= 0)
376
+		if ((int)$owner <= 0 || (int)$new_owner <= 0)
377 377
 		{
378 378
 			return 0;
379 379
 		}
380
-		self::$db->update(self::TABLE,array('owner'=>$new_owner),array('owner'=>$owner),__LINE__,__FILE__);
380
+		self::$db->update(self::TABLE, array('owner'=>$new_owner), array('owner'=>$owner), __LINE__, __FILE__);
381 381
 
382 382
 		return self::$db->affected_rows();
383 383
 	}
@@ -404,15 +404,15 @@  discard block
 block discarded – undo
404 404
 	 * @param int|array $limit =null number of entries to return, default null = all or array(offset, num_rows) to return num_rows starting from offset
405 405
 	 * @return array with links from entries from $app to $target_app/$target_id plus the other (b) link_id/app/id in the keys 'link3'/'app3'/'id3'
406 406
 	 */
407
-	static function get_3links($app, $target_app, $target_id=null, $just_app_ids=false, $order='link_lastmod DESC', $limit=null)
407
+	static function get_3links($app, $target_app, $target_id = null, $just_app_ids = false, $order = 'link_lastmod DESC', $limit = null)
408 408
 	{
409 409
 		$table = self::TABLE;
410
-		$arrayofselects=array(
410
+		$arrayofselects = array(
411 411
 			// retrieve the type of links, where the relation is realized as timesheet->infolog/tracker via infolog->projectmanager to timesheet->projectmanager
412 412
 			array('table'=>self::TABLE,
413 413
 				'cols'=>'c.*,b.link_app1 AS app3,b.link_id1 AS id3,b.link_id AS link3',
414 414
 				'where'=>'a.link_app1='.self::$db->quote($app).' AND c.link_app2='.self::$db->quote($target_app).
415
-                        		(!$target_id ? '' : self::$db->expression(self::TABLE,' AND c.',array('link_id2' => $target_id))),
415
+                        		(!$target_id ? '' : self::$db->expression(self::TABLE, ' AND c.', array('link_id2' => $target_id))),
416 416
                         	'join'=>" a
417 417
                         		JOIN $table b ON a.link_id2=b.link_id1 AND a.link_app2=b.link_app1
418 418
                        			JOIN $table c ON a.link_id1=c.link_id1 AND a.link_app1=c.link_app1 AND a.link_id!=c.link_id AND c.link_app2=b.link_app2 AND c.link_id2=b.link_id2",
@@ -421,7 +421,7 @@  discard block
 block discarded – undo
421 421
 			array('table'=>self::TABLE,
422 422
 				'cols'=>'b.link_id, b.link_app2 as app1, b.link_id2 as id1, b.link_app1 as app2, b.link_id1 as id2, b.link_remark,b.link_lastmod,b.link_owner,b.deleted,c.link_app1 AS app3,c.link_id1 AS id3,c.link_id AS link3',
423 423
                        		'where'=>'a.link_app1='.self::$db->quote($app).' AND b.link_app1='.self::$db->quote($target_app).
424
-                        		(!$target_id ? '' : self::$db->expression(self::TABLE,' AND b.',array('link_id1' => $target_id))),
424
+                        		(!$target_id ? '' : self::$db->expression(self::TABLE, ' AND b.', array('link_id1' => $target_id))),
425 425
                         	'join'=>" a
426 426
                         		JOIN $table b ON a.link_id1=b.link_id2 AND a.link_app1=b.link_app2
427 427
                         		JOIN $table c ON a.link_id2=c.link_id1 AND a.link_app2=c.link_app1 AND a.link_id!=c.link_id AND c.link_app2=b.link_app1 AND c.link_id2=b.link_id1",
@@ -430,7 +430,7 @@  discard block
 block discarded – undo
430 430
 			array('table'=>self::TABLE,
431 431
 				'cols'=>'a.*,c.link_app1 AS app3,c.link_id1 AS id3,c.link_id AS link3',
432 432
                      		'where'=>'a.link_app1='.self::$db->quote($app).' AND a.link_app2='.self::$db->quote($target_app).
433
-                        		(!$target_id ? '' : self::$db->expression(self::TABLE,' AND a.',array('link_id2' => $target_id))),
433
+                        		(!$target_id ? '' : self::$db->expression(self::TABLE, ' AND a.', array('link_id2' => $target_id))),
434 434
                        		'join'=>" a
435 435
                        			JOIN $table b ON a.link_id1=b.link_id2 AND a.link_app1=b.link_app2
436 436
                         		JOIN $table c ON a.link_id2=c.link_id2 AND a.link_app2=c.link_app2 AND a.link_id!=c.link_id AND c.link_app1=b.link_app1 AND c.link_id1=b.link_id1",
@@ -442,17 +442,17 @@  discard block
 block discarded – undo
442 442
 		{
443 443
 			list($offset, $limit) = $limit;
444 444
 		}
445
-		elseif($limit)
445
+		elseif ($limit)
446 446
 		{
447 447
 			$offset = 0;
448 448
 		}
449 449
 
450 450
 		$links = array();
451
-		foreach(self::$db->union($arrayofselects, __LINE__, __FILE__, $order, $offset, $limit) as $row)
451
+		foreach (self::$db->union($arrayofselects, __LINE__, __FILE__, $order, $offset, $limit) as $row)
452 452
 		{
453 453
 			if ($just_app_ids)
454 454
 			{
455
-				if ($row['link_app1'] == $target_app && (is_null($target_id) || in_array($row['link_id1'],(array)$target_id)))
455
+				if ($row['link_app1'] == $target_app && (is_null($target_id) || in_array($row['link_id1'], (array)$target_id)))
456 456
 				{
457 457
 					$links[$row['link_id']] = $row['link_id2'];
458 458
 				}
@@ -463,7 +463,7 @@  discard block
 block discarded – undo
463 463
 			}
464 464
 			else
465 465
 			{
466
-				$links[] = Api\Db::strip_array_keys($row,'link_');
466
+				$links[] = Api\Db::strip_array_keys($row, 'link_');
467 467
 			}
468 468
 		}
469 469
 		// if query returns exactly limit rows, we assume there are more and therefore set self::$limit_exceeded
@@ -477,7 +477,7 @@  discard block
 block discarded – undo
477 477
 	 */
478 478
 	static function init_static( )
479 479
 	{
480
-		self::$db     = $GLOBALS['egw']->db;
480
+		self::$db = $GLOBALS['egw']->db;
481 481
 	}
482 482
 }
483 483
 Storage::init_static();
Please login to merge, or discard this patch.
Braces   +4 added lines, -1 removed lines patch added patch discarded remove patch
@@ -302,7 +302,10 @@
 block discarded – undo
302 302
 			}
303 303
 			if ($owner)
304 304
 			{
305
-				if ($app) $where = array($where);
305
+				if ($app)
306
+				{
307
+					$where = array($where);
308
+				}
306 309
 				$where['link_owner'] = $owner;
307 310
 			}
308 311
 		}
Please login to merge, or discard this patch.
Upper-Lower-Casing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -269,7 +269,7 @@
 block discarded – undo
269 269
 		{
270 270
 			$where = array('link_id' => $link_id);
271 271
 		}
272
-		elseif ($app == '' AND $owner == '')
272
+		elseif ($app == '' and $owner == '')
273 273
 		{
274 274
 			return 0;
275 275
 		}
Please login to merge, or discard this patch.
api/src/Mail.php 4 patches
Doc Comments   +17 added lines, -13 removed lines patch added patch discarded remove patch
@@ -429,7 +429,7 @@  discard block
 block discarded – undo
429 429
 	 * forceEAProfileLoad
430 430
 	 * used to force the load of a specific emailadmin profile; we assume administrative use only (as of now)
431 431
 	 * @param int $_profile_id
432
-	 * @return object instance of Mail (by reference)
432
+	 * @return Mail instance of Mail (by reference)
433 433
 	 */
434 434
 	public static function &forceEAProfileLoad($_profile_id)
435 435
 	{
@@ -704,7 +704,7 @@  discard block
 block discarded – undo
704 704
 	/**
705 705
 	 * Get all identities of given mailaccount
706 706
 	 *
707
-	 * @param int|Mail\Account $account account-object or acc_id
707
+	 * @param integer $account account-object or acc_id
708 708
 	 * @return array - array(email=>realname)
709 709
 	 */
710 710
 	function getAccountIdentities($account)
@@ -1289,7 +1289,7 @@  discard block
 block discarded – undo
1289 1289
 	 * @param array $_filter filter to apply to getSortedList
1290 1290
 	 * @param mixed $_thisUIDOnly = null, if given fetch the headers of this uid only (either one, or array of uids)
1291 1291
 	 * @param boolean $_cacheResult = true try touse the cache of getSortedList
1292
-	 * @param mixed $_fetchPreviews = false (boolean/int) fetch part of the body of the messages requested (if integer the number is assumed to be the number of chars to be returned for preview; if set to true 300 chars are returned (when available))
1292
+	 * @param boolean $_fetchPreviews = false (boolean/int) fetch part of the body of the messages requested (if integer the number is assumed to be the number of chars to be returned for preview; if set to true 300 chars are returned (when available))
1293 1293
 	 * @return array result as array(header=>array,total=>int,first=>int,last=>int)
1294 1294
 	 */
1295 1295
 	function getHeaders($_folderName, $_startMessage, $_numberOfMessages, $_sort, $_reverse, $_filter, $_thisUIDOnly=null, $_cacheResult=true, $_fetchPreviews=false)
@@ -1866,6 +1866,7 @@  discard block
 block discarded – undo
1866 1866
 	 *
1867 1867
 	 * @param mixed _sort the integer sort order / or a valid and handeled SORTSTRING (right now: UID/ARRIVAL/INTERNALDATE (->ARRIVAL))
1868 1868
 	 * @param bool _reverse wether to add REVERSE to the Sort String or not
1869
+	 * @param integer $_sort
1869 1870
 	 * @return the sort sequence for horde search
1870 1871
 	 */
1871 1872
 	function _getSortString($_sort, $_reverse=false)
@@ -2375,7 +2376,7 @@  discard block
 block discarded – undo
2375 2376
 	 * @param string _parent the parent foldername
2376 2377
 	 * @param string _folderName the new foldername
2377 2378
 	 *
2378
-	 * @return mixed name of the newly created folder or false on error
2379
+	 * @return string name of the newly created folder or false on error
2379 2380
 	 * @throws Exception
2380 2381
 	 */
2381 2382
 	function renameFolder($_oldFolderName, $_parent, $_folderName)
@@ -3247,7 +3248,7 @@  discard block
 block discarded – undo
3247 3248
 	 * @param string $_mailbox
3248 3249
 	 * @param string $delimiter
3249 3250
 	 * @param string $prefix
3250
-	 * @param string $reclevel 0, counter to keep track of the current recursionlevel
3251
+	 * @param integer $reclevel 0, counter to keep track of the current recursionlevel
3251 3252
 	 * @return array of mailboxes
3252 3253
 	 */
3253 3254
 	function getMailBoxesRecursive($_mailbox, $delimiter, $prefix, $reclevel=0)
@@ -3297,7 +3298,7 @@  discard block
 block discarded – undo
3297 3298
 	 * abstraction layer for getDraftFolder, getTemplateFolder, getTrashFolder and getSentFolder
3298 3299
 	 * @param string $_type the type to fetch (Drafts|Template|Trash|Sent)
3299 3300
 	 * @param boolean $_checkexistance trigger check for existance
3300
-	 * @param boolean& $created =null on return true: if folder was just created, false if not
3301
+	 * @param boolean $created =null on return true: if folder was just created, false if not
3301 3302
 	 * @return mixed string or false
3302 3303
 	 */
3303 3304
 	function _getSpecialUseFolder($_type, $_checkexistance=TRUE, &$created=null)
@@ -3429,7 +3430,7 @@  discard block
 block discarded – undo
3429 3430
 	/**
3430 3431
 	 * getTemplateFolder wrapper for _getSpecialUseFolder Type Template
3431 3432
 	 * @param boolean $_checkexistance trigger check for existance
3432
-	 * @return mixed string or false
3433
+	 * @return string string or false
3433 3434
 	 */
3434 3435
 	function getTemplateFolder($_checkexistance=TRUE)
3435 3436
 	{
@@ -3459,7 +3460,7 @@  discard block
 block discarded – undo
3459 3460
 	/**
3460 3461
 	 * getOutboxFolder wrapper for _getSpecialUseFolder Type Outbox
3461 3462
 	 * @param boolean $_checkexistance trigger check for existance
3462
-	 * @return mixed string or false
3463
+	 * @return string string or false
3463 3464
 	 */
3464 3465
 	function getOutboxFolder($_checkexistance=TRUE)
3465 3466
 	{
@@ -4298,7 +4299,7 @@  discard block
 block discarded – undo
4298 4299
 	/**
4299 4300
 	 * get part of the message, if its stucture is indicating its of multipart alternative style
4300 4301
 	 * a wrapper for multipartmixed
4301
-	 * @param string/int $_uid the messageuid,
4302
+	 * @param integer $_uid the messageuid,
4302 4303
 	 * @param Horde_Mime_Part $_structure structure for parsing
4303 4304
 	 * @param string $_htmlMode how to display a message, html, plain text, ...
4304 4305
 	 * @param boolean $_preserveSeen flag to preserve the seenflag by using body.peek
@@ -4948,6 +4949,9 @@  discard block
 block discarded – undo
4948 4949
 		return $message;
4949 4950
 	}
4950 4951
 
4952
+	/**
4953
+	 * @param integer $cols
4954
+	 */
4951 4955
 	static function wordwrap($str, $cols, $cut, $dontbreaklinesstartingwith=false)
4952 4956
 	{
4953 4957
 		$lines = explode("\n", $str);
@@ -5396,7 +5400,6 @@  discard block
 block discarded – undo
5396 5400
 	 * @param string $_partID = null
5397 5401
 	 * @param string $_folder = null
5398 5402
 	 * @param boolean $_preserveSeen = false flag to preserve the seenflag by using body.peek
5399
-	 * @param Horde_Imap_Client_Fetch_Query $fquery=null default query just structure
5400 5403
 	 * @return Horde_Mime_Part
5401 5404
 	 */
5402 5405
 	function getStructure($_uid, $_partID=null, $_folder=null, $_preserveSeen=false)
@@ -5987,6 +5990,7 @@  discard block
 block discarded – undo
5987 5990
 	 * @param preserveHTML flag to pass through to getdisplayableBody
5988 5991
 	 * @param addHeaderSection flag to be able to supress headersection
5989 5992
 	 * @param includeAttachments flag to be able to supress possible attachments
5993
+	 * @param Mail $mailClass
5990 5994
 	 * @return array/bool with 'mailaddress'=>$mailaddress,
5991 5995
 	 *				'subject'=>$subject,
5992 5996
 	 *				'message'=>$message,
@@ -6440,7 +6444,7 @@  discard block
 block discarded – undo
6440 6444
 	 *
6441 6445
 	 * @param Mailer $_mailObject instance of the Mailer Object to be used
6442 6446
 	 * @param string $_html2parse the html to parse and to be altered, if conditions meet
6443
-	 * @param $mail_bo mail bo object
6447
+	 * @param Mail $mail_bo mail bo object
6444 6448
 	 * @return void
6445 6449
 	 */
6446 6450
 	static function processURL2InlineImages(Mailer $_mailObject, &$_html2parse, $mail_bo)
@@ -6556,7 +6560,7 @@  discard block
 block discarded – undo
6556 6560
 	 * @param Storage\Merge Storage\Merge bo_merge object
6557 6561
 	 * @param string $document the full filename
6558 6562
 	 * @param array $SendAndMergeTocontacts array of contact ids
6559
-	 * @param string& $_folder (passed by reference) will set the folder used. must be set with a folder, but will hold modifications if
6563
+	 * @param string|null $_folder (passed by reference) will set the folder used. must be set with a folder, but will hold modifications if
6560 6564
 	 *					folder is modified
6561 6565
 	 * @param string& $importID ID for the imported message, used by attachments to identify them unambiguously
6562 6566
 	 * @return mixed array of messages with success and failed messages or exception
@@ -6800,7 +6804,7 @@  discard block
 block discarded – undo
6800 6804
 	/**
6801 6805
 	 * Parses a message/rfc mail from file to the mailobject
6802 6806
 	 *
6803
-	 * @param object $mailer instance of the SMTP Mailer Object
6807
+	 * @param Mailer $mailer instance of the SMTP Mailer Object
6804 6808
 	 * @param string $tmpFileName string that points/leads to the file to be imported
6805 6809
 	 * @throws Exception\NotFound if $fle is not found
6806 6810
 	 */
Please login to merge, or discard this patch.
Indentation   +7 added lines, -7 removed lines patch added patch discarded remove patch
@@ -6730,14 +6730,14 @@
 block discarded – undo
6730 6730
 					{
6731 6731
 						if ($this->folderExists($_folder,true))
6732 6732
 						{
6733
-						    if($this->isSentFolder($_folder))
6733
+							if($this->isSentFolder($_folder))
6734 6734
 							{
6735
-						        $flags = '\\Seen';
6736
-						    } elseif($this->isDraftFolder($_folder)) {
6737
-						        $flags = '\\Draft';
6738
-						    } else {
6739
-						        $flags = '';
6740
-						    }
6735
+								$flags = '\\Seen';
6736
+							} elseif($this->isDraftFolder($_folder)) {
6737
+								$flags = '\\Draft';
6738
+							} else {
6739
+								$flags = '';
6740
+							}
6741 6741
 							$savefailed = false;
6742 6742
 							try
6743 6743
 							{
Please login to merge, or discard this patch.
Spacing   +1150 added lines, -1151 removed lines patch added patch discarded remove patch
@@ -121,7 +121,7 @@  discard block
 block discarded – undo
121 121
 	 *
122 122
 	 * @array
123 123
 	 */
124
-	static $tidy_config = array('clean'=>false,'output-html'=>true,'join-classes'=>true,'join-styles'=>true,'show-body-only'=>"auto",'word-2000'=>true,'wrap'=>0);
124
+	static $tidy_config = array('clean'=>false, 'output-html'=>true, 'join-classes'=>true, 'join-styles'=>true, 'show-body-only'=>"auto", 'word-2000'=>true, 'wrap'=>0);
125 125
 
126 126
 	/**
127 127
 	 * static used to configure htmLawed, for use with emails
@@ -131,9 +131,9 @@  discard block
 block discarded – undo
131 131
 	static $htmLawed_config = array('comment'=>1, //remove comments
132 132
 		'make_tag_strict' => 3, // 3 is a new own config value, to indicate that transformation is to be performed, but don't transform font as size transformation of numeric sizes to keywords alters the intended result too much
133 133
 		'keep_bad'=>2, //remove tags but keep element content (4 and 6 keep element content only if text (pcdata) is valid in parent element as per specs, this may lead to textloss if balance is switched on)
134
-		'balance'=>1,//turn off tag-balancing (config['balance']=>0). That will not introduce any security risk; only standards-compliant tag nesting check/filtering will be turned off (basic tag-balance will remain; i.e., there won't be any unclosed tag, etc., after filtering)
134
+		'balance'=>1, //turn off tag-balancing (config['balance']=>0). That will not introduce any security risk; only standards-compliant tag nesting check/filtering will be turned off (basic tag-balance will remain; i.e., there won't be any unclosed tag, etc., after filtering)
135 135
 		'direct_list_nest' => 1,
136
-		'allow_for_inline' => array('table','div','li','p'),//block elements allowed for nesting when only inline is allowed; Example span does not allow block elements as table; table is the only element tested so far
136
+		'allow_for_inline' => array('table', 'div', 'li', 'p'), //block elements allowed for nesting when only inline is allowed; Example span does not allow block elements as table; table is the only element tested so far
137 137
 		// tidy eats away even some wanted whitespace, so we switch it off;
138 138
 		// we used it for its compacting and beautifying capabilities, which resulted in better html for further processing
139 139
 		'tidy'=>0,
@@ -148,13 +148,13 @@  discard block
 block discarded – undo
148 148
 	 *
149 149
 	 * @array
150 150
 	 */
151
-	static $aclShortCuts = array('' => array('label'=>'none','title'=>'The user has no rights whatsoever.'),
152
-		'lrs'		=> array('label'=>'readable','title'=>'Allows a user to read the contents of the mailbox.'),
153
-		'lprs'		=> array('label'=>'post','title'=>'Allows a user to read the mailbox and post to it through the delivery system by sending mail to the submission address of the mailbox.'),
154
-		'ilprs'		=> array('label'=>'append','title'=>'Allows a user to read the mailbox and append messages to it, either via IMAP or through the delivery system.'),
155
-		'cdilprsw'	=> array('label'=>'write','title'=>'Allows a user to read the maibox, post to it, append messages to it, and delete messages or the mailbox itself. The only right not given is the right to change the ACL of the mailbox.'),
156
-		'acdilprsw'	=> array('label'=>'all','title'=>'The user has all possible rights on the mailbox. This is usually granted to users only on the mailboxes they own.'),
157
-		'custom'	=> array('label'=>'custom','title'=>'User defined combination of rights for the ACL'),
151
+	static $aclShortCuts = array('' => array('label'=>'none', 'title'=>'The user has no rights whatsoever.'),
152
+		'lrs'		=> array('label'=>'readable', 'title'=>'Allows a user to read the contents of the mailbox.'),
153
+		'lprs'		=> array('label'=>'post', 'title'=>'Allows a user to read the mailbox and post to it through the delivery system by sending mail to the submission address of the mailbox.'),
154
+		'ilprs'		=> array('label'=>'append', 'title'=>'Allows a user to read the mailbox and append messages to it, either via IMAP or through the delivery system.'),
155
+		'cdilprsw'	=> array('label'=>'write', 'title'=>'Allows a user to read the maibox, post to it, append messages to it, and delete messages or the mailbox itself. The only right not given is the right to change the ACL of the mailbox.'),
156
+		'acdilprsw'	=> array('label'=>'all', 'title'=>'The user has all possible rights on the mailbox. This is usually granted to users only on the mailboxes they own.'),
157
+		'custom'	=> array('label'=>'custom', 'title'=>'User defined combination of rights for the ACL'),
158 158
 	);
159 159
 
160 160
 	/**
@@ -196,13 +196,13 @@  discard block
 block discarded – undo
196 196
 	 * @param boolean $_reuseCache = null if null it is set to the value of $_restoreSession
197 197
 	 * @return Mail
198 198
 	 */
199
-	public static function getInstance($_restoreSession=true, &$_profileID=0, $_validate=true, $_oldImapServerObject=false, $_reuseCache=null)
199
+	public static function getInstance($_restoreSession = true, &$_profileID = 0, $_validate = true, $_oldImapServerObject = false, $_reuseCache = null)
200 200
 	{
201 201
 		//$_restoreSession=false;
202 202
 		if (is_null($_reuseCache)) $_reuseCache = $_restoreSession;
203 203
 		//error_log(__METHOD__.' ('.__LINE__.') '.' RestoreSession:'.$_restoreSession.' ProfileId:'.$_profileID.'/'.Mail\Account::get_default_acc_id().' for user:'.$GLOBALS['egw_info']['user']['account_lid'].' called from:'.function_backtrace());
204 204
 		//error_log(__METHOD__.' ('.__LINE__.') '.array2string($_oldImapServerObject));
205
-		self::$profileDefunct = Cache::getCache(Cache::INSTANCE,'email','profileDefunct'.trim($GLOBALS['egw_info']['user']['account_id']),null,array(),5*1);
205
+		self::$profileDefunct = Cache::getCache(Cache::INSTANCE, 'email', 'profileDefunct'.trim($GLOBALS['egw_info']['user']['account_id']), null, array(), 5 * 1);
206 206
 		if (isset(self::$profileDefunct[$_profileID]) && strlen(self::$profileDefunct[$_profileID]))
207 207
 		{
208 208
 			throw new Exception(__METHOD__." failed to instanciate Mail for Profile #$_profileID Reason:".self::$profileDefunct[$_profileID]);
@@ -211,13 +211,13 @@  discard block
 block discarded – undo
211 211
 		{
212 212
 			if (!is_object(self::$instances[$_profileID]))
213 213
 			{
214
-				self::$instances[$_profileID] = new Mail('utf-8',false,$_profileID,false,$_reuseCache);
214
+				self::$instances[$_profileID] = new Mail('utf-8', false, $_profileID, false, $_reuseCache);
215 215
 			}
216 216
 			self::$instances[$_profileID]->icServer = $_oldImapServerObject;
217
-			self::$instances[$_profileID]->accountid= $_oldImapServerObject->ImapServerId;
218
-			self::$instances[$_profileID]->profileID= $_oldImapServerObject->ImapServerId;
217
+			self::$instances[$_profileID]->accountid = $_oldImapServerObject->ImapServerId;
218
+			self::$instances[$_profileID]->profileID = $_oldImapServerObject->ImapServerId;
219 219
 			self::$instances[$_profileID]->mailPreferences = $GLOBALS['egw_info']['user']['preferences']['mail'];
220
-			self::$instances[$_profileID]->htmlOptions  = self::$instances[$_profileID]->mailPreferences['htmlOptions'];
220
+			self::$instances[$_profileID]->htmlOptions = self::$instances[$_profileID]->mailPreferences['htmlOptions'];
221 221
 			return self::$instances[$_profileID];
222 222
 		}
223 223
 		if ($_profileID == 0)
@@ -230,14 +230,14 @@  discard block
 block discarded – undo
230 230
 			{
231 231
 				$profileID = Mail\Account::get_default_acc_id();
232 232
 			}
233
-			if ($profileID!=$_profileID) $_restoreSession==false;
234
-			$_profileID=$profileID;
233
+			if ($profileID != $_profileID) $_restoreSession == false;
234
+			$_profileID = $profileID;
235 235
 			if (self::$debug) error_log(__METHOD__.' ('.__LINE__.') '.' called with profileID==0 using '.$profileID.' instead->'.function_backtrace());
236 236
 		}
237 237
 		// no validation or restoreSession for old ImapServer Object, just fetch it and return it
238
-		if ($_oldImapServerObject===true)
238
+		if ($_oldImapServerObject === true)
239 239
 		{
240
-			return new Mail('utf-8',false,$_profileID,true,$_reuseCache);
240
+			return new Mail('utf-8', false, $_profileID, true, $_reuseCache);
241 241
 		}
242 242
 		if ($_profileID != 0 && $_validate)
243 243
 		{
@@ -257,9 +257,9 @@  discard block
 block discarded – undo
257 257
 			//Cache::setSession('mail','activeProfileID',$_profileID);
258 258
 		}
259 259
 		//error_log(__METHOD__.' ('.__LINE__.') '.' RestoreSession:'.$_restoreSession.' ProfileId:'.$_profileID.' called from:'.function_backtrace());
260
-		if ($_profileID && (!isset(self::$instances[$_profileID]) || $_restoreSession===false))
260
+		if ($_profileID && (!isset(self::$instances[$_profileID]) || $_restoreSession === false))
261 261
 		{
262
-			self::$instances[$_profileID] = new Mail('utf-8',$_restoreSession,$_profileID,false,$_reuseCache);
262
+			self::$instances[$_profileID] = new Mail('utf-8', $_restoreSession, $_profileID, false, $_reuseCache);
263 263
 		}
264 264
 		else
265 265
 		{
@@ -270,7 +270,7 @@  discard block
 block discarded – undo
270 270
 				self::$instances[$_profileID]->ogServer = Mail\Account::read($_profileID)->smtpServer();
271 271
 				// TODO: merge mailprefs into userprefs, for easy treatment
272 272
 				self::$instances[$_profileID]->mailPreferences = $GLOBALS['egw_info']['user']['preferences']['mail'];
273
-				self::$instances[$_profileID]->htmlOptions  = self::$instances[$_profileID]->mailPreferences['htmlOptions'];
273
+				self::$instances[$_profileID]->htmlOptions = self::$instances[$_profileID]->mailPreferences['htmlOptions'];
274 274
 			} catch (\Exception $e)
275 275
 			{
276 276
 				$newprofileID = Mail\Account::get_default_acc_id();
@@ -278,15 +278,15 @@  discard block
 block discarded – undo
278 278
 				error_log(__METHOD__.' ('.__LINE__.') '." Loading the Profile for ProfileID ".$_profileID.' failed for icServer; '.$e->getMessage().' Trigger new instance for Default-Profile '.$newprofileID.'. called from:'.function_backtrace());
279 279
 				if ($newprofileID)
280 280
 				{
281
-					self::$instances[$newprofileID] = new Mail('utf-8',false,$newprofileID,false,$_reuseCache);
281
+					self::$instances[$newprofileID] = new Mail('utf-8', false, $newprofileID, false, $_reuseCache);
282 282
 					$_profileID = $newprofileID;
283 283
 				}
284 284
 				else
285 285
 				{
286
-					throw new Exception(__METHOD__." failed to load the Profile for ProfileID for $_profileID with error:".$e->getMessage().($e->details?', '.$e->details:''));
286
+					throw new Exception(__METHOD__." failed to load the Profile for ProfileID for $_profileID with error:".$e->getMessage().($e->details ? ', '.$e->details : ''));
287 287
 				}
288 288
 			}
289
-			self::storeActiveProfileIDToPref(self::$instances[$_profileID]->icServer, $_profileID, $_validate );
289
+			self::storeActiveProfileIDToPref(self::$instances[$_profileID]->icServer, $_profileID, $_validate);
290 290
 		}
291 291
 		self::$instances[$_profileID]->profileID = $_profileID;
292 292
 		if (!isset(self::$instances[$_profileID]->idna2)) self::$instances[$_profileID]->idna2 = new Horde_Idna;
@@ -302,7 +302,7 @@  discard block
 block discarded – undo
302 302
 	 * @param boolean $_testConnection = 0
303 303
 	 * @return mixed $_profileID or false on failed ConnectionTest
304 304
 	 */
305
-	public static function storeActiveProfileIDToPref($_icServerObject, $_profileID=0, $_testConnection=true)
305
+	public static function storeActiveProfileIDToPref($_icServerObject, $_profileID = 0, $_testConnection = true)
306 306
 	{
307 307
 		if (isset($GLOBALS['egw_info']['user']['preferences']['mail']['ActiveProfileID']) && !empty($GLOBALS['egw_info']['user']['preferences']['mail']['ActiveProfileID']))
308 308
 		{
@@ -323,12 +323,12 @@  discard block
 block discarded – undo
323 323
 		}
324 324
 		if ($oldProfileID != $_profileID)
325 325
 		{
326
-			if ($oldProfileID && $_profileID==0) $_profileID = $oldProfileID;
327
-			$GLOBALS['egw']->preferences->add('mail','ActiveProfileID',$_profileID,'user');
326
+			if ($oldProfileID && $_profileID == 0) $_profileID = $oldProfileID;
327
+			$GLOBALS['egw']->preferences->add('mail', 'ActiveProfileID', $_profileID, 'user');
328 328
 			// save prefs
329 329
 			$GLOBALS['egw']->preferences->save_repository(true);
330 330
 			$GLOBALS['egw_info']['user']['preferences']['mail']['ActiveProfileID'] = $_profileID;
331
-			Cache::setSession('mail','activeProfileID',$_profileID);
331
+			Cache::setSession('mail', 'activeProfileID', $_profileID);
332 332
 		}
333 333
 		return $_profileID;
334 334
 	}
@@ -343,7 +343,7 @@  discard block
 block discarded – undo
343 343
 	 * @param int $_acc_id = 0
344 344
 	 * @return int validated acc_id -> either acc_id given, or first valid one
345 345
 	 */
346
-	public static function validateProfileID($_acc_id=0)
346
+	public static function validateProfileID($_acc_id = 0)
347 347
 	{
348 348
 		if ($_acc_id)
349 349
 		{
@@ -362,7 +362,7 @@  discard block
 block discarded – undo
362 362
 		}
363 363
 		// no account specified or specified account not found or not valid
364 364
 		// --> search existing account for first valid one and return that
365
-		foreach(Mail\Account::search($only_current_user=true, 'acc_imap_host') as $acc_id => $imap_host)
365
+		foreach (Mail\Account::search($only_current_user = true, 'acc_imap_host') as $acc_id => $imap_host)
366 366
 		{
367 367
 			if (!empty($imap_host) && ($account = Mail\Account::read($acc_id)) && $account->is_imap())
368 368
 			{
@@ -384,7 +384,7 @@  discard block
 block discarded – undo
384 384
 	 * @param boolean $_oldImapServerObject = false
385 385
 	 * @param boolean $_reuseCache = null if null it is set to the value of $_restoreSession
386 386
 	 */
387
-	private function __construct($_displayCharset='utf-8',$_restoreSession=true, $_profileID=0, $_oldImapServerObject=false, $_reuseCache=null)
387
+	private function __construct($_displayCharset = 'utf-8', $_restoreSession = true, $_profileID = 0, $_oldImapServerObject = false, $_reuseCache = null)
388 388
 	{
389 389
 		if (is_null($_reuseCache)) $_reuseCache = $_restoreSession;
390 390
 		if (!empty($_displayCharset)) self::$displayCharset = $_displayCharset;
@@ -404,7 +404,7 @@  discard block
 block discarded – undo
404 404
 			$firstMessage = $this->sessionData['previewMessage'];
405 405
 			$this->sessionData = array();
406 406
 		}
407
-		if (!$_reuseCache) $this->forcePrefReload($_profileID,!$_reuseCache);
407
+		if (!$_reuseCache) $this->forcePrefReload($_profileID, !$_reuseCache);
408 408
 		try
409 409
 		{
410 410
 			$this->profileID = self::validateProfileID($_profileID);
@@ -418,11 +418,11 @@  discard block
 block discarded – undo
418 418
 			throw new Exception(__METHOD__." failed to instanciate Mail for $_profileID / ".$this->profileID." with error:".$e->getMessage());
419 419
 		}
420 420
 		//error_log(__METHOD__.' ('.__LINE__.') '.array2string($acc->imapServer()));
421
-		$this->icServer = ($_oldImapServerObject?$acc->oldImapServer():$acc->imapServer());
421
+		$this->icServer = ($_oldImapServerObject ? $acc->oldImapServer() : $acc->imapServer());
422 422
 		$this->ogServer = $acc->smtpServer();
423 423
 		// TODO: merge mailprefs into userprefs, for easy treatment
424 424
 		$this->mailPreferences = $GLOBALS['egw_info']['user']['preferences']['mail'];
425
-		$this->htmlOptions  = $this->mailPreferences['htmlOptions'];
425
+		$this->htmlOptions = $this->mailPreferences['htmlOptions'];
426 426
 		if (isset($this->icServer->ImapServerId) && !empty($this->icServer->ImapServerId))
427 427
 		{
428 428
 			$_profileID = $this->profileID = $GLOBALS['egw_info']['user']['preferences']['mail']['ActiveProfileID'] = $this->icServer->ImapServerId;
@@ -440,7 +440,7 @@  discard block
 block discarded – undo
440 440
 	public static function &forceEAProfileLoad($_profile_id)
441 441
 	{
442 442
 		self::unsetCachedObjects($_profile_id);
443
-		$mail = self::getInstance(false, $_profile_id,false);
443
+		$mail = self::getInstance(false, $_profile_id, false);
444 444
 		//_debug_array( $_profile_id);
445 445
 		$mail->icServer = Mail\Account::read($_profile_id)->imapServer();
446 446
 		$mail->ogServer = Mail\Account::read($_profile_id)->smtpServer();
@@ -452,11 +452,11 @@  discard block
 block discarded – undo
452 452
 	 * @param int $_profile_id
453 453
 	 * @param boolean $_resetFolderObjects
454 454
 	 */
455
-	public static function forcePrefReload($_profile_id=null,$_resetFolderObjects=true)
455
+	public static function forcePrefReload($_profile_id = null, $_resetFolderObjects = true)
456 456
 	{
457 457
 		// unset the mail_preferences session object, to force the reload/rebuild
458
-		Cache::setSession('mail','mail_preferences',serialize(array()));
459
-		Cache::setSession('emailadmin','session_data',serialize(array()));
458
+		Cache::setSession('mail', 'mail_preferences', serialize(array()));
459
+		Cache::setSession('emailadmin', 'session_data', serialize(array()));
460 460
 		if ($_resetFolderObjects) self::resetFolderObjectCache($_profile_id);
461 461
 	}
462 462
 
@@ -465,8 +465,8 @@  discard block
 block discarded – undo
465 465
 	 */
466 466
 	function restoreSessionData()
467 467
 	{
468
-		$this->sessionData = array();//Cache::getCache(Cache::SESSION,'mail','session_data',$callback=null,$callback_params=array(),$expiration=60*60*1);
469
-		self::$activeFolderCache = Cache::getCache(Cache::INSTANCE,'email','activeMailbox'.trim($GLOBALS['egw_info']['user']['account_id']),null,array(),60*60*10);
468
+		$this->sessionData = array(); //Cache::getCache(Cache::SESSION,'mail','session_data',$callback=null,$callback_params=array(),$expiration=60*60*1);
469
+		self::$activeFolderCache = Cache::getCache(Cache::INSTANCE, 'email', 'activeMailbox'.trim($GLOBALS['egw_info']['user']['account_id']), null, array(), 60 * 60 * 10);
470 470
 		if (!empty(self::$activeFolderCache[$this->profileID])) $this->sessionData['mailbox'] = self::$activeFolderCache[$this->profileID];
471 471
 	}
472 472
 
@@ -476,10 +476,10 @@  discard block
 block discarded – undo
476 476
 	function saveSessionData()
477 477
 	{
478 478
 		//error_log(__METHOD__.' ('.__LINE__.') '.array2string(array_keys($this->sessionData)));
479
-		if (!empty($this->sessionData['mailbox'])) self::$activeFolderCache[$this->profileID]=$this->sessionData['mailbox'];
479
+		if (!empty($this->sessionData['mailbox'])) self::$activeFolderCache[$this->profileID] = $this->sessionData['mailbox'];
480 480
 		if (isset(self::$activeFolderCache) && is_array(self::$activeFolderCache))
481 481
 		{
482
-			Cache::setCache(Cache::INSTANCE,'email','activeMailbox'.trim($GLOBALS['egw_info']['user']['account_id']),self::$activeFolderCache, 60*60*10);
482
+			Cache::setCache(Cache::INSTANCE, 'email', 'activeMailbox'.trim($GLOBALS['egw_info']['user']['account_id']), self::$activeFolderCache, 60 * 60 * 10);
483 483
 		}
484 484
 	}
485 485
 
@@ -495,40 +495,40 @@  discard block
 block discarded – undo
495 495
 	 * @param int $_profileID = null default profile of user as returned by getUserDefaultProfileID
496 496
 	 * @return void
497 497
 	 */
498
-	static function unsetCachedObjects($_profileID=null)
498
+	static function unsetCachedObjects($_profileID = null)
499 499
 	{
500 500
 		if (is_null($_profileID)) $_profileID = Mail\Account::get_default_acc_id();
501 501
 		if (is_array($_profileID) && $_profileID['account_id']) $account_id = $_profileID['account_id'];
502 502
 		//error_log(__METHOD__.__LINE__.' called with ProfileID:'.array2string($_profileID).' from '.function_backtrace());
503
-		if (!is_array($_profileID) && (is_numeric($_profileID) || !(stripos($_profileID,'tracker_')===false)))
503
+		if (!is_array($_profileID) && (is_numeric($_profileID) || !(stripos($_profileID, 'tracker_') === false)))
504 504
 		{
505 505
 			self::resetConnectionErrorCache($_profileID);
506
-			$rawHeadersCache = Cache::getCache(Cache::INSTANCE,'email','rawHeadersCache'.trim($account_id),$callback=null,$callback_params=array(),$expiration=60*60*1);
506
+			$rawHeadersCache = Cache::getCache(Cache::INSTANCE, 'email', 'rawHeadersCache'.trim($account_id), $callback = null, $callback_params = array(), $expiration = 60 * 60 * 1);
507 507
 			if (isset($rawHeadersCache[$_profileID]))
508 508
 			{
509 509
 				unset($rawHeadersCache[$_profileID]);
510
-				Cache::setCache(Cache::INSTANCE,'email','rawHeadersCache'.trim($account_id),$rawHeadersCache, $expiration=60*60*1);
510
+				Cache::setCache(Cache::INSTANCE, 'email', 'rawHeadersCache'.trim($account_id), $rawHeadersCache, $expiration = 60 * 60 * 1);
511 511
 			}
512
-			$HierarchyDelimiterCache = Cache::getCache(Cache::INSTANCE,'email','HierarchyDelimiter'.trim($account_id),$callback=null,$callback_params=array(),$expiration=60*60*24*5);
512
+			$HierarchyDelimiterCache = Cache::getCache(Cache::INSTANCE, 'email', 'HierarchyDelimiter'.trim($account_id), $callback = null, $callback_params = array(), $expiration = 60 * 60 * 24 * 5);
513 513
 			if (isset($HierarchyDelimiterCache[$_profileID]))
514 514
 			{
515 515
 				unset($HierarchyDelimiterCache[$_profileID]);
516
-				Cache::setCache(Cache::INSTANCE,'email','HierarchyDelimiter'.trim($account_id),$HierarchyDelimiterCache, $expiration=60*60*24*5);
516
+				Cache::setCache(Cache::INSTANCE, 'email', 'HierarchyDelimiter'.trim($account_id), $HierarchyDelimiterCache, $expiration = 60 * 60 * 24 * 5);
517 517
 			}
518 518
 			//reset folderObject cache, to trigger reload
519 519
 			self::resetFolderObjectCache($_profileID);
520 520
 			//reset counter of deleted messages per folder
521
-			$eMailListContainsDeletedMessages = Cache::getCache(Cache::INSTANCE,'email','eMailListContainsDeletedMessages'.trim($account_id),$callback=null,$callback_params=array(),$expiration=60*60*1);
521
+			$eMailListContainsDeletedMessages = Cache::getCache(Cache::INSTANCE, 'email', 'eMailListContainsDeletedMessages'.trim($account_id), $callback = null, $callback_params = array(), $expiration = 60 * 60 * 1);
522 522
 			if (isset($eMailListContainsDeletedMessages[$_profileID]))
523 523
 			{
524 524
 				unset($eMailListContainsDeletedMessages[$_profileID]);
525
-				Cache::setCache(Cache::INSTANCE,'email','eMailListContainsDeletedMessages'.trim($account_id),$eMailListContainsDeletedMessages, $expiration=60*60*1);
525
+				Cache::setCache(Cache::INSTANCE, 'email', 'eMailListContainsDeletedMessages'.trim($account_id), $eMailListContainsDeletedMessages, $expiration = 60 * 60 * 1);
526 526
 			}
527
-			$vacationCached = Cache::getCache(Cache::INSTANCE, 'email', 'vacationNotice'.trim($account_id),$callback=null,$callback_params=array(),$expiration=60*60*24*1);
527
+			$vacationCached = Cache::getCache(Cache::INSTANCE, 'email', 'vacationNotice'.trim($account_id), $callback = null, $callback_params = array(), $expiration = 60 * 60 * 24 * 1);
528 528
 			if (isset($vacationCached[$_profileID]))
529 529
 			{
530 530
 				unset($vacationCached[$_profileID]);
531
-				Cache::setCache(Cache::INSTANCE,'email','vacationNotice'.trim($account_id),$vacationCached, $expiration=60*60*24*1);
531
+				Cache::setCache(Cache::INSTANCE, 'email', 'vacationNotice'.trim($account_id), $vacationCached, $expiration = 60 * 60 * 24 * 1);
532 532
 			}
533 533
 
534 534
 			if (isset(self::$instances[$_profileID])) unset(self::$instances[$_profileID]);
@@ -536,17 +536,17 @@  discard block
 block discarded – undo
536 536
 		if (is_array($_profileID) && $_profileID['location'] == 'clear_cache')
537 537
 		{
538 538
 			// called via hook
539
-			foreach($GLOBALS['egw']->accounts->search(array('type' => 'accounts','order' => 'account_lid')) as $account)
539
+			foreach ($GLOBALS['egw']->accounts->search(array('type' => 'accounts', 'order' => 'account_lid')) as $account)
540 540
 			{
541 541
 				//error_log(__METHOD__.__LINE__.array2string($account));
542 542
 				$account_id = $account['account_id'];
543 543
 				$_profileID = null;
544
-				self::resetConnectionErrorCache($_profileID,$account_id);
545
-				self::resetFolderObjectCache($_profileID,$account_id);
546
-				Cache::setCache(Cache::INSTANCE,'email','rawHeadersCache'.trim($account_id),array(), 60*60*1);
547
-				Cache::setCache(Cache::INSTANCE,'email','HierarchyDelimiter'.trim($account_id),array(), 60*60*24*5);
548
-				Cache::setCache(Cache::INSTANCE,'email','eMailListContainsDeletedMessages'.trim($account_id),array(), 60*60*1);
549
-				Cache::setCache(Cache::INSTANCE,'email','vacationNotice'.trim($account_id),array(), 60*60*24*1);
544
+				self::resetConnectionErrorCache($_profileID, $account_id);
545
+				self::resetFolderObjectCache($_profileID, $account_id);
546
+				Cache::setCache(Cache::INSTANCE, 'email', 'rawHeadersCache'.trim($account_id), array(), 60 * 60 * 1);
547
+				Cache::setCache(Cache::INSTANCE, 'email', 'HierarchyDelimiter'.trim($account_id), array(), 60 * 60 * 24 * 5);
548
+				Cache::setCache(Cache::INSTANCE, 'email', 'eMailListContainsDeletedMessages'.trim($account_id), array(), 60 * 60 * 1);
549
+				Cache::setCache(Cache::INSTANCE, 'email', 'vacationNotice'.trim($account_id), array(), 60 * 60 * 24 * 1);
550 550
 			}
551 551
 		}
552 552
 	}
@@ -557,7 +557,7 @@  discard block
 block discarded – undo
557 557
 	 * @param int $_ImapServerId the profileID to look for
558 558
 	 * @param int $account_id the egw account to look for
559 559
 	 */
560
-	static function resetConnectionErrorCache($_ImapServerId=null,$account_id=null)
560
+	static function resetConnectionErrorCache($_ImapServerId = null, $account_id = null)
561 561
 	{
562 562
 		//error_log(__METHOD__.' ('.__LINE__.') '.' for Profile:'.array2string($_ImapServerId) .' for user:'.trim($account_id));
563 563
 		if (is_null($account_id)) $account_id = $GLOBALS['egw_info']['user']['account_id'];
@@ -575,19 +575,19 @@  discard block
 block discarded – undo
575 575
 		}
576 576
 		else
577 577
 		{
578
-			$isConError = Cache::getCache(Cache::INSTANCE,'email','icServerSIEVE_connectionError'.trim($account_id));
578
+			$isConError = Cache::getCache(Cache::INSTANCE, 'email', 'icServerSIEVE_connectionError'.trim($account_id));
579 579
 			if (isset($isConError[$_ImapServerId]))
580 580
 			{
581 581
 				unset($isConError[$_ImapServerId]);
582 582
 			}
583
-			$waitOnFailure = Cache::getCache(Cache::INSTANCE,'email','ActiveSyncWaitOnFailure'.trim($account_id),null,array(),60*60*2);
583
+			$waitOnFailure = Cache::getCache(Cache::INSTANCE, 'email', 'ActiveSyncWaitOnFailure'.trim($account_id), null, array(), 60 * 60 * 2);
584 584
 			if (isset($waitOnFailure[$_ImapServerId]))
585 585
 			{
586 586
 				unset($waitOnFailure[$_ImapServerId]);
587 587
 			}
588 588
 		}
589
-		Cache::setCache(Cache::INSTANCE,'email','icServerSIEVE_connectionError'.trim($account_id),$isConError,60*15);
590
-		Cache::setCache(Cache::INSTANCE,'email','ActiveSyncWaitOnFailure'.trim($account_id),$waitOnFailure,60*60*2);
589
+		Cache::setCache(Cache::INSTANCE, 'email', 'icServerSIEVE_connectionError'.trim($account_id), $isConError, 60 * 15);
590
+		Cache::setCache(Cache::INSTANCE, 'email', 'ActiveSyncWaitOnFailure'.trim($account_id), $waitOnFailure, 60 * 60 * 2);
591 591
 	}
592 592
 
593 593
 	/**
@@ -596,13 +596,13 @@  discard block
 block discarded – undo
596 596
 	 * @param int $_ImapServerId the profileID to look for
597 597
 	 * @param int $account_id the egw account to look for
598 598
 	 */
599
-	static function resetFolderObjectCache($_ImapServerId=null,$account_id=null)
599
+	static function resetFolderObjectCache($_ImapServerId = null, $account_id = null)
600 600
 	{
601 601
 		//error_log(__METHOD__.' ('.__LINE__.') '.' called for Profile:'.array2string($_ImapServerId).'->'.function_backtrace());
602 602
 		if (is_null($account_id)) $account_id = $GLOBALS['egw_info']['user']['account_id'];
603 603
 		// on [location] => verify_settings we coud either use [prefs] => Array([ActiveProfileID] => 9, .. as $_ImapServerId
604 604
 		// or treat it as not given. we try that path
605
-		if (is_null($_ImapServerId)||is_array($_ImapServerId))
605
+		if (is_null($_ImapServerId) || is_array($_ImapServerId))
606 606
 		{
607 607
 			$folders2return = array();
608 608
 			$folderInfo = array();
@@ -611,12 +611,12 @@  discard block
 block discarded – undo
611 611
 		}
612 612
 		else
613 613
 		{
614
-			$folders2return = Cache::getCache(Cache::INSTANCE,'email','folderObjects'.trim($account_id),null,array(),60*60*1);
614
+			$folders2return = Cache::getCache(Cache::INSTANCE, 'email', 'folderObjects'.trim($account_id), null, array(), 60 * 60 * 1);
615 615
 			if (!empty($folders2return) && isset($folders2return[$_ImapServerId]))
616 616
 			{
617 617
 				unset($folders2return[$_ImapServerId]);
618 618
 			}
619
-			$folderInfo = Cache::getCache(Cache::INSTANCE,'email','icServerFolderExistsInfo'.trim($account_id),null,array(),60*60*5);
619
+			$folderInfo = Cache::getCache(Cache::INSTANCE, 'email', 'icServerFolderExistsInfo'.trim($account_id), null, array(), 60 * 60 * 5);
620 620
 			if (!empty($folderInfo) && isset($folderInfo[$_ImapServerId]))
621 621
 			{
622 622
 				unset($folderInfo[$_ImapServerId]);
@@ -628,23 +628,23 @@  discard block
 block discarded – undo
628 628
 				unset($lastFolderUsedForMove[$_ImapServerId]);
629 629
 			}
630 630
 			*/
631
-			$folderBasicInfo = Cache::getCache(Cache::INSTANCE,'email','folderBasicInfo'.trim($account_id),null,array(),60*60*1);
631
+			$folderBasicInfo = Cache::getCache(Cache::INSTANCE, 'email', 'folderBasicInfo'.trim($account_id), null, array(), 60 * 60 * 1);
632 632
 			if (!empty($folderBasicInfo) && isset($folderBasicInfo[$_ImapServerId]))
633 633
 			{
634 634
 				unset($folderBasicInfo[$_ImapServerId]);
635 635
 			}
636
-			$_specialUseFolders = Cache::getCache(Cache::INSTANCE,'email','specialUseFolders'.trim($account_id),null,array(),60*60*12);
636
+			$_specialUseFolders = Cache::getCache(Cache::INSTANCE, 'email', 'specialUseFolders'.trim($account_id), null, array(), 60 * 60 * 12);
637 637
 			if (!empty($_specialUseFolders) && isset($_specialUseFolders[$_ImapServerId]))
638 638
 			{
639 639
 				unset($_specialUseFolders[$_ImapServerId]);
640
-				self::$specialUseFolders=null;
640
+				self::$specialUseFolders = null;
641 641
 			}
642 642
 		}
643
-		Cache::setCache(Cache::INSTANCE,'email','folderObjects'.trim($account_id),$folders2return, 60*60*1);
644
-		Cache::setCache(Cache::INSTANCE,'email','icServerFolderExistsInfo'.trim($account_id),$folderInfo,60*60*5);
643
+		Cache::setCache(Cache::INSTANCE, 'email', 'folderObjects'.trim($account_id), $folders2return, 60 * 60 * 1);
644
+		Cache::setCache(Cache::INSTANCE, 'email', 'icServerFolderExistsInfo'.trim($account_id), $folderInfo, 60 * 60 * 5);
645 645
 		//Cache::setCache(Cache::INSTANCE,'email','lastFolderUsedForMove'.trim($account_id),$lastFolderUsedForMove,$expiration=60*60*1);
646
-		Cache::setCache(Cache::INSTANCE,'email','folderBasicInfo'.trim($account_id),$folderBasicInfo,60*60*1);
647
-		Cache::setCache(Cache::INSTANCE,'email','specialUseFolders'.trim($account_id),$_specialUseFolders,60*60*12);
646
+		Cache::setCache(Cache::INSTANCE, 'email', 'folderBasicInfo'.trim($account_id), $folderBasicInfo, 60 * 60 * 1);
647
+		Cache::setCache(Cache::INSTANCE, 'email', 'specialUseFolders'.trim($account_id), $_specialUseFolders, 60 * 60 * 12);
648 648
 	}
649 649
 
650 650
 	/**
@@ -665,15 +665,15 @@  discard block
 block discarded – undo
665 665
 	 * @param string $_profileID the ID of the mailaccount to check for identities, if null current mail-account is used
666 666
 	 * @return array - array(email=>realname)
667 667
 	 */
668
-	function getUserEMailAddresses($_profileID=null)
668
+	function getUserEMailAddresses($_profileID = null)
669 669
 	{
670
-		$acc = Mail\Account::read((!empty($_profileID)?$_profileID:$this->profileID));
670
+		$acc = Mail\Account::read((!empty($_profileID) ? $_profileID : $this->profileID));
671 671
 		//error_log(__METHOD__.' ('.__LINE__.') '.':'.array2string($acc));
672 672
 		$identities = Mail\Account::identities($acc);
673 673
 
674 674
 		$userEMailAdresses = array($acc['ident_email']=>$acc['ident_realname']);
675 675
 
676
-		foreach($identities as $ik => $ident) {
676
+		foreach ($identities as $ik => $ident) {
677 677
 			//error_log(__METHOD__.' ('.__LINE__.') '.':'.$ik.'->'.array2string($ident));
678 678
 			$identity = Mail\Account::read_identity($ik);
679 679
 			if (!empty($identity['ident_email']) && !isset($userEMailAdresses[$identity['ident_email']])) $userEMailAdresses[$identity['ident_email']] = $identity['ident_realname'];
@@ -688,19 +688,19 @@  discard block
 block discarded – undo
688 688
 	 * @param boolean $resolve_placeholders wether or not resolve possible placeholders in identities
689 689
 	 * @return array - array(email=>realname)
690 690
 	 */
691
-	static function getAllIdentities($_accountToSearch=null,$resolve_placeholders=false)
691
+	static function getAllIdentities($_accountToSearch = null, $resolve_placeholders = false)
692 692
 	{
693 693
 		$userEMailAdresses = array();
694
-		foreach(Mail\Account::search($only_current_user=($_accountToSearch?$_accountToSearch:true), $just_name=true) as $acc_id => $identity_name)
694
+		foreach (Mail\Account::search($only_current_user = ($_accountToSearch ? $_accountToSearch : true), $just_name = true) as $acc_id => $identity_name)
695 695
 		{
696
-			$acc = Mail\Account::read($acc_id,($_accountToSearch?$_accountToSearch:null));
697
-			if (!$resolve_placeholders) $userEMailAdresses[$acc['ident_id']] = array('acc_id'=>$acc_id,'ident_id'=>$acc['ident_id'],'ident_email'=>$acc['ident_email'],'ident_org'=>$acc['ident_org'],'ident_realname'=>$acc['ident_realname'],'ident_signature'=>$acc['ident_signature'],'ident_name'=>$acc['ident_name']);
696
+			$acc = Mail\Account::read($acc_id, ($_accountToSearch ? $_accountToSearch : null));
697
+			if (!$resolve_placeholders) $userEMailAdresses[$acc['ident_id']] = array('acc_id'=>$acc_id, 'ident_id'=>$acc['ident_id'], 'ident_email'=>$acc['ident_email'], 'ident_org'=>$acc['ident_org'], 'ident_realname'=>$acc['ident_realname'], 'ident_signature'=>$acc['ident_signature'], 'ident_name'=>$acc['ident_name']);
698 698
 
699
-			foreach(Mail\Account::identities($acc) as $ik => $ident) {
699
+			foreach (Mail\Account::identities($acc) as $ik => $ident) {
700 700
 				//error_log(__METHOD__.' ('.__LINE__.') '.':'.$ik.'->'.array2string($ident));
701
-				$identity = Mail\Account::read_identity($ik,$resolve_placeholders);
701
+				$identity = Mail\Account::read_identity($ik, $resolve_placeholders);
702 702
 				//error_log(__METHOD__.' ('.__LINE__.') '.':'.$ik.'->'.array2string($identity));
703
-				if (!isset($userEMailAdresses[$identity['ident_id']])) $userEMailAdresses[$identity['ident_id']] = array('acc_id'=>$acc_id,'ident_id'=>$identity['ident_id'],'ident_email'=>$identity['ident_email'],'ident_org'=>$identity['ident_org'],'ident_realname'=>$identity['ident_realname'],'ident_signature'=>$identity['ident_signature'],'ident_name'=>$identity['ident_name']);
703
+				if (!isset($userEMailAdresses[$identity['ident_id']])) $userEMailAdresses[$identity['ident_id']] = array('acc_id'=>$acc_id, 'ident_id'=>$identity['ident_id'], 'ident_email'=>$identity['ident_email'], 'ident_org'=>$identity['ident_org'], 'ident_realname'=>$identity['ident_realname'], 'ident_signature'=>$identity['ident_signature'], 'ident_name'=>$identity['ident_name']);
704 704
 			}
705 705
 		}
706 706
 		//error_log(__METHOD__.' ('.__LINE__.') '.array2string($userEMailAdresses));
@@ -720,9 +720,9 @@  discard block
 block discarded – undo
720 720
 			$account = Mail\Account::read($account);
721 721
 		}
722 722
 		$userEMailAdresses = array();
723
-		foreach(Mail\Account::identities($account, true, 'params') as $ik => $ident) {
723
+		foreach (Mail\Account::identities($account, true, 'params') as $ik => $ident) {
724 724
 			//error_log(__METHOD__.' ('.__LINE__.') '.':'.$ik.'->'.array2string($ident));
725
-			$identity = Mail\Account::read_identity($ik,true,null,$account);
725
+			$identity = Mail\Account::read_identity($ik, true, null, $account);
726 726
 			//error_log(__METHOD__.' ('.__LINE__.') '.':'.$ik.'->'.array2string($identity));
727 727
 			// standardIdentity has ident_id==acc_id (as it is done within account->identities)
728 728
 			if (empty($identity['ident_id'])) $identity['ident_id'] = $identity['acc_id'];
@@ -749,9 +749,9 @@  discard block
 block discarded – undo
749 749
 	function getDefaultIdentity()
750 750
 	{
751 751
 		// retrieve the signature accociated with the identity
752
-		$id = $this->getIdentitiesWithAccounts($_accountData=array());
753
-		foreach(Mail\Account::identities($_accountData[$this->profileID] ?
754
-			$this->profileID : $_accountData[$id],false,'ident_id') as $accountData)
752
+		$id = $this->getIdentitiesWithAccounts($_accountData = array());
753
+		foreach (Mail\Account::identities($_accountData[$this->profileID] ?
754
+			$this->profileID : $_accountData[$id], false, 'ident_id') as $accountData)
755 755
 		{
756 756
 			return $accountData;
757 757
 		}
@@ -767,13 +767,13 @@  discard block
 block discarded – undo
767 767
 	{
768 768
 		// account select box
769 769
 		$selectedID = $this->profileID;
770
-		$allAccountData = Mail\Account::search($only_current_user=true, false, null);
770
+		$allAccountData = Mail\Account::search($only_current_user = true, false, null);
771 771
 		if ($allAccountData) {
772
-			$rememberFirst=$selectedFound=null;
772
+			$rememberFirst = $selectedFound = null;
773 773
 			foreach ($allAccountData as $tmpkey => $icServers)
774 774
 			{
775 775
 				if (is_null($rememberFirst)) $rememberFirst = $tmpkey;
776
-				if ($tmpkey == $selectedID) $selectedFound=true;
776
+				if ($tmpkey == $selectedID) $selectedFound = true;
777 777
 				//error_log(__METHOD__.' ('.__LINE__.') '.' Key:'.$tmpkey.'->'.array2string($icServers->acc_imap_host));
778 778
 				$host = $icServers->acc_imap_host;
779 779
 				if (empty($host)) continue;
@@ -781,7 +781,7 @@  discard block
 block discarded – undo
781 781
 				//error_log(__METHOD__.' ('.__LINE__.') '.' Key:'.$tmpkey.'->'.array2string($identities[$icServers->acc_id]));
782 782
 			}
783 783
 		}
784
-		return ($selectedFound?$selectedID:$rememberFirst);
784
+		return ($selectedFound ? $selectedID : $rememberFirst);
785 785
 	}
786 786
 
787 787
 	/**
@@ -791,7 +791,7 @@  discard block
 block discarded – undo
791 791
 	 * @var boolean $fullString full or false=NamePart only is returned
792 792
 	 * @return string - constructed of identity object data as defined in mailConfig
793 793
 	 */
794
-	static function generateIdentityString($identity, $fullString=true)
794
+	static function generateIdentityString($identity, $fullString = true)
795 795
 	{
796 796
 		//error_log(__METHOD__.' ('.__LINE__.') '.array2string($identity));
797 797
 		//if (is_null(self::$mailConfig)) self::$mailConfig = Config::read('mail');
@@ -802,16 +802,16 @@  discard block
 block discarded – undo
802 802
 		{
803 803
 			case 'email';
804 804
 				//$retData = str_replace('@',' ',$identity->emailAddress).($fullString===true?' <'.$identity->emailAddress.'>':'');
805
-				$retData = $identity['ident_email'].($fullString===true?' <'.$identity['ident_email'].'>':'');
805
+				$retData = $identity['ident_email'].($fullString === true ? ' <'.$identity['ident_email'].'>' : '');
806 806
 				break;
807 807
 			case 'nameNemail';
808
-				$retData = (!empty($identity['ident_realname'])?$identity['ident_realname']:substr_replace($identity['ident_email'],'',strpos($identity['ident_email'],'@'))).($fullString===true?' <'.$identity['ident_email'].'>':'');
808
+				$retData = (!empty($identity['ident_realname']) ? $identity['ident_realname'] : substr_replace($identity['ident_email'], '', strpos($identity['ident_email'], '@'))).($fullString === true ? ' <'.$identity['ident_email'].'>' : '');
809 809
 				break;
810 810
 			case 'orgNemail';
811
-				$retData = (!empty($identity['ident_org'])?$identity['ident_org']:substr_replace($identity['ident_email'],'',0,strpos($identity['ident_email'],'@')+1)).($fullString===true?' <'.$identity['ident_email'].'>':'');
811
+				$retData = (!empty($identity['ident_org']) ? $identity['ident_org'] : substr_replace($identity['ident_email'], '', 0, strpos($identity['ident_email'], '@') + 1)).($fullString === true ? ' <'.$identity['ident_email'].'>' : '');
812 812
 				break;
813 813
 			default:
814
-				$retData = $identity['ident_realname'].(!empty($identity['ident_org'])?' '.$identity['ident_org']:'').($fullString===true?' <'.$identity['ident_email'].'>':'');
814
+				$retData = $identity['ident_realname'].(!empty($identity['ident_org']) ? ' '.$identity['ident_org'] : '').($fullString === true ? ' <'.$identity['ident_email'].'>' : '');
815 815
 		}
816 816
 		return $retData;
817 817
 	}
@@ -836,7 +836,7 @@  discard block
 block discarded – undo
836 836
 	 */
837 837
 	function reopen($_foldername)
838 838
 	{
839
-		if (self::$debugTimes) $starttime = microtime (true);
839
+		if (self::$debugTimes) $starttime = microtime(true);
840 840
 
841 841
 		//error_log(__METHOD__.' ('.__LINE__.') '."('$_foldername') ".function_backtrace());
842 842
 		// TODO: trying to reduce traffic to the IMAP Server here, introduces problems with fetching the bodies of
@@ -851,7 +851,7 @@  discard block
 block discarded – undo
851 851
 			}
852 852
 			$folderOpened = $_foldername;
853 853
 		//}
854
-		if (self::$debugTimes) self::logRunTimes($starttime,null,'Folder:'.$_foldername,__METHOD__.' ('.__LINE__.') ');
854
+		if (self::$debugTimes) self::logRunTimes($starttime, null, 'Folder:'.$_foldername, __METHOD__.' ('.__LINE__.') ');
855 855
 	}
856 856
 
857 857
 
@@ -862,15 +862,15 @@  discard block
 block discarded – undo
862 862
 	 * @throws Horde_Imap_Client_Exception on connection error or authentication failure
863 863
 	 * @throws InvalidArgumentException on missing credentials
864 864
 	 */
865
-	function openConnection($_icServerID=0)
865
+	function openConnection($_icServerID = 0)
866 866
 	{
867 867
 		//error_log( "-------------------------->open connection ".function_backtrace());
868 868
 		//error_log(__METHOD__.' ('.__LINE__.') '.' ->'.array2string($this->icServer));
869
-		if (self::$debugTimes) $starttime = microtime (true);
870
-		$mailbox=null;
869
+		if (self::$debugTimes) $starttime = microtime(true);
870
+		$mailbox = null;
871 871
 		try
872 872
 		{
873
-			if(isset($this->sessionData['mailbox'])&&$this->folderExists($this->sessionData['mailbox'])) $mailbox = $this->sessionData['mailbox'];
873
+			if (isset($this->sessionData['mailbox']) && $this->folderExists($this->sessionData['mailbox'])) $mailbox = $this->sessionData['mailbox'];
874 874
 			if (empty($mailbox)) $mailbox = $this->icServer->getCurrentMailbox();
875 875
 /*
876 876
 			if (isset(Mail\Imap::$supports_keywords[$_icServerID]))
@@ -897,7 +897,7 @@  discard block
 block discarded – undo
897 897
 			error_log(__METHOD__.' ('.__LINE__.') '."->open connection for Server with profileID:".$_icServerID." trying to examine ($mailbox) failed!".$e->getMessage());
898 898
 			throw new Exception(__METHOD__." failed to ".__METHOD__." on Profile to $_icServerID while trying to examine $mailbox:".$e->getMessage());
899 899
 		}
900
-		if (self::$debugTimes) self::logRunTimes($starttime,null,'ProfileID:'.$_icServerID,__METHOD__.' ('.__LINE__.') ');
900
+		if (self::$debugTimes) self::logRunTimes($starttime, null, 'ProfileID:'.$_icServerID, __METHOD__.' ('.__LINE__.') ');
901 901
 	}
902 902
 
903 903
 	/**
@@ -918,7 +918,7 @@  discard block
 block discarded – undo
918 918
 		try
919 919
 		{
920 920
 			$this->icServer->getCurrentMailbox();
921
-			if(!$this->icServer->hasCapability('QUOTA')) {
921
+			if (!$this->icServer->hasCapability('QUOTA')) {
922 922
 				$quota = false;
923 923
 				return false;
924 924
 			}
@@ -928,15 +928,15 @@  discard block
 block discarded – undo
928 928
 		{
929 929
 			//error_log(__METHOD__.array2string($e));
930 930
 			//error_log(__METHOD__." failed to fetch quota on ".$this->profileID.' Reason:'.$e->getMessage().($e->details?', '.$e->details:'')/*.function_backtrace()*/);
931
-			if ($e->getCode()==102)
931
+			if ($e->getCode() == 102)
932 932
 			{
933
-				self::$profileDefunct[$this->profileID]=$e->getMessage().($e->details?', '.$e->details:'');
934
-				Cache::setCache(Cache::INSTANCE,'email','profileDefunct'.trim($GLOBALS['egw_info']['user']['account_id']),self::$profileDefunct, $expiration=5*1);
935
-				throw new Exception(__METHOD__." failed to fetch quota on ".$this->profileID.' Reason:'.$e->getMessage().($e->details?', '.$e->details:''));
933
+				self::$profileDefunct[$this->profileID] = $e->getMessage().($e->details ? ', '.$e->details : '');
934
+				Cache::setCache(Cache::INSTANCE, 'email', 'profileDefunct'.trim($GLOBALS['egw_info']['user']['account_id']), self::$profileDefunct, $expiration = 5 * 1);
935
+				throw new Exception(__METHOD__." failed to fetch quota on ".$this->profileID.' Reason:'.$e->getMessage().($e->details ? ', '.$e->details : ''));
936 936
 			}
937 937
 		}
938 938
 		//error_log(__METHOD__.' ('.__LINE__.') '.array2string($quota));
939
-		if(is_array($quota)) {
939
+		if (is_array($quota)) {
940 940
 			$quota = array(
941 941
 				'usage'	=> $quota['USED'],
942 942
 				'limit'	=> $quota['QMAX'],
@@ -954,10 +954,10 @@  discard block
 block discarded – undo
954 954
 	 *
955 955
 	 * @return int - timeout (either set or default 20/10)
956 956
 	 */
957
-	static function getTimeOut($_use='IMAP')
957
+	static function getTimeOut($_use = 'IMAP')
958 958
 	{
959 959
 		$timeout = $GLOBALS['egw_info']['user']['preferences']['mail']['connectionTimeout'];
960
-		if (empty($timeout)) $timeout = ($_use=='SIEVE'?10:20); // this is the default value
960
+		if (empty($timeout)) $timeout = ($_use == 'SIEVE' ? 10 : 20); // this is the default value
961 961
 		return $timeout;
962 962
 	}
963 963
 
@@ -978,18 +978,18 @@  discard block
 block discarded – undo
978 978
 		if (is_null($nameSpace)) $nameSpace = $this->icServer->getNameSpaceArray();
979 979
 		//error_log(__METHOD__.' ('.__LINE__.') '.array2string($nameSpace));
980 980
 		if (is_array($nameSpace)) {
981
-			foreach($nameSpace as $type => $singleNameSpaceArray)
981
+			foreach ($nameSpace as $type => $singleNameSpaceArray)
982 982
 			{
983 983
 				foreach ($singleNameSpaceArray as $singleNameSpace)
984 984
 				{
985 985
 					$_foldersNameSpace = array();
986
-					if($type == 'personal' && $singleNameSpace['name'] == '#mh/' && ($this->folderExists('Mail')||$this->folderExists('INBOX')))
986
+					if ($type == 'personal' && $singleNameSpace['name'] == '#mh/' && ($this->folderExists('Mail') || $this->folderExists('INBOX')))
987 987
 					{
988 988
 						$_foldersNameSpace['prefix_present'] = 'forced';
989 989
 						// uw-imap server with mailbox prefix or dovecot maybe
990
-						$_foldersNameSpace['prefix'] = ($this->folderExists('Mail')?'Mail':(!empty($singleNameSpace['name'])?$singleNameSpace['name']:''));
990
+						$_foldersNameSpace['prefix'] = ($this->folderExists('Mail') ? 'Mail' : (!empty($singleNameSpace['name']) ? $singleNameSpace['name'] : ''));
991 991
 					}
992
-					elseif($type == 'personal' && ($singleNameSpace['name'] == '#mh/') && $this->folderExists('mail'))
992
+					elseif ($type == 'personal' && ($singleNameSpace['name'] == '#mh/') && $this->folderExists('mail'))
993 993
 					{
994 994
 						$_foldersNameSpace['prefix_present'] = 'forced';
995 995
 						// uw-imap server with mailbox prefix or dovecot maybe
@@ -998,9 +998,9 @@  discard block
 block discarded – undo
998 998
 						$_foldersNameSpace['prefix_present'] = !empty($singleNameSpace['name']);
999 999
 						$_foldersNameSpace['prefix'] = $singleNameSpace['name'];
1000 1000
 					}
1001
-					$_foldersNameSpace['delimiter'] = ($singleNameSpace['delimiter']?$singleNameSpace['delimiter']:$delimiter);
1001
+					$_foldersNameSpace['delimiter'] = ($singleNameSpace['delimiter'] ? $singleNameSpace['delimiter'] : $delimiter);
1002 1002
 					$_foldersNameSpace['type'] = $type;
1003
-					$foldersNameSpace[] =$_foldersNameSpace;
1003
+					$foldersNameSpace[] = $_foldersNameSpace;
1004 1004
 				}
1005 1005
 				//echo "############## $type->".print_r($foldersNameSpace[$type],true)." ###################<br>";
1006 1006
 			}
@@ -1018,10 +1018,10 @@  discard block
 block discarded – undo
1018 1018
 	 */
1019 1019
 	function getFolderPrefixFromNamespace($nameSpace, $folderName)
1020 1020
 	{
1021
-		foreach($nameSpace as &$singleNameSpace)
1021
+		foreach ($nameSpace as &$singleNameSpace)
1022 1022
 		{
1023 1023
 			//if (substr($singleNameSpace['prefix'],0,strlen($folderName))==$folderName) return $singleNameSpace['prefix'];
1024
-			if (substr($folderName,0,strlen($singleNameSpace['prefix']))==$singleNameSpace['prefix']) return $singleNameSpace['prefix'];
1024
+			if (substr($folderName, 0, strlen($singleNameSpace['prefix'])) == $singleNameSpace['prefix']) return $singleNameSpace['prefix'];
1025 1025
 		}
1026 1026
 		return "";
1027 1027
 	}
@@ -1032,12 +1032,12 @@  discard block
 block discarded – undo
1032 1032
 	 * @var boolean $_useCache
1033 1033
 	 * @return string the hierarchyDelimiter
1034 1034
 	 */
1035
-	function getHierarchyDelimiter($_useCache=true)
1035
+	function getHierarchyDelimiter($_useCache = true)
1036 1036
 	{
1037 1037
 		static $HierarchyDelimiter = null;
1038
-		if (is_null($HierarchyDelimiter)) $HierarchyDelimiter = Cache::getCache(Cache::INSTANCE,'email','HierarchyDelimiter'.trim($GLOBALS['egw_info']['user']['account_id']),null,array(),60*60*24*5);
1039
-		if ($_useCache===false) unset($HierarchyDelimiter[$this->icServer->ImapServerId]);
1040
-		if (isset($HierarchyDelimiter[$this->icServer->ImapServerId])&&!empty($HierarchyDelimiter[$this->icServer->ImapServerId]))
1038
+		if (is_null($HierarchyDelimiter)) $HierarchyDelimiter = Cache::getCache(Cache::INSTANCE, 'email', 'HierarchyDelimiter'.trim($GLOBALS['egw_info']['user']['account_id']), null, array(), 60 * 60 * 24 * 5);
1039
+		if ($_useCache === false) unset($HierarchyDelimiter[$this->icServer->ImapServerId]);
1040
+		if (isset($HierarchyDelimiter[$this->icServer->ImapServerId]) && !empty($HierarchyDelimiter[$this->icServer->ImapServerId]))
1041 1041
 		{
1042 1042
 			return $HierarchyDelimiter[$this->icServer->ImapServerId];
1043 1043
 		}
@@ -1047,17 +1047,17 @@  discard block
 block discarded – undo
1047 1047
 			$this->icServer->getCurrentMailbox();
1048 1048
 			$HierarchyDelimiter[$this->icServer->ImapServerId] = $this->icServer->getDelimiter();
1049 1049
 		}
1050
-		catch(\Exception $e)
1050
+		catch (\Exception $e)
1051 1051
 		{
1052
-			if ($e->getCode()==102)
1052
+			if ($e->getCode() == 102)
1053 1053
 			{
1054
-				self::$profileDefunct[$this->profileID]=$e->getMessage().($e->details?', '.$e->details:'');
1055
-				Cache::setCache(Cache::INSTANCE,'email','profileDefunct'.trim($GLOBALS['egw_info']['user']['account_id']),self::$profileDefunct, $expiration=5*1);
1054
+				self::$profileDefunct[$this->profileID] = $e->getMessage().($e->details ? ', '.$e->details : '');
1055
+				Cache::setCache(Cache::INSTANCE, 'email', 'profileDefunct'.trim($GLOBALS['egw_info']['user']['account_id']), self::$profileDefunct, $expiration = 5 * 1);
1056 1056
 			}
1057 1057
 			unset($e);
1058 1058
 			$HierarchyDelimiter[$this->icServer->ImapServerId] = '/';
1059 1059
 		}
1060
-		Cache::setCache(Cache::INSTANCE,'email','HierarchyDelimiter'.trim($GLOBALS['egw_info']['user']['account_id']),$HierarchyDelimiter, 60*60*24*5);
1060
+		Cache::setCache(Cache::INSTANCE, 'email', 'HierarchyDelimiter'.trim($GLOBALS['egw_info']['user']['account_id']), $HierarchyDelimiter, 60 * 60 * 24 * 5);
1061 1061
 		return $HierarchyDelimiter[$this->icServer->ImapServerId];
1062 1062
 	}
1063 1063
 
@@ -1070,7 +1070,7 @@  discard block
 block discarded – undo
1070 1070
 	{
1071 1071
 		//error_log(__METHOD__.' ('.__LINE__.') '.':'.$this->icServer->ImapServerId.' Connected:'.$this->icServer->_connected);
1072 1072
 		static $_specialUseFolders = null;
1073
-		if (is_null($_specialUseFolders)||empty($_specialUseFolders)) $_specialUseFolders = Cache::getCache(Cache::INSTANCE,'email','specialUseFolders'.trim($GLOBALS['egw_info']['user']['account_id']),null,array(),60*60*24*5);
1073
+		if (is_null($_specialUseFolders) || empty($_specialUseFolders)) $_specialUseFolders = Cache::getCache(Cache::INSTANCE, 'email', 'specialUseFolders'.trim($GLOBALS['egw_info']['user']['account_id']), null, array(), 60 * 60 * 24 * 5);
1074 1074
 		//error_log(__METHOD__.' ('.__LINE__.') '.array2string($this->icServer->acc_folder_trash));
1075 1075
 		//error_log(__METHOD__.' ('.__LINE__.') '.array2string($this->icServer->acc_folder_sent));
1076 1076
 		//error_log(__METHOD__.' ('.__LINE__.') '.array2string($this->icServer->acc_folder_draft));
@@ -1078,20 +1078,20 @@  discard block
 block discarded – undo
1078 1078
 		self::$specialUseFolders = $_specialUseFolders[$this->icServer->ImapServerId];
1079 1079
 		if (isset($_specialUseFolders[$this->icServer->ImapServerId]) && !empty($_specialUseFolders[$this->icServer->ImapServerId]))
1080 1080
 			return $_specialUseFolders[$this->icServer->ImapServerId];
1081
-		$_specialUseFolders[$this->icServer->ImapServerId]=array();
1081
+		$_specialUseFolders[$this->icServer->ImapServerId] = array();
1082 1082
 		//if (!empty($this->icServer->acc_folder_trash) && !isset($_specialUseFolders[$this->icServer->ImapServerId][$this->icServer->acc_folder_trash]))
1083
-			$_specialUseFolders[$this->icServer->ImapServerId][$this->icServer->acc_folder_trash]='Trash';
1083
+			$_specialUseFolders[$this->icServer->ImapServerId][$this->icServer->acc_folder_trash] = 'Trash';
1084 1084
 		//if (!empty($this->icServer->acc_folder_draft) && !isset($_specialUseFolders[$this->icServer->ImapServerId][$this->icServer->acc_folder_draft]))
1085
-			$_specialUseFolders[$this->icServer->ImapServerId][$this->icServer->acc_folder_draft]='Drafts';
1085
+			$_specialUseFolders[$this->icServer->ImapServerId][$this->icServer->acc_folder_draft] = 'Drafts';
1086 1086
 		//if (!empty($this->icServer->acc_folder_sent) && !isset($_specialUseFolders[$this->icServer->ImapServerId][$this->icServer->acc_folder_sent]))
1087
-			$_specialUseFolders[$this->icServer->ImapServerId][$this->icServer->acc_folder_sent]='Sent';
1087
+			$_specialUseFolders[$this->icServer->ImapServerId][$this->icServer->acc_folder_sent] = 'Sent';
1088 1088
 		//if (!empty($this->icServer->acc_folder_template) && !isset($_specialUseFolders[$this->icServer->ImapServerId][$this->icServer->acc_folder_template]))
1089
-			$_specialUseFolders[$this->icServer->ImapServerId][$this->icServer->acc_folder_template]='Templates';
1090
-		$_specialUseFolders[$this->icServer->ImapServerId][$this->icServer->acc_folder_junk]='Junk';
1091
-		$_specialUseFolders[$this->icServer->ImapServerId][$this->icServer->acc_folder_archive]='Archive';
1089
+			$_specialUseFolders[$this->icServer->ImapServerId][$this->icServer->acc_folder_template] = 'Templates';
1090
+		$_specialUseFolders[$this->icServer->ImapServerId][$this->icServer->acc_folder_junk] = 'Junk';
1091
+		$_specialUseFolders[$this->icServer->ImapServerId][$this->icServer->acc_folder_archive] = 'Archive';
1092 1092
 		//error_log(__METHOD__.' ('.__LINE__.') '.array2string($_specialUseFolders));//.'<->'.array2string($this->icServer));
1093 1093
 		self::$specialUseFolders = $_specialUseFolders[$this->icServer->ImapServerId];
1094
-		Cache::setCache(Cache::INSTANCE,'email','specialUseFolders'.trim($GLOBALS['egw_info']['user']['account_id']),$_specialUseFolders, 60*60*24*5);
1094
+		Cache::setCache(Cache::INSTANCE, 'email', 'specialUseFolders'.trim($GLOBALS['egw_info']['user']['account_id']), $_specialUseFolders, 60 * 60 * 24 * 5);
1095 1095
 		return $_specialUseFolders[$this->icServer->ImapServerId];
1096 1096
 	}
1097 1097
 
@@ -1105,8 +1105,8 @@  discard block
 block discarded – undo
1105 1105
 	function folderIsSelectable($folderToSelect)
1106 1106
 	{
1107 1107
 		$retval = true;
1108
-		if($folderToSelect && ($folderStatus = $this->getFolderStatus($folderToSelect,false,true))) {
1109
-			if (!empty($folderStatus['attributes']) && stripos(array2string($folderStatus['attributes']),'noselect')!==false)
1108
+		if ($folderToSelect && ($folderStatus = $this->getFolderStatus($folderToSelect, false, true))) {
1109
+			if (!empty($folderStatus['attributes']) && stripos(array2string($folderStatus['attributes']), 'noselect') !== false)
1110 1110
 			{
1111 1111
 				$retval = false;
1112 1112
 			}
@@ -1126,7 +1126,7 @@  discard block
 block discarded – undo
1126 1126
 	 *
1127 1127
 	 * @throws Exception
1128 1128
 	 */
1129
-	function _getStatus($folderName,$ignoreStatusCache=false)
1129
+	function _getStatus($folderName, $ignoreStatusCache = false)
1130 1130
 	{
1131 1131
 		static $folderStatus = null;
1132 1132
 		if (!$ignoreStatusCache && isset($folderStatus[$this->icServer->ImapServerId][$folderName]))
@@ -1136,11 +1136,11 @@  discard block
 block discarded – undo
1136 1136
 		}
1137 1137
 		try
1138 1138
 		{
1139
-			$folderStatus[$this->icServer->ImapServerId][$folderName] = $this->icServer->getStatus($folderName,$ignoreStatusCache);
1139
+			$folderStatus[$this->icServer->ImapServerId][$folderName] = $this->icServer->getStatus($folderName, $ignoreStatusCache);
1140 1140
 		}
1141 1141
 		catch (\Exception $e)
1142 1142
 		{
1143
-			throw new Exception(__METHOD__.' ('.__LINE__.') '." failed for $folderName with error:".$e->getMessage().($e->details?', '.$e->details:''));
1143
+			throw new Exception(__METHOD__.' ('.__LINE__.') '." failed for $folderName with error:".$e->getMessage().($e->details ? ', '.$e->details : ''));
1144 1144
 		}
1145 1145
 		return $folderStatus[$this->icServer->ImapServerId][$folderName];
1146 1146
 	}
@@ -1156,10 +1156,10 @@  discard block
 block discarded – undo
1156 1156
 	 * @param fetchSubscribedInfo bool fetch Subscribed Info on folder
1157 1157
 	 * @return array
1158 1158
 	 */
1159
-	function getFolderStatus($_folderName,$ignoreStatusCache=false,$basicInfoOnly=false,$fetchSubscribedInfo=true)
1159
+	function getFolderStatus($_folderName, $ignoreStatusCache = false, $basicInfoOnly = false, $fetchSubscribedInfo = true)
1160 1160
 	{
1161 1161
 		if (self::$debug) error_log(__METHOD__.' ('.__LINE__.') '." called with:$_folderName,$ignoreStatusCache,$basicInfoOnly");
1162
-		if (!is_string($_folderName) || empty($_folderName)||(isset(self::$profileDefunct[$this->profileID]) && strlen(self::$profileDefunct[$this->profileID])))
1162
+		if (!is_string($_folderName) || empty($_folderName) || (isset(self::$profileDefunct[$this->profileID]) && strlen(self::$profileDefunct[$this->profileID])))
1163 1163
 		{
1164 1164
 			// something is wrong. Do not proceed. either no folder or profile is marked as defunct for this request
1165 1165
 			return false;
@@ -1170,7 +1170,7 @@  discard block
 block discarded – undo
1170 1170
 		{
1171 1171
 			$folderInfoCache = $folderBasicInfo[$this->profileID];
1172 1172
 		}
1173
-		if (isset($folderInfoCache[$_folderName]) && $ignoreStatusCache==false && $basicInfoOnly) return $folderInfoCache[$_folderName];
1173
+		if (isset($folderInfoCache[$_folderName]) && $ignoreStatusCache == false && $basicInfoOnly) return $folderInfoCache[$_folderName];
1174 1174
 		$retValue = array();
1175 1175
 		$retValue['subscribed'] = false;
1176 1176
 /*
@@ -1191,41 +1191,41 @@  discard block
 block discarded – undo
1191 1191
 			{
1192 1192
 				//error_log(__METHOD__.array2string($e));
1193 1193
 				//error_log(__METHOD__." failed to fetch Mailbox $_folderName on ".$this->profileID.' Reason:'.$e->getMessage().($e->details?', '.$e->details:'')/*.function_backtrace()*/);
1194
-				self::$profileDefunct[$this->profileID]=$e->getMessage().($e->details?', '.$e->details:'');
1195
-				Cache::setCache(Cache::INSTANCE,'email','profileDefunct'.trim($GLOBALS['egw_info']['user']['account_id']),self::$profileDefunct, $expiration=5*1);
1196
-				throw new Exception(__METHOD__." failed to fetch Mailbox $_folderName on ".$this->profileID.' Reason:'.$e->getMessage().($e->details?', '.$e->details:''));
1194
+				self::$profileDefunct[$this->profileID] = $e->getMessage().($e->details ? ', '.$e->details : '');
1195
+				Cache::setCache(Cache::INSTANCE, 'email', 'profileDefunct'.trim($GLOBALS['egw_info']['user']['account_id']), self::$profileDefunct, $expiration = 5 * 1);
1196
+				throw new Exception(__METHOD__." failed to fetch Mailbox $_folderName on ".$this->profileID.' Reason:'.$e->getMessage().($e->details ? ', '.$e->details : ''));
1197 1197
 			}
1198 1198
 			//error_log(__METHOD__.' ('.__LINE__.') '.$_folderName.' '.array2string($ret));
1199 1199
 			if (is_array($ret))
1200 1200
 			{
1201 1201
 				$retkeys = array_keys($ret);
1202
-				if ($retkeys[0]==$_folderName) $folderInfoCache[$_folderName] = $ret[$retkeys[0]];
1202
+				if ($retkeys[0] == $_folderName) $folderInfoCache[$_folderName] = $ret[$retkeys[0]];
1203 1203
 			}
1204 1204
 			else
1205 1205
 			{
1206
-				$folderInfoCache[$_folderName]=false;
1206
+				$folderInfoCache[$_folderName] = false;
1207 1207
 			}
1208 1208
 		}
1209 1209
 		$folderInfo = $folderInfoCache[$_folderName];
1210 1210
 		//error_log(__METHOD__.' ('.__LINE__.') '.array2string($folderInfo).'->'.function_backtrace());
1211
-		if($ignoreStatusCache||!$folderInfo|| !is_array($folderInfo)) {
1211
+		if ($ignoreStatusCache || !$folderInfo || !is_array($folderInfo)) {
1212 1212
 			try
1213 1213
 			{
1214
-				$folderInfo = $this->_getStatus($_folderName,$ignoreStatusCache);
1214
+				$folderInfo = $this->_getStatus($_folderName, $ignoreStatusCache);
1215 1215
 			}
1216 1216
 			catch (\Exception $e)
1217 1217
 			{
1218 1218
 				//error_log(__METHOD__.array2string($e));
1219
-				error_log(__METHOD__." failed to fetch status for $_folderName on ".$this->profileID.' Reason:'.$e->getMessage().($e->details?', '.$e->details:'')/*.function_backtrace()*/);
1220
-				self::$profileDefunct[$this->profileID]=$e->getMessage().($e->details?', '.$e->details:'');
1221
-				Cache::setCache(Cache::INSTANCE,'email','profileDefunct'.trim($GLOBALS['egw_info']['user']['account_id']),self::$profileDefunct, $expiration=5*1);
1219
+				error_log(__METHOD__." failed to fetch status for $_folderName on ".$this->profileID.' Reason:'.$e->getMessage().($e->details ? ', '.$e->details : '')/*.function_backtrace()*/);
1220
+				self::$profileDefunct[$this->profileID] = $e->getMessage().($e->details ? ', '.$e->details : '');
1221
+				Cache::setCache(Cache::INSTANCE, 'email', 'profileDefunct'.trim($GLOBALS['egw_info']['user']['account_id']), self::$profileDefunct, $expiration = 5 * 1);
1222 1222
 				//throw new Exception(__METHOD__." failed to fetch status for $_folderName on ".$this->profileID.' Reason:'.$e->getMessage().($e->details?', '.$e->details:''));
1223
-				$folderInfo=null;
1223
+				$folderInfo = null;
1224 1224
 			}
1225 1225
 			if (!is_array($folderInfo))
1226 1226
 			{
1227 1227
 				// no folder info, but there is a status returned for the folder: something is wrong, try to cope with it
1228
-				$folderInfo = is_array($folderInfo)?$folderInfo:array('HIERACHY_DELIMITER'=>$this->getHierarchyDelimiter(),
1228
+				$folderInfo = is_array($folderInfo) ? $folderInfo : array('HIERACHY_DELIMITER'=>$this->getHierarchyDelimiter(),
1229 1229
 					'ATTRIBUTES' => '');
1230 1230
 				if (!isset($folderInfo['HIERACHY_DELIMITER']) || empty($folderInfo['HIERACHY_DELIMITER']) || (isset($folderInfo['delimiter']) && empty($folderInfo['delimiter'])))
1231 1231
 				{
@@ -1237,24 +1237,24 @@  discard block
 block discarded – undo
1237 1237
 		#if(!is_array($folderInfo)) {
1238 1238
 		#	return false;
1239 1239
 		#}
1240
-		$retValue['delimiter']		= (isset($folderInfo['HIERACHY_DELIMITER']) && $folderInfo['HIERACHY_DELIMITER']?$folderInfo['HIERACHY_DELIMITER']:$folderInfo['delimiter']);
1241
-		$retValue['attributes']		= (isset($folderInfo['ATTRIBUTES']) && $folderInfo['ATTRIBUTES']?$folderInfo['ATTRIBUTES']:$folderInfo['attributes']);
1242
-		$shortNameParts			= explode($retValue['delimiter'], $_folderName);
1240
+		$retValue['delimiter']		= (isset($folderInfo['HIERACHY_DELIMITER']) && $folderInfo['HIERACHY_DELIMITER'] ? $folderInfo['HIERACHY_DELIMITER'] : $folderInfo['delimiter']);
1241
+		$retValue['attributes']		= (isset($folderInfo['ATTRIBUTES']) && $folderInfo['ATTRIBUTES'] ? $folderInfo['ATTRIBUTES'] : $folderInfo['attributes']);
1242
+		$shortNameParts = explode($retValue['delimiter'], $_folderName);
1243 1243
 		$retValue['shortName']		= array_pop($shortNameParts);
1244 1244
 		$retValue['displayName']	= $_folderName;
1245
-		$retValue['shortDisplayName']	= $retValue['shortName'];
1246
-		if(strtoupper($retValue['shortName']) == 'INBOX') {
1247
-			$retValue['displayName']	= lang('INBOX');
1248
-			$retValue['shortDisplayName']	= lang('INBOX');
1245
+		$retValue['shortDisplayName'] = $retValue['shortName'];
1246
+		if (strtoupper($retValue['shortName']) == 'INBOX') {
1247
+			$retValue['displayName'] = lang('INBOX');
1248
+			$retValue['shortDisplayName'] = lang('INBOX');
1249 1249
 		}
1250 1250
 		// translate the automatic Folders (Sent, Drafts, ...) like the INBOX
1251
-		elseif (in_array($retValue['shortName'],self::$autoFolders))
1251
+		elseif (in_array($retValue['shortName'], self::$autoFolders))
1252 1252
 		{
1253 1253
 			$retValue['displayName'] = $retValue['shortDisplayName'] = lang($retValue['shortName']);
1254 1254
 		}
1255
-		if ($folderInfo) $folderBasicInfo[$this->profileID][$_folderName]=$retValue;
1255
+		if ($folderInfo) $folderBasicInfo[$this->profileID][$_folderName] = $retValue;
1256 1256
 		//error_log(__METHOD__.' ('.__LINE__.') '.' '.$_folderName.array2string($retValue['attributes']));
1257
-		if ($basicInfoOnly || (isset($retValue['attributes']) && stripos(array2string($retValue['attributes']),'noselect')!==false))
1257
+		if ($basicInfoOnly || (isset($retValue['attributes']) && stripos(array2string($retValue['attributes']), 'noselect') !== false))
1258 1258
 		{
1259 1259
 			return $retValue;
1260 1260
 		}
@@ -1267,12 +1267,12 @@  discard block
 block discarded – undo
1267 1267
 		if (is_null($nameSpace) || empty($nameSpace[$this->profileID])) $nameSpace[$this->profileID] = $this->_getNameSpaces();
1268 1268
 		if (!empty($nameSpace[$this->profileID]))
1269 1269
 		{
1270
-			$nsNoPersonal=array();
1271
-			foreach($nameSpace[$this->profileID] as &$ns)
1270
+			$nsNoPersonal = array();
1271
+			foreach ($nameSpace[$this->profileID] as &$ns)
1272 1272
 			{
1273
-				if ($ns['type']!='personal') $nsNoPersonal[]=$ns;
1273
+				if ($ns['type'] != 'personal') $nsNoPersonal[] = $ns;
1274 1274
 			}
1275
-			$nameSpace[$this->profileID]=$nsNoPersonal;
1275
+			$nameSpace[$this->profileID] = $nsNoPersonal;
1276 1276
 		}
1277 1277
 		if (is_null($prefix) || empty($prefix[$this->profileID]) || empty($prefix[$this->profileID][$_folderName])) $prefix[$this->profileID][$_folderName] = $this->getFolderPrefixFromNamespace($nameSpace[$this->profileID], $_folderName);
1278 1278
 
@@ -1281,34 +1281,34 @@  discard block
 block discarded – undo
1281 1281
 			$subscribedFolders[$this->profileID] = $this->icServer->listSubscribedMailboxes();
1282 1282
 		}
1283 1283
 
1284
-		if($fetchSubscribedInfo && is_array($subscribedFolders[$this->profileID]) && in_array($_folderName,$subscribedFolders[$this->profileID])) {
1284
+		if ($fetchSubscribedInfo && is_array($subscribedFolders[$this->profileID]) && in_array($_folderName, $subscribedFolders[$this->profileID])) {
1285 1285
 			$retValue['subscribed'] = true;
1286 1286
 		}
1287 1287
 
1288 1288
 		try
1289 1289
 		{
1290 1290
 			//$folderStatus = $this->_getStatus($_folderName,$ignoreStatusCache);
1291
-			$folderStatus = $this->getMailBoxCounters($_folderName,false);
1292
-			$retValue['messages']		= $folderStatus['MESSAGES'];
1291
+			$folderStatus = $this->getMailBoxCounters($_folderName, false);
1292
+			$retValue['messages'] = $folderStatus['MESSAGES'];
1293 1293
 			$retValue['recent']		= $folderStatus['RECENT'];
1294
-			$retValue['uidnext']		= $folderStatus['UIDNEXT'];
1295
-			$retValue['uidvalidity']	= $folderStatus['UIDVALIDITY'];
1294
+			$retValue['uidnext'] = $folderStatus['UIDNEXT'];
1295
+			$retValue['uidvalidity'] = $folderStatus['UIDVALIDITY'];
1296 1296
 			$retValue['unseen']		= $folderStatus['UNSEEN'];
1297 1297
 			if (//$retValue['unseen']==0 &&
1298 1298
 				(isset($this->mailPreferences['trustServersUnseenInfo']) && // some servers dont serve the UNSEEN information
1299
-				$this->mailPreferences['trustServersUnseenInfo']==false) ||
1299
+				$this->mailPreferences['trustServersUnseenInfo'] == false) ||
1300 1300
 				(isset($this->mailPreferences['trustServersUnseenInfo']) &&
1301
-				$this->mailPreferences['trustServersUnseenInfo']==2 &&
1302
-				$prefix[$this->profileID][$_folderName] != '' && stripos($_folderName,$prefix[$this->profileID][$_folderName]) !== false)
1301
+				$this->mailPreferences['trustServersUnseenInfo'] == 2 &&
1302
+				$prefix[$this->profileID][$_folderName] != '' && stripos($_folderName, $prefix[$this->profileID][$_folderName]) !== false)
1303 1303
 			)
1304 1304
 			{
1305 1305
 				//error_log(__METHOD__." returned folderStatus for Folder $_folderName:".print_r($prefix,true).' TS:'.$this->mailPreferences['trustServersUnseenInfo']);
1306 1306
 				// we filter for the combined status of unseen and undeleted, as this is what we show in list
1307 1307
 				try
1308 1308
 				{
1309
-					$byUid=true;
1310
-					$_reverse=1;
1311
-					$sortResult = $this->getSortedList($_folderName, $_sort=0, $_reverse, array('status'=>array('UNSEEN','UNDELETED')),$byUid,false);
1309
+					$byUid = true;
1310
+					$_reverse = 1;
1311
+					$sortResult = $this->getSortedList($_folderName, $_sort = 0, $_reverse, array('status'=>array('UNSEEN', 'UNDELETED')), $byUid, false);
1312 1312
 					$retValue['unseen'] = $sortResult['count'];
1313 1313
 				}
1314 1314
 				catch (\Exception $ee)
@@ -1319,7 +1319,7 @@  discard block
 block discarded – undo
1319 1319
 		}
1320 1320
 		catch (\Exception $e)
1321 1321
 		{
1322
-			if (self::$debug) error_log(__METHOD__." returned folderStatus for Folder $_folderName:".print_r($e->getMessage(),true));
1322
+			if (self::$debug) error_log(__METHOD__." returned folderStatus for Folder $_folderName:".print_r($e->getMessage(), true));
1323 1323
 		}
1324 1324
 
1325 1325
 		return $retValue;
@@ -1341,7 +1341,7 @@  discard block
 block discarded – undo
1341 1341
 	 * @param mixed $_fetchPreviews = false (boolean/int) fetch part of the body of the messages requested (if integer the number is assumed to be the number of chars to be returned for preview; if set to true 300 chars are returned (when available))
1342 1342
 	 * @return array result as array(header=>array,total=>int,first=>int,last=>int)
1343 1343
 	 */
1344
-	function getHeaders($_folderName, $_startMessage, $_numberOfMessages, $_sort, $_reverse, $_filter, $_thisUIDOnly=null, $_cacheResult=true, $_fetchPreviews=false)
1344
+	function getHeaders($_folderName, $_startMessage, $_numberOfMessages, $_sort, $_reverse, $_filter, $_thisUIDOnly = null, $_cacheResult = true, $_fetchPreviews = false)
1345 1345
 	{
1346 1346
 		//self::$debug=true;
1347 1347
 		if (self::$debug) error_log(__METHOD__.' ('.__LINE__.') '.function_backtrace());
@@ -1354,7 +1354,7 @@  discard block
 block discarded – undo
1354 1354
 		$rByUid = true; // try searching by uid. this var will be passed by reference to getSortedList, and may be set to false, if UID retrieval fails
1355 1355
 		#print "<pre>";
1356 1356
 		#$this->icServer->setDebug(true);
1357
-		$total=0;
1357
+		$total = 0;
1358 1358
 		if ($_thisUIDOnly === null)
1359 1359
 		{
1360 1360
 			if (($_startMessage || $_numberOfMessages) && !isset($_filter['range']))
@@ -1367,24 +1367,24 @@  discard block
 block discarded – undo
1367 1367
 				//$_filter['range'] ="$_startMessage:*";
1368 1368
 			}
1369 1369
 			if (self::$debug) error_log(__METHOD__.' ('.__LINE__.') '."$_folderName, $_sort, $reverse, ".array2string($_filter).", $rByUid");
1370
-			if (self::$debug||self::$debugTimes) $starttime = microtime (true);
1370
+			if (self::$debug || self::$debugTimes) $starttime = microtime(true);
1371 1371
 			//see this example below for a 12 week datefilter (since)
1372 1372
 			//$_filter = array('status'=>array('UNDELETED'),'type'=>"SINCE",'string'=> date("d-M-Y", $starttime-(3600*24*7*12)));
1373 1373
 			$_sortResult = $this->getSortedList($_folderName, $_sort, $reverse, $_filter, $rByUid, $_cacheResult);
1374 1374
 			$sortResult = $_sortResult['match']->ids;
1375 1375
 			//$modseq = $_sortResult['modseq'];
1376 1376
 			//error_log(__METHOD__.' ('.__LINE__.') '.'Modsequence:'.$modseq);
1377
-			if (self::$debug||self::$debugTimes) self::logRunTimes($starttime,null,' call getSortedList for Folder:'.$_folderName.' Filter:'.array2string($_filter).' Ids:'.array2string($_thisUIDOnly),__METHOD__.' ('.__LINE__.') ');
1377
+			if (self::$debug || self::$debugTimes) self::logRunTimes($starttime, null, ' call getSortedList for Folder:'.$_folderName.' Filter:'.array2string($_filter).' Ids:'.array2string($_thisUIDOnly), __METHOD__.' ('.__LINE__.') ');
1378 1378
 
1379 1379
 			if (self::$debug) error_log(__METHOD__.' ('.__LINE__.') '.array2string($sortResult));
1380 1380
 			#$this->icServer->setDebug(false);
1381 1381
 			#print "</pre>";
1382 1382
 			// nothing found
1383
-			if(!is_array($sortResult) || empty($sortResult)) {
1383
+			if (!is_array($sortResult) || empty($sortResult)) {
1384 1384
 				$retValue = array();
1385 1385
 				$retValue['info']['total']	= 0;
1386 1386
 				$retValue['info']['first']	= 0;
1387
-				$retValue['info']['last']	= 0;
1387
+				$retValue['info']['last'] = 0;
1388 1388
 				return $retValue;
1389 1389
 			}
1390 1390
 
@@ -1392,54 +1392,54 @@  discard block
 block discarded – undo
1392 1392
 			#_debug_array($sortResult);
1393 1393
 			#_debug_array(array_slice($sortResult, -5, -2));
1394 1394
 			//error_log("REVERSE: $reverse");
1395
-			if($reverse === true) {
1396
-				if  ($_startMessage<=$total)
1395
+			if ($reverse === true) {
1396
+				if ($_startMessage <= $total)
1397 1397
 				{
1398
-					$startMessage = $_startMessage-1;
1398
+					$startMessage = $_startMessage - 1;
1399 1399
 				}
1400 1400
 				else
1401 1401
 				{
1402 1402
 					//error_log(__METHOD__.' ('.__LINE__.') '.' Start:'.$_startMessage.' NumberOfMessages:'.$_numberOfMessages.' Total:'.$total);
1403
-					if ($_startMessage+$_numberOfMessages>$total)
1403
+					if ($_startMessage + $_numberOfMessages > $total)
1404 1404
 					{
1405
-						$numberOfMessages = $total%$_numberOfMessages;
1405
+						$numberOfMessages = $total % $_numberOfMessages;
1406 1406
 						//$numberOfMessages = abs($_startMessage-$total-1);
1407
-						if ($numberOfMessages>0 && $numberOfMessages<=$_numberOfMessages) $_numberOfMessages = $numberOfMessages;
1407
+						if ($numberOfMessages > 0 && $numberOfMessages <= $_numberOfMessages) $_numberOfMessages = $numberOfMessages;
1408 1408
 						//error_log(__METHOD__.' ('.__LINE__.') '.' Start:'.$_startMessage.' NumberOfMessages:'.$_numberOfMessages.' Total:'.$total);
1409 1409
 					}
1410
-					$startMessage=($total-$_numberOfMessages)-1;
1410
+					$startMessage = ($total - $_numberOfMessages) - 1;
1411 1411
 					//$retValue['info']['first'] = $startMessage;
1412 1412
 					//$retValue['info']['last'] = $total;
1413 1413
 
1414 1414
 				}
1415
-				if ($startMessage+$_numberOfMessages>$total)
1415
+				if ($startMessage + $_numberOfMessages > $total)
1416 1416
 				{
1417
-					$_numberOfMessages = $_numberOfMessages-($total-($startMessage+$_numberOfMessages));
1417
+					$_numberOfMessages = $_numberOfMessages - ($total - ($startMessage + $_numberOfMessages));
1418 1418
 					//$retValue['info']['first'] = $startMessage;
1419 1419
 					//$retValue['info']['last'] = $total;
1420 1420
 				}
1421
-				if($startMessage > 0) {
1422
-					if (self::$debug) error_log(__METHOD__.' ('.__LINE__.') '.' StartMessage:'.(-($_numberOfMessages+$startMessage)).', '.-$startMessage.' Number of Messages:'.count($sortResult));
1423
-					$sortResult = array_slice($sortResult, -($_numberOfMessages+$startMessage), -$startMessage);
1421
+				if ($startMessage > 0) {
1422
+					if (self::$debug) error_log(__METHOD__.' ('.__LINE__.') '.' StartMessage:'.(-($_numberOfMessages + $startMessage)).', '.-$startMessage.' Number of Messages:'.count($sortResult));
1423
+					$sortResult = array_slice($sortResult, -($_numberOfMessages + $startMessage), -$startMessage);
1424 1424
 				} else {
1425
-					if (self::$debug) error_log(__METHOD__.' ('.__LINE__.') '.' StartMessage:'.(-($_numberOfMessages+($_startMessage-1))).', AllTheRest, Number of Messages:'.count($sortResult));
1426
-					$sortResult = array_slice($sortResult, -($_numberOfMessages+($_startMessage-1)));
1425
+					if (self::$debug) error_log(__METHOD__.' ('.__LINE__.') '.' StartMessage:'.(-($_numberOfMessages + ($_startMessage - 1))).', AllTheRest, Number of Messages:'.count($sortResult));
1426
+					$sortResult = array_slice($sortResult, -($_numberOfMessages + ($_startMessage - 1)));
1427 1427
 				}
1428 1428
 				$sortResult = array_reverse($sortResult);
1429 1429
 			} else {
1430
-				if (self::$debug) error_log(__METHOD__.' ('.__LINE__.') '.' StartMessage:'.($_startMessage-1).', '.$_numberOfMessages.' Number of Messages:'.count($sortResult));
1431
-				$sortResult = array_slice($sortResult, $_startMessage-1, $_numberOfMessages);
1430
+				if (self::$debug) error_log(__METHOD__.' ('.__LINE__.') '.' StartMessage:'.($_startMessage - 1).', '.$_numberOfMessages.' Number of Messages:'.count($sortResult));
1431
+				$sortResult = array_slice($sortResult, $_startMessage - 1, $_numberOfMessages);
1432 1432
 			}
1433 1433
 			if (self::$debug) error_log(__METHOD__.' ('.__LINE__.') '.array2string($sortResult));
1434 1434
 		}
1435 1435
 		else
1436 1436
 		{
1437
-			$sortResult = (is_array($_thisUIDOnly) ? $_thisUIDOnly:(array)$_thisUIDOnly);
1437
+			$sortResult = (is_array($_thisUIDOnly) ? $_thisUIDOnly : (array)$_thisUIDOnly);
1438 1438
 		}
1439 1439
 
1440 1440
 
1441 1441
 		// fetch the data for the selected messages
1442
-		if (self::$debug||self::$debugTimes) $starttime = microtime(true);
1442
+		if (self::$debug || self::$debugTimes) $starttime = microtime(true);
1443 1443
 		try
1444 1444
 		{
1445 1445
 			$uidsToFetch = new Horde_Imap_Client_Ids();
@@ -1448,22 +1448,22 @@  discard block
 block discarded – undo
1448 1448
 			$fquery = new Horde_Imap_Client_Fetch_Query();
1449 1449
 
1450 1450
 			// Pre-cache the headers we want, 'fetchHeaders' is a label into the cache
1451
-			$fquery->headers('fetchHeaders',array(
1452
-				'DISPOSITION-NOTIFICATION-TO','RETURN-RECEIPT-TO','X-CONFIRM-READING-TO',
1453
-				'DATE','SUBJECT','FROM','TO','CC','REPLY-TO',
1451
+			$fquery->headers('fetchHeaders', array(
1452
+				'DISPOSITION-NOTIFICATION-TO', 'RETURN-RECEIPT-TO', 'X-CONFIRM-READING-TO',
1453
+				'DATE', 'SUBJECT', 'FROM', 'TO', 'CC', 'REPLY-TO',
1454 1454
 				'X-PRIORITY'
1455
-			),array(
1455
+			), array(
1456 1456
 				// Cache headers, we'll look at them below
1457
-				'cache' => true,//$_cacheResult,
1457
+				'cache' => true, //$_cacheResult,
1458 1458
 				// Set peek so messages are not flagged as read
1459 1459
 				'peek' => true
1460 1460
 			));
1461 1461
 			$fquery->size();
1462 1462
 			$fquery->structure();
1463 1463
 			$fquery->flags();
1464
-			$fquery->imapDate();// needed to ensure getImapDate fetches the internaldate, not the current time
1464
+			$fquery->imapDate(); // needed to ensure getImapDate fetches the internaldate, not the current time
1465 1465
 			// if $_fetchPreviews is activated fetch part of the messages too
1466
-			if ($_fetchPreviews) $fquery->fullText(array('peek'=>true,'length'=>((int)$_fetchPreviews<5000?5000:$_fetchPreviews),'start'=>0));
1466
+			if ($_fetchPreviews) $fquery->fullText(array('peek'=>true, 'length'=>((int)$_fetchPreviews < 5000 ? 5000 : $_fetchPreviews), 'start'=>0));
1467 1467
 			$headersNew = $this->icServer->fetch($_folderName, $fquery, array(
1468 1468
 				'ids' => $uidsToFetch,
1469 1469
 			));
@@ -1474,9 +1474,9 @@  discard block
 block discarded – undo
1474 1474
 			$headersNew = array();
1475 1475
 			$sortResult = array();
1476 1476
 		}
1477
-		if (self::$debug||self::$debugTimes)
1477
+		if (self::$debug || self::$debugTimes)
1478 1478
 		{
1479
-			self::logRunTimes($starttime,null,'HordeFetch: for Folder:'.$_folderName.' Filter:'.array2string($_filter),__METHOD__.' ('.__LINE__.') ');
1479
+			self::logRunTimes($starttime, null, 'HordeFetch: for Folder:'.$_folderName.' Filter:'.array2string($_filter), __METHOD__.' ('.__LINE__.') ');
1480 1480
 			if (self::$debug)
1481 1481
 			{
1482 1482
 				$queryString = implode(',', $sortResult);
@@ -1486,27 +1486,27 @@  discard block
 block discarded – undo
1486 1486
 
1487 1487
 		$cnt = 0;
1488 1488
 
1489
-		foreach((array)$sortResult as $uid) {
1489
+		foreach ((array)$sortResult as $uid) {
1490 1490
 			$sortOrder[$uid] = $cnt++;
1491 1491
 		}
1492 1492
 
1493 1493
 		$count = 0;
1494 1494
 		if (is_object($headersNew)) {
1495
-			if (self::$debug||self::$debugTimes) $starttime = microtime(true);
1496
-			foreach($headersNew->ids() as $id) {
1495
+			if (self::$debug || self::$debugTimes) $starttime = microtime(true);
1496
+			foreach ($headersNew->ids() as $id) {
1497 1497
 				$_headerObject = $headersNew->get($id);
1498 1498
 				//error_log(__METHOD__.' ('.__LINE__.') '.array2string($_headerObject));
1499 1499
 				$headerObject = array();
1500 1500
 				$bodyPreview = null;
1501
-				$uid = $headerObject['UID']= ($_headerObject->getUid()?$_headerObject->getUid():$id);
1501
+				$uid = $headerObject['UID'] = ($_headerObject->getUid() ? $_headerObject->getUid() : $id);
1502 1502
 				$headerObject['MSG_NUM'] = $_headerObject->getSeq();
1503 1503
 				$headerObject['SIZE'] = $_headerObject->getSize();
1504 1504
 				$headerObject['INTERNALDATE'] = $_headerObject->getImapDate();
1505 1505
 
1506 1506
 				// Get already cached headers, 'fetchHeaders' is a label matchimg above
1507
-				$headerForPrio = $_headerObject->getHeaders('fetchHeaders',Horde_Imap_Client_Data_Fetch::HEADER_PARSE)->toArray();
1507
+				$headerForPrio = $_headerObject->getHeaders('fetchHeaders', Horde_Imap_Client_Data_Fetch::HEADER_PARSE)->toArray();
1508 1508
 				// Try to fetch header with key='' as some servers might have no fetchHeaders index. e.g. yandex.com
1509
-				if (empty($headerForPrio)) $headerForPrio = $_headerObject->getHeaders('',Horde_Imap_Client_Data_Fetch::HEADER_PARSE)->toArray();
1509
+				if (empty($headerForPrio)) $headerForPrio = $_headerObject->getHeaders('', Horde_Imap_Client_Data_Fetch::HEADER_PARSE)->toArray();
1510 1510
 				//fetch the fullMsg part if all conditions match to be available in case $_headerObject->getHeaders returns
1511 1511
 				//nothing worthwhile (as it does for googlemail accounts, when preview is switched on
1512 1512
 				if ($_fetchPreviews)
@@ -1514,16 +1514,16 @@  discard block
 block discarded – undo
1514 1514
 					// on enabled preview $bodyPreview is needed lateron. fetched here, for fallback-reasons
1515 1515
 					// in case of failed Header-Retrieval
1516 1516
 					$bodyPreview = $_headerObject->getFullMsg();
1517
-					if (empty($headerForPrio)||(is_array($headerForPrio)&&count($headerForPrio)===1&&$headerForPrio['']))
1517
+					if (empty($headerForPrio) || (is_array($headerForPrio) && count($headerForPrio) === 1 && $headerForPrio['']))
1518 1518
 					{
1519 1519
 						$length = strpos($bodyPreview, Horde_Mime_Part::RFC_EOL.Horde_Mime_Part::RFC_EOL);
1520
-						if ($length===false) $length = strlen($bodyPreview);
1521
-						$headerForPrio =  Horde_Mime_Headers::parseHeaders(substr($bodyPreview, 0,$length))->toArray();
1520
+						if ($length === false) $length = strlen($bodyPreview);
1521
+						$headerForPrio = Horde_Mime_Headers::parseHeaders(substr($bodyPreview, 0, $length))->toArray();
1522 1522
 					}
1523 1523
 				}
1524 1524
 				$headerForPrio = array_change_key_case($headerForPrio, CASE_UPPER);
1525 1525
 				if (self::$debug) {
1526
-					error_log(__METHOD__.' ('.__LINE__.') '.array2string($_headerObject).'UID:'.$_headerObject->getUid().' Size:'.$_headerObject->getSize().' Date:'.$_headerObject->getImapDate().'/'.DateTime::to($_headerObject->getImapDate(),'Y-m-d H:i:s'));
1526
+					error_log(__METHOD__.' ('.__LINE__.') '.array2string($_headerObject).'UID:'.$_headerObject->getUid().' Size:'.$_headerObject->getSize().' Date:'.$_headerObject->getImapDate().'/'.DateTime::to($_headerObject->getImapDate(), 'Y-m-d H:i:s'));
1527 1527
 					error_log(__METHOD__.' ('.__LINE__.') '.array2string($headerForPrio));
1528 1528
 				}
1529 1529
 				// message deleted from server but cache still reporting its existence ; may happen on QRESYNC with No permanent modsequences
@@ -1532,22 +1532,22 @@  discard block
 block discarded – undo
1532 1532
 					$total--;
1533 1533
 					continue;
1534 1534
 				}
1535
-				if ( isset($headerForPrio['DISPOSITION-NOTIFICATION-TO']) ) {
1535
+				if (isset($headerForPrio['DISPOSITION-NOTIFICATION-TO'])) {
1536 1536
 					$headerObject['DISPOSITION-NOTIFICATION-TO'] = self::decode_header(trim($headerForPrio['DISPOSITION-NOTIFICATION-TO']));
1537
-				} else if ( isset($headerForPrio['RETURN-RECEIPT-TO']) ) {
1537
+				} else if (isset($headerForPrio['RETURN-RECEIPT-TO'])) {
1538 1538
 					$headerObject['DISPOSITION-NOTIFICATION-TO'] = self::decode_header(trim($headerForPrio['RETURN-RECEIPT-TO']));
1539
-				} else if ( isset($headerForPrio['X-CONFIRM-READING-TO']) ) {
1539
+				} else if (isset($headerForPrio['X-CONFIRM-READING-TO'])) {
1540 1540
 					$headerObject['DISPOSITION-NOTIFICATION-TO'] = self::decode_header(trim($headerForPrio['X-CONFIRM-READING-TO']));
1541 1541
 				} /*else $sent_not = "";*/
1542 1542
 				//error_log(__METHOD__.' ('.__LINE__.') '.array2string($headerObject));
1543 1543
 				$headerObject['DATE'] = $headerForPrio['DATE'];
1544
-				$headerObject['SUBJECT'] = (is_array($headerForPrio['SUBJECT'])?$headerForPrio['SUBJECT'][0]:$headerForPrio['SUBJECT']);
1545
-				$headerObject['FROM'] = (array)($headerForPrio['FROM']?$headerForPrio['FROM']:($headerForPrio['REPLY-TO']?$headerForPrio['REPLY-TO']:$headerForPrio['RETURN-PATH']));
1544
+				$headerObject['SUBJECT'] = (is_array($headerForPrio['SUBJECT']) ? $headerForPrio['SUBJECT'][0] : $headerForPrio['SUBJECT']);
1545
+				$headerObject['FROM'] = (array)($headerForPrio['FROM'] ? $headerForPrio['FROM'] : ($headerForPrio['REPLY-TO'] ? $headerForPrio['REPLY-TO'] : $headerForPrio['RETURN-PATH']));
1546 1546
 				$headerObject['TO'] = (array)$headerForPrio['TO'];
1547
-				$headerObject['CC'] = isset($headerForPrio['CC'])?(array)$headerForPrio['CC']:array();
1548
-				$headerObject['REPLY-TO'] = isset($headerForPrio['REPLY-TO'])?(array)$headerForPrio['REPLY-TO']:array();
1549
-				$headerObject['PRIORITY'] = isset($headerForPrio['X-PRIORITY'])?$headerForPrio['X-PRIORITY']:null;
1550
-				foreach (array('FROM','TO','CC','REPLY-TO') as $key)
1547
+				$headerObject['CC'] = isset($headerForPrio['CC']) ? (array)$headerForPrio['CC'] : array();
1548
+				$headerObject['REPLY-TO'] = isset($headerForPrio['REPLY-TO']) ? (array)$headerForPrio['REPLY-TO'] : array();
1549
+				$headerObject['PRIORITY'] = isset($headerForPrio['X-PRIORITY']) ? $headerForPrio['X-PRIORITY'] : null;
1550
+				foreach (array('FROM', 'TO', 'CC', 'REPLY-TO') as $key)
1551 1551
 				{
1552 1552
 					$address = array();
1553 1553
 					foreach ($headerObject[$key] as $k => $ad)
@@ -1569,13 +1569,13 @@  discard block
 block discarded – undo
1569 1569
 						foreach ($rfcAddr as $_rfcAddr)
1570 1570
 						{
1571 1571
 							if (!$_rfcAddr->valid)	continue; // skip. not a valid address
1572
-							$address[] = imap_rfc822_write_address($_rfcAddr->mailbox,$_rfcAddr->host,$_rfcAddr->personal);
1572
+							$address[] = imap_rfc822_write_address($_rfcAddr->mailbox, $_rfcAddr->host, $_rfcAddr->personal);
1573 1573
 						}
1574 1574
 					}
1575 1575
 					$headerObject[$key] = $address;
1576 1576
 				}
1577 1577
 				$headerObject['FLAGS'] = $_headerObject->getFlags();
1578
-				$headerObject['BODYPREVIEW']=null;
1578
+				$headerObject['BODYPREVIEW'] = null;
1579 1579
 				// this section fetches part of the message-body (if enabled) for some kind of preview
1580 1580
 				// if we fail to succeed, we fall back to the retrieval of the message-body with
1581 1581
 				// fetchPartContents (see below, when we iterate over the structure to determine the
@@ -1587,17 +1587,17 @@  discard block
 block discarded – undo
1587 1587
 					if (empty($bodyPreview)) $bodyPreview = $_headerObject->getFullMsg();
1588 1588
 					//error_log(__METHOD__.' ('.__LINE__.') '.array2string($bodyPreview));
1589 1589
 					$base = Horde_Mime_Part::parseMessage($bodyPreview);
1590
-					foreach($base->partIterator() as $part)
1590
+					foreach ($base->partIterator() as $part)
1591 1591
 					{
1592 1592
 						//error_log(__METHOD__.__LINE__.'Part:'.$part->getPrimaryType());
1593
-						if (empty($headerObject['BODYPREVIEW'])&&$part->getPrimaryType()== 'text')
1593
+						if (empty($headerObject['BODYPREVIEW']) && $part->getPrimaryType() == 'text')
1594 1594
 						{
1595 1595
 							$charset = $part->getContentTypeParameter('charset');
1596 1596
 							$buffer = Mail\Html::convertHTMLToText($part->toString(array(
1597
-												'encode' => Horde_Mime_Part::ENCODE_BINARY,	// otherwise we cant recode charset
1597
+												'encode' => Horde_Mime_Part::ENCODE_BINARY, // otherwise we cant recode charset
1598 1598
 											)), $charset, 'utf-8');
1599
-							$headerObject['BODYPREVIEW']=trim(str_replace(array("\r\n","\r","\n"),' ',mb_substr(Translation::convert_jsonsafe($buffer),0,((int)$_fetchPreviews<300?300:$_fetchPreviews))));
1600
-						} elseif (empty($headerObject['BODYPREVIEW'])&&$part->getPrimaryType()== 'multipart')
1599
+							$headerObject['BODYPREVIEW'] = trim(str_replace(array("\r\n", "\r", "\n"), ' ', mb_substr(Translation::convert_jsonsafe($buffer), 0, ((int)$_fetchPreviews < 300 ? 300 : $_fetchPreviews))));
1600
+						} elseif (empty($headerObject['BODYPREVIEW']) && $part->getPrimaryType() == 'multipart')
1601 1601
 						{
1602 1602
 							//error_log(__METHOD__.' ('.__LINE__.') '.array2string($part));
1603 1603
 						}
@@ -1608,12 +1608,12 @@  discard block
 block discarded – undo
1608 1608
 				//error_log(__METHOD__.' ('.__LINE__.') '.array2string($headerObject));
1609 1609
 				//error_log(__METHOD__.' ('.__LINE__.') '.' MimeMap:'.array2string($mailStructureObject->contentTypeMap()));
1610 1610
 				//foreach ($_headerObject->getStructure()->getParts() as $p => $part)
1611
-				$headerObject['ATTACHMENTS']=null;
1612
-				$skipParts=array();
1613
-				$messageMimeType='';
1611
+				$headerObject['ATTACHMENTS'] = null;
1612
+				$skipParts = array();
1613
+				$messageMimeType = '';
1614 1614
 				foreach ($mailStructureObject->contentTypeMap() as $mime_id => $mime_type)
1615 1615
 				{
1616
-					if ($mime_id==0 || $messageMimeType==='') $messageMimeType = $mime_type;
1616
+					if ($mime_id == 0 || $messageMimeType === '') $messageMimeType = $mime_type;
1617 1617
 					$part = $mailStructureObject->getPart($mime_id);
1618 1618
 					$partdisposition = $part->getDisposition();
1619 1619
 					$partPrimaryType = $part->getPrimaryType();
@@ -1621,16 +1621,16 @@  discard block
 block discarded – undo
1621 1621
 					// drawback here it is talking to the mailserver for each mail thus consuming
1622 1622
 					// more time than expected; so we call this section only when there is no
1623 1623
 					// bodypreview could be found (multipart/....)
1624
-					if ($_fetchPreviews && empty($headerObject['BODYPREVIEW'])&&($partPrimaryType == 'text') &&
1624
+					if ($_fetchPreviews && empty($headerObject['BODYPREVIEW']) && ($partPrimaryType == 'text') &&
1625 1625
 						((intval($mime_id) === 1) || !$mime_id) &&
1626 1626
 						($partdisposition !== 'attachment')) {
1627
-							$_structure=$part;
1628
-							$this->fetchPartContents($uid, $_structure, false,true);
1629
-							$headerObject['BODYPREVIEW']=trim(str_replace(array("\r\n","\r","\n"),' ',mb_substr(Mail\Html::convertHTMLToText($_structure->getContents()),0,((int)$_fetchPreviews<300?300:$_fetchPreviews))));
1630
-							$charSet=Translation::detect_encoding($headerObject['BODYPREVIEW']);
1627
+							$_structure = $part;
1628
+							$this->fetchPartContents($uid, $_structure, false, true);
1629
+							$headerObject['BODYPREVIEW'] = trim(str_replace(array("\r\n", "\r", "\n"), ' ', mb_substr(Mail\Html::convertHTMLToText($_structure->getContents()), 0, ((int)$_fetchPreviews < 300 ? 300 : $_fetchPreviews))));
1630
+							$charSet = Translation::detect_encoding($headerObject['BODYPREVIEW']);
1631 1631
 							// add line breaks to $bodyParts
1632 1632
 							//error_log(__METHOD__.' ('.__LINE__.') '.' Charset:'.$bodyParts[$i]['charSet'].'->'.$bodyParts[$i]['body']);
1633
-							$headerObject['BODYPREVIEW']  = Translation::convert_jsonsafe($headerObject['BODYPREVIEW'], $charSet);
1633
+							$headerObject['BODYPREVIEW'] = Translation::convert_jsonsafe($headerObject['BODYPREVIEW'], $charSet);
1634 1634
 							//error_log(__METHOD__.__LINE__.$headerObject['BODYPREVIEW']);
1635 1635
 					}
1636 1636
 					//error_log(__METHOD__.' ('.__LINE__.') '.' Uid:'.$uid.'->'.$mime_id.' Disp:'.$partdisposition.' Type:'.$partPrimaryType);
@@ -1640,28 +1640,28 @@  discard block
 block discarded – undo
1640 1640
 						// the presence of an cid does not necessarily indicate its inline. it may lack the needed
1641 1641
 						// link to show the image. Considering this: we "list" everything that matches the above criteria
1642 1642
 						// as attachment in order to not loose/miss information on our data
1643
-						$partdisposition='attachment';//($partPrimaryType == 'image'&&!empty($cid)?'inline':'attachment');
1643
+						$partdisposition = 'attachment'; //($partPrimaryType == 'image'&&!empty($cid)?'inline':'attachment');
1644 1644
 					}
1645
-					if ($mime_type=='message/rfc822')
1645
+					if ($mime_type == 'message/rfc822')
1646 1646
 					{
1647 1647
 						//error_log(__METHOD__.' ('.__LINE__.') '.' Uid:'.$uid.'->'.$mime_id.':'.array2string($part->contentTypeMap()));
1648
-						foreach($part->contentTypeMap() as $sub_id => $sub_type) { if ($sub_id != $mime_id) $skipParts[$sub_id] = $sub_type;}
1648
+						foreach ($part->contentTypeMap() as $sub_id => $sub_type) { if ($sub_id != $mime_id) $skipParts[$sub_id] = $sub_type; }
1649 1649
 					}
1650 1650
 					//error_log(__METHOD__.' ('.__LINE__.') '.' Uid:'.$uid.'->'.$mime_id.' Disp:'.$partdisposition.' Type:'.$partPrimaryType.' Skip:'.array2string($skipParts));
1651
-					if (array_key_exists($mime_id,$skipParts)) continue;
1652
-					if ($partdisposition=='attachment' ||
1653
-						($partdisposition=='inline'&&$partPrimaryType == 'image'&&$mime_type=='image/tiff') || // as we are not able to display tiffs
1654
-						($partdisposition=='inline'&&$partPrimaryType == 'image'&&empty($cid)) ||
1655
-						($partdisposition=='inline' && $partPrimaryType != 'image' && $partPrimaryType != 'multipart' && $partPrimaryType != 'text'))
1651
+					if (array_key_exists($mime_id, $skipParts)) continue;
1652
+					if ($partdisposition == 'attachment' ||
1653
+						($partdisposition == 'inline' && $partPrimaryType == 'image' && $mime_type == 'image/tiff') || // as we are not able to display tiffs
1654
+						($partdisposition == 'inline' && $partPrimaryType == 'image' && empty($cid)) ||
1655
+						($partdisposition == 'inline' && $partPrimaryType != 'image' && $partPrimaryType != 'multipart' && $partPrimaryType != 'text'))
1656 1656
 					{
1657
-						$headerObject['ATTACHMENTS'][$mime_id]=$part->getAllDispositionParameters();
1658
-						$headerObject['ATTACHMENTS'][$mime_id]['mimeType']=$mime_type;
1659
-						$headerObject['ATTACHMENTS'][$mime_id]['uid']=$uid;
1657
+						$headerObject['ATTACHMENTS'][$mime_id] = $part->getAllDispositionParameters();
1658
+						$headerObject['ATTACHMENTS'][$mime_id]['mimeType'] = $mime_type;
1659
+						$headerObject['ATTACHMENTS'][$mime_id]['uid'] = $uid;
1660 1660
 						$headerObject['ATTACHMENTS'][$mime_id]['cid'] = $cid;
1661
-						$headerObject['ATTACHMENTS'][$mime_id]['partID']=$mime_id;
1662
-						if (!isset($headerObject['ATTACHMENTS'][$mime_id]['name']))$headerObject['ATTACHMENTS'][$mime_id]['name']=$part->getName();
1663
-						if (!strcasecmp($headerObject['ATTACHMENTS'][$mime_id]['name'],'winmail.dat') ||
1664
-							$headerObject['ATTACHMENTS'][$mime_id]['mimeType']=='application/ms-tnef')
1661
+						$headerObject['ATTACHMENTS'][$mime_id]['partID'] = $mime_id;
1662
+						if (!isset($headerObject['ATTACHMENTS'][$mime_id]['name']))$headerObject['ATTACHMENTS'][$mime_id]['name'] = $part->getName();
1663
+						if (!strcasecmp($headerObject['ATTACHMENTS'][$mime_id]['name'], 'winmail.dat') ||
1664
+							$headerObject['ATTACHMENTS'][$mime_id]['mimeType'] == 'application/ms-tnef')
1665 1665
 						{
1666 1666
 							$headerObject['ATTACHMENTS'][$mime_id]['is_winmail'] = true;
1667 1667
 						}
@@ -1676,57 +1676,57 @@  discard block
 block discarded – undo
1676 1676
 				if (empty($headerObject['UID'])) continue;
1677 1677
 				//$uid = ($rByUid ? $headerObject['UID'] : $headerObject['MSG_NUM']);
1678 1678
 				// make dates like "Mon, 23 Apr 2007 10:11:06 UT" working with strtotime
1679
-				if(substr($headerObject['DATE'],-2) === 'UT') {
1679
+				if (substr($headerObject['DATE'], -2) === 'UT') {
1680 1680
 					$headerObject['DATE'] .= 'C';
1681 1681
 				}
1682
-				if(substr($headerObject['INTERNALDATE'],-2) === 'UT') {
1682
+				if (substr($headerObject['INTERNALDATE'], -2) === 'UT') {
1683 1683
 					$headerObject['INTERNALDATE'] .= 'C';
1684 1684
 				}
1685 1685
 				//error_log(__METHOD__.' ('.__LINE__.') '.' '.$headerObject['SUBJECT'].'->'.$headerObject['DATE'].'<->'.$headerObject['INTERNALDATE'] .'#');
1686 1686
 				//error_log(__METHOD__.' ('.__LINE__.') '.' '.$this->decode_subject($headerObject['SUBJECT']).'->'.$headerObject['DATE']);
1687
-				if (isset($headerObject['ATTACHMENTS']) && count($headerObject['ATTACHMENTS'])) foreach ($headerObject['ATTACHMENTS'] as &$a) { $retValue['header'][$sortOrder[$uid]]['attachments'][]=$a;}
1688
-				$retValue['header'][$sortOrder[$uid]]['subject']	= $this->decode_subject($headerObject['SUBJECT']);
1689
-				$retValue['header'][$sortOrder[$uid]]['size'] 		= $headerObject['SIZE'];
1690
-				$retValue['header'][$sortOrder[$uid]]['date']		= self::_strtotime(($headerObject['DATE']&&!($headerObject['DATE']=='NIL')?$headerObject['DATE']:$headerObject['INTERNALDATE']),'ts',true);
1691
-				$retValue['header'][$sortOrder[$uid]]['internaldate']= self::_strtotime($headerObject['INTERNALDATE'],'ts',true);
1692
-				$retValue['header'][$sortOrder[$uid]]['mimetype']	= $messageMimeType;
1693
-				$retValue['header'][$sortOrder[$uid]]['id']		= $headerObject['MSG_NUM'];
1694
-				$retValue['header'][$sortOrder[$uid]]['uid']		= $headerObject['UID'];
1695
-				$retValue['header'][$sortOrder[$uid]]['bodypreview']		= $headerObject['BODYPREVIEW'];
1696
-				$retValue['header'][$sortOrder[$uid]]['priority']		= ($headerObject['PRIORITY']?$headerObject['PRIORITY']:3);
1687
+				if (isset($headerObject['ATTACHMENTS']) && count($headerObject['ATTACHMENTS'])) foreach ($headerObject['ATTACHMENTS'] as &$a) { $retValue['header'][$sortOrder[$uid]]['attachments'][] = $a; }
1688
+				$retValue['header'][$sortOrder[$uid]]['subject'] = $this->decode_subject($headerObject['SUBJECT']);
1689
+				$retValue['header'][$sortOrder[$uid]]['size'] = $headerObject['SIZE'];
1690
+				$retValue['header'][$sortOrder[$uid]]['date'] = self::_strtotime(($headerObject['DATE'] && !($headerObject['DATE'] == 'NIL') ? $headerObject['DATE'] : $headerObject['INTERNALDATE']), 'ts', true);
1691
+				$retValue['header'][$sortOrder[$uid]]['internaldate'] = self::_strtotime($headerObject['INTERNALDATE'], 'ts', true);
1692
+				$retValue['header'][$sortOrder[$uid]]['mimetype'] = $messageMimeType;
1693
+				$retValue['header'][$sortOrder[$uid]]['id'] = $headerObject['MSG_NUM'];
1694
+				$retValue['header'][$sortOrder[$uid]]['uid'] = $headerObject['UID'];
1695
+				$retValue['header'][$sortOrder[$uid]]['bodypreview'] = $headerObject['BODYPREVIEW'];
1696
+				$retValue['header'][$sortOrder[$uid]]['priority'] = ($headerObject['PRIORITY'] ? $headerObject['PRIORITY'] : 3);
1697 1697
 				//error_log(__METHOD__.' ('.__LINE__.') '.' '.array2string($retValue['header'][$sortOrder[$uid]]));
1698 1698
 				if (isset($headerObject['DISPOSITION-NOTIFICATION-TO'])) $retValue['header'][$sortOrder[$uid]]['disposition-notification-to'] = $headerObject['DISPOSITION-NOTIFICATION-TO'];
1699 1699
 				if (is_array($headerObject['FLAGS'])) {
1700
-					$retValue['header'][$sortOrder[$uid]] = array_merge($retValue['header'][$sortOrder[$uid]],self::prepareFlagsArray($headerObject));
1700
+					$retValue['header'][$sortOrder[$uid]] = array_merge($retValue['header'][$sortOrder[$uid]], self::prepareFlagsArray($headerObject));
1701 1701
 				}
1702 1702
 				//error_log(__METHOD__.' ('.__LINE__.') '.$headerObject['SUBJECT'].'->'.array2string($_headerObject->getEnvelope()->__get('from')));
1703
-				if(is_array($headerObject['FROM']) && $headerObject['FROM'][0]) {
1704
-					$retValue['header'][$sortOrder[$uid]]['sender_address'] = self::decode_header($headerObject['FROM'][0],true);
1703
+				if (is_array($headerObject['FROM']) && $headerObject['FROM'][0]) {
1704
+					$retValue['header'][$sortOrder[$uid]]['sender_address'] = self::decode_header($headerObject['FROM'][0], true);
1705 1705
 				}
1706
-				if(is_array($headerObject['REPLY-TO']) && $headerObject['REPLY-TO'][0]) {
1707
-					$retValue['header'][$sortOrder[$uid]]['reply_to_address'] = self::decode_header($headerObject['REPLY-TO'][0],true);
1706
+				if (is_array($headerObject['REPLY-TO']) && $headerObject['REPLY-TO'][0]) {
1707
+					$retValue['header'][$sortOrder[$uid]]['reply_to_address'] = self::decode_header($headerObject['REPLY-TO'][0], true);
1708 1708
 				}
1709
-				if(is_array($headerObject['TO']) && $headerObject['TO'][0]) {
1710
-					$retValue['header'][$sortOrder[$uid]]['to_address'] = self::decode_header($headerObject['TO'][0],true);
1711
-					if (count($headerObject['TO'])>1)
1709
+				if (is_array($headerObject['TO']) && $headerObject['TO'][0]) {
1710
+					$retValue['header'][$sortOrder[$uid]]['to_address'] = self::decode_header($headerObject['TO'][0], true);
1711
+					if (count($headerObject['TO']) > 1)
1712 1712
 					{
1713
-						$ki=0;
1714
-						foreach($headerObject['TO'] as $k => $add)
1713
+						$ki = 0;
1714
+						foreach ($headerObject['TO'] as $k => $add)
1715 1715
 						{
1716
-							if ($k==0) continue;
1716
+							if ($k == 0) continue;
1717 1717
 							//error_log(__METHOD__.' ('.__LINE__.') '."-> $k:".array2string($add));
1718
-							$retValue['header'][$sortOrder[$uid]]['additional_to_addresses'][$ki] = self::decode_header($add,true);
1718
+							$retValue['header'][$sortOrder[$uid]]['additional_to_addresses'][$ki] = self::decode_header($add, true);
1719 1719
 							//error_log(__METHOD__.' ('.__LINE__.') '.array2string($retValue['header'][$sortOrder[$uid]]['additional_to_addresses'][$ki]));
1720 1720
 							$ki++;
1721 1721
 						}
1722 1722
 					}
1723 1723
 				}
1724
-				if(is_array($headerObject['CC']) && count($headerObject['CC'])>0) {
1725
-					$ki=0;
1726
-					foreach($headerObject['CC'] as $k => $add)
1724
+				if (is_array($headerObject['CC']) && count($headerObject['CC']) > 0) {
1725
+					$ki = 0;
1726
+					foreach ($headerObject['CC'] as $k => $add)
1727 1727
 					{
1728 1728
 						//error_log(__METHOD__.' ('.__LINE__.') '."-> $k:".array2string($add));
1729
-						$retValue['header'][$sortOrder[$uid]]['cc_addresses'][$ki] = self::decode_header($add,true);
1729
+						$retValue['header'][$sortOrder[$uid]]['cc_addresses'][$ki] = self::decode_header($add, true);
1730 1730
 						//error_log(__METHOD__.' ('.__LINE__.') '.array2string($retValue['header'][$sortOrder[$uid]]['additional_to_addresses'][$ki]));
1731 1731
 						$ki++;
1732 1732
 					}
@@ -1735,27 +1735,27 @@  discard block
 block discarded – undo
1735 1735
 
1736 1736
 				$count++;
1737 1737
 			}
1738
-			if (self::$debug||self::$debugTimes) self::logRunTimes($starttime,null,' fetching Headers and stuff for Folder:'.$_folderName,__METHOD__.' ('.__LINE__.') ');
1738
+			if (self::$debug || self::$debugTimes) self::logRunTimes($starttime, null, ' fetching Headers and stuff for Folder:'.$_folderName, __METHOD__.' ('.__LINE__.') ');
1739 1739
 			//self::$debug=false;
1740 1740
 			// sort the messages to the requested displayorder
1741
-			if(is_array($retValue['header'])) {
1741
+			if (is_array($retValue['header'])) {
1742 1742
 				$countMessages = $total;
1743 1743
 				if (isset($_filter['range'])) $countMessages = self::$folderStatusCache[$this->profileID][$_folderName]['messages'];
1744 1744
 				ksort($retValue['header']);
1745 1745
 				$retValue['info']['total']	= $total;
1746 1746
 				//if ($_startMessage>$total) $_startMessage = $total-($count-1);
1747 1747
 				$retValue['info']['first']	= $_startMessage;
1748
-				$retValue['info']['last']	= $_startMessage + $count - 1 ;
1748
+				$retValue['info']['last'] = $_startMessage + $count - 1;
1749 1749
 				return $retValue;
1750 1750
 			} else {
1751 1751
 				$retValue = array();
1752 1752
 				$retValue['info']['total']	= 0;
1753 1753
 				$retValue['info']['first']	= 0;
1754
-				$retValue['info']['last']	= 0;
1754
+				$retValue['info']['last'] = 0;
1755 1755
 				return $retValue;
1756 1756
 			}
1757 1757
 		} else {
1758
-			if ($headersNew == null && empty($_thisUIDOnly)) error_log(__METHOD__." -> retrieval of Message Details to Query $queryString failed: ".print_r($headersNew,TRUE));
1758
+			if ($headersNew == null && empty($_thisUIDOnly)) error_log(__METHOD__." -> retrieval of Message Details to Query $queryString failed: ".print_r($headersNew, TRUE));
1759 1759
 			$retValue = array();
1760 1760
 			$retValue['info']['total']  = 0;
1761 1761
 			$retValue['info']['first']  = 0;
@@ -1772,17 +1772,17 @@  discard block
 block discarded – undo
1772 1772
 	 */
1773 1773
 	static function prepareFlagsArray($headerObject)
1774 1774
 	{
1775
-		if (is_array($headerObject['FLAGS'])) $headerFlags = array_map('strtolower',$headerObject['FLAGS']);
1775
+		if (is_array($headerObject['FLAGS'])) $headerFlags = array_map('strtolower', $headerObject['FLAGS']);
1776 1776
 		$retValue = array();
1777 1777
 		$retValue['recent']		= in_array('\\recent', $headerFlags);
1778 1778
 		$retValue['flagged']	= in_array('\\flagged', $headerFlags);
1779
-		$retValue['answered']	= in_array('\\answered', $headerFlags);
1780
-		$retValue['forwarded']   = in_array('$forwarded', $headerFlags);
1779
+		$retValue['answered'] = in_array('\\answered', $headerFlags);
1780
+		$retValue['forwarded'] = in_array('$forwarded', $headerFlags);
1781 1781
 		$retValue['deleted']	= in_array('\\deleted', $headerFlags);
1782
-		$retValue['seen']		= in_array('\\seen', $headerFlags);
1783
-		$retValue['draft']		= in_array('\\draft', $headerFlags);
1784
-		$retValue['mdnsent']	= in_array('$mdnsent', $headerFlags)||in_array('mdnsent', $headerFlags);
1785
-		$retValue['mdnnotsent']	= in_array('$mdnnotsent', $headerFlags)||in_array('mdnnotsent', $headerFlags);
1782
+		$retValue['seen'] = in_array('\\seen', $headerFlags);
1783
+		$retValue['draft'] = in_array('\\draft', $headerFlags);
1784
+		$retValue['mdnsent']	= in_array('$mdnsent', $headerFlags) || in_array('mdnsent', $headerFlags);
1785
+		$retValue['mdnnotsent'] = in_array('$mdnnotsent', $headerFlags) || in_array('mdnnotsent', $headerFlags);
1786 1786
 		$retValue['label1']   = in_array('$label1', $headerFlags);
1787 1787
 		$retValue['label2']   = in_array('$label2', $headerFlags);
1788 1788
 		$retValue['label3']   = in_array('$label3', $headerFlags);
@@ -1806,12 +1806,12 @@  discard block
 block discarded – undo
1806 1806
 	 * @param bool $setSession if set to true the session will be populated with the result of the query
1807 1807
 	 * @return mixed bool/array false or array of ids
1808 1808
 	 */
1809
-	function getSortedList($_folderName, $_sort, &$_reverse, $_filter, &$resultByUid=true, $setSession=true)
1809
+	function getSortedList($_folderName, $_sort, &$_reverse, $_filter, &$resultByUid = true, $setSession = true)
1810 1810
 	{
1811 1811
 		static $cachedFolderStatus = null;
1812 1812
 		// in the past we needed examineMailbox to figure out if the server with the serverID support keywords
1813 1813
 		// this information is filled/provided by examineMailbox; but caching within one request seems o.k.
1814
-		if (is_null($cachedFolderStatus) || !isset($cachedFolderStatus[$this->profileID][$_folderName]) )
1814
+		if (is_null($cachedFolderStatus) || !isset($cachedFolderStatus[$this->profileID][$_folderName]))
1815 1815
 		{
1816 1816
 			$folderStatus = $cachedFolderStatus[$this->profileID][$_folderName] = $this->icServer->examineMailbox($_folderName);
1817 1817
 		}
@@ -1823,29 +1823,29 @@  discard block
 block discarded – undo
1823 1823
 		//error_log(__METHOD__.' ('.__LINE__.') '.' Filter:'.array2string($_filter));
1824 1824
 		$try2useCache = true;
1825 1825
 		static $eMailListContainsDeletedMessages = null;
1826
-		if (is_null($eMailListContainsDeletedMessages)) $eMailListContainsDeletedMessages = Cache::getCache(Cache::INSTANCE,'email','eMailListContainsDeletedMessages'.trim($GLOBALS['egw_info']['user']['account_id']),null,array(),60*60*1);
1826
+		if (is_null($eMailListContainsDeletedMessages)) $eMailListContainsDeletedMessages = Cache::getCache(Cache::INSTANCE, 'email', 'eMailListContainsDeletedMessages'.trim($GLOBALS['egw_info']['user']['account_id']), null, array(), 60 * 60 * 1);
1827 1827
 		// this indicates, that there is no Filter set, and the returned set/subset should not contain DELETED Messages, nor filtered for UNDELETED
1828
-		if ($setSession==true && ((strpos(array2string($_filter), 'UNDELETED') === false && strpos(array2string($_filter), 'DELETED') === false)))
1828
+		if ($setSession == true && ((strpos(array2string($_filter), 'UNDELETED') === false && strpos(array2string($_filter), 'DELETED') === false)))
1829 1829
 		{
1830 1830
 			if (self::$debugTimes) $starttime = microtime(true);
1831
-			if (is_null($eMailListContainsDeletedMessages) || empty($eMailListContainsDeletedMessages[$this->profileID]) || empty($eMailListContainsDeletedMessages[$this->profileID][$_folderName])) $eMailListContainsDeletedMessages = Cache::getCache(Cache::INSTANCE,'email','eMailListContainsDeletedMessages'.trim($GLOBALS['egw_info']['user']['account_id']),null,array(),60*60*1);
1832
-			$five=true;
1833
-			$dReverse=1;
1834
-			$deletedMessages = $this->getSortedList($_folderName, 0, $dReverse, array('status'=>array('DELETED')),$five,false);
1831
+			if (is_null($eMailListContainsDeletedMessages) || empty($eMailListContainsDeletedMessages[$this->profileID]) || empty($eMailListContainsDeletedMessages[$this->profileID][$_folderName])) $eMailListContainsDeletedMessages = Cache::getCache(Cache::INSTANCE, 'email', 'eMailListContainsDeletedMessages'.trim($GLOBALS['egw_info']['user']['account_id']), null, array(), 60 * 60 * 1);
1832
+			$five = true;
1833
+			$dReverse = 1;
1834
+			$deletedMessages = $this->getSortedList($_folderName, 0, $dReverse, array('status'=>array('DELETED')), $five, false);
1835 1835
 			if (self::$debug) error_log(__METHOD__.' ('.__LINE__.') Found DeletedMessages:'.array2string($eMailListContainsDeletedMessages));
1836
-			$eMailListContainsDeletedMessages[$this->profileID][$_folderName] =$deletedMessages['count'];
1837
-			Cache::setCache(Cache::INSTANCE,'email','eMailListContainsDeletedMessages'.trim($GLOBALS['egw_info']['user']['account_id']),$eMailListContainsDeletedMessages, 60*60*1);
1838
-			if (self::$debugTimes) self::logRunTimes($starttime,null,'setting eMailListContainsDeletedMessages for Profile:'.$this->profileID.' Folder:'.$_folderName.' to '.$eMailListContainsDeletedMessages[$this->profileID][$_folderName],__METHOD__.' ('.__LINE__.') ');			//error_log(__METHOD__.' ('.__LINE__.') '.' Profile:'.$this->profileID.' Folder:'.$_folderName.' -> EXISTS/SessStat:'.array2string($folderStatus['MESSAGES']).'/'.self::$folderStatusCache[$this->profileID][$_folderName]['messages'].' ListContDelMsg/SessDeleted:'.$eMailListContainsDeletedMessages[$this->profileID][$_folderName].'/'.self::$folderStatusCache[$this->profileID][$_folderName]['deleted']);
1836
+			$eMailListContainsDeletedMessages[$this->profileID][$_folderName] = $deletedMessages['count'];
1837
+			Cache::setCache(Cache::INSTANCE, 'email', 'eMailListContainsDeletedMessages'.trim($GLOBALS['egw_info']['user']['account_id']), $eMailListContainsDeletedMessages, 60 * 60 * 1);
1838
+			if (self::$debugTimes) self::logRunTimes($starttime, null, 'setting eMailListContainsDeletedMessages for Profile:'.$this->profileID.' Folder:'.$_folderName.' to '.$eMailListContainsDeletedMessages[$this->profileID][$_folderName], __METHOD__.' ('.__LINE__.') '); //error_log(__METHOD__.' ('.__LINE__.') '.' Profile:'.$this->profileID.' Folder:'.$_folderName.' -> EXISTS/SessStat:'.array2string($folderStatus['MESSAGES']).'/'.self::$folderStatusCache[$this->profileID][$_folderName]['messages'].' ListContDelMsg/SessDeleted:'.$eMailListContainsDeletedMessages[$this->profileID][$_folderName].'/'.self::$folderStatusCache[$this->profileID][$_folderName]['deleted']);
1839 1839
 		}
1840 1840
 		$try2useCache = false;
1841 1841
 		//self::$supportsORinQuery[$this->profileID]=true;
1842 1842
 		if (is_null(self::$supportsORinQuery) || !isset(self::$supportsORinQuery[$this->profileID]))
1843 1843
 		{
1844
-			self::$supportsORinQuery = Cache::getCache(Cache::INSTANCE,'email','supportsORinQuery'.trim($GLOBALS['egw_info']['user']['account_id']),null,array(),60*60*10);
1845
-			if (!isset(self::$supportsORinQuery[$this->profileID])) self::$supportsORinQuery[$this->profileID]=true;
1844
+			self::$supportsORinQuery = Cache::getCache(Cache::INSTANCE, 'email', 'supportsORinQuery'.trim($GLOBALS['egw_info']['user']['account_id']), null, array(), 60 * 60 * 10);
1845
+			if (!isset(self::$supportsORinQuery[$this->profileID])) self::$supportsORinQuery[$this->profileID] = true;
1846 1846
 		}
1847 1847
 		//error_log(__METHOD__.' ('.__LINE__.') '.array2string($_filter).' SupportsOrInQuery:'.self::$supportsORinQuery[$this->profileID]);
1848
-		$filter = $this->createIMAPFilter($_folderName, $_filter,self::$supportsORinQuery[$this->profileID]);
1848
+		$filter = $this->createIMAPFilter($_folderName, $_filter, self::$supportsORinQuery[$this->profileID]);
1849 1849
 		if (self::$debug)
1850 1850
 		{
1851 1851
 			$query_str = $filter->build();
@@ -1853,14 +1853,14 @@  discard block
 block discarded – undo
1853 1853
 		}
1854 1854
 		//_debug_array($filter);
1855 1855
 		//error_log(__METHOD__.' ('.__LINE__.') '.array2string($filter).'#'.array2string($this->icServer->capability()));
1856
-		if($this->icServer->hasCapability('SORT')) {
1856
+		if ($this->icServer->hasCapability('SORT')) {
1857 1857
 			// when using an orQuery and we sort by date. sort seems to fail on certain servers => ZIMBRA with Horde_Imap_Client
1858 1858
 			// thus we translate the search request from date to Horde_Imap_Client::SORT_SEQUENCE (which should be the same, if
1859 1859
 			// there is no messing with the dates)
1860 1860
 			//if (self::$supportsORinQuery[$this->profileID]&&$_sort=='date'&&$_filter['type']=='quick'&&!empty($_filter['string']))$_sort='INTERNALDATE';
1861 1861
 			if (self::$debug) error_log(__METHOD__." Mailserver has SORT Capability, SortBy: ".array2string($_sort)." Reverse: $_reverse");
1862 1862
 			$sortOrder = $this->_getSortString($_sort, $_reverse);
1863
-			if ($_reverse && in_array(Horde_Imap_Client::SORT_REVERSE,$sortOrder)) $_reverse=false; // as we reversed the result already
1863
+			if ($_reverse && in_array(Horde_Imap_Client::SORT_REVERSE, $sortOrder)) $_reverse = false; // as we reversed the result already
1864 1864
 			if (self::$debug) error_log(__METHOD__." Mailserver runs SORT: SortBy:".array2string($_sort)."->".array2string($sortOrder)." Filter: ".array2string($filter));
1865 1865
 			try
1866 1866
 			{
@@ -1868,24 +1868,24 @@  discard block
 block discarded – undo
1868 1868
 					'sort' => $sortOrder,));
1869 1869
 			// if there is an Error, we assume that the server is not capable of sorting
1870 1870
 			}
1871
-			catch(\Exception $e)
1871
+			catch (\Exception $e)
1872 1872
 			{
1873 1873
 				//error_log(__METHOD__.'('.__LINE__.'):'.$e->getMessage());
1874 1874
 				$resultByUid = false;
1875 1875
 				$sortOrder = array(Horde_Imap_Client::SORT_SEQUENCE);
1876
-				if ($_reverse) array_unshift($sortOrder,Horde_Imap_Client::SORT_REVERSE);
1876
+				if ($_reverse) array_unshift($sortOrder, Horde_Imap_Client::SORT_REVERSE);
1877 1877
 				try
1878 1878
 				{
1879 1879
 					$sortResult = $this->icServer->search($_folderName, $filter, array(
1880 1880
 						'sort' => $sortOrder));
1881 1881
 				}
1882
-				catch(\Exception $e)
1882
+				catch (\Exception $e)
1883 1883
 				{
1884 1884
 					error_log(__METHOD__.'('.__LINE__.'):'.$e->getMessage());
1885 1885
 					$sortResult = self::$folderStatusCache[$this->profileID][$_folderName]['sortResult'];
1886 1886
 				}
1887 1887
 			}
1888
-			if (self::$debug) error_log(__METHOD__.print_r($sortResult,true));
1888
+			if (self::$debug) error_log(__METHOD__.print_r($sortResult, true));
1889 1889
 		} else {
1890 1890
 			if (self::$debug) error_log(__METHOD__." Mailserver has NO SORT Capability");
1891 1891
 			//$sortOrder = array(Horde_Imap_Client::SORT_SEQUENCE);
@@ -1895,12 +1895,12 @@  discard block
 block discarded – undo
1895 1895
 				$sortResult = $this->icServer->search($_folderName, $filter, array()/*array(
1896 1896
 					'sort' => $sortOrder)*/);
1897 1897
 			}
1898
-			catch(\Exception $e)
1898
+			catch (\Exception $e)
1899 1899
 			{
1900 1900
 				//error_log(__METHOD__.'('.__LINE__.'):'.$e->getMessage());
1901 1901
 				// possible error OR Query. But Horde gives no detailed Info :-(
1902
-				self::$supportsORinQuery[$this->profileID]=false;
1903
-				Cache::setCache(Cache::INSTANCE,'email','supportsORinQuery'.trim($GLOBALS['egw_info']['user']['account_id']),self::$supportsORinQuery,60*60*10);
1902
+				self::$supportsORinQuery[$this->profileID] = false;
1903
+				Cache::setCache(Cache::INSTANCE, 'email', 'supportsORinQuery'.trim($GLOBALS['egw_info']['user']['account_id']), self::$supportsORinQuery, 60 * 60 * 10);
1904 1904
 				if (self::$debug) error_log(__METHOD__.__LINE__." Mailserver seems to have NO OR Capability for Search:".$sortResult->message);
1905 1905
 				$filter = $this->createIMAPFilter($_folderName, $_filter, self::$supportsORinQuery[$this->profileID]);
1906 1906
 				try
@@ -1908,25 +1908,25 @@  discard block
 block discarded – undo
1908 1908
 					$sortResult = $this->icServer->search($_folderName, $filter, array()/*array(
1909 1909
 						'sort' => $sortOrder)*/);
1910 1910
 				}
1911
-				catch(\Exception $e)
1911
+				catch (\Exception $e)
1912 1912
 				{
1913 1913
 				}
1914 1914
 			}
1915
-			if(is_array($sortResult['match'])) {
1915
+			if (is_array($sortResult['match'])) {
1916 1916
 					// not sure that this is going so succeed as $sortResult['match'] is a hordeObject
1917 1917
 					sort($sortResult['match'], SORT_NUMERIC);
1918 1918
 			}
1919
-			if (self::$debug) error_log(__METHOD__." using Filter:".print_r($filter,true)." ->".print_r($sortResult,true));
1919
+			if (self::$debug) error_log(__METHOD__." using Filter:".print_r($filter, true)." ->".print_r($sortResult, true));
1920 1920
 		}
1921 1921
 		if ($setSession)
1922 1922
 		{
1923 1923
 			self::$folderStatusCache[$this->profileID][$_folderName]['uidValidity'] = $folderStatus['UIDVALIDITY'];
1924
-			self::$folderStatusCache[$this->profileID][$_folderName]['messages']	= $folderStatus['MESSAGES'];
1924
+			self::$folderStatusCache[$this->profileID][$_folderName]['messages'] = $folderStatus['MESSAGES'];
1925 1925
 			self::$folderStatusCache[$this->profileID][$_folderName]['deleted']	= $eMailListContainsDeletedMessages[$this->profileID][$_folderName];
1926 1926
 			self::$folderStatusCache[$this->profileID][$_folderName]['uidnext']	= $folderStatus['UIDNEXT'];
1927
-			self::$folderStatusCache[$this->profileID][$_folderName]['filter']	= $_filter;
1927
+			self::$folderStatusCache[$this->profileID][$_folderName]['filter'] = $_filter;
1928 1928
 			self::$folderStatusCache[$this->profileID][$_folderName]['sortResult'] = $sortResult;
1929
-			self::$folderStatusCache[$this->profileID][$_folderName]['sort']	= $_sort;
1929
+			self::$folderStatusCache[$this->profileID][$_folderName]['sort'] = $_sort;
1930 1930
 		}
1931 1931
 		//error_log(__METHOD__." using Filter:".print_r($filter,true)." ->".print_r($sortResult,true));
1932 1932
 		//_debug_array($sortResult['match']->ids);
@@ -1940,12 +1940,12 @@  discard block
 block discarded – undo
1940 1940
 	 * @param bool _reverse wether to add REVERSE to the Sort String or not
1941 1941
 	 * @return the sort sequence for horde search
1942 1942
 	 */
1943
-	function _getSortString($_sort, $_reverse=false)
1943
+	function _getSortString($_sort, $_reverse = false)
1944 1944
 	{
1945
-		$_reverse=false;
1945
+		$_reverse = false;
1946 1946
 		if (is_numeric($_sort))
1947 1947
 		{
1948
-			switch($_sort) {
1948
+			switch ($_sort) {
1949 1949
 				case 2:
1950 1950
 					$retValue = array(Horde_Imap_Client::SORT_FROM);
1951 1951
 					break;
@@ -1967,7 +1967,7 @@  discard block
 block discarded – undo
1967 1967
 		}
1968 1968
 		else
1969 1969
 		{
1970
-			switch(strtoupper($_sort)) {
1970
+			switch (strtoupper($_sort)) {
1971 1971
 				case 'FROMADDRESS':
1972 1972
 					$retValue = array(Horde_Imap_Client::SORT_FROM);
1973 1973
 					break;
@@ -1993,7 +1993,7 @@  discard block
 block discarded – undo
1993 1993
 					break;
1994 1994
 			}
1995 1995
 		}
1996
-		if ($_reverse) array_unshift($retValue,Horde_Imap_Client::SORT_REVERSE);
1996
+		if ($_reverse) array_unshift($retValue, Horde_Imap_Client::SORT_REVERSE);
1997 1997
 		//error_log(__METHOD__.' ('.__LINE__.') '.' '.($_reverse?'REVERSE ':'').$_sort.'->'.$retValue);
1998 1998
 		return $retValue;
1999 1999
 	}
@@ -2006,28 +2006,28 @@  discard block
 block discarded – undo
2006 2006
 	 * @param boolean $_supportsOrInQuery wether to use the OR Query on QuickSearch
2007 2007
 	 * @return Horde_Imap_Client_Search_Query the IMAP filter
2008 2008
 	 */
2009
-	function createIMAPFilter($_folder, $_criterias, $_supportsOrInQuery=true)
2009
+	function createIMAPFilter($_folder, $_criterias, $_supportsOrInQuery = true)
2010 2010
 	{
2011 2011
 		$imapFilter = new Horde_Imap_Client_Search_Query();
2012 2012
 		$imapFilter->charset('UTF-8');
2013 2013
 
2014 2014
 		//_debug_array($_criterias);
2015
-		if (self::$debug) error_log(__METHOD__.' ('.__LINE__.') '.' Criterias:'.(!is_array($_criterias)?" none -> returning":array2string($_criterias)));
2016
-		if((!is_array($_criterias) || $_criterias['status']=='any') &&
2015
+		if (self::$debug) error_log(__METHOD__.' ('.__LINE__.') '.' Criterias:'.(!is_array($_criterias) ? " none -> returning" : array2string($_criterias)));
2016
+		if ((!is_array($_criterias) || $_criterias['status'] == 'any') &&
2017 2017
 			(!isset($_criterias['string']) || empty($_criterias['string'])) &&
2018
-			(!isset($_criterias['range'])|| empty($_criterias['range']) ||
2019
-			( !empty($_criterias['range'])&& ($_criterias['range']!='BETWEEN' && empty($_criterias['date'])||
2020
-			($_criterias['range']=='BETWEEN' && empty($_criterias['since'])&& empty($_criterias['before']))))))
2018
+			(!isset($_criterias['range']) || empty($_criterias['range']) ||
2019
+			(!empty($_criterias['range']) && ($_criterias['range'] != 'BETWEEN' && empty($_criterias['date']) ||
2020
+			($_criterias['range'] == 'BETWEEN' && empty($_criterias['since']) && empty($_criterias['before']))))))
2021 2021
 		{
2022 2022
 			//error_log(__METHOD__.' ('.__LINE__.') returning early Criterias:'.print_r($_criterias, true));
2023
-			$imapFilter->flag('DELETED', $set=false);
2023
+			$imapFilter->flag('DELETED', $set = false);
2024 2024
 			return $imapFilter;
2025 2025
 		}
2026 2026
 		$queryValid = false;
2027 2027
 		// statusQuery MUST be placed first, as search for subject/mailbody and such is
2028 2028
 		// depending on charset. flagSearch is not BUT messes the charset if called afterwards
2029 2029
 		$statusQueryValid = false;
2030
-		foreach((array)$_criterias['status'] as $k => $criteria) {
2030
+		foreach ((array)$_criterias['status'] as $k => $criteria) {
2031 2031
 			$imapStatusFilter = new Horde_Imap_Client_Search_Query();
2032 2032
 			$imapStatusFilter->charset('UTF-8');
2033 2033
 			$criteria = strtoupper($criteria);
@@ -2037,12 +2037,12 @@  discard block
 block discarded – undo
2037 2037
 				case 'FLAGGED':
2038 2038
 				case 'RECENT':
2039 2039
 				case 'SEEN':
2040
-					$imapStatusFilter->flag($criteria, $set=true);
2041
-					$queryValid = $statusQueryValid =true;
2040
+					$imapStatusFilter->flag($criteria, $set = true);
2041
+					$queryValid = $statusQueryValid = true;
2042 2042
 					break;
2043 2043
 				case 'READ':
2044
-					$imapStatusFilter->flag('SEEN', $set=true);
2045
-					$queryValid = $statusQueryValid =true;
2044
+					$imapStatusFilter->flag('SEEN', $set = true);
2045
+					$queryValid = $statusQueryValid = true;
2046 2046
 					break;
2047 2047
 				case 'LABEL1':
2048 2048
 				case 'KEYWORD1':
@@ -2054,38 +2054,38 @@  discard block
 block discarded – undo
2054 2054
 				case 'KEYWORD4':
2055 2055
 				case 'LABEL5':
2056 2056
 				case 'KEYWORD5':
2057
-					$imapStatusFilter->flag(str_ireplace('KEYWORD','$LABEL',$criteria), $set=true);
2058
-					$queryValid = $statusQueryValid =true;
2057
+					$imapStatusFilter->flag(str_ireplace('KEYWORD', '$LABEL', $criteria), $set = true);
2058
+					$queryValid = $statusQueryValid = true;
2059 2059
 					break;
2060 2060
 				case 'NEW':
2061
-					$imapStatusFilter->flag('RECENT', $set=true);
2062
-					$imapStatusFilter->flag('SEEN', $set=false);
2063
-					$queryValid = $statusQueryValid =true;
2061
+					$imapStatusFilter->flag('RECENT', $set = true);
2062
+					$imapStatusFilter->flag('SEEN', $set = false);
2063
+					$queryValid = $statusQueryValid = true;
2064 2064
 					break;
2065 2065
 				case 'OLD':
2066
-					$imapStatusFilter->flag('RECENT', $set=false);
2067
-					$queryValid = $statusQueryValid =true;
2066
+					$imapStatusFilter->flag('RECENT', $set = false);
2067
+					$queryValid = $statusQueryValid = true;
2068 2068
 					break;
2069 2069
 // operate only on system flags
2070 2070
 //        $systemflags = array(
2071 2071
 //            'ANSWERED', 'DELETED', 'DRAFT', 'FLAGGED', 'RECENT', 'SEEN'
2072 2072
 //        );
2073 2073
 				case 'UNANSWERED':
2074
-					$imapStatusFilter->flag('ANSWERED', $set=false);
2075
-					$queryValid = $statusQueryValid =true;
2074
+					$imapStatusFilter->flag('ANSWERED', $set = false);
2075
+					$queryValid = $statusQueryValid = true;
2076 2076
 					break;
2077 2077
 				case 'UNDELETED':
2078
-					$imapFilter->flag('DELETED', $set=false);
2078
+					$imapFilter->flag('DELETED', $set = false);
2079 2079
 					$queryValid = true;
2080 2080
 					break;
2081 2081
 				case 'UNFLAGGED':
2082
-					$imapStatusFilter->flag('FLAGGED', $set=false);
2083
-					$queryValid = $statusQueryValid =true;
2082
+					$imapStatusFilter->flag('FLAGGED', $set = false);
2083
+					$queryValid = $statusQueryValid = true;
2084 2084
 					break;
2085 2085
 				case 'UNREAD':
2086 2086
 				case 'UNSEEN':
2087
-					$imapStatusFilter->flag('SEEN', $set=false);
2088
-					$queryValid = $statusQueryValid =true;
2087
+					$imapStatusFilter->flag('SEEN', $set = false);
2088
+					$queryValid = $statusQueryValid = true;
2089 2089
 					break;
2090 2090
 				case 'UNLABEL1':
2091 2091
 				case 'UNKEYWORD1':
@@ -2097,8 +2097,8 @@  discard block
 block discarded – undo
2097 2097
 				case 'UNKEYWORD4':
2098 2098
 				case 'UNLABEL5':
2099 2099
 				case 'UNKEYWORD5':
2100
-					$imapStatusFilter->flag(str_ireplace(array('UNKEYWORD','UNLABEL'),'$LABEL',$criteria), $set=false);
2101
-					$queryValid = $statusQueryValid =true;
2100
+					$imapStatusFilter->flag(str_ireplace(array('UNKEYWORD', 'UNLABEL'), '$LABEL', $criteria), $set = false);
2101
+					$queryValid = $statusQueryValid = true;
2102 2102
 					break;
2103 2103
 				default:
2104 2104
 					$statusQueryValid = false;
@@ -2114,20 +2114,20 @@  discard block
 block discarded – undo
2114 2114
 		$imapSearchFilter = new Horde_Imap_Client_Search_Query();
2115 2115
 		$imapSearchFilter->charset('UTF-8');
2116 2116
 
2117
-		if(!empty($_criterias['string'])) {
2117
+		if (!empty($_criterias['string'])) {
2118 2118
 			$criteria = strtoupper($_criterias['type']);
2119 2119
 			switch ($criteria) {
2120 2120
 				case 'BYDATE':
2121 2121
 				case 'QUICK':
2122 2122
 				case 'QUICKWITHCC':
2123
-					$imapSearchFilter->headerText('SUBJECT', $_criterias['string'], $not=false);
2123
+					$imapSearchFilter->headerText('SUBJECT', $_criterias['string'], $not = false);
2124 2124
 					//$imapSearchFilter->charset('UTF-8');
2125 2125
 					$imapFilter2 = new Horde_Imap_Client_Search_Query();
2126 2126
 					$imapFilter2->charset('UTF-8');
2127
-					if($this->isSentFolder($_folder)) {
2128
-						$imapFilter2->headerText('TO', $_criterias['string'], $not=false);
2127
+					if ($this->isSentFolder($_folder)) {
2128
+						$imapFilter2->headerText('TO', $_criterias['string'], $not = false);
2129 2129
 					} else {
2130
-						$imapFilter2->headerText('FROM', $_criterias['string'], $not=false);
2130
+						$imapFilter2->headerText('FROM', $_criterias['string'], $not = false);
2131 2131
 					}
2132 2132
 					if ($_supportsOrInQuery)
2133 2133
 					{
@@ -2137,31 +2137,31 @@  discard block
 block discarded – undo
2137 2137
 					{
2138 2138
 						$imapSearchFilter->andSearch($imapFilter2);
2139 2139
 					}
2140
-					if ($_supportsOrInQuery && $criteria=='QUICKWITHCC')
2140
+					if ($_supportsOrInQuery && $criteria == 'QUICKWITHCC')
2141 2141
 					{
2142 2142
 						$imapFilter3 = new Horde_Imap_Client_Search_Query();
2143 2143
 						$imapFilter3->charset('UTF-8');
2144
-						$imapFilter3->headerText('CC', $_criterias['string'], $not=false);
2144
+						$imapFilter3->headerText('CC', $_criterias['string'], $not = false);
2145 2145
 						$imapSearchFilter->orSearch($imapFilter3);
2146 2146
 					}
2147 2147
 					$queryValid = true;
2148 2148
 					break;
2149 2149
 				case 'LARGER':
2150 2150
 				case 'SMALLER':
2151
-					if (strlen(trim($_criterias['string'])) != strlen((float) trim($_criterias['string'])))
2151
+					if (strlen(trim($_criterias['string'])) != strlen((float)trim($_criterias['string'])))
2152 2152
 					{
2153 2153
 						//examine string to evaluate size
2154
-						$unit = strtoupper(trim(substr(trim($_criterias['string']),strlen((float) trim($_criterias['string'])))));
2155
-						$multipleBy = array('KB'=>1024,'K'=>1024,
2156
-											'MB'=>1024*1000,'M'=>1024*1000,
2157
-											'GB'=>1024*1000*1000,'G'=>1024*1000*1000,
2158
-											'TB'=>1024*1000*1000*1000,'T'=>1024*1000*1000*1000);
2159
-						$numberinBytes=(float)$_criterias['string'];
2160
-						if (isset($multipleBy[$unit])) $numberinBytes=(float)$_criterias['string']*$multipleBy[$unit];
2154
+						$unit = strtoupper(trim(substr(trim($_criterias['string']), strlen((float)trim($_criterias['string'])))));
2155
+						$multipleBy = array('KB'=>1024, 'K'=>1024,
2156
+											'MB'=>1024 * 1000, 'M'=>1024 * 1000,
2157
+											'GB'=>1024 * 1000 * 1000, 'G'=>1024 * 1000 * 1000,
2158
+											'TB'=>1024 * 1000 * 1000 * 1000, 'T'=>1024 * 1000 * 1000 * 1000);
2159
+						$numberinBytes = (float)$_criterias['string'];
2160
+						if (isset($multipleBy[$unit])) $numberinBytes = (float)$_criterias['string'] * $multipleBy[$unit];
2161 2161
 						//error_log(__METHOD__.__LINE__.'#'.$_criterias['string'].'->'.(float)$_criterias['string'].'#'.$unit.' ='.$numberinBytes);
2162
-						$_criterias['string']=$numberinBytes;
2162
+						$_criterias['string'] = $numberinBytes;
2163 2163
 					}
2164
-					$imapSearchFilter->size( $_criterias['string'], ($criteria=='LARGER'?true:false), $not=false);
2164
+					$imapSearchFilter->size($_criterias['string'], ($criteria == 'LARGER' ? true : false), $not = false);
2165 2165
 					//$imapSearchFilter->charset('UTF-8');
2166 2166
 					$queryValid = true;
2167 2167
 					break;
@@ -2170,31 +2170,31 @@  discard block
 block discarded – undo
2170 2170
 				case 'CC':
2171 2171
 				case 'BCC':
2172 2172
 				case 'SUBJECT':
2173
-					$imapSearchFilter->headerText($criteria, $_criterias['string'], $not=false);
2173
+					$imapSearchFilter->headerText($criteria, $_criterias['string'], $not = false);
2174 2174
 					//$imapSearchFilter->charset('UTF-8');
2175 2175
 					$queryValid = true;
2176 2176
 					break;
2177 2177
 				case 'BODY':
2178 2178
 				case 'TEXT':
2179
-					$imapSearchFilter->text($_criterias['string'],($criteria=='BODY'?true:false), $not=false);
2179
+					$imapSearchFilter->text($_criterias['string'], ($criteria == 'BODY' ? true : false), $not = false);
2180 2180
 					//$imapSearchFilter->charset('UTF-8');
2181 2181
 					$queryValid = true;
2182 2182
 					break;
2183 2183
 				case 'SINCE':
2184
-					$imapSearchFilter->dateSearch(new DateTime($_criterias['string']), Horde_Imap_Client_Search_Query::DATE_SINCE, $header=true, $not=false);
2184
+					$imapSearchFilter->dateSearch(new DateTime($_criterias['string']), Horde_Imap_Client_Search_Query::DATE_SINCE, $header = true, $not = false);
2185 2185
 					$queryValid = true;
2186 2186
 					break;
2187 2187
 				case 'BEFORE':
2188
-					$imapSearchFilter->dateSearch(new DateTime($_criterias['string']), Horde_Imap_Client_Search_Query::DATE_BEFORE, $header=true, $not=false);
2188
+					$imapSearchFilter->dateSearch(new DateTime($_criterias['string']), Horde_Imap_Client_Search_Query::DATE_BEFORE, $header = true, $not = false);
2189 2189
 					$queryValid = true;
2190 2190
 					break;
2191 2191
 				case 'ON':
2192
-					$imapSearchFilter->dateSearch(new DateTime($_criterias['string']), Horde_Imap_Client_Search_Query::DATE_ON, $header=true, $not=false);
2192
+					$imapSearchFilter->dateSearch(new DateTime($_criterias['string']), Horde_Imap_Client_Search_Query::DATE_ON, $header = true, $not = false);
2193 2193
 					$queryValid = true;
2194 2194
 					break;
2195 2195
 			}
2196 2196
 		}
2197
-		if ($statusQueryValid && !$queryValid) $queryValid=true;
2197
+		if ($statusQueryValid && !$queryValid) $queryValid = true;
2198 2198
 		if ($queryValid) $imapFilter->andSearch($imapSearchFilter);
2199 2199
 
2200 2200
 		if (isset($_criterias['range']) && !empty($_criterias['range']))
@@ -2203,12 +2203,12 @@  discard block
 block discarded – undo
2203 2203
 			$imapRangeFilter = new Horde_Imap_Client_Search_Query();
2204 2204
 			$imapRangeFilter->charset('UTF-8');
2205 2205
 			$criteria = strtoupper($_criterias['range']);
2206
-			if ($_criterias['range'] == "BETWEEN" && isset($_criterias['since']) && isset($_criterias['before']) && $_criterias['since']==$_criterias['before'])
2206
+			if ($_criterias['range'] == "BETWEEN" && isset($_criterias['since']) && isset($_criterias['before']) && $_criterias['since'] == $_criterias['before'])
2207 2207
 			{
2208
-				$_criterias['date']=$_criterias['since'];
2208
+				$_criterias['date'] = $_criterias['since'];
2209 2209
 				unset($_criterias['since']);
2210 2210
 				unset($_criterias['before']);
2211
-				$criteria=$_criterias['range']='ON';
2211
+				$criteria = $_criterias['range'] = 'ON';
2212 2212
 			}
2213 2213
 			switch ($criteria) {
2214 2214
 				case 'BETWEEN':
@@ -2216,7 +2216,7 @@  discard block
 block discarded – undo
2216 2216
 					//enddate
2217 2217
 					if ($_criterias['since'])
2218 2218
 					{
2219
-						$imapRangeFilter->dateSearch(new DateTime($_criterias['since']), Horde_Imap_Client_Search_Query::DATE_SINCE, $header=true, $not=false);
2219
+						$imapRangeFilter->dateSearch(new DateTime($_criterias['since']), Horde_Imap_Client_Search_Query::DATE_SINCE, $header = true, $not = false);
2220 2220
 						$rangeValid = true;
2221 2221
 					}
2222 2222
 					//startdate
@@ -2225,28 +2225,28 @@  discard block
 block discarded – undo
2225 2225
 						$imapRangeFilter2 = new Horde_Imap_Client_Search_Query();
2226 2226
 						$imapRangeFilter2->charset('UTF-8');
2227 2227
 						//our before (startdate) is inklusive, as we work with "d-M-Y", we must add a day
2228
-						$_criterias['before'] = date("d-M-Y",DateTime::to($_criterias['before'],'ts')+(3600*24));
2229
-						$imapRangeFilter2->dateSearch(new DateTime($_criterias['before']), Horde_Imap_Client_Search_Query::DATE_BEFORE, $header=true, $not=false);
2228
+						$_criterias['before'] = date("d-M-Y", DateTime::to($_criterias['before'], 'ts') + (3600 * 24));
2229
+						$imapRangeFilter2->dateSearch(new DateTime($_criterias['before']), Horde_Imap_Client_Search_Query::DATE_BEFORE, $header = true, $not = false);
2230 2230
 						$imapRangeFilter->andSearch($imapRangeFilter2);
2231 2231
 						$rangeValid = true;
2232 2232
 					}
2233 2233
 					break;
2234 2234
 				case 'SINCE'://enddate
2235
-					$imapRangeFilter->dateSearch(new DateTime(($_criterias['since']?$_criterias['since']:$_criterias['date'])), Horde_Imap_Client_Search_Query::DATE_SINCE, $header=true, $not=false);
2235
+					$imapRangeFilter->dateSearch(new DateTime(($_criterias['since'] ? $_criterias['since'] : $_criterias['date'])), Horde_Imap_Client_Search_Query::DATE_SINCE, $header = true, $not = false);
2236 2236
 					$rangeValid = true;
2237 2237
 					break;
2238 2238
 				case 'BEFORE'://startdate
2239 2239
 					//our before (startdate) is inklusive, as we work with "d-M-Y", we must add a day
2240
-					$_criterias['before'] = date("d-M-Y",DateTime::to(($_criterias['before']?$_criterias['before']:$_criterias['date']),'ts')+(3600*24));
2241
-					$imapRangeFilter->dateSearch(new DateTime($_criterias['before']), Horde_Imap_Client_Search_Query::DATE_BEFORE, $header=true, $not=false);
2240
+					$_criterias['before'] = date("d-M-Y", DateTime::to(($_criterias['before'] ? $_criterias['before'] : $_criterias['date']), 'ts') + (3600 * 24));
2241
+					$imapRangeFilter->dateSearch(new DateTime($_criterias['before']), Horde_Imap_Client_Search_Query::DATE_BEFORE, $header = true, $not = false);
2242 2242
 					$rangeValid = true;
2243 2243
 					break;
2244 2244
 				case 'ON':
2245
-					$imapRangeFilter->dateSearch(new DateTime($_criterias['date']), Horde_Imap_Client_Search_Query::DATE_ON, $header=true, $not=false);
2245
+					$imapRangeFilter->dateSearch(new DateTime($_criterias['date']), Horde_Imap_Client_Search_Query::DATE_ON, $header = true, $not = false);
2246 2246
 					$rangeValid = true;
2247 2247
 					break;
2248 2248
 			}
2249
-			if ($rangeValid && !$queryValid) $queryValid=true;
2249
+			if ($rangeValid && !$queryValid) $queryValid = true;
2250 2250
 			if ($rangeValid) $imapFilter->andSearch($imapRangeFilter);
2251 2251
 		}
2252 2252
 		if (self::$debug)
@@ -2255,8 +2255,8 @@  discard block
 block discarded – undo
2255 2255
 			$query_str = $imapFilter->build();
2256 2256
 			//error_log(__METHOD__.' ('.__LINE__.') '.' '.$query_str['query'].' created by Criterias:'.(!is_array($_criterias)?" none -> returning":array2string($_criterias)));
2257 2257
 		}
2258
-		if($queryValid==false) {
2259
-			$imapFilter->flag('DELETED', $set=false);
2258
+		if ($queryValid == false) {
2259
+			$imapFilter->flag('DELETED', $set = false);
2260 2260
 			return $imapFilter;
2261 2261
 		} else {
2262 2262
 			return $imapFilter;
@@ -2270,11 +2270,11 @@  discard block
 block discarded – undo
2270 2270
 	 * @param  mixed/boolean $_tryIDNConversion (true/false AND FORCE): try IDN Conversion on domainparts of emailADRESSES
2271 2271
 	 * @return mixed - based on the input type
2272 2272
 	 */
2273
-	static function decode_header($_string, $_tryIDNConversion=false)
2273
+	static function decode_header($_string, $_tryIDNConversion = false)
2274 2274
 	{
2275 2275
 		if (is_array($_string))
2276 2276
 		{
2277
-			foreach($_string as $k=>$v)
2277
+			foreach ($_string as $k=>$v)
2278 2278
 			{
2279 2279
 				$_string[$k] = self::decode_header($v, $_tryIDNConversion);
2280 2280
 			}
@@ -2282,18 +2282,18 @@  discard block
 block discarded – undo
2282 2282
 		}
2283 2283
 		else
2284 2284
 		{
2285
-			$_string = Mail\Html::decodeMailHeader($_string,self::$displayCharset);
2285
+			$_string = Mail\Html::decodeMailHeader($_string, self::$displayCharset);
2286 2286
 			$test = @json_encode($_string);
2287 2287
 			//error_log(__METHOD__.__LINE__.' ->'.strlen($singleBodyPart['body']).' Error:'.json_last_error().'<- BodyPart:#'.$test.'#');
2288
-			if (($test=="null" || $test === false || is_null($test)) && strlen($_string)>0)
2288
+			if (($test == "null" || $test === false || is_null($test)) && strlen($_string) > 0)
2289 2289
 			{
2290 2290
 				// try to fix broken utf8
2291 2291
 				$x = utf8_encode($_string);
2292 2292
 				$test = @json_encode($x);
2293
-				if (($test=="null" || $test === false || is_null($test)) && strlen($_string)>0)
2293
+				if (($test == "null" || $test === false || is_null($test)) && strlen($_string) > 0)
2294 2294
 				{
2295 2295
 					// this should not be needed, unless something fails with charset detection/ wrong charset passed
2296
-					$_string = (function_exists('mb_convert_encoding')?mb_convert_encoding($_string,'UTF-8','UTF-8'):(function_exists('iconv')?@iconv("UTF-8","UTF-8//IGNORE",$_string):$_string));
2296
+					$_string = (function_exists('mb_convert_encoding') ? mb_convert_encoding($_string, 'UTF-8', 'UTF-8') : (function_exists('iconv') ? @iconv("UTF-8", "UTF-8//IGNORE", $_string) : $_string));
2297 2297
 				}
2298 2298
 				else
2299 2299
 				{
@@ -2301,7 +2301,7 @@  discard block
 block discarded – undo
2301 2301
 				}
2302 2302
 			}
2303 2303
 
2304
-			if ($_tryIDNConversion===true && stripos($_string,'@')!==false)
2304
+			if ($_tryIDNConversion === true && stripos($_string, '@') !== false)
2305 2305
 			{
2306 2306
 				$rfcAddr = self::parseAddressList($_string);
2307 2307
 				$stringA = array();
@@ -2313,11 +2313,11 @@  discard block
 block discarded – undo
2313 2313
 						$stringA = array();
2314 2314
 						break; // skip idna conversion if we encounter an error here
2315 2315
 					}
2316
-					$stringA[] = imap_rfc822_write_address($_rfcAddr->mailbox,Horde_Idna::decode($_rfcAddr->host),$_rfcAddr->personal);
2316
+					$stringA[] = imap_rfc822_write_address($_rfcAddr->mailbox, Horde_Idna::decode($_rfcAddr->host), $_rfcAddr->personal);
2317 2317
 				}
2318
-				if (!empty($stringA)) $_string = implode(',',$stringA);
2318
+				if (!empty($stringA)) $_string = implode(',', $stringA);
2319 2319
 			}
2320
-			if ($_tryIDNConversion==='FORCE')
2320
+			if ($_tryIDNConversion === 'FORCE')
2321 2321
 			{
2322 2322
 				//error_log(__METHOD__.' ('.__LINE__.') '.'->'.$_string.'='.Horde_Idna::decode($_string));
2323 2323
 				$_string = Horde_Idna::decode($_string);
@@ -2333,17 +2333,17 @@  discard block
 block discarded – undo
2333 2333
 	 * @param  boolean $decode try decoding
2334 2334
 	 * @return mixed - based on the input type
2335 2335
 	 */
2336
-	function decode_subject($_string,$decode=true)
2336
+	function decode_subject($_string, $decode = true)
2337 2337
 	{
2338 2338
 		#$string = $_string;
2339
-		if($_string=='NIL')
2339
+		if ($_string == 'NIL')
2340 2340
 		{
2341 2341
 			return 'No Subject';
2342 2342
 		}
2343 2343
 		if ($decode) $_string = self::decode_header($_string);
2344 2344
 		// make sure its utf-8
2345 2345
 		$test = @json_encode($_string);
2346
-		if (($test=="null" || $test === false || is_null($test)) && strlen($_string)>0)
2346
+		if (($test == "null" || $test === false || is_null($test)) && strlen($_string) > 0)
2347 2347
 		{
2348 2348
 			$_string = utf8_encode($_string);
2349 2349
 		}
@@ -2395,18 +2395,18 @@  discard block
 block discarded – undo
2395 2395
 	function createFolder($_parent, $_folderName, &$_error)
2396 2396
 	{
2397 2397
 		if (self::$debug) error_log(__METHOD__.' ('.__LINE__.') '."->"."$_parent, $_folderName called from:".function_backtrace());
2398
-		$parent		= $_parent;//$this->_encodeFolderName($_parent);
2399
-		$folderName	= $_folderName;//$this->_encodeFolderName($_folderName);
2398
+		$parent = $_parent; //$this->_encodeFolderName($_parent);
2399
+		$folderName = $_folderName; //$this->_encodeFolderName($_folderName);
2400 2400
 
2401
-		if(empty($parent)) {
2401
+		if (empty($parent)) {
2402 2402
 			$newFolderName = $folderName;
2403 2403
 		} else {
2404 2404
 			$HierarchyDelimiter = $this->getHierarchyDelimiter();
2405
-			$newFolderName = $parent . $HierarchyDelimiter . $folderName;
2405
+			$newFolderName = $parent.$HierarchyDelimiter.$folderName;
2406 2406
 		}
2407 2407
 		if (empty($newFolderName)) return false;
2408 2408
 		if (self::$debug) error_log(__METHOD__.' ('.__LINE__.') '.'->'.$newFolderName);
2409
-		if ($this->folderExists($newFolderName,true))
2409
+		if ($this->folderExists($newFolderName, true))
2410 2410
 		{
2411 2411
 			if (self::$debug) error_log(__METHOD__.' ('.__LINE__.') '." Folder $newFolderName already exists.");
2412 2412
 			return $newFolderName;
@@ -2423,7 +2423,7 @@  discard block
 block discarded – undo
2423 2423
 		}
2424 2424
 		catch (\Exception $e)
2425 2425
 		{
2426
-			$_error = lang('Could not create Folder %1 Reason: %2',$newFolderName,$e->getMessage());
2426
+			$_error = lang('Could not create Folder %1 Reason: %2', $newFolderName, $e->getMessage());
2427 2427
 			error_log(__METHOD__.' ('.__LINE__.') '.' create Folder '.$newFolderName.'->'.$e->getMessage().' ('.$e->details.') Namespace:'.array2string($this->icServer->getNameSpaces()).function_backtrace());
2428 2428
 			return false;
2429 2429
 		}
@@ -2452,15 +2452,15 @@  discard block
 block discarded – undo
2452 2452
 	 */
2453 2453
 	function renameFolder($_oldFolderName, $_parent, $_folderName)
2454 2454
 	{
2455
-		$oldFolderName	= $_oldFolderName;//$this->_encodeFolderName($_oldFolderName);
2456
-		$parent		= $_parent;//$this->_encodeFolderName($_parent);
2457
-		$folderName	= $_folderName;//$this->_encodeFolderName($_folderName);
2455
+		$oldFolderName = $_oldFolderName; //$this->_encodeFolderName($_oldFolderName);
2456
+		$parent = $_parent; //$this->_encodeFolderName($_parent);
2457
+		$folderName = $_folderName; //$this->_encodeFolderName($_folderName);
2458 2458
 
2459
-		if(empty($parent)) {
2459
+		if (empty($parent)) {
2460 2460
 			$newFolderName = $folderName;
2461 2461
 		} else {
2462 2462
 			$HierarchyDelimiter = $this->getHierarchyDelimiter();
2463
-			$newFolderName = $parent . $HierarchyDelimiter . $folderName;
2463
+			$newFolderName = $parent.$HierarchyDelimiter.$folderName;
2464 2464
 		}
2465 2465
 		if (self::$debug) error_log("create folder: $newFolderName");
2466 2466
 		try
@@ -2469,10 +2469,10 @@  discard block
 block discarded – undo
2469 2469
 		}
2470 2470
 		catch (\Exception $e)
2471 2471
 		{
2472
-			throw new Exception(__METHOD__." failed for $oldFolderName (rename to: $newFolderName) with error:".$e->getMessage());;
2472
+			throw new Exception(__METHOD__." failed for $oldFolderName (rename to: $newFolderName) with error:".$e->getMessage()); ;
2473 2473
 		}
2474 2474
 		// clear FolderExistsInfoCache
2475
-		Cache::setCache(Cache::INSTANCE,'email','icServerFolderExistsInfo'.trim($GLOBALS['egw_info']['user']['account_id']),$folderInfo,60*60*5);
2475
+		Cache::setCache(Cache::INSTANCE, 'email', 'icServerFolderExistsInfo'.trim($GLOBALS['egw_info']['user']['account_id']), $folderInfo, 60 * 60 * 5);
2476 2476
 
2477 2477
 		return $newFolderName;
2478 2478
 
@@ -2491,15 +2491,15 @@  discard block
 block discarded – undo
2491 2491
 		//$folderName = $this->_encodeFolderName($_folderName);
2492 2492
 		try
2493 2493
 		{
2494
-			$this->icServer->subscribeMailbox($_folderName,false);
2494
+			$this->icServer->subscribeMailbox($_folderName, false);
2495 2495
 			$this->icServer->deleteMailbox($_folderName);
2496 2496
 		}
2497 2497
 		catch (\Exception $e)
2498 2498
 		{
2499
-			throw new Exception("Deleting Folder $_folderName failed! Error:".$e->getMessage());;
2499
+			throw new Exception("Deleting Folder $_folderName failed! Error:".$e->getMessage()); ;
2500 2500
 		}
2501 2501
 		// clear FolderExistsInfoCache
2502
-		Cache::setCache(Cache::INSTANCE,'email','icServerFolderExistsInfo'.trim($GLOBALS['egw_info']['user']['account_id']),$folderInfo,60*60*5);
2502
+		Cache::setCache(Cache::INSTANCE, 'email', 'icServerFolderExistsInfo'.trim($GLOBALS['egw_info']['user']['account_id']), $folderInfo, 60 * 60 * 5);
2503 2503
 
2504 2504
 		return true;
2505 2505
 	}
@@ -2534,10 +2534,10 @@  discard block
 block discarded – undo
2534 2534
 	 *
2535 2535
 	 * @return array with folder objects. eg.: INBOX => {inbox object}
2536 2536
 	 */
2537
-	function getFolderObjects($_subscribedOnly=false, $_getCounters=false, $_alwaysGetDefaultFolders=false,$_useCacheIfPossible=true)
2537
+	function getFolderObjects($_subscribedOnly = false, $_getCounters = false, $_alwaysGetDefaultFolders = false, $_useCacheIfPossible = true)
2538 2538
 	{
2539 2539
 		if (self::$debug) error_log(__METHOD__.' ('.__LINE__.') '.' ServerID:'.$this->icServer->ImapServerId.", subscribedOnly:$_subscribedOnly, getCounters:$_getCounters, alwaysGetDefaultFolders:$_alwaysGetDefaultFolders, _useCacheIfPossible:$_useCacheIfPossible");
2540
-		if (self::$debugTimes) $starttime = microtime (true);
2540
+		if (self::$debugTimes) $starttime = microtime(true);
2541 2541
 		static $folders2return;
2542 2542
 		//$_subscribedOnly=false;
2543 2543
 		// always use static on single request if info is available;
@@ -2545,42 +2545,42 @@  discard block
 block discarded – undo
2545 2545
 		// set $_useCacheIfPossible to false !
2546 2546
 		if ($_useCacheIfPossible && isset($folders2return[$this->icServer->ImapServerId]) && !empty($folders2return[$this->icServer->ImapServerId]))
2547 2547
 		{
2548
-			if (self::$debugTimes) self::logRunTimes($starttime,null,'using static',__METHOD__.' ('.__LINE__.') ');
2548
+			if (self::$debugTimes) self::logRunTimes($starttime, null, 'using static', __METHOD__.' ('.__LINE__.') ');
2549 2549
 			return $folders2return[$this->icServer->ImapServerId];
2550 2550
 		}
2551 2551
 
2552
-		if ($_subscribedOnly && $_getCounters===false)
2552
+		if ($_subscribedOnly && $_getCounters === false)
2553 2553
 		{
2554
-			if (is_null($folders2return)) $folders2return = Cache::getCache(Cache::INSTANCE,'email','folderObjects'.trim($GLOBALS['egw_info']['user']['account_id']),null,array(),60*60*1);
2554
+			if (is_null($folders2return)) $folders2return = Cache::getCache(Cache::INSTANCE, 'email', 'folderObjects'.trim($GLOBALS['egw_info']['user']['account_id']), null, array(), 60 * 60 * 1);
2555 2555
 			if ($_useCacheIfPossible && isset($folders2return[$this->icServer->ImapServerId]) && !empty($folders2return[$this->icServer->ImapServerId]))
2556 2556
 			{
2557 2557
 				//error_log(__METHOD__.' ('.__LINE__.') '.' using Cached folderObjects'.array2string($folders2return[$this->icServer->ImapServerId]));
2558
-				if (self::$debugTimes) self::logRunTimes($starttime,null,'from Cache',__METHOD__.' ('.__LINE__.') ');
2558
+				if (self::$debugTimes) self::logRunTimes($starttime, null, 'from Cache', __METHOD__.' ('.__LINE__.') ');
2559 2559
 				return $folders2return[$this->icServer->ImapServerId];
2560 2560
 			}
2561 2561
 		}
2562 2562
 		// use $folderBasicInfo for holding attributes and other basic folderinfo $folderBasicInfo[$this->icServer->ImapServerId]
2563 2563
 		static $folderBasicInfo;
2564
-		if (is_null($folderBasicInfo)||!isset($folderBasicInfo[$this->icServer->ImapServerId])) $folderBasicInfo = Cache::getCache(Cache::INSTANCE,'email','folderBasicInfo'.trim($GLOBALS['egw_info']['user']['account_id']),null,array(),60*60*1);
2564
+		if (is_null($folderBasicInfo) || !isset($folderBasicInfo[$this->icServer->ImapServerId])) $folderBasicInfo = Cache::getCache(Cache::INSTANCE, 'email', 'folderBasicInfo'.trim($GLOBALS['egw_info']['user']['account_id']), null, array(), 60 * 60 * 1);
2565 2565
 		//error_log(__METHOD__.' ('.__LINE__.') '.array2string(array_keys($folderBasicInfo[$this->icServer->ImapServerId])));
2566 2566
 
2567 2567
 		$delimiter = $this->getHierarchyDelimiter();
2568 2568
 
2569 2569
 		$inboxData = new \stdClass;
2570
-		$inboxData->name 		= 'INBOX';
2570
+		$inboxData->name = 'INBOX';
2571 2571
 		$inboxData->folderName		= 'INBOX';
2572
-		$inboxData->displayName		= lang('INBOX');
2572
+		$inboxData->displayName = lang('INBOX');
2573 2573
 		$inboxData->delimiter 		= $delimiter;
2574
-		$inboxData->shortFolderName	= 'INBOX';
2575
-		$inboxData->shortDisplayName	= lang('INBOX');
2574
+		$inboxData->shortFolderName = 'INBOX';
2575
+		$inboxData->shortDisplayName = lang('INBOX');
2576 2576
 		$inboxData->subscribed = true;
2577
-		if($_getCounters == true) {
2577
+		if ($_getCounters == true) {
2578 2578
 			$inboxData->counter = $this->getMailBoxCounters('INBOX');
2579 2579
 		}
2580 2580
 		// force unsubscribed by preference showAllFoldersInFolderPane
2581 2581
 		if ($_subscribedOnly == true &&
2582 2582
 			isset($this->mailPreferences['showAllFoldersInFolderPane']) &&
2583
-			$this->mailPreferences['showAllFoldersInFolderPane']==1)
2583
+			$this->mailPreferences['showAllFoldersInFolderPane'] == 1)
2584 2584
 		{
2585 2585
 			$_subscribedOnly = false;
2586 2586
 		}
@@ -2593,12 +2593,12 @@  discard block
 block discarded – undo
2593 2593
 		//error_log(__METHOD__.__LINE__.array2string($nameSpace));
2594 2594
 		if (is_array($nameSpace))
2595 2595
 		{
2596
-			foreach($nameSpace as $k => $singleNameSpace) {
2596
+			foreach ($nameSpace as $k => $singleNameSpace) {
2597 2597
 				$type = $singleNameSpace['type'];
2598 2598
 				// the following line (assumption that for the same namespace the delimiter should be equal) may be wrong
2599
-				$foldersNameSpace[$type]['delimiter']  = $singleNameSpace['delimiter'];
2599
+				$foldersNameSpace[$type]['delimiter'] = $singleNameSpace['delimiter'];
2600 2600
 
2601
-				if(is_array($singleNameSpace)&&$fetchedAllInOneGo==false) {
2601
+				if (is_array($singleNameSpace) && $fetchedAllInOneGo == false) {
2602 2602
 					// fetch and sort the subscribed folders
2603 2603
 					// we alway fetch the subscribed, as this provides the only way to tell
2604 2604
 					// if a folder is subscribed or not
@@ -2606,22 +2606,22 @@  discard block
 block discarded – undo
2606 2606
 					{
2607 2607
 						try
2608 2608
 						{
2609
-							$subscribedMailboxes = $this->icServer->listSubscribedMailboxes('',0,true);
2609
+							$subscribedMailboxes = $this->icServer->listSubscribedMailboxes('', 0, true);
2610 2610
 							if (!empty($subscribedMailboxes))
2611 2611
 							{
2612 2612
 								$fetchedAllInOneGo = true;
2613 2613
 							}
2614 2614
 							else
2615 2615
 							{
2616
-								$subscribedMailboxes = $this->icServer->listSubscribedMailboxes($singleNameSpace['prefix'],0,true);
2616
+								$subscribedMailboxes = $this->icServer->listSubscribedMailboxes($singleNameSpace['prefix'], 0, true);
2617 2617
 							}
2618 2618
 						}
2619
-						catch(Exception $e)
2619
+						catch (Exception $e)
2620 2620
 						{
2621 2621
 							continue;
2622 2622
 						}
2623 2623
 						//echo "subscribedMailboxes";_debug_array($subscribedMailboxes);
2624
-						$subscribedFoldersPerNS = (!empty($subscribedMailboxes)?array_keys($subscribedMailboxes):array());
2624
+						$subscribedFoldersPerNS = (!empty($subscribedMailboxes) ? array_keys($subscribedMailboxes) : array());
2625 2625
 						//if (is_array($foldersNameSpace[$type]['subscribed'])) sort($foldersNameSpace[$type]['subscribed']);
2626 2626
 						//_debug_array($foldersNameSpace);
2627 2627
 						//error_log(__METHOD__.__LINE__.array2string($singleNameSpace).':#:'.array2string($subscribedFoldersPerNS));
@@ -2631,18 +2631,18 @@  discard block
 block discarded – undo
2631 2631
 							foreach ($subscribedMailboxes as $k => $finfo)
2632 2632
 							{
2633 2633
 								//error_log(__METHOD__.__LINE__.$k.':#:'.array2string($finfo));
2634
-								$subscribedFoldersForCache[$this->icServer->ImapServerId][$k]=
2635
-								$folderBasicInfo[$this->icServer->ImapServerId][$k]=array(
2634
+								$subscribedFoldersForCache[$this->icServer->ImapServerId][$k] =
2635
+								$folderBasicInfo[$this->icServer->ImapServerId][$k] = array(
2636 2636
 									'MAILBOX'=>$finfo['MAILBOX'],
2637 2637
 									'ATTRIBUTES'=>$finfo['ATTRIBUTES'],
2638
-									'delimiter'=>$finfo['delimiter'],//lowercase for some reason???
2639
-									'SUBSCRIBED'=>$finfo['SUBSCRIBED'],//seeded by getMailboxes
2638
+									'delimiter'=>$finfo['delimiter'], //lowercase for some reason???
2639
+									'SUBSCRIBED'=>$finfo['SUBSCRIBED'], //seeded by getMailboxes
2640 2640
 								);
2641
-								if (empty($foldersNameSpace[$type]['subscribed']) || !in_array($k,$foldersNameSpace[$type]['subscribed']))
2641
+								if (empty($foldersNameSpace[$type]['subscribed']) || !in_array($k, $foldersNameSpace[$type]['subscribed']))
2642 2642
 								{
2643 2643
 									$foldersNameSpace[$type]['subscribed'][] = $k;
2644 2644
 								}
2645
-								if (empty($foldersNameSpace[$type]['all']) || !in_array($k,$foldersNameSpace[$type]['all']))
2645
+								if (empty($foldersNameSpace[$type]['all']) || !in_array($k, $foldersNameSpace[$type]['all']))
2646 2646
 								{
2647 2647
 									$foldersNameSpace[$type]['all'][] = $k;
2648 2648
 								}
@@ -2665,7 +2665,7 @@  discard block
 block discarded – undo
2665 2665
 						// that may produce problems, when encountering recursions probably
2666 2666
 						// horde is handling that, so we do not; keep that in mind!
2667 2667
 						//$allMailboxesExt = $this->icServer->getMailboxes($singleNameSpace['prefix'],2,true);
2668
-						$allMailboxesExt = $this->icServer->getMailboxes($singleNameSpace['prefix'],0,true);
2668
+						$allMailboxesExt = $this->icServer->getMailboxes($singleNameSpace['prefix'], 0, true);
2669 2669
 					}
2670 2670
 					catch (\Exception $e)
2671 2671
 					{
@@ -2683,26 +2683,26 @@  discard block
 block discarded – undo
2683 2683
 					foreach ($allMailboxesExt as $mbx) {
2684 2684
 						if (!isset($folderBasicInfo[$this->icServer->ImapServerId][$mbx['MAILBOX']]))
2685 2685
 						{
2686
-							$folderBasicInfo[$this->icServer->ImapServerId][$mbx['MAILBOX']]=array(
2686
+							$folderBasicInfo[$this->icServer->ImapServerId][$mbx['MAILBOX']] = array(
2687 2687
 								'MAILBOX'=>$mbx['MAILBOX'],
2688 2688
 								'ATTRIBUTES'=>$mbx['ATTRIBUTES'],
2689
-								'delimiter'=>$mbx['delimiter'],//lowercase for some reason???
2690
-								'SUBSCRIBED'=>$mbx['SUBSCRIBED'],//seeded by getMailboxes
2689
+								'delimiter'=>$mbx['delimiter'], //lowercase for some reason???
2690
+								'SUBSCRIBED'=>$mbx['SUBSCRIBED'], //seeded by getMailboxes
2691 2691
 							);
2692 2692
 							if ($mbx['SUBSCRIBED'] && !isset($subscribedFoldersForCache[$this->icServer->ImapServerId][$mbx['MAILBOX']]))
2693 2693
 							{
2694 2694
 								$subscribedFoldersForCache[$this->icServer->ImapServerId][$mbx['MAILBOX']] = $folderBasicInfo[$this->icServer->ImapServerId][$mbx['MAILBOX']];
2695 2695
 							}
2696 2696
 						}
2697
-						if ($mbx['SUBSCRIBED'] && (empty($foldersNameSpace[$type]['subscribed']) || !in_array($mbx['MAILBOX'],$foldersNameSpace[$type]['subscribed'])))
2697
+						if ($mbx['SUBSCRIBED'] && (empty($foldersNameSpace[$type]['subscribed']) || !in_array($mbx['MAILBOX'], $foldersNameSpace[$type]['subscribed'])))
2698 2698
 						{
2699 2699
 							$foldersNameSpace[$type]['subscribed'][] = $mbx['MAILBOX'];
2700 2700
 						}
2701 2701
 						//echo __METHOD__;_debug_array($mbx);
2702 2702
 						//error_log(__METHOD__.' ('.__LINE__.') '.array2string($mbx));
2703
-						if (isset($allMailBoxesExtSorted[$mbx['MAILBOX']])||
2704
-							isset($allMailBoxesExtSorted[$mbx['MAILBOX'].$foldersNameSpace[$type]['delimiter']])||
2705
-							(substr($mbx['MAILBOX'],-1)==$foldersNameSpace[$type]['delimiter'] && isset($allMailBoxesExtSorted[substr($mbx['MAILBOX'],0,-1)]))
2703
+						if (isset($allMailBoxesExtSorted[$mbx['MAILBOX']]) ||
2704
+							isset($allMailBoxesExtSorted[$mbx['MAILBOX'].$foldersNameSpace[$type]['delimiter']]) ||
2705
+							(substr($mbx['MAILBOX'], -1) == $foldersNameSpace[$type]['delimiter'] && isset($allMailBoxesExtSorted[substr($mbx['MAILBOX'], 0, -1)]))
2706 2706
 						) continue;
2707 2707
 
2708 2708
 						//echo '#'.$mbx['MAILBOX'].':'.array2string($mbx)."#<br>";
@@ -2712,7 +2712,7 @@  discard block
 block discarded – undo
2712 2712
 					//_debug_array(array_keys($allMailBoxesExtSorted));
2713 2713
 					$allMailboxes = array();
2714 2714
 					foreach ((array)$allMailBoxesExtSorted as $mbx) {
2715
-						if (!in_array($mbx['MAILBOX'],$allMailboxes)) $allMailboxes[] = $mbx['MAILBOX'];
2715
+						if (!in_array($mbx['MAILBOX'], $allMailboxes)) $allMailboxes[] = $mbx['MAILBOX'];
2716 2716
 						//echo "Result:";_debug_array($allMailboxes);
2717 2717
 					}
2718 2718
 					$foldersNameSpace[$type]['all'] = $allMailboxes;
@@ -2721,57 +2721,57 @@  discard block
 block discarded – undo
2721 2721
 			}
2722 2722
 		}
2723 2723
 		//subscribed folders may be used in getFolderStatus
2724
-		Cache::setCache(Cache::INSTANCE,'email','subscribedFolders'.trim($GLOBALS['egw_info']['user']['account_id']),$subscribedFoldersForCache,$expiration=60*60*1);
2724
+		Cache::setCache(Cache::INSTANCE, 'email', 'subscribedFolders'.trim($GLOBALS['egw_info']['user']['account_id']), $subscribedFoldersForCache, $expiration = 60 * 60 * 1);
2725 2725
 		//echo "<br>FolderNameSpace To Process:";_debug_array($foldersNameSpace);
2726 2726
 		$autoFolderObjects = $folders = array();
2727 2727
 		$autofolder_exists = array();
2728
-		foreach( array('personal', 'others', 'shared') as $type) {
2729
-			if(isset($foldersNameSpace[$type])) {
2730
-				if($_subscribedOnly) {
2731
-					if( !empty($foldersNameSpace[$type]['subscribed']) ) $listOfFolders = $foldersNameSpace[$type]['subscribed'];
2728
+		foreach (array('personal', 'others', 'shared') as $type) {
2729
+			if (isset($foldersNameSpace[$type])) {
2730
+				if ($_subscribedOnly) {
2731
+					if (!empty($foldersNameSpace[$type]['subscribed'])) $listOfFolders = $foldersNameSpace[$type]['subscribed'];
2732 2732
 				} else {
2733
-					if( !empty($foldersNameSpace[$type]['all'])) $listOfFolders = $foldersNameSpace[$type]['all'];
2733
+					if (!empty($foldersNameSpace[$type]['all'])) $listOfFolders = $foldersNameSpace[$type]['all'];
2734 2734
 				}
2735
-				foreach((array)$listOfFolders as $folderName) {
2735
+				foreach ((array)$listOfFolders as $folderName) {
2736 2736
 					//echo "<br>FolderToCheck:$folderName<br>";
2737 2737
 					//error_log(__METHOD__.__LINE__.'#Delimiter:'.$delimiter.':#'.$folderName);
2738
-					if ($_subscribedOnly && empty($foldersNameSpace[$type]['all'])) continue;//when subscribedonly, we fetch all folders in one go.
2739
-					if($_subscribedOnly && !(in_array($folderName, $foldersNameSpace[$type]['all'])||in_array($folderName.$foldersNameSpace[$type]['delimiter'], $foldersNameSpace[$type]['all']))) {
2738
+					if ($_subscribedOnly && empty($foldersNameSpace[$type]['all'])) continue; //when subscribedonly, we fetch all folders in one go.
2739
+					if ($_subscribedOnly && !(in_array($folderName, $foldersNameSpace[$type]['all']) || in_array($folderName.$foldersNameSpace[$type]['delimiter'], $foldersNameSpace[$type]['all']))) {
2740 2740
 						#echo "$folderName failed to be here <br>";
2741 2741
 						continue;
2742 2742
 					}
2743 2743
 					if (isset($folders[$folderName])) continue;
2744 2744
 					if (isset($autoFolderObjects[$folderName])) continue;
2745
-					if (empty($delimiter)||$delimiter != $foldersNameSpace[$type]['delimiter']) $delimiter = $foldersNameSpace[$type]['delimiter'];
2745
+					if (empty($delimiter) || $delimiter != $foldersNameSpace[$type]['delimiter']) $delimiter = $foldersNameSpace[$type]['delimiter'];
2746 2746
 					$folderParts = explode($delimiter, $folderName);
2747 2747
 					$shortName = array_pop($folderParts);
2748 2748
 
2749 2749
 					$folderObject = new \stdClass;
2750
-					$folderObject->delimiter	= $delimiter;
2751
-					$folderObject->folderName	= $folderName;
2752
-					$folderObject->shortFolderName	= $shortName;
2753
-					if(!$_subscribedOnly) {
2750
+					$folderObject->delimiter = $delimiter;
2751
+					$folderObject->folderName = $folderName;
2752
+					$folderObject->shortFolderName = $shortName;
2753
+					if (!$_subscribedOnly) {
2754 2754
 						#echo $folderName."->".$type."<br>";
2755 2755
 						#_debug_array($foldersNameSpace[$type]['subscribed']);
2756 2756
 						$folderObject->subscribed = in_array($folderName, (array)$foldersNameSpace[$type]['subscribed']);
2757 2757
 					}
2758 2758
 
2759
-					if($_getCounters == true) {
2759
+					if ($_getCounters == true) {
2760 2760
 						//error_log(__METHOD__.' ('.__LINE__.') '.' getCounter forFolder:'.$folderName);
2761 2761
 						$folderObject->counter = $this->getMailBoxCounters($folderName);
2762 2762
 					}
2763
-					if(strtoupper($folderName) == 'INBOX') {
2763
+					if (strtoupper($folderName) == 'INBOX') {
2764 2764
 						$folderName = 'INBOX';
2765
-						$folderObject->folderName	= 'INBOX';
2766
-						$folderObject->shortFolderName	= 'INBOX';
2767
-						$folderObject->displayName	= lang('INBOX');
2765
+						$folderObject->folderName = 'INBOX';
2766
+						$folderObject->shortFolderName = 'INBOX';
2767
+						$folderObject->displayName = lang('INBOX');
2768 2768
 						$folderObject->shortDisplayName = lang('INBOX');
2769
-						$folderObject->subscribed	= true;
2769
+						$folderObject->subscribed = true;
2770 2770
 					// translate the automatic Folders (Sent, Drafts, ...) like the INBOX
2771
-					} elseif (in_array($shortName,self::$autoFolders)) {
2772
-						$tmpfolderparts = explode($delimiter,$folderObject->folderName);
2771
+					} elseif (in_array($shortName, self::$autoFolders)) {
2772
+						$tmpfolderparts = explode($delimiter, $folderObject->folderName);
2773 2773
 						array_pop($tmpfolderparts);
2774
-						$folderObject->displayName = implode($delimiter,$tmpfolderparts).$delimiter.lang($shortName);
2774
+						$folderObject->displayName = implode($delimiter, $tmpfolderparts).$delimiter.lang($shortName);
2775 2775
 						$folderObject->shortDisplayName = lang($shortName);
2776 2776
 						unset($tmpfolderparts);
2777 2777
 					} else {
@@ -2779,13 +2779,13 @@  discard block
 block discarded – undo
2779 2779
 						$folderObject->shortDisplayName = $shortName;
2780 2780
 					}
2781 2781
 					//$folderName = $folderName;
2782
-					if (in_array($shortName,self::$autoFolders)&&self::searchValueInFolderObjects($shortName,$autoFolderObjects)===false) {
2782
+					if (in_array($shortName, self::$autoFolders) && self::searchValueInFolderObjects($shortName, $autoFolderObjects) === false) {
2783 2783
 						$autoFolderObjects[$folderName] = $folderObject;
2784 2784
 					} else {
2785 2785
 						$folders[$folderName] = $folderObject;
2786 2786
 					}
2787 2787
 					//error_log(__METHOD__.' ('.__LINE__.') '.':'.$folderObject->folderName);
2788
-					if (!isset(self::$specialUseFolders)) $this->getSpecialUseFolders ();
2788
+					if (!isset(self::$specialUseFolders)) $this->getSpecialUseFolders();
2789 2789
 					if (isset(self::$specialUseFolders[$folderName]))
2790 2790
 					{
2791 2791
 						$autofolder_exists[$folderName] = self::$specialUseFolders[$folderName];
@@ -2794,27 +2794,27 @@  discard block
 block discarded – undo
2794 2794
 			}
2795 2795
 		}
2796 2796
 		if (is_array($autoFolderObjects) && !empty($autoFolderObjects)) {
2797
-			uasort($autoFolderObjects,array($this,"sortByAutoFolderPos"));
2797
+			uasort($autoFolderObjects, array($this, "sortByAutoFolderPos"));
2798 2798
 		}
2799 2799
 		// check if some standard folders are missing and need to be created
2800 2800
 		if (count($autofolder_exists) < count(self::$autoFolders) && $this->check_create_autofolders($autofolder_exists))
2801 2801
 		{
2802 2802
 			// if new folders have been created, re-read folders ignoring the cache
2803
-			return $this->getFolderObjects($_subscribedOnly, $_getCounters, $_alwaysGetDefaultFolders, false);	// false = do NOT use cache
2803
+			return $this->getFolderObjects($_subscribedOnly, $_getCounters, $_alwaysGetDefaultFolders, false); // false = do NOT use cache
2804 2804
 		}
2805
-		if (is_array($folders)) uasort($folders,array($this,"sortByDisplayName"));
2805
+		if (is_array($folders)) uasort($folders, array($this, "sortByDisplayName"));
2806 2806
 		//$folders2return = array_merge($autoFolderObjects,$folders);
2807 2807
 		//_debug_array($folders2return); #exit;
2808
-		$folders2return[$this->icServer->ImapServerId] = array_merge((array)$inboxFolderObject,(array)$autoFolderObjects,(array)$folders);
2809
-		if (($_subscribedOnly && $_getCounters===false) ||
2810
-			($_subscribedOnly == false && $_getCounters===false &&
2808
+		$folders2return[$this->icServer->ImapServerId] = array_merge((array)$inboxFolderObject, (array)$autoFolderObjects, (array)$folders);
2809
+		if (($_subscribedOnly && $_getCounters === false) ||
2810
+			($_subscribedOnly == false && $_getCounters === false &&
2811 2811
 			isset($this->mailPreferences['showAllFoldersInFolderPane']) &&
2812
-			$this->mailPreferences['showAllFoldersInFolderPane']==1))
2812
+			$this->mailPreferences['showAllFoldersInFolderPane'] == 1))
2813 2813
 		{
2814
-			Cache::setCache(Cache::INSTANCE,'email','folderObjects'.trim($GLOBALS['egw_info']['user']['account_id']),$folders2return,$expiration=60*60*1);
2814
+			Cache::setCache(Cache::INSTANCE, 'email', 'folderObjects'.trim($GLOBALS['egw_info']['user']['account_id']), $folders2return, $expiration = 60 * 60 * 1);
2815 2815
 		}
2816
-		Cache::setCache(Cache::INSTANCE,'email','folderBasicInfo'.trim($GLOBALS['egw_info']['user']['account_id']),$folderBasicInfo,$expiration=60*60*1);
2817
-		if (self::$debugTimes) self::logRunTimes($starttime,null,function_backtrace(),__METHOD__.' ('.__LINE__.') ');
2816
+		Cache::setCache(Cache::INSTANCE, 'email', 'folderBasicInfo'.trim($GLOBALS['egw_info']['user']['account_id']), $folderBasicInfo, $expiration = 60 * 60 * 1);
2817
+		if (self::$debugTimes) self::logRunTimes($starttime, null, function_backtrace(), __METHOD__.' ('.__LINE__.') ');
2818 2818
 		return $folders2return[$this->icServer->ImapServerId];
2819 2819
 	}
2820 2820
 
@@ -2835,21 +2835,21 @@  discard block
 block discarded – undo
2835 2835
 	 *
2836 2836
 	 * @return array arrays of folders
2837 2837
 	 */
2838
-	function getFolderArrays ($_nodePath = null, $_onlyTopLevel = false, $_search= 2, $_subscribedOnly = false, $_getCounter = false)
2838
+	function getFolderArrays($_nodePath = null, $_onlyTopLevel = false, $_search = 2, $_subscribedOnly = false, $_getCounter = false)
2839 2839
 	{
2840 2840
 		// delimiter
2841 2841
 		$delimiter = $this->getHierarchyDelimiter();
2842 2842
 
2843
-		$folders = $nameSpace =  array();
2843
+		$folders = $nameSpace = array();
2844 2844
 		$nameSpaceTmp = $this->_getNameSpaces();
2845
-		foreach($nameSpaceTmp as $k => $singleNameSpace) {
2846
-			$nameSpace[$singleNameSpace['type']]=$singleNameSpace;
2845
+		foreach ($nameSpaceTmp as $k => $singleNameSpace) {
2846
+			$nameSpace[$singleNameSpace['type']] = $singleNameSpace;
2847 2847
 		}
2848 2848
 		unset($nameSpaceTmp);
2849 2849
 
2850 2850
 		//error_log(__METHOD__.__LINE__.array2string($nameSpace));
2851 2851
 		// Get special use folders
2852
-		if (!isset(self::$specialUseFolders)) $this->getSpecialUseFolders (); // Set self::$specialUseFolders
2852
+		if (!isset(self::$specialUseFolders)) $this->getSpecialUseFolders(); // Set self::$specialUseFolders
2853 2853
 		// topLevelQueries generally ignore the $_search param. Except for Config::examineNamespace
2854 2854
 		if ($_onlyTopLevel) // top level leaves
2855 2855
 		{
@@ -2860,20 +2860,20 @@  discard block
 block discarded – undo
2860 2860
 			if (is_null(self::$mailConfig)) self::$mailConfig = Config::read('mail');
2861 2861
 			if (self::$mailConfig['examineNamespace'])
2862 2862
 			{
2863
-				$prefixes=array();
2863
+				$prefixes = array();
2864 2864
 				if (is_array($nameSpace))
2865 2865
 				{
2866
-					foreach($nameSpace as $k => $singleNameSpace) {
2866
+					foreach ($nameSpace as $k => $singleNameSpace) {
2867 2867
 						$type = $singleNameSpace['type'];
2868 2868
 
2869
-						if(is_array($singleNameSpace) && $singleNameSpace['prefix']){
2869
+						if (is_array($singleNameSpace) && $singleNameSpace['prefix']) {
2870 2870
 							$prefixes[$type] = $singleNameSpace['prefix'];
2871 2871
 							//regard extra care for nameSpacequeries when configured AND respect $_search
2872
-							$result = $this->icServer->getMailboxes($singleNameSpace['prefix'], $_search==0?0:2, true);
2872
+							$result = $this->icServer->getMailboxes($singleNameSpace['prefix'], $_search == 0 ? 0 : 2, true);
2873 2873
 							if (is_array($result))
2874 2874
 							{
2875 2875
 								ksort($result);
2876
-								$topFolders = array_merge($topFolders,$result);
2876
+								$topFolders = array_merge($topFolders, $result);
2877 2877
 							}
2878 2878
 						}
2879 2879
 					}
@@ -2882,7 +2882,7 @@  discard block
 block discarded – undo
2882 2882
 
2883 2883
 			$autofolders = array();
2884 2884
 
2885
-			foreach(self::$specialUseFolders as $path => $folder)
2885
+			foreach (self::$specialUseFolders as $path => $folder)
2886 2886
 			{
2887 2887
 				if ($this->folderExists($path))
2888 2888
 				{
@@ -2890,9 +2890,9 @@  discard block
 block discarded – undo
2890 2890
 				}
2891 2891
 			}
2892 2892
 			// Check if the special use folders are there, otherwise try to create them
2893
-			if (count($autofolders) < count(self::$autoFolders) && $this->check_create_autofolders ($autofolders))
2893
+			if (count($autofolders) < count(self::$autoFolders) && $this->check_create_autofolders($autofolders))
2894 2894
 			{
2895
-				return $this->getFolderArrays ($_nodePath, $_onlyTopLevel, $_search, $_subscribedOnly, $_getCounter);
2895
+				return $this->getFolderArrays($_nodePath, $_onlyTopLevel, $_search, $_subscribedOnly, $_getCounter);
2896 2896
 			}
2897 2897
 
2898 2898
 			// now process topFolders for next level
@@ -2900,13 +2900,13 @@  discard block
 block discarded – undo
2900 2900
 			{
2901 2901
 				$pattern = "/\\".$delimiter."/";
2902 2902
 				$reference = preg_replace($pattern, '', $node['MAILBOX']);
2903
-				if(!empty($prefixes))
2903
+				if (!empty($prefixes))
2904 2904
 				{
2905 2905
 					$reference = '';
2906
-					$tmpArray = explode($delimiter,$node['MAILBOX']);
2907
-					foreach($tmpArray as $p)
2906
+					$tmpArray = explode($delimiter, $node['MAILBOX']);
2907
+					foreach ($tmpArray as $p)
2908 2908
 					{
2909
-						$reference = empty($reference)?$p:$reference.$delimiter.$p;
2909
+						$reference = empty($reference) ? $p : $reference.$delimiter.$p;
2910 2910
 					}
2911 2911
 				}
2912 2912
 				$mainFolder = $subFolders = array();
@@ -2942,19 +2942,19 @@  discard block
 block discarded – undo
2942 2942
 							$nFolders [$path] = $folder;
2943 2943
 						}
2944 2944
 					}
2945
-					if (is_array($aFolders)) uasort ($aFolders, array($this,'sortByAutofolder'));
2945
+					if (is_array($aFolders)) uasort($aFolders, array($this, 'sortByAutofolder'));
2946 2946
 					//ksort($aFolders);
2947 2947
 
2948 2948
 					// Sort none auto folders base on mailbox name
2949
-					uasort($nFolders,array($this,'sortByMailbox'));
2949
+					uasort($nFolders, array($this, 'sortByMailbox'));
2950 2950
 
2951
-					$subFolders = array_merge($aFolders,$nFolders);
2951
+					$subFolders = array_merge($aFolders, $nFolders);
2952 2952
 				}
2953 2953
 				else
2954 2954
 				{
2955 2955
 					if (is_array($subFolders)) ksort($subFolders);
2956 2956
 				}
2957
-				$folders = array_merge($folders,(array)$mainFolder, (array)$subFolders);
2957
+				$folders = array_merge($folders, (array)$mainFolder, (array)$subFolders);
2958 2958
 			}
2959 2959
 		}
2960 2960
 		elseif ($_nodePath) // single node
@@ -2981,9 +2981,9 @@  discard block
 block discarded – undo
2981 2981
 				$folders = $this->icServer->getMailboxes($path, $_search, true);
2982 2982
 			}
2983 2983
 
2984
-			uasort($folders,array($this,'sortByMailbox'));//ksort($folders);
2984
+			uasort($folders, array($this, 'sortByMailbox')); //ksort($folders);
2985 2985
 		}
2986
-		elseif(!$_nodePath) // all
2986
+		elseif (!$_nodePath) // all
2987 2987
 		{
2988 2988
 			if ($_subscribedOnly)
2989 2989
 			{
@@ -2999,101 +2999,101 @@  discard block
 block discarded – undo
2999 2999
 		{
3000 3000
 			// SORTING FOLDERS
3001 3001
 			//self::$debugTimes=true;
3002
-			if (self::$debugTimes) $starttime = microtime (true);
3002
+			if (self::$debugTimes) $starttime = microtime(true);
3003 3003
 			// Merge of all auto folders and specialusefolders
3004 3004
 			$autoFoldersTmp = array_unique((array_merge(self::$autoFolders, array_values(self::$specialUseFolders))));
3005
-			uasort($folders,array($this,'sortByMailbox'));//ksort($folders);
3005
+			uasort($folders, array($this, 'sortByMailbox')); //ksort($folders);
3006 3006
 			$tmpFolders = $folders;
3007
-			$inboxFolderObject=$inboxSubFolderObjects=$autoFolderObjects=$typeFolderObject=$mySpecialUseFolders=array();
3008
-			$googleMailFolderObject=$googleAutoFolderObjects=$googleSubFolderObjects=array();
3009
-			$isGoogleMail=false;
3010
-			foreach($autoFoldersTmp as $afk=>$aF)
3007
+			$inboxFolderObject = $inboxSubFolderObjects = $autoFolderObjects = $typeFolderObject = $mySpecialUseFolders = array();
3008
+			$googleMailFolderObject = $googleAutoFolderObjects = $googleSubFolderObjects = array();
3009
+			$isGoogleMail = false;
3010
+			foreach ($autoFoldersTmp as $afk=>$aF)
3011 3011
 			{
3012
-				if (!isset($mySpecialUseFolders[$aF]) && $aF) $mySpecialUseFolders[$aF]=$this->getFolderByType($aF,false);
3012
+				if (!isset($mySpecialUseFolders[$aF]) && $aF) $mySpecialUseFolders[$aF] = $this->getFolderByType($aF, false);
3013 3013
 				//error_log($afk.':'.$aF.'->'.$mySpecialUseFolders[$aF]);
3014 3014
 			}
3015 3015
 			//error_log(array2string($mySpecialUseFolders));
3016 3016
 			foreach ($tmpFolders as $k => $f) {
3017
-				$sorted=false;
3018
-				if (strtoupper(substr($k,0,5))=='INBOX') {
3019
-					if (strtoupper($k)=='INBOX') {
3017
+				$sorted = false;
3018
+				if (strtoupper(substr($k, 0, 5)) == 'INBOX') {
3019
+					if (strtoupper($k) == 'INBOX') {
3020 3020
 						//error_log(__METHOD__.__LINE__.':'.strtoupper(substr($k,0,5)).':'.$k);
3021
-						$inboxFolderObject[$k]=$f;
3021
+						$inboxFolderObject[$k] = $f;
3022 3022
 						unset($folders[$k]);
3023
-						$sorted=true;
3023
+						$sorted = true;
3024 3024
 					} else {
3025
-						$isAutoFolder=false;
3026
-						foreach($autoFoldersTmp as $afk=>$aF)
3025
+						$isAutoFolder = false;
3026
+						foreach ($autoFoldersTmp as $afk=>$aF)
3027 3027
 						{
3028 3028
 							//error_log(__METHOD__.__LINE__.$k.':'.$aF.'->'.$mySpecialUseFolders[$aF]);
3029
-							if($aF && strlen($mySpecialUseFolders[$aF])&&/*strlen($k)>=strlen($mySpecialUseFolders[$aF])&&*/
3030
-								($mySpecialUseFolders[$aF]==$k || substr($k,0,strlen($mySpecialUseFolders[$aF].$delimiter))==$mySpecialUseFolders[$aF].$delimiter || //k may be child of an autofolder
3031
-								stristr($mySpecialUseFolders[$aF],$k.$delimiter)!==false)) // k is parent of an autofolder
3029
+							if ($aF && strlen($mySpecialUseFolders[$aF]) && /*strlen($k)>=strlen($mySpecialUseFolders[$aF])&&*/
3030
+								($mySpecialUseFolders[$aF] == $k || substr($k, 0, strlen($mySpecialUseFolders[$aF].$delimiter)) == $mySpecialUseFolders[$aF].$delimiter || //k may be child of an autofolder
3031
+								stristr($mySpecialUseFolders[$aF], $k.$delimiter) !== false)) // k is parent of an autofolder
3032 3032
 							{
3033 3033
 								//error_log(__METHOD__.__LINE__.$k.'->'.$mySpecialUseFolders[$aF]);
3034
-								$isAutoFolder=true;
3035
-								$autoFolderObjects[$k]=$f;
3034
+								$isAutoFolder = true;
3035
+								$autoFolderObjects[$k] = $f;
3036 3036
 								break;
3037 3037
 							}
3038 3038
 						}
3039
-						if ($isAutoFolder==false) $inboxSubFolderObjects[$k]=$f;
3039
+						if ($isAutoFolder == false) $inboxSubFolderObjects[$k] = $f;
3040 3040
 						unset($folders[$k]);
3041
-						$sorted=true;
3041
+						$sorted = true;
3042 3042
 					}
3043
-				} elseif (strtoupper(substr($k,0,13))=='[GOOGLE MAIL]') {
3044
-					$isGoogleMail=true;
3045
-					if (strtoupper($k)=='[GOOGLE MAIL]') {
3046
-						$googleMailFolderObject[$k]=$f;
3043
+				} elseif (strtoupper(substr($k, 0, 13)) == '[GOOGLE MAIL]') {
3044
+					$isGoogleMail = true;
3045
+					if (strtoupper($k) == '[GOOGLE MAIL]') {
3046
+						$googleMailFolderObject[$k] = $f;
3047 3047
 						unset($folders[$k]);
3048
-						$sorted=true;
3048
+						$sorted = true;
3049 3049
 					} else {
3050
-						$isAutoFolder=false;
3051
-						foreach($autoFoldersTmp as $afk=>$aF)
3050
+						$isAutoFolder = false;
3051
+						foreach ($autoFoldersTmp as $afk=>$aF)
3052 3052
 						{
3053 3053
 							//error_log($k.':'.$aF.'->'.$mySpecialUseFolders[$aF]);
3054
-							if($aF && strlen($mySpecialUseFolders[$aF])&&/*strlen($k)>=strlen($mySpecialUseFolders[$aF])&&*/
3055
-								($mySpecialUseFolders[$aF]==$k || substr($k,0,strlen($mySpecialUseFolders[$aF].$delimiter))==$mySpecialUseFolders[$aF].$delimiter|| //k may be child of an autofolder
3056
-								stristr($mySpecialUseFolders[$aF],$k.$delimiter)!==false)) // k is parent of an autofolder
3054
+							if ($aF && strlen($mySpecialUseFolders[$aF]) && /*strlen($k)>=strlen($mySpecialUseFolders[$aF])&&*/
3055
+								($mySpecialUseFolders[$aF] == $k || substr($k, 0, strlen($mySpecialUseFolders[$aF].$delimiter)) == $mySpecialUseFolders[$aF].$delimiter || //k may be child of an autofolder
3056
+								stristr($mySpecialUseFolders[$aF], $k.$delimiter) !== false)) // k is parent of an autofolder
3057 3057
 							{
3058 3058
 								//error_log($k.'->'.$mySpecialUseFolders[$aF]);
3059
-								$isAutoFolder=true;
3060
-								$googleAutoFolderObjects[$k]=$f;
3059
+								$isAutoFolder = true;
3060
+								$googleAutoFolderObjects[$k] = $f;
3061 3061
 								break;
3062 3062
 							}
3063 3063
 						}
3064
-						if ($isAutoFolder==false) $googleSubFolderObjects[$k]=$f;
3064
+						if ($isAutoFolder == false) $googleSubFolderObjects[$k] = $f;
3065 3065
 						unset($folders[$k]);
3066
-						$sorted=true;
3066
+						$sorted = true;
3067 3067
 					}
3068 3068
 				} else {
3069
-					$isAutoFolder=false;
3070
-					foreach($autoFoldersTmp as $afk=>$aF)
3069
+					$isAutoFolder = false;
3070
+					foreach ($autoFoldersTmp as $afk=>$aF)
3071 3071
 					{
3072 3072
 						//error_log($k.':'.$aF.'->'.$mySpecialUseFolders[$aF]);
3073
-						if($aF && strlen($mySpecialUseFolders[$aF])&&/*strlen($k)>=strlen($mySpecialUseFolders[$aF])&&*/
3074
-								($mySpecialUseFolders[$aF]==$k || substr($k,0,strlen($mySpecialUseFolders[$aF].$delimiter))==$mySpecialUseFolders[$aF].$delimiter|| //k may be child of an autofolder
3075
-								stristr($mySpecialUseFolders[$aF],$k.$delimiter)!==false)) // k is parent of an autofolder
3073
+						if ($aF && strlen($mySpecialUseFolders[$aF]) && /*strlen($k)>=strlen($mySpecialUseFolders[$aF])&&*/
3074
+								($mySpecialUseFolders[$aF] == $k || substr($k, 0, strlen($mySpecialUseFolders[$aF].$delimiter)) == $mySpecialUseFolders[$aF].$delimiter || //k may be child of an autofolder
3075
+								stristr($mySpecialUseFolders[$aF], $k.$delimiter) !== false)) // k is parent of an autofolder
3076 3076
 						{
3077 3077
 							//error_log($k.'->'.$mySpecialUseFolders[$aF]);
3078
-							$isAutoFolder=true;
3079
-							$autoFolderObjects[$k]=$f;
3078
+							$isAutoFolder = true;
3079
+							$autoFolderObjects[$k] = $f;
3080 3080
 							unset($folders[$k]);
3081
-							$sorted=true;
3081
+							$sorted = true;
3082 3082
 							break;
3083 3083
 						}
3084 3084
 					}
3085 3085
 				}
3086 3086
 
3087
-				if ($sorted==false)
3087
+				if ($sorted == false)
3088 3088
 				{
3089
-					foreach(array('others','shared') as $type)
3089
+					foreach (array('others', 'shared') as $type)
3090 3090
 					{
3091
-						if ($nameSpace[$type]['prefix_present']&&$nameSpace[$type]['prefix'])
3091
+						if ($nameSpace[$type]['prefix_present'] && $nameSpace[$type]['prefix'])
3092 3092
 						{
3093
-							if (substr($k,0,strlen($nameSpace[$type]['prefix']))==$nameSpace[$type]['prefix']||
3094
-								substr($k,0,strlen($nameSpace[$type]['prefix'])-strlen($nameSpace[$type]['delimiter']))==substr($nameSpace[$type]['prefix'],0,strlen($nameSpace[$type]['delimiter'])*-1)) {
3093
+							if (substr($k, 0, strlen($nameSpace[$type]['prefix'])) == $nameSpace[$type]['prefix'] ||
3094
+								substr($k, 0, strlen($nameSpace[$type]['prefix']) - strlen($nameSpace[$type]['delimiter'])) == substr($nameSpace[$type]['prefix'], 0, strlen($nameSpace[$type]['delimiter']) * -1)) {
3095 3095
 								//error_log(__METHOD__.__LINE__.':'.substr($k,0,strlen($nameSpace[$type]['prefix'])).':'.$k);
3096
-								$typeFolderObject[$type][$k]=$f;
3096
+								$typeFolderObject[$type][$k] = $f;
3097 3097
 								unset($folders[$k]);
3098 3098
 							}
3099 3099
 						}
@@ -3104,40 +3104,40 @@  discard block
 block discarded – undo
3104 3104
 			// avoid calling sortByAutoFolder as it is not regarding subfolders
3105 3105
 			$autoFolderObjectsTmp = $autoFolderObjects;
3106 3106
 			unset($autoFolderObjects);
3107
-			uasort($autoFolderObjectsTmp, array($this,'sortByMailbox'));
3108
-			foreach($autoFoldersTmp as $afk=>$aF)
3107
+			uasort($autoFolderObjectsTmp, array($this, 'sortByMailbox'));
3108
+			foreach ($autoFoldersTmp as $afk=>$aF)
3109 3109
 			{
3110
-				foreach($autoFolderObjectsTmp as $k => $f)
3110
+				foreach ($autoFolderObjectsTmp as $k => $f)
3111 3111
 				{
3112
-					if($aF && ($mySpecialUseFolders[$aF]==$k ||
3113
-						substr($k,0,strlen($mySpecialUseFolders[$aF].$delimiter))==$mySpecialUseFolders[$aF].$delimiter ||
3114
-						stristr($mySpecialUseFolders[$aF],$k.$delimiter)!==false))
3112
+					if ($aF && ($mySpecialUseFolders[$aF] == $k ||
3113
+						substr($k, 0, strlen($mySpecialUseFolders[$aF].$delimiter)) == $mySpecialUseFolders[$aF].$delimiter ||
3114
+						stristr($mySpecialUseFolders[$aF], $k.$delimiter) !== false))
3115 3115
 					{
3116
-						$autoFolderObjects[$k]=$f;
3116
+						$autoFolderObjects[$k] = $f;
3117 3117
 					}
3118 3118
 				}
3119 3119
 			}
3120 3120
 			//error_log(__METHOD__.__LINE__.array2string($autoFolderObjects));
3121 3121
 			if (!$isGoogleMail) {
3122
-				$folders = array_merge($inboxFolderObject,$autoFolderObjects,(array)$inboxSubFolderObjects,(array)$folders,(array)$typeFolderObject['others'],(array)$typeFolderObject['shared']);
3122
+				$folders = array_merge($inboxFolderObject, $autoFolderObjects, (array)$inboxSubFolderObjects, (array)$folders, (array)$typeFolderObject['others'], (array)$typeFolderObject['shared']);
3123 3123
 			} else {
3124 3124
 				// avoid calling sortByAutoFolder as it is not regarding subfolders
3125 3125
 				$gAutoFolderObjectsTmp = $googleAutoFolderObjects;
3126 3126
 				unset($googleAutoFolderObjects);
3127
-				uasort($gAutoFolderObjectsTmp, array($this,'sortByMailbox'));
3128
-				foreach($autoFoldersTmp as $afk=>$aF)
3127
+				uasort($gAutoFolderObjectsTmp, array($this, 'sortByMailbox'));
3128
+				foreach ($autoFoldersTmp as $afk=>$aF)
3129 3129
 				{
3130
-					foreach($gAutoFolderObjectsTmp as $k => $f)
3130
+					foreach ($gAutoFolderObjectsTmp as $k => $f)
3131 3131
 					{
3132
-						if($aF && ($mySpecialUseFolders[$aF]==$k || substr($k,0,strlen($mySpecialUseFolders[$aF].$delimiter))==$mySpecialUseFolders[$aF].$delimiter))
3132
+						if ($aF && ($mySpecialUseFolders[$aF] == $k || substr($k, 0, strlen($mySpecialUseFolders[$aF].$delimiter)) == $mySpecialUseFolders[$aF].$delimiter))
3133 3133
 						{
3134
-							$googleAutoFolderObjects[$k]=$f;
3134
+							$googleAutoFolderObjects[$k] = $f;
3135 3135
 						}
3136 3136
 					}
3137 3137
 				}
3138
-				$folders = array_merge($inboxFolderObject,$autoFolderObjects,(array)$folders,(array)$googleMailFolderObject,$googleAutoFolderObjects,$googleSubFolderObjects,(array)$typeFolderObject['others'],(array)$typeFolderObject['shared']);
3138
+				$folders = array_merge($inboxFolderObject, $autoFolderObjects, (array)$folders, (array)$googleMailFolderObject, $googleAutoFolderObjects, $googleSubFolderObjects, (array)$typeFolderObject['others'], (array)$typeFolderObject['shared']);
3139 3139
 			}
3140
-			if (self::$debugTimes) self::logRunTimes($starttime,null,function_backtrace(),__METHOD__.' ('.__LINE__.') Sorting:');
3140
+			if (self::$debugTimes) self::logRunTimes($starttime, null, function_backtrace(), __METHOD__.' ('.__LINE__.') Sorting:');
3141 3141
 			//self::$debugTimes=false;
3142 3142
 		}
3143 3143
 		// Get counter information and add them to each fetched folders array
@@ -3159,10 +3159,10 @@  discard block
 block discarded – undo
3159 3159
 	 * @param array $autofolders_exists existing folders, no need to check their existance again
3160 3160
 	 * @return int number of new folders created
3161 3161
 	 */
3162
-	function check_create_autofolders(array $autofolders_exists=array())
3162
+	function check_create_autofolders(array $autofolders_exists = array())
3163 3163
 	{
3164 3164
 		$num_created = 0;
3165
-		foreach(self::$autoFolders as $folder)
3165
+		foreach (self::$autoFolders as $folder)
3166 3166
 		{
3167 3167
 			$created = false;
3168 3168
 			if (!in_array($folder, $autofolders_exists) && $this->_getSpecialUseFolder($folder, true, $created) &&
@@ -3187,7 +3187,7 @@  discard block
 block discarded – undo
3187 3187
 		$rv = false;
3188 3188
 		foreach ($haystack as $k => $v)
3189 3189
 		{
3190
-			foreach($v as &$sv) {if (trim($sv)==trim($needle)) return $k;}
3190
+			foreach ($v as &$sv) {if (trim($sv) == trim($needle)) return $k; }
3191 3191
 		}
3192 3192
 		return $rv;
3193 3193
 	}
@@ -3200,9 +3200,9 @@  discard block
 block discarded – undo
3200 3200
 	 * @param array $b array of folders
3201 3201
 	 * @return int expect values (0, 1 or -1)
3202 3202
 	 */
3203
-	function sortByMailbox($a,$b)
3203
+	function sortByMailbox($a, $b)
3204 3204
 	{
3205
-		return strcasecmp($a['MAILBOX'],$b['MAILBOX']);
3205
+		return strcasecmp($a['MAILBOX'], $b['MAILBOX']);
3206 3206
 	}
3207 3207
 
3208 3208
 	/**
@@ -3212,13 +3212,13 @@  discard block
 block discarded – undo
3212 3212
 	 * @param string $_hDelimiter hierarchy delimiter
3213 3213
 	 * @return array returns an array of data extracted from given node path
3214 3214
 	 */
3215
-	static function pathToFolderData ($_path, $_hDelimiter)
3215
+	static function pathToFolderData($_path, $_hDelimiter)
3216 3216
 	{
3217 3217
 		if (!strpos($_path, self::DELIMITER)) $_path = self::DELIMITER.$_path;
3218 3218
 		list(,$path) = explode(self::DELIMITER, $_path);
3219 3219
 		$path_chain = $parts = explode($_hDelimiter, $path);
3220 3220
 		$name = array_pop($parts);
3221
-		return array (
3221
+		return array(
3222 3222
 			'name' => $name,
3223 3223
 			'mailbox' => $path,
3224 3224
 			'parent' => implode($_hDelimiter, $parts),
@@ -3241,8 +3241,8 @@  discard block
 block discarded – undo
3241 3241
 		// 0, 1 und -1
3242 3242
 		$a = self::pathToFolderData($_a['MAILBOX'], $_a['delimiter']);
3243 3243
 		$b = self::pathToFolderData($_b['MAILBOX'], $_b['delimiter']);
3244
-		$pos1 = array_search(trim($a['name']),self::$autoFolders);
3245
-		$pos2 = array_search(trim($b['name']),self::$autoFolders);
3244
+		$pos1 = array_search(trim($a['name']), self::$autoFolders);
3245
+		$pos2 = array_search(trim($b['name']), self::$autoFolders);
3246 3246
 		if ($pos1 == $pos2) return 0;
3247 3247
 		return ($pos1 < $pos2) ? -1 : 1;
3248 3248
 	}
@@ -3255,10 +3255,10 @@  discard block
 block discarded – undo
3255 3255
 	 * @param object $b array of folderobjects
3256 3256
 	 * @return int expect values (0, 1 or -1)
3257 3257
 	 */
3258
-	function sortByDisplayName($a,$b)
3258
+	function sortByDisplayName($a, $b)
3259 3259
 	{
3260 3260
 		// 0, 1 und -1
3261
-		return strcasecmp($a->displayName,$b->displayName);
3261
+		return strcasecmp($a->displayName, $b->displayName);
3262 3262
 	}
3263 3263
 
3264 3264
 	/**
@@ -3269,11 +3269,11 @@  discard block
 block discarded – undo
3269 3269
 	 * @param object $b array of folderobjects
3270 3270
 	 * @return int expect values (0, 1 or -1)
3271 3271
 	 */
3272
-	function sortByAutoFolderPos($a,$b)
3272
+	function sortByAutoFolderPos($a, $b)
3273 3273
 	{
3274 3274
 		// 0, 1 und -1
3275
-		$pos1 = array_search(trim($a->shortFolderName),self::$autoFolders);
3276
-		$pos2 = array_search(trim($b->shortFolderName),self::$autoFolders);
3275
+		$pos1 = array_search(trim($a->shortFolderName), self::$autoFolders);
3276
+		$pos2 = array_search(trim($b->shortFolderName), self::$autoFolders);
3277 3277
 		if ($pos1 == $pos2) return 0;
3278 3278
 		return ($pos1 < $pos2) ? -1 : 1;
3279 3279
 	}
@@ -3286,7 +3286,7 @@  discard block
 block discarded – undo
3286 3286
 	 * @param boolean $_returnObject return the counters as object rather than an array
3287 3287
 	 * @return mixed false or array of counters array(MESSAGES,UNSEEN,RECENT,UIDNEXT,UIDVALIDITY) or object
3288 3288
 	 */
3289
-	function getMailBoxCounters($folderName,$_returnObject=true)
3289
+	function getMailBoxCounters($folderName, $_returnObject = true)
3290 3290
 	{
3291 3291
 		try
3292 3292
 		{
@@ -3298,9 +3298,9 @@  discard block
 block discarded – undo
3298 3298
 			if (self::$debug) error_log(__METHOD__." returned FolderStatus for Folder $folderName:".$e->getMessage());
3299 3299
 			return false;
3300 3300
 		}
3301
-		if(is_array($folderStatus)) {
3302
-			if ($_returnObject===false) return $folderStatus;
3303
-			$status =  new \stdClass;
3301
+		if (is_array($folderStatus)) {
3302
+			if ($_returnObject === false) return $folderStatus;
3303
+			$status = new \stdClass;
3304 3304
 			$status->messages   = $folderStatus['MESSAGES'];
3305 3305
 			$status->unseen     = $folderStatus['UNSEEN'];
3306 3306
 			$status->recent     = $folderStatus['RECENT'];
@@ -3322,42 +3322,42 @@  discard block
 block discarded – undo
3322 3322
 	 * @param string $reclevel 0, counter to keep track of the current recursionlevel
3323 3323
 	 * @return array of mailboxes
3324 3324
 	 */
3325
-	function getMailBoxesRecursive($_mailbox, $delimiter, $prefix, $reclevel=0)
3325
+	function getMailBoxesRecursive($_mailbox, $delimiter, $prefix, $reclevel = 0)
3326 3326
 	{
3327 3327
 		#echo __METHOD__." retrieve SubFolders for $_mailbox$delimiter <br>";
3328
-		$maxreclevel=25;
3328
+		$maxreclevel = 25;
3329 3329
 		if ($reclevel > $maxreclevel) {
3330
-			error_log( __METHOD__." Recursion Level Exeeded ($reclevel) while looking up $_mailbox$delimiter ");
3330
+			error_log(__METHOD__." Recursion Level Exeeded ($reclevel) while looking up $_mailbox$delimiter ");
3331 3331
 			return array();
3332 3332
 		}
3333 3333
 		$reclevel++;
3334 3334
 		// clean up double delimiters
3335
-		$_mailbox = preg_replace('~'.($delimiter == '.' ? "\\".$delimiter:$delimiter).'+~s',$delimiter,$_mailbox);
3335
+		$_mailbox = preg_replace('~'.($delimiter == '.' ? "\\".$delimiter : $delimiter).'+~s', $delimiter, $_mailbox);
3336 3336
 		//get that mailbox in question
3337
-		$mbx = $this->icServer->getMailboxes($_mailbox,1,true);
3337
+		$mbx = $this->icServer->getMailboxes($_mailbox, 1, true);
3338 3338
 		$mbxkeys = array_keys($mbx);
3339 3339
 		#_debug_array($mbx);
3340 3340
 //error_log(__METHOD__.' ('.__LINE__.') '.' Delimiter:'.array2string($delimiter));
3341 3341
 //error_log(__METHOD__.' ('.__LINE__.') '.array2string($mbx));
3342 3342
 		// Example: Array([INBOX/GaGa] => Array([MAILBOX] => INBOX/GaGa[ATTRIBUTES] => Array([0] => \\unmarked)[delimiter] => /))
3343
-		if (is_array($mbx[$mbxkeys[0]]["ATTRIBUTES"]) && (in_array('\HasChildren',$mbx[$mbxkeys[0]]["ATTRIBUTES"]) || in_array('\Haschildren',$mbx[$mbxkeys[0]]["ATTRIBUTES"]) || in_array('\haschildren',$mbx[$mbxkeys[0]]["ATTRIBUTES"]))) {
3343
+		if (is_array($mbx[$mbxkeys[0]]["ATTRIBUTES"]) && (in_array('\HasChildren', $mbx[$mbxkeys[0]]["ATTRIBUTES"]) || in_array('\Haschildren', $mbx[$mbxkeys[0]]["ATTRIBUTES"]) || in_array('\haschildren', $mbx[$mbxkeys[0]]["ATTRIBUTES"]))) {
3344 3344
 			// if there are children fetch them
3345 3345
 			//echo $mbx[$mbxkeys[0]]['MAILBOX']."<br>";
3346 3346
 
3347
-			$buff = $this->icServer->getMailboxes($mbx[$mbxkeys[0]]['MAILBOX'].($mbx[$mbxkeys[0]]['MAILBOX'] == $prefix ? '':$delimiter),2,false);
3347
+			$buff = $this->icServer->getMailboxes($mbx[$mbxkeys[0]]['MAILBOX'].($mbx[$mbxkeys[0]]['MAILBOX'] == $prefix ? '' : $delimiter), 2, false);
3348 3348
 			//$buff = $this->icServer->getMailboxes($mbx[$mbxkeys[0]]['MAILBOX'],2,false);
3349 3349
 			//_debug_array($buff);
3350 3350
 			$allMailboxes = array();
3351 3351
 			foreach ($buff as $mbxname) {
3352 3352
 //error_log(__METHOD__.' ('.__LINE__.') '.array2string($mbxname));
3353
-				$mbxname = preg_replace('~'.($delimiter == '.' ? "\\".$delimiter:$delimiter).'+~s',$delimiter,$mbxname['MAILBOX']);
3353
+				$mbxname = preg_replace('~'.($delimiter == '.' ? "\\".$delimiter : $delimiter).'+~s', $delimiter, $mbxname['MAILBOX']);
3354 3354
 				#echo "About to recur in level $reclevel:".$mbxname."<br>";
3355
-				if ( $mbxname != $mbx[$mbxkeys[0]]['MAILBOX'] && $mbxname != $prefix  && $mbxname != $mbx[$mbxkeys[0]]['MAILBOX'].$delimiter)
3355
+				if ($mbxname != $mbx[$mbxkeys[0]]['MAILBOX'] && $mbxname != $prefix && $mbxname != $mbx[$mbxkeys[0]]['MAILBOX'].$delimiter)
3356 3356
 				{
3357 3357
 					$allMailboxes = array_merge($allMailboxes, self::getMailBoxesRecursive($mbxname, $delimiter, $prefix, $reclevel));
3358 3358
 				}
3359 3359
 			}
3360
-			if (!(in_array('\NoSelect',$mbx[$mbxkeys[0]]["ATTRIBUTES"]) || in_array('\Noselect',$mbx[$mbxkeys[0]]["ATTRIBUTES"]) || in_array('\noselect',$mbx[$mbxkeys[0]]["ATTRIBUTES"]))) $allMailboxes[] = $mbx[$mbxkeys[0]]['MAILBOX'];
3360
+			if (!(in_array('\NoSelect', $mbx[$mbxkeys[0]]["ATTRIBUTES"]) || in_array('\Noselect', $mbx[$mbxkeys[0]]["ATTRIBUTES"]) || in_array('\noselect', $mbx[$mbxkeys[0]]["ATTRIBUTES"]))) $allMailboxes[] = $mbx[$mbxkeys[0]]['MAILBOX'];
3361 3361
 			return $allMailboxes;
3362 3362
 		} else {
3363 3363
 			return array($_mailbox);
@@ -3372,18 +3372,18 @@  discard block
 block discarded – undo
3372 3372
 	 * @param boolean& $created =null on return true: if folder was just created, false if not
3373 3373
 	 * @return mixed string or false
3374 3374
 	 */
3375
-	function _getSpecialUseFolder($_type, $_checkexistance=TRUE, &$created=null)
3375
+	function _getSpecialUseFolder($_type, $_checkexistance = TRUE, &$created = null)
3376 3376
 	{
3377 3377
 		static $types = array(
3378
-			'Drafts'   => array('profileKey'=>'acc_folder_draft','autoFolderName'=>'Drafts'),
3379
-			'Template' => array('profileKey'=>'acc_folder_template','autoFolderName'=>'Templates'),
3380
-			'Trash'    => array('profileKey'=>'acc_folder_trash','autoFolderName'=>'Trash'),
3381
-			'Sent'     => array('profileKey'=>'acc_folder_sent','autoFolderName'=>'Sent'),
3382
-			'Junk'     => array('profileKey'=>'acc_folder_junk','autoFolderName'=>'Junk'),
3383
-			'Outbox'   => array('profileKey'=>'acc_folder_outbox','autoFolderName'=>'Outbox'),
3384
-			'Archive'   => array('profileKey'=>'acc_folder_archive','autoFolderName'=>'Archive'),
3378
+			'Drafts'   => array('profileKey'=>'acc_folder_draft', 'autoFolderName'=>'Drafts'),
3379
+			'Template' => array('profileKey'=>'acc_folder_template', 'autoFolderName'=>'Templates'),
3380
+			'Trash'    => array('profileKey'=>'acc_folder_trash', 'autoFolderName'=>'Trash'),
3381
+			'Sent'     => array('profileKey'=>'acc_folder_sent', 'autoFolderName'=>'Sent'),
3382
+			'Junk'     => array('profileKey'=>'acc_folder_junk', 'autoFolderName'=>'Junk'),
3383
+			'Outbox'   => array('profileKey'=>'acc_folder_outbox', 'autoFolderName'=>'Outbox'),
3384
+			'Archive'   => array('profileKey'=>'acc_folder_archive', 'autoFolderName'=>'Archive'),
3385 3385
 		);
3386
-		if ($_type == 'Templates') $_type = 'Template';	// for some reason self::$autofolders uses 'Templates'!
3386
+		if ($_type == 'Templates') $_type = 'Template'; // for some reason self::$autofolders uses 'Templates'!
3387 3387
 		$created = false;
3388 3388
 		if (!isset($types[$_type]))
3389 3389
 		{
@@ -3405,7 +3405,7 @@  discard block
 block discarded – undo
3405 3405
 		}
3406 3406
 		// do not try to autocreate configured Archive-Folder. Return false if configured folder does not exist
3407 3407
 		if ($_type == 'Archive') {
3408
-			if ($_folderName && $_checkexistance && strtolower($_folderName) !='none' && !$this->folderExists($_folderName,true)) {
3408
+			if ($_folderName && $_checkexistance && strtolower($_folderName) != 'none' && !$this->folderExists($_folderName, true)) {
3409 3409
 				return false;
3410 3410
 			} else {
3411 3411
 				return $_folderName;
@@ -3413,38 +3413,38 @@  discard block
 block discarded – undo
3413 3413
 
3414 3414
 		}
3415 3415
 		// does the folder exist??? (is configured/preset, but non-existent)
3416
-		if ($_folderName && $_checkexistance && strtolower($_folderName) !='none' && !$this->folderExists($_folderName,true)) {
3416
+		if ($_folderName && $_checkexistance && strtolower($_folderName) != 'none' && !$this->folderExists($_folderName, true)) {
3417 3417
 			try
3418 3418
 			{
3419 3419
 				$error = null;
3420 3420
 				if (($_folderName = $this->createFolder('', $_folderName, $error))) $created = true;
3421 3421
 				if ($error) error_log(__METHOD__.' ('.__LINE__.') '.' Failed to create Folder '.$_folderName." for $_type:".$error);
3422 3422
 			}
3423
-			catch(Exception $e)
3423
+			catch (Exception $e)
3424 3424
 			{
3425 3425
 				error_log(__METHOD__.' ('.__LINE__.') '.' Failed to create Folder '.$_folderName." for $_type:".$e->getMessage().':'.function_backtrace());
3426 3426
 				$_folderName = false;
3427 3427
 			}
3428 3428
 		}
3429 3429
 		// not sure yet if false is the correct behavior on none
3430
-		if ($_folderName =='none') return 'none' ; //false;
3430
+		if ($_folderName == 'none') return 'none'; //false;
3431 3431
 		//no (valid) folder found yet; try specialUseFolders
3432
-		if (empty($_folderName) && is_array(self::$specialUseFolders) && ($f = array_search($_type,self::$specialUseFolders))) $_folderName = $f;
3432
+		if (empty($_folderName) && is_array(self::$specialUseFolders) && ($f = array_search($_type, self::$specialUseFolders))) $_folderName = $f;
3433 3433
 		//no specialUseFolder; try some Defaults
3434 3434
 		if (empty($_folderName) && isset($types[$_type]))
3435 3435
 		{
3436 3436
 			$nameSpace = $this->_getNameSpaces();
3437
-			$prefix='';
3437
+			$prefix = '';
3438 3438
 			foreach ($nameSpace as $nSp)
3439 3439
 			{
3440
-				if ($nSp['type']=='personal')
3440
+				if ($nSp['type'] == 'personal')
3441 3441
 				{
3442 3442
 					//error_log(__METHOD__.__LINE__.array2string($nSp));
3443 3443
 					$prefix = $nSp['prefix'];
3444 3444
 					break;
3445 3445
 				}
3446 3446
 			}
3447
-			if ($this->folderExists($prefix.$types[$_type]['autoFolderName'],true))
3447
+			if ($this->folderExists($prefix.$types[$_type]['autoFolderName'], true))
3448 3448
 			{
3449 3449
 				$_folderName = $prefix.$types[$_type]['autoFolderName'];
3450 3450
 			}
@@ -3453,11 +3453,11 @@  discard block
 block discarded – undo
3453 3453
 				try
3454 3454
 				{
3455 3455
 					$error = null;
3456
-					$this->createFolder('', $prefix.$types[$_type]['autoFolderName'],$error);
3456
+					$this->createFolder('', $prefix.$types[$_type]['autoFolderName'], $error);
3457 3457
 					$_folderName = $prefix.$types[$_type]['autoFolderName'];
3458 3458
 					if ($error) error_log(__METHOD__.' ('.__LINE__.') '.' Failed to create Folder '.$_folderName." for $_type:".$error);
3459 3459
 				}
3460
-				catch(Exception $e)
3460
+				catch (Exception $e)
3461 3461
 				{
3462 3462
 					error_log(__METHOD__.' ('.__LINE__.') '.' Failed to create Folder '.$_folderName." for $_type:".$e->getMessage());
3463 3463
 					$_folderName = false;
@@ -3473,7 +3473,7 @@  discard block
 block discarded – undo
3473 3473
 	 * @param boolean $_checkexistance trigger check for existance
3474 3474
 	 * @return mixed string or false
3475 3475
 	 */
3476
-	function getFolderByType($type, $_checkexistance=false)
3476
+	function getFolderByType($type, $_checkexistance = false)
3477 3477
 	{
3478 3478
 		return $this->_getSpecialUseFolder($type, $_checkexistance);
3479 3479
 	}
@@ -3483,7 +3483,7 @@  discard block
 block discarded – undo
3483 3483
 	 * @param boolean $_checkexistance trigger check for existance
3484 3484
 	 * @return mixed string or false
3485 3485
 	 */
3486
-	function getJunkFolder($_checkexistance=TRUE)
3486
+	function getJunkFolder($_checkexistance = TRUE)
3487 3487
 	{
3488 3488
 		return $this->_getSpecialUseFolder('Junk', $_checkexistance);
3489 3489
 	}
@@ -3493,7 +3493,7 @@  discard block
 block discarded – undo
3493 3493
 	 * @param boolean $_checkexistance trigger check for existance
3494 3494
 	 * @return mixed string or false
3495 3495
 	 */
3496
-	function getDraftFolder($_checkexistance=TRUE)
3496
+	function getDraftFolder($_checkexistance = TRUE)
3497 3497
 	{
3498 3498
 		return $this->_getSpecialUseFolder('Drafts', $_checkexistance);
3499 3499
 	}
@@ -3503,7 +3503,7 @@  discard block
 block discarded – undo
3503 3503
 	 * @param boolean $_checkexistance trigger check for existance
3504 3504
 	 * @return mixed string or false
3505 3505
 	 */
3506
-	function getTemplateFolder($_checkexistance=TRUE)
3506
+	function getTemplateFolder($_checkexistance = TRUE)
3507 3507
 	{
3508 3508
 		return $this->_getSpecialUseFolder('Template', $_checkexistance);
3509 3509
 	}
@@ -3513,7 +3513,7 @@  discard block
 block discarded – undo
3513 3513
 	 * @param boolean $_checkexistance trigger check for existance
3514 3514
 	 * @return mixed string or false
3515 3515
 	 */
3516
-	function getTrashFolder($_checkexistance=TRUE)
3516
+	function getTrashFolder($_checkexistance = TRUE)
3517 3517
 	{
3518 3518
 		return $this->_getSpecialUseFolder('Trash', $_checkexistance);
3519 3519
 	}
@@ -3523,7 +3523,7 @@  discard block
 block discarded – undo
3523 3523
 	 * @param boolean $_checkexistance trigger check for existance
3524 3524
 	 * @return mixed string or false
3525 3525
 	 */
3526
-	function getSentFolder($_checkexistance=TRUE)
3526
+	function getSentFolder($_checkexistance = TRUE)
3527 3527
 	{
3528 3528
 		return $this->_getSpecialUseFolder('Sent', $_checkexistance);
3529 3529
 	}
@@ -3533,7 +3533,7 @@  discard block
 block discarded – undo
3533 3533
 	 * @param boolean $_checkexistance trigger check for existance
3534 3534
 	 * @return mixed string or false
3535 3535
 	 */
3536
-	function getOutboxFolder($_checkexistance=TRUE)
3536
+	function getOutboxFolder($_checkexistance = TRUE)
3537 3537
 	{
3538 3538
 		return $this->_getSpecialUseFolder('Outbox', $_checkexistance);
3539 3539
 	}
@@ -3543,7 +3543,7 @@  discard block
 block discarded – undo
3543 3543
 	 * @param boolean $_checkexistance trigger check for existance . We do no autocreation for configured Archive folder
3544 3544
 	 * @return mixed string or false
3545 3545
 	 */
3546
-	function getArchiveFolder($_checkexistance=TRUE)
3546
+	function getArchiveFolder($_checkexistance = TRUE)
3547 3547
 	{
3548 3548
 		return $this->_getSpecialUseFolder('Archive', $_checkexistance);
3549 3549
 	}
@@ -3555,10 +3555,10 @@  discard block
 block discarded – undo
3555 3555
 	 * @param boolean $_exactMatch make the check more strict. return false if folder is subfolder only
3556 3556
 	 * @return boolean
3557 3557
 	 */
3558
-	function isSentFolder($_folderName, $_checkexistance=TRUE, $_exactMatch=false)
3558
+	function isSentFolder($_folderName, $_checkexistance = TRUE, $_exactMatch = false)
3559 3559
 	{
3560 3560
 		$sentFolder = $this->getSentFolder($_checkexistance);
3561
-		if(empty($sentFolder)) {
3561
+		if (empty($sentFolder)) {
3562 3562
 			return false;
3563 3563
 		}
3564 3564
 		// does the folder exist???
@@ -3568,13 +3568,13 @@  discard block
 block discarded – undo
3568 3568
 
3569 3569
 		if ($_exactMatch)
3570 3570
 		{
3571
-			if(false !== stripos($_folderName, $sentFolder)&& strlen($_folderName)==strlen($sentFolder)) {
3571
+			if (false !== stripos($_folderName, $sentFolder) && strlen($_folderName) == strlen($sentFolder)) {
3572 3572
 				return true;
3573 3573
 			} else {
3574 3574
 				return false;
3575 3575
 			}
3576 3576
 		} else {
3577
-			if(false !== stripos($_folderName, $sentFolder)) {
3577
+			if (false !== stripos($_folderName, $sentFolder)) {
3578 3578
 				return true;
3579 3579
 			} else {
3580 3580
 				return false;
@@ -3589,9 +3589,9 @@  discard block
 block discarded – undo
3589 3589
 	 * @param boolean $_exactMatch make the check more strict. return false if folder is subfolder only
3590 3590
 	 * @return boolean
3591 3591
 	 */
3592
-	function isOutbox($_folderName, $_checkexistance=TRUE, $_exactMatch=false)
3592
+	function isOutbox($_folderName, $_checkexistance = TRUE, $_exactMatch = false)
3593 3593
 	{
3594
-		if (stripos($_folderName, 'Outbox')===false) {
3594
+		if (stripos($_folderName, 'Outbox') === false) {
3595 3595
 			return false;
3596 3596
 		}
3597 3597
 		// does the folder exist???
@@ -3599,13 +3599,13 @@  discard block
 block discarded – undo
3599 3599
 			$outboxFolder = $this->getOutboxFolder($_checkexistance);
3600 3600
 			if ($_exactMatch)
3601 3601
 			{
3602
-				if(false !== stripos($_folderName, $outboxFolder)&& strlen($_folderName)==strlen($outboxFolder)) {
3602
+				if (false !== stripos($_folderName, $outboxFolder) && strlen($_folderName) == strlen($outboxFolder)) {
3603 3603
 					return true;
3604 3604
 				} else {
3605 3605
 					return false;
3606 3606
 				}
3607 3607
 			} else {
3608
-				if(false !== stripos($_folderName, $outboxFolder)) {
3608
+				if (false !== stripos($_folderName, $outboxFolder)) {
3609 3609
 					return true;
3610 3610
 				} else {
3611 3611
 					return false;
@@ -3622,26 +3622,26 @@  discard block
 block discarded – undo
3622 3622
 	 * @param boolean $_exactMatch make the check more strict. return false if folder is subfolder only
3623 3623
 	 * @return boolean
3624 3624
 	 */
3625
-	function isDraftFolder($_folderName, $_checkexistance=TRUE, $_exactMatch=false)
3625
+	function isDraftFolder($_folderName, $_checkexistance = TRUE, $_exactMatch = false)
3626 3626
 	{
3627 3627
 		$draftFolder = $this->getDraftFolder($_checkexistance);
3628
-		if(empty($draftFolder)) {
3628
+		if (empty($draftFolder)) {
3629 3629
 			return false;
3630 3630
 		}
3631 3631
 		// does the folder exist???
3632 3632
 		if ($_checkexistance && !$this->folderExists($_folderName)) {
3633 3633
 			return false;
3634 3634
 		}
3635
-		if (is_a($_folderName,"Horde_Imap_Client_Mailbox")) $_folderName = $_folderName->utf8;
3635
+		if (is_a($_folderName, "Horde_Imap_Client_Mailbox")) $_folderName = $_folderName->utf8;
3636 3636
 		if ($_exactMatch)
3637 3637
 		{
3638
-			if(false !== stripos($_folderName, $draftFolder)&& strlen($_folderName)==strlen($draftFolder)) {
3638
+			if (false !== stripos($_folderName, $draftFolder) && strlen($_folderName) == strlen($draftFolder)) {
3639 3639
 				return true;
3640 3640
 			} else {
3641 3641
 				return false;
3642 3642
 			}
3643 3643
 		} else {
3644
-			if(false !== stripos($_folderName, $draftFolder)) {
3644
+			if (false !== stripos($_folderName, $draftFolder)) {
3645 3645
 				return true;
3646 3646
 			} else {
3647 3647
 				return false;
@@ -3656,10 +3656,10 @@  discard block
 block discarded – undo
3656 3656
 	 * @param boolean $_exactMatch make the check more strict. return false if folder is subfolder only
3657 3657
 	 * @return boolean
3658 3658
 	 */
3659
-	function isTrashFolder($_folderName, $_checkexistance=TRUE, $_exactMatch=false)
3659
+	function isTrashFolder($_folderName, $_checkexistance = TRUE, $_exactMatch = false)
3660 3660
 	{
3661 3661
 		$trashFolder = $this->getTrashFolder($_checkexistance);
3662
-		if(empty($trashFolder)) {
3662
+		if (empty($trashFolder)) {
3663 3663
 			return false;
3664 3664
 		}
3665 3665
 		// does the folder exist???
@@ -3669,13 +3669,13 @@  discard block
 block discarded – undo
3669 3669
 
3670 3670
 		if ($_exactMatch)
3671 3671
 		{
3672
-			if(false !== stripos($_folderName, $trashFolder)&& strlen($_folderName)==strlen($trashFolder)) {
3672
+			if (false !== stripos($_folderName, $trashFolder) && strlen($_folderName) == strlen($trashFolder)) {
3673 3673
 				return true;
3674 3674
 			} else {
3675 3675
 				return false;
3676 3676
 			}
3677 3677
 		} else {
3678
-			if(false !== stripos($_folderName, $trashFolder)) {
3678
+			if (false !== stripos($_folderName, $trashFolder)) {
3679 3679
 				return true;
3680 3680
 			} else {
3681 3681
 				return false;
@@ -3690,10 +3690,10 @@  discard block
 block discarded – undo
3690 3690
 	 * @param boolean $_exactMatch make the check more strict. return false if folder is subfolder only
3691 3691
 	 * @return boolean
3692 3692
 	 */
3693
-	function isTemplateFolder($_folderName, $_checkexistance=TRUE, $_exactMatch=false)
3693
+	function isTemplateFolder($_folderName, $_checkexistance = TRUE, $_exactMatch = false)
3694 3694
 	{
3695 3695
 		$templateFolder = $this->getTemplateFolder($_checkexistance);
3696
-		if(empty($templateFolder)) {
3696
+		if (empty($templateFolder)) {
3697 3697
 			return false;
3698 3698
 		}
3699 3699
 		// does the folder exist???
@@ -3702,13 +3702,13 @@  discard block
 block discarded – undo
3702 3702
 		}
3703 3703
 		if ($_exactMatch)
3704 3704
 		{
3705
-			if(false !== stripos($_folderName, $templateFolder)&& strlen($_folderName)==strlen($templateFolder)) {
3705
+			if (false !== stripos($_folderName, $templateFolder) && strlen($_folderName) == strlen($templateFolder)) {
3706 3706
 				return true;
3707 3707
 			} else {
3708 3708
 				return false;
3709 3709
 			}
3710 3710
 		} else {
3711
-			if(false !== stripos($_folderName, $templateFolder)) {
3711
+			if (false !== stripos($_folderName, $templateFolder)) {
3712 3712
 				return true;
3713 3713
 			} else {
3714 3714
 				return false;
@@ -3722,24 +3722,24 @@  discard block
 block discarded – undo
3722 3722
 	 * @param boolean $_forceCheck trigger check for existance on icServer
3723 3723
 	 * @return mixed string or false
3724 3724
 	 */
3725
-	function folderExists($_folder, $_forceCheck=false)
3725
+	function folderExists($_folder, $_forceCheck = false)
3726 3726
 	{
3727 3727
 		static $folderInfo;
3728 3728
 		$forceCheck = $_forceCheck;
3729 3729
 		if (empty($_folder))
3730 3730
 		{
3731 3731
 			// this error is more or less without significance, unless we force the check
3732
-			if ($_forceCheck===true) error_log(__METHOD__.' ('.__LINE__.') '.' Called with empty Folder:'.$_folder.function_backtrace());
3732
+			if ($_forceCheck === true) error_log(__METHOD__.' ('.__LINE__.') '.' Called with empty Folder:'.$_folder.function_backtrace());
3733 3733
 			return false;
3734 3734
 		}
3735 3735
 		// when check is not enforced , we assume a folder represented as Horde_Imap_Client_Mailbox as existing folder
3736
-		if (is_a($_folder,"Horde_Imap_Client_Mailbox")&&$_forceCheck===false) return true;
3737
-		if (is_a($_folder,"Horde_Imap_Client_Mailbox")) $_folder =  $_folder->utf8;
3736
+		if (is_a($_folder, "Horde_Imap_Client_Mailbox") && $_forceCheck === false) return true;
3737
+		if (is_a($_folder, "Horde_Imap_Client_Mailbox")) $_folder = $_folder->utf8;
3738 3738
 		// reduce traffic within the Instance per User; Expire every 5 hours
3739 3739
 		//error_log(__METHOD__.' ('.__LINE__.') '.' Called with Folder:'.$_folder.function_backtrace());
3740
-		if (is_null($folderInfo)) $folderInfo = Cache::getCache(Cache::INSTANCE,'email','icServerFolderExistsInfo'.trim($GLOBALS['egw_info']['user']['account_id']),null,array(),$expiration=60*60*5);
3740
+		if (is_null($folderInfo)) $folderInfo = Cache::getCache(Cache::INSTANCE, 'email', 'icServerFolderExistsInfo'.trim($GLOBALS['egw_info']['user']['account_id']), null, array(), $expiration = 60 * 60 * 5);
3741 3741
 		//error_log(__METHOD__.' ('.__LINE__.') '.'Cached Info on Folder:'.$_folder.' for Profile:'.$this->profileID.($forceCheck?'(forcedCheck)':'').':'.array2string($folderInfo));
3742
-		if (!empty($folderInfo) && isset($folderInfo[$this->profileID]) && isset($folderInfo[$this->profileID][$_folder]) && $forceCheck===false)
3742
+		if (!empty($folderInfo) && isset($folderInfo[$this->profileID]) && isset($folderInfo[$this->profileID][$_folder]) && $forceCheck === false)
3743 3743
 		{
3744 3744
 			//error_log(__METHOD__.' ('.__LINE__.') '.' Using cached Info on Folder:'.$_folder.' for Profile:'.$this->profileID);
3745 3745
 			return $folderInfo[$this->profileID][$_folder];
@@ -3755,7 +3755,7 @@  discard block
 block discarded – undo
3755 3755
 
3756 3756
 		// does the folder exist???
3757 3757
 		//error_log(__METHOD__."->Connected?".$this->icServer->_connected.", ".$_folder.", ".($forceCheck?' forceCheck activated':'dont check on server'));
3758
-		if ( $forceCheck || empty($folderInfo) || !isset($folderInfo[$this->profileID]) || !isset($folderInfo[$this->profileID][$_folder])) {
3758
+		if ($forceCheck || empty($folderInfo) || !isset($folderInfo[$this->profileID]) || !isset($folderInfo[$this->profileID][$_folder])) {
3759 3759
 			//error_log(__METHOD__."->NotConnected and forceCheck with profile:".$this->profileID);
3760 3760
 			//return false;
3761 3761
 			//try to connect
@@ -3766,18 +3766,18 @@  discard block
 block discarded – undo
3766 3766
 		}
3767 3767
 		catch (\Exception $e)
3768 3768
 		{
3769
-			error_log(__METHOD__.__LINE__.$e->getMessage().($e->details?', '.$e->details:''));
3770
-			self::$profileDefunct[$this->profileID]=$e->getMessage().($e->details?', '.$e->details:'');
3769
+			error_log(__METHOD__.__LINE__.$e->getMessage().($e->details ? ', '.$e->details : ''));
3770
+			self::$profileDefunct[$this->profileID] = $e->getMessage().($e->details ? ', '.$e->details : '');
3771 3771
 			$folderInfo[$this->profileID][$_folder] = false;
3772 3772
 		}
3773 3773
 		//error_log(__METHOD__.' ('.__LINE__.') '.' Folder Exists:'.$folderInfo[$this->profileID][$_folder].function_backtrace());
3774 3774
 
3775
-		if(!empty($folderInfo) && isset($folderInfo[$this->profileID][$_folder]) &&
3775
+		if (!empty($folderInfo) && isset($folderInfo[$this->profileID][$_folder]) &&
3776 3776
 			$folderInfo[$this->profileID][$_folder] !== true)
3777 3777
 		{
3778 3778
 			$folderInfo[$this->profileID][$_folder] = false; // set to false, whatever it was (to have a valid returnvalue for the static return)
3779 3779
 		}
3780
-		Cache::setCache(Cache::INSTANCE,'email','icServerFolderExistsInfo'.trim($GLOBALS['egw_info']['user']['account_id']),$folderInfo,$expiration=60*60*5);
3780
+		Cache::setCache(Cache::INSTANCE, 'email', 'icServerFolderExistsInfo'.trim($GLOBALS['egw_info']['user']['account_id']), $folderInfo, $expiration = 60 * 60 * 5);
3781 3781
 		return (!empty($folderInfo) && isset($folderInfo[$this->profileID][$_folder]) ? $folderInfo[$this->profileID][$_folder] : false);
3782 3782
 	}
3783 3783
 
@@ -3790,14 +3790,14 @@  discard block
 block discarded – undo
3790 3790
 	 */
3791 3791
 	function compressFolder($_folderName = false)
3792 3792
 	{
3793
-		$folderName	= ($_folderName ? $_folderName : $this->sessionData['mailbox']);
3794
-		$deleteOptions	= $GLOBALS['egw_info']['user']['preferences']['mail']['deleteOptions'];
3795
-		$trashFolder	= $this->getTrashFolder();
3793
+		$folderName = ($_folderName ? $_folderName : $this->sessionData['mailbox']);
3794
+		$deleteOptions = $GLOBALS['egw_info']['user']['preferences']['mail']['deleteOptions'];
3795
+		$trashFolder = $this->getTrashFolder();
3796 3796
 
3797 3797
 		$this->icServer->openMailbox($folderName);
3798 3798
 
3799
-		if(strtolower($folderName) == strtolower($trashFolder) && $deleteOptions == "move_to_trash") {
3800
-			$this->deleteMessages('all',$folderName,'remove_immediately');
3799
+		if (strtolower($folderName) == strtolower($trashFolder) && $deleteOptions == "move_to_trash") {
3800
+			$this->deleteMessages('all', $folderName, 'remove_immediately');
3801 3801
 		} else {
3802 3802
 			$this->icServer->expunge($folderName);
3803 3803
 		}
@@ -3813,19 +3813,19 @@  discard block
 block discarded – undo
3813 3813
 	 * @return bool true, as we do not handle return values yet
3814 3814
 	 * @throws Exception
3815 3815
 	 */
3816
-	function deleteMessages($_messageUID, $_folder=NULL, $_forceDeleteMethod='no')
3816
+	function deleteMessages($_messageUID, $_folder = NULL, $_forceDeleteMethod = 'no')
3817 3817
 	{
3818 3818
 		//error_log(__METHOD__.' ('.__LINE__.') '.'->'.array2string($_messageUID).','.array2string($_folder).', '.$_forceDeleteMethod);
3819 3819
 		$oldMailbox = '';
3820 3820
 		if (is_null($_folder) || empty($_folder)) $_folder = $this->sessionData['mailbox'];
3821 3821
 		if (empty($_messageUID))
3822 3822
 		{
3823
-			if (self::$debug) error_log(__METHOD__." no messages Message(s): ".implode(',',$_messageUID));
3823
+			if (self::$debug) error_log(__METHOD__." no messages Message(s): ".implode(',', $_messageUID));
3824 3824
 			return false;
3825 3825
 		}
3826
-		elseif ($_messageUID==='all')
3826
+		elseif ($_messageUID === 'all')
3827 3827
 		{
3828
-			$_messageUID= null;
3828
+			$_messageUID = null;
3829 3829
 		}
3830 3830
 		else
3831 3831
 		{
@@ -3834,32 +3834,32 @@  discard block
 block discarded – undo
3834 3834
 			$uidsToDelete->add($_messageUID);
3835 3835
 		}
3836 3836
 		$deleteOptions = $_forceDeleteMethod; // use forceDeleteMethod if not "no", or unknown method
3837
-		if ($_forceDeleteMethod === 'no' || !in_array($_forceDeleteMethod,array('move_to_trash',"mark_as_deleted","remove_immediately"))) $deleteOptions  = ($this->mailPreferences['deleteOptions']?$this->mailPreferences['deleteOptions']:"mark_as_deleted");
3837
+		if ($_forceDeleteMethod === 'no' || !in_array($_forceDeleteMethod, array('move_to_trash', "mark_as_deleted", "remove_immediately"))) $deleteOptions = ($this->mailPreferences['deleteOptions'] ? $this->mailPreferences['deleteOptions'] : "mark_as_deleted");
3838 3838
 		//error_log(__METHOD__.' ('.__LINE__.') '.'->'.array2string($_messageUID).','.$_folder.'/'.$this->sessionData['mailbox'].' Option:'.$deleteOptions);
3839 3839
 		$trashFolder    = $this->getTrashFolder();
3840
-		$draftFolder	= $this->getDraftFolder(); //$GLOBALS['egw_info']['user']['preferences']['mail']['draftFolder'];
3840
+		$draftFolder = $this->getDraftFolder(); //$GLOBALS['egw_info']['user']['preferences']['mail']['draftFolder'];
3841 3841
 		$templateFolder = $this->getTemplateFolder(); //$GLOBALS['egw_info']['user']['preferences']['mail']['templateFolder'];
3842
-		if((strtolower($_folder) == strtolower($trashFolder) && $deleteOptions == "move_to_trash") ||
3842
+		if ((strtolower($_folder) == strtolower($trashFolder) && $deleteOptions == "move_to_trash") ||
3843 3843
 		   (strtolower($_folder) == strtolower($draftFolder))) {
3844 3844
 			$deleteOptions = "remove_immediately";
3845 3845
 		}
3846
-		if($this->icServer->getCurrentMailbox() != $_folder) {
3846
+		if ($this->icServer->getCurrentMailbox() != $_folder) {
3847 3847
 			$oldMailbox = $this->icServer->getCurrentMailbox();
3848 3848
 			$this->icServer->openMailbox($_folder);
3849 3849
 		}
3850 3850
 		//error_log(__METHOD__.' ('.__LINE__.') '.'->'.array2string($_messageUID).','.$_folder.'/'.$this->sessionData['mailbox'].' Option:'.$deleteOptions);
3851 3851
 		$updateCache = false;
3852
-		switch($deleteOptions) {
3852
+		switch ($deleteOptions) {
3853 3853
 			case "move_to_trash":
3854 3854
 				//error_log(__METHOD__.' ('.__LINE__.') ');
3855 3855
 				$updateCache = true;
3856
-				if(!empty($trashFolder)) {
3856
+				if (!empty($trashFolder)) {
3857 3857
 					if (self::$debug) error_log(__METHOD__.' ('.__LINE__.') '.implode(' : ', $_messageUID));
3858
-					if (self::$debug) error_log(__METHOD__.' ('.__LINE__.') '."$trashFolder <= $_folder / ". $this->sessionData['mailbox']);
3858
+					if (self::$debug) error_log(__METHOD__.' ('.__LINE__.') '."$trashFolder <= $_folder / ".$this->sessionData['mailbox']);
3859 3859
 					// copy messages
3860 3860
 					try
3861 3861
 					{
3862
-						$this->icServer->copy($_folder, $trashFolder, array('ids'=>$uidsToDelete,'move'=>true));
3862
+						$this->icServer->copy($_folder, $trashFolder, array('ids'=>$uidsToDelete, 'move'=>true));
3863 3863
 					}
3864 3864
 					catch (\Exception $e)
3865 3865
 					{
@@ -3871,18 +3871,18 @@  discard block
 block discarded – undo
3871 3871
 			case "mark_as_deleted":
3872 3872
 				//error_log(__METHOD__.' ('.__LINE__.') ');
3873 3873
 				// mark messages as deleted
3874
-				if (is_null($_messageUID)) $_messageUID='all';
3875
-				foreach((array)$_messageUID as $key =>$uid)
3874
+				if (is_null($_messageUID)) $_messageUID = 'all';
3875
+				foreach ((array)$_messageUID as $key =>$uid)
3876 3876
 				{
3877 3877
 					//flag messages, that are flagged for deletion as seen too
3878 3878
 					$this->flagMessages('read', $uid, $_folder);
3879 3879
 					$flags = $this->getFlags($uid);
3880 3880
 					$this->flagMessages('delete', $uid, $_folder);
3881 3881
 					//error_log(__METHOD__.' ('.__LINE__.') '.array2string($flags));
3882
-					if (strpos( array2string($flags),'Deleted')!==false) $undelete[] = $uid;
3882
+					if (strpos(array2string($flags), 'Deleted') !== false) $undelete[] = $uid;
3883 3883
 					unset($flags);
3884 3884
 				}
3885
-				foreach((array)$undelete as $key =>$uid)
3885
+				foreach ((array)$undelete as $key =>$uid)
3886 3886
 				{
3887 3887
 					$this->flagMessages('undelete', $uid, $_folder);
3888 3888
 				}
@@ -3891,14 +3891,14 @@  discard block
 block discarded – undo
3891 3891
 			case "remove_immediately":
3892 3892
 				//error_log(__METHOD__.' ('.__LINE__.') ');
3893 3893
 				$updateCache = true;
3894
-				if (is_null($_messageUID)) $_messageUID='all';
3894
+				if (is_null($_messageUID)) $_messageUID = 'all';
3895 3895
 				if (is_object($_messageUID))
3896 3896
 				{
3897 3897
 					$this->flagMessages('delete', $_messageUID, $_folder);
3898 3898
 				}
3899 3899
 				else
3900 3900
 				{
3901
-					foreach((array)$_messageUID as $key =>$uid)
3901
+					foreach ((array)$_messageUID as $key =>$uid)
3902 3902
 					{
3903 3903
 						//flag messages, that are flagged for deletion as seen too
3904 3904
 						$this->flagMessages('delete', $uid, $_folder);
@@ -3908,7 +3908,7 @@  discard block
 block discarded – undo
3908 3908
 				$this->icServer->expunge($_folder);
3909 3909
 				break;
3910 3910
 		}
3911
-		if($oldMailbox != '') {
3911
+		if ($oldMailbox != '') {
3912 3912
 			$this->icServer->openMailbox($oldMailbox);
3913 3913
 		}
3914 3914
 
@@ -3922,7 +3922,7 @@  discard block
 block discarded – undo
3922 3922
 	 *
3923 3923
 	 * @return null/array flags
3924 3924
 	 */
3925
-	function getFlags ($_messageUID) {
3925
+	function getFlags($_messageUID) {
3926 3926
 		try
3927 3927
 		{
3928 3928
 			$uidsToFetch = new Horde_Imap_Client_Ids();
@@ -3935,7 +3935,7 @@  discard block
 block discarded – undo
3935 3935
 				'ids' => $uidsToFetch,
3936 3936
 			));
3937 3937
 			if (is_object($headersNew)) {
3938
-				foreach($headersNew->ids() as $id) {
3938
+				foreach ($headersNew->ids() as $id) {
3939 3939
 					$_headerObject = $headersNew->get($id);
3940 3940
 					$flags = $_headerObject->getFlags();
3941 3941
 				}
@@ -3958,22 +3958,22 @@  discard block
 block discarded – undo
3958 3958
 	 *
3959 3959
 	 * @return null/boolean
3960 3960
 	 */
3961
-	function getNotifyFlags ($_messageUID, $flags=null)
3961
+	function getNotifyFlags($_messageUID, $flags = null)
3962 3962
 	{
3963 3963
 		if (self::$debug) error_log(__METHOD__.$_messageUID.' Flags:'.array2string($flags));
3964 3964
 		try
3965 3965
 		{
3966
-			if($flags===null) $flags =  $this->getFlags($_messageUID);
3966
+			if ($flags === null) $flags = $this->getFlags($_messageUID);
3967 3967
 		}
3968 3968
 		catch (\Exception $e)
3969 3969
 		{
3970 3970
 			return null;
3971 3971
 		}
3972 3972
 
3973
-		if ( stripos( array2string($flags),'MDNSent')!==false)
3973
+		if (stripos(array2string($flags), 'MDNSent') !== false)
3974 3974
 			return true;
3975 3975
 
3976
-		if ( stripos( array2string($flags),'MDNnotSent')!==false)
3976
+		if (stripos(array2string($flags), 'MDNnotSent') !== false)
3977 3977
 			return false;
3978 3978
 
3979 3979
 		return null;
@@ -3990,45 +3990,45 @@  discard block
 block discarded – undo
3990 3990
 	 *
3991 3991
 	 * @return bool true, as we do not handle icserver->setFlags returnValue
3992 3992
 	 */
3993
-	function flagMessages($_flag, $_messageUID,$_folder=NULL)
3993
+	function flagMessages($_flag, $_messageUID, $_folder = NULL)
3994 3994
 	{
3995 3995
 		//error_log(__METHOD__.' ('.__LINE__.') '.'->' .$_flag." ".array2string($_messageUID).",$_folder /".$this->sessionData['mailbox']);
3996 3996
 		if (empty($_messageUID))
3997 3997
 		{
3998
-			if (self::$debug) error_log(__METHOD__." no messages Message(s): ".implode(',',$_messageUID));
3998
+			if (self::$debug) error_log(__METHOD__." no messages Message(s): ".implode(',', $_messageUID));
3999 3999
 			return false;
4000 4000
 		}
4001
-		$this->icServer->openMailbox(($_folder?$_folder:$this->sessionData['mailbox']));
4001
+		$this->icServer->openMailbox(($_folder ? $_folder : $this->sessionData['mailbox']));
4002 4002
 		$folder = $this->icServer->getCurrentMailbox();
4003
-		if (is_array($_messageUID)&& count($_messageUID)>50)
4003
+		if (is_array($_messageUID) && count($_messageUID) > 50)
4004 4004
 		{
4005
-			$count = $this->getMailBoxCounters($folder,true);
4006
-			if ($count->messages == count($_messageUID)) $_messageUID='all';
4005
+			$count = $this->getMailBoxCounters($folder, true);
4006
+			if ($count->messages == count($_messageUID)) $_messageUID = 'all';
4007 4007
 		}
4008 4008
 
4009
-		if ($_messageUID==='all')
4009
+		if ($_messageUID === 'all')
4010 4010
 		{
4011 4011
 			$messageUIDs = array('all');
4012 4012
 		}
4013 4013
 		else
4014 4014
 		{
4015 4015
 			if (!(is_object($_messageUID) || is_array($_messageUID))) $_messageUID = (array)$_messageUID;
4016
-			$messageUIDs = array_chunk($_messageUID,50,true);
4016
+			$messageUIDs = array_chunk($_messageUID, 50, true);
4017 4017
 		}
4018 4018
 		try
4019 4019
 		{
4020
-			foreach($messageUIDs as &$uids)
4020
+			foreach ($messageUIDs as &$uids)
4021 4021
 			{
4022
-				if ($uids==='all')
4022
+				if ($uids === 'all')
4023 4023
 				{
4024
-					$uidsToModify=null;
4024
+					$uidsToModify = null;
4025 4025
 				}
4026 4026
 				else
4027 4027
 				{
4028 4028
 					$uidsToModify = new Horde_Imap_Client_Ids();
4029 4029
 					$uidsToModify->add($uids);
4030 4030
 				}
4031
-				switch($_flag) {
4031
+				switch ($_flag) {
4032 4032
 					case "delete":
4033 4033
 						$ret = $this->icServer->store($folder, array('add'=>array('\\Deleted'), 'ids'=> $uidsToModify));
4034 4034
 						break;
@@ -4052,7 +4052,7 @@  discard block
 block discarded – undo
4052 4052
 						break;
4053 4053
 					case "unread":
4054 4054
 					case "unseen":
4055
-						$ret = $this->icServer->store($folder, array('remove'=>array('\\Seen','\\Answered','$Forwarded'), 'ids'=> $uidsToModify));
4055
+						$ret = $this->icServer->store($folder, array('remove'=>array('\\Seen', '\\Answered', '$Forwarded'), 'ids'=> $uidsToModify));
4056 4056
 						break;
4057 4057
 					case "mdnsent":
4058 4058
 						$ret = $this->icServer->store($folder, array('add'=>array('MDNSent'), 'ids'=> $uidsToModify));
@@ -4110,13 +4110,13 @@  discard block
 block discarded – undo
4110 4110
 				}
4111 4111
 			}
4112 4112
 		}
4113
-		catch(Exception $e)
4113
+		catch (Exception $e)
4114 4114
 		{
4115 4115
 			error_log(__METHOD__.__LINE__.' Error, could not flag messages in folder '.$folder.' Reason:'.$e->getMessage());
4116 4116
 		}
4117 4117
 		if ($folder instanceof Horde_Imap_Client_Mailbox) $_folder = $folder->utf8;
4118 4118
 		//error_log(__METHOD__.__LINE__.'#'.$this->icServer->ImapServerId.'#'.array2string($_folder).'#');
4119
-		self::$folderStatusCache[$this->icServer->ImapServerId][(!empty($_folder)?$_folder: $this->sessionData['mailbox'])]['uidValidity'] = 0;
4119
+		self::$folderStatusCache[$this->icServer->ImapServerId][(!empty($_folder) ? $_folder : $this->sessionData['mailbox'])]['uidValidity'] = 0;
4120 4120
 
4121 4121
 		//error_log(__METHOD__.' ('.__LINE__.') '.'->' .$_flag." ".array2string($_messageUID).",".($_folder?$_folder:$this->sessionData['mailbox']));
4122 4122
 		return true; // as we do not catch/examine setFlags returnValue
@@ -4137,19 +4137,19 @@  discard block
 block discarded – undo
4137 4137
 	 * @return mixed/bool true,false or new uid
4138 4138
 	 * @throws Exception
4139 4139
 	 */
4140
-	function moveMessages($_foldername, $_messageUID, $deleteAfterMove=true, $currentFolder = Null, $returnUIDs = false, $_sourceProfileID = Null, $_targetProfileID = Null)
4140
+	function moveMessages($_foldername, $_messageUID, $deleteAfterMove = true, $currentFolder = Null, $returnUIDs = false, $_sourceProfileID = Null, $_targetProfileID = Null)
4141 4141
 	{
4142
-		$source = Mail\Account::read(($_sourceProfileID?$_sourceProfileID:$this->icServer->ImapServerId))->imapServer();
4142
+		$source = Mail\Account::read(($_sourceProfileID ? $_sourceProfileID : $this->icServer->ImapServerId))->imapServer();
4143 4143
 		//$deleteOptions  = $GLOBALS['egw_info']["user"]["preferences"]["mail"]["deleteOptions"];
4144 4144
 		if (empty($_messageUID))
4145 4145
 		{
4146
-			if (self::$debug) error_log(__METHOD__." no Message(s): ".implode(',',$_messageUID));
4146
+			if (self::$debug) error_log(__METHOD__." no Message(s): ".implode(',', $_messageUID));
4147 4147
 			return false;
4148 4148
 		}
4149
-		elseif ($_messageUID==='all')
4149
+		elseif ($_messageUID === 'all')
4150 4150
 		{
4151 4151
 			//error_log(__METHOD__." all Message(s): ".implode(',',$_messageUID));
4152
-			$uidsToMove= null;
4152
+			$uidsToMove = null;
4153 4153
 		}
4154 4154
 		else
4155 4155
 		{
@@ -4158,7 +4158,7 @@  discard block
 block discarded – undo
4158 4158
 			if (!(is_object($_messageUID) || is_array($_messageUID))) $_messageUID = (array)$_messageUID;
4159 4159
 			$uidsToMove->add($_messageUID);
4160 4160
 		}
4161
-		$sourceFolder = (!empty($currentFolder)?$currentFolder: $this->sessionData['mailbox']);
4161
+		$sourceFolder = (!empty($currentFolder) ? $currentFolder : $this->sessionData['mailbox']);
4162 4162
 		//error_log(__METHOD__.__LINE__."$_targetProfileID !== ".array2string($source->ImapServerId));
4163 4163
 		if (!is_null($_targetProfileID) && $_targetProfileID !== $source->ImapServerId)
4164 4164
 		{
@@ -4178,19 +4178,19 @@  discard block
 block discarded – undo
4178 4178
 			//error_log(__METHOD__.' ('.__LINE__.') '.' Sourceserver:'.$source->ImapServerId.' mailheaders:'.array2string($headersNew));
4179 4179
 
4180 4180
 			if (is_object($headersNew)) {
4181
-				$c=0;
4181
+				$c = 0;
4182 4182
 				$retUid = new Horde_Imap_Client_Ids();
4183 4183
 				// we copy chunks of 5 to avoid too much memory and/or server stress
4184 4184
 				// some servers seem not to allow/support the appendig of multiple messages. so we are down to one
4185
-				foreach($headersNew as &$_headerObject) {
4185
+				foreach ($headersNew as &$_headerObject) {
4186 4186
 					$c++;
4187 4187
 					$flags = $_headerObject->getFlags(); //unseen status seems to be lost when retrieving the full message
4188 4188
 					$date = $_headerObject->getImapDate();
4189
-					$currentDate =  new Horde_Imap_Client_DateTime();
4189
+					$currentDate = new Horde_Imap_Client_DateTime();
4190 4190
 					// if the internal Date of the message equals the current date; try using the header date
4191
-					if ($date==$currentDate)
4191
+					if ($date == $currentDate)
4192 4192
 					{
4193
-						$headerForPrio = array_change_key_case($_headerObject->getHeaderText(0,Horde_Imap_Client_Data_Fetch::HEADER_PARSE)->toArray(), CASE_UPPER);
4193
+						$headerForPrio = array_change_key_case($_headerObject->getHeaderText(0, Horde_Imap_Client_Data_Fetch::HEADER_PARSE)->toArray(), CASE_UPPER);
4194 4194
 						//error_log(__METHOD__.__LINE__.'#'.array2string($date).'#'.array2string($currentDate).'#'.$headerForPrio['DATE']);
4195 4195
 						$date = new Horde_Imap_Client_DateTime($headerForPrio['DATE']);
4196 4196
 						//error_log(__METHOD__.__LINE__.'#'.array2string($date).'#'.array2string($currentDate).'#');
@@ -4199,20 +4199,20 @@  discard block
 block discarded – undo
4199 4199
 					//error_log(__METHOD__.' ('.__LINE__.') '.array2string($flags));
4200 4200
 					$body = $_headerObject->getFullMsg();
4201 4201
 					$dataNflags[] = array('data'=>$body, 'flags'=>$flags, 'internaldate'=>$date);
4202
-					if ($c==1)
4202
+					if ($c == 1)
4203 4203
 					{
4204 4204
 						$target = Mail\Account::read($_targetProfileID)->imapServer();
4205 4205
 						//error_log(__METHOD__.' ('.__LINE__.') '.' Sourceserver:'.$source->ImapServerId.' TargetServer:'.$_targetProfileID.' TargetFolderObject:'.array2string($_foldername));
4206 4206
 						$foldername = $target->getMailbox($_foldername);
4207 4207
 						// make sure the target folder is open and ready
4208 4208
 						$target->openMailbox($foldername);
4209
-						$ret = $target->append($foldername,$dataNflags);
4209
+						$ret = $target->append($foldername, $dataNflags);
4210 4210
 						$retUid->add($ret);
4211 4211
 						unset($dataNflags);
4212 4212
 						// sleep 500 miliseconds; AS some sERVERs seem not to be capable of the load this is
4213 4213
 						// inflicting in them. they "reply" with an unspecific IMAP Error
4214
-						time_nanosleep(0,500000);
4215
-						$c=0;
4214
+						time_nanosleep(0, 500000);
4215
+						$c = 0;
4216 4216
 					}
4217 4217
 				}
4218 4218
 				if (isset($dataNflags))
@@ -4222,7 +4222,7 @@  discard block
 block discarded – undo
4222 4222
 					$foldername = $target->getMailbox($_foldername);
4223 4223
 					// make sure the target folder is open and ready
4224 4224
 					$target->openMailbox($foldername);
4225
-					$ret = $target->append($foldername,$dataNflags);
4225
+					$ret = $target->append($foldername, $dataNflags);
4226 4226
 					$retUid->add($ret);
4227 4227
 					unset($dataNflags);
4228 4228
 				}
@@ -4233,7 +4233,7 @@  discard block
 block discarded – undo
4233 4233
 				{
4234 4234
 					$remember = $this->icServer;
4235 4235
 					$this->icServer = $source;
4236
-					$this->deleteMessages($_messageUID, $sourceFolder, $_forceDeleteMethod='remove_immediately');
4236
+					$this->deleteMessages($_messageUID, $sourceFolder, $_forceDeleteMethod = 'remove_immediately');
4237 4237
 					$this->icServer = $remember;
4238 4238
 				}
4239 4239
 			}
@@ -4242,7 +4242,7 @@  discard block
 block discarded – undo
4242 4242
 		{
4243 4243
 			try
4244 4244
 			{
4245
-				$retUid = $source->copy($sourceFolder, $_foldername, array('ids'=>$uidsToMove,'move'=>$deleteAfterMove));
4245
+				$retUid = $source->copy($sourceFolder, $_foldername, array('ids'=>$uidsToMove, 'move'=>$deleteAfterMove));
4246 4246
 			}
4247 4247
 			catch (exception $e)
4248 4248
 			{
@@ -4262,19 +4262,19 @@  discard block
 block discarded – undo
4262 4262
 	 * @param string $format ='' if none is passed, use user prefs
4263 4263
 	 * @return string returns the date as it is parseable by strtotime, or current timestamp if everything fails
4264 4264
 	 */
4265
-	static function _strtotime($_date='', $format='', $convert2usertime=false)
4265
+	static function _strtotime($_date = '', $format = '', $convert2usertime = false)
4266 4266
 	{
4267 4267
 		try {
4268
-			$date = new DateTime($_date);	// parse date & time including timezone (throws exception, if not parsable)
4269
-			if ($convert2usertime) $date->setUser();	// convert to user-time
4268
+			$date = new DateTime($_date); // parse date & time including timezone (throws exception, if not parsable)
4269
+			if ($convert2usertime) $date->setUser(); // convert to user-time
4270 4270
 			$date2return = $date->format($format);
4271 4271
 		}
4272
-		catch(\Exception $e)
4272
+		catch (\Exception $e)
4273 4273
 		{
4274
-			unset($e);	// not used
4274
+			unset($e); // not used
4275 4275
 
4276 4276
 			// remove last space-separated part and retry
4277
-			$parts = explode(' ',$_date);
4277
+			$parts = explode(' ', $_date);
4278 4278
 			if (count($parts) > 1)
4279 4279
 			{
4280 4280
 				array_pop($parts);
@@ -4295,12 +4295,12 @@  discard block
 block discarded – undo
4295 4295
 	 * @param mixed $_charset false or string -> Target charset, if false Mail displayCharset will be used
4296 4296
 	 * @return string
4297 4297
 	 */
4298
-	static function htmlentities($_string, $_charset=false)
4298
+	static function htmlentities($_string, $_charset = false)
4299 4299
 	{
4300 4300
 		//setting the charset (if not given)
4301
-		if ($_charset===false) $_charset = self::$displayCharset;
4301
+		if ($_charset === false) $_charset = self::$displayCharset;
4302 4302
 		$string = @htmlentities($_string, ENT_QUOTES, $_charset, false);
4303
-		if (empty($string) && !empty($_string)) $string = @htmlentities(Translation::convert($_string,Translation::detect_encoding($_string),$_charset),ENT_QUOTES | ENT_IGNORE,$_charset, false);
4303
+		if (empty($string) && !empty($_string)) $string = @htmlentities(Translation::convert($_string, Translation::detect_encoding($_string), $_charset), ENT_QUOTES|ENT_IGNORE, $_charset, false);
4304 4304
 		return $string;
4305 4305
 	}
4306 4306
 
@@ -4317,21 +4317,21 @@  discard block
 block discarded – undo
4317 4317
 		//$_html = str_replace("\t",' ',$_html);
4318 4318
 		//error_log(__METHOD__.__LINE__.':'.$_html);
4319 4319
 		//repair doubleencoded ampersands, and some stuff htmLawed stumbles upon with balancing switched on
4320
-		$_html = str_replace(array('&amp;amp;','<DIV><BR></DIV>',"<DIV>&nbsp;</DIV>",'<div>&nbsp;</div>','</td></font>','<br><td>','<tr></tr>','<o:p></o:p>','<o:p>','</o:p>'),
4321
-							 array('&amp;',    '<BR>',           '<BR>',             '<BR>',             '</font></td>','<td>',    '',         '',           '',  ''),$_html);
4320
+		$_html = str_replace(array('&amp;amp;', '<DIV><BR></DIV>', "<DIV>&nbsp;</DIV>", '<div>&nbsp;</div>', '</td></font>', '<br><td>', '<tr></tr>', '<o:p></o:p>', '<o:p>', '</o:p>'),
4321
+							 array('&amp;', '<BR>', '<BR>', '<BR>', '</font></td>', '<td>', '', '', '', ''), $_html);
4322 4322
 		//$_html = str_replace(array('&amp;amp;'),array('&amp;'),$_html);
4323
-		if (stripos($_html,'style')!==false) Mail\Html::replaceTagsCompletley($_html,'style'); // clean out empty or pagewide style definitions / left over tags
4324
-		if (stripos($_html,'head')!==false) Mail\Html::replaceTagsCompletley($_html,'head'); // Strip out stuff in head
4323
+		if (stripos($_html, 'style') !== false) Mail\Html::replaceTagsCompletley($_html, 'style'); // clean out empty or pagewide style definitions / left over tags
4324
+		if (stripos($_html, 'head') !== false) Mail\Html::replaceTagsCompletley($_html, 'head'); // Strip out stuff in head
4325 4325
 		//if (stripos($_html,'![if')!==false && stripos($_html,'<![endif]>')!==false) Mail\Html::replaceTagsCompletley($_html,'!\[if','<!\[endif\]>',false); // Strip out stuff in ifs
4326 4326
 		//if (stripos($_html,'!--[if')!==false && stripos($_html,'<![endif]-->')!==false) Mail\Html::replaceTagsCompletley($_html,'!--\[if','<!\[endif\]-->',false); // Strip out stuff in ifs
4327 4327
 		//error_log(__METHOD__.' ('.__LINE__.') '.$_html);
4328 4328
 
4329 4329
 		if (get_magic_quotes_gpc() === 1) $_html = stripslashes($_html);
4330 4330
 		// Strip out doctype in head, as htmlLawed cannot handle it TODO: Consider extracting it and adding it afterwards
4331
-		if (stripos($_html,'!doctype')!==false) Mail\Html::replaceTagsCompletley($_html,'!doctype');
4332
-		if (stripos($_html,'?xml:namespace')!==false) Mail\Html::replaceTagsCompletley($_html,'\?xml:namespace','/>',false);
4333
-		if (stripos($_html,'?xml version')!==false) Mail\Html::replaceTagsCompletley($_html,'\?xml version','\?>',false);
4334
-		if (strpos($_html,'!CURSOR')!==false) Mail\Html::replaceTagsCompletley($_html,'!CURSOR');
4331
+		if (stripos($_html, '!doctype') !== false) Mail\Html::replaceTagsCompletley($_html, '!doctype');
4332
+		if (stripos($_html, '?xml:namespace') !== false) Mail\Html::replaceTagsCompletley($_html, '\?xml:namespace', '/>', false);
4333
+		if (stripos($_html, '?xml version') !== false) Mail\Html::replaceTagsCompletley($_html, '\?xml version', '\?>', false);
4334
+		if (strpos($_html, '!CURSOR') !== false) Mail\Html::replaceTagsCompletley($_html, '!CURSOR');
4335 4335
 		// htmLawed filter only the 'body'
4336 4336
 		//preg_match('`(<htm.+?<body[^>]*>)(.+?)(</body>.*?</html>)`ims', $_html, $matches);
4337 4337
 		//if ($matches[2])
@@ -4342,16 +4342,16 @@  discard block
 block discarded – undo
4342 4342
 		// purify got switched to htmLawed
4343 4343
 		// some testcode to test purifying / htmlawed
4344 4344
 		//$_html = "<BLOCKQUOTE>hi <div> there </div> kram <br> </blockquote>".$_html;
4345
-		$_html = Html\HtmLawed::purify($_html,self::$htmLawed_config,array(),true);
4345
+		$_html = Html\HtmLawed::purify($_html, self::$htmLawed_config, array(), true);
4346 4346
 		//if ($hasOther) $_html = $matches[1]. $_html. $matches[3];
4347 4347
 		// clean out comments , should not be needed as purify should do the job.
4348 4348
 		$search = array(
4349
-			'@url\(http:\/\/[^\)].*?\)@si',  // url calls e.g. in style definitions
4350
-			'@<!--[\s\S]*?[ \t\n\r]*-->@',         // Strip multi-line comments including CDATA
4349
+			'@url\(http:\/\/[^\)].*?\)@si', // url calls e.g. in style definitions
4350
+			'@<!--[\s\S]*?[ \t\n\r]*-->@', // Strip multi-line comments including CDATA
4351 4351
 		);
4352
-		$_html = preg_replace($search,"",$_html);
4352
+		$_html = preg_replace($search, "", $_html);
4353 4353
 		// remove non printable chars
4354
-		$_html = preg_replace('/([\000-\011])/','',$_html);
4354
+		$_html = preg_replace('/([\000-\011])/', '', $_html);
4355 4355
 		//error_log(__METHOD__.':'.__LINE__.':'.$_html);
4356 4356
 	}
4357 4357
 
@@ -4368,12 +4368,12 @@  discard block
 block discarded – undo
4368 4368
 	function getMimePartCharset($_mimePartObject)
4369 4369
 	{
4370 4370
 		//$charSet = 'iso-8859-1';//self::$displayCharset; //'iso-8859-1'; // self::displayCharset seems to be asmarter fallback than iso-8859-1
4371
-		$CharsetFound=false;
4371
+		$CharsetFound = false;
4372 4372
 		//echo "#".$_mimePartObject->encoding.'#<br>';
4373
-		if(is_array($_mimePartObject->parameters)) {
4374
-			if(isset($_mimePartObject->parameters['CHARSET'])) {
4373
+		if (is_array($_mimePartObject->parameters)) {
4374
+			if (isset($_mimePartObject->parameters['CHARSET'])) {
4375 4375
 				$charSet = $_mimePartObject->parameters['CHARSET'];
4376
-				$CharsetFound=true;
4376
+				$CharsetFound = true;
4377 4377
 			}
4378 4378
 		}
4379 4379
 		// this one is dirty, but until I find something that does the trick of detecting the encoding, ....
@@ -4392,7 +4392,7 @@  discard block
 block discarded – undo
4392 4392
 	function decodeMimePart($_mimeMessage, $_encoding, $_charset = '')
4393 4393
 	{
4394 4394
 		// decode the part
4395
-		if (self::$debug) error_log(__METHOD__."() with $_encoding and $_charset:".print_r($_mimeMessage,true));
4395
+		if (self::$debug) error_log(__METHOD__."() with $_encoding and $_charset:".print_r($_mimeMessage, true));
4396 4396
 		switch (strtoupper($_encoding))
4397 4397
 		{
4398 4398
 			case 'BASE64':
@@ -4427,16 +4427,16 @@  discard block
 block discarded – undo
4427 4427
 	 * @param Horde_Mime_Part& $partCalendar =null on return text/calendar part, if one was contained or false
4428 4428
 	 * @return array containing the desired part
4429 4429
 	 */
4430
-	function getMultipartAlternative($_uid, Horde_Mime_Part $_structure, $_htmlMode, $_preserveSeen = false, &$partCalendar=null)
4430
+	function getMultipartAlternative($_uid, Horde_Mime_Part $_structure, $_htmlMode, $_preserveSeen = false, &$partCalendar = null)
4431 4431
 	{
4432 4432
 		// a multipart/alternative has exactly 2 parts (text and html  OR  text and something else)
4433 4433
 		// sometimes there are 3 parts, when there is an ics/ical attached/included-> we want to show that
4434 4434
 		// as attachment AND as abstracted ical information (we use our notification style here).
4435 4435
 		$partText = $partCalendar = $partHTML = null;
4436
-		if (self::$debug) _debug_array(array("METHOD"=>__METHOD__,"LINE"=>__LINE__,"STRUCTURE"=>$_structure));
4436
+		if (self::$debug) _debug_array(array("METHOD"=>__METHOD__, "LINE"=>__LINE__, "STRUCTURE"=>$_structure));
4437 4437
 		//error_log(__METHOD__.' ('.__LINE__.') ');
4438 4438
 		$ignore_first_part = true;
4439
-		foreach($_structure->contentTypeMap() as $mime_id => $mime_type)
4439
+		foreach ($_structure->contentTypeMap() as $mime_id => $mime_type)
4440 4440
 		{
4441 4441
 			//error_log(__METHOD__."($_uid, ".$_structure->getMimeId().") $mime_id: $mime_type"." ignoreFirstPart:".$ignore_first_part);
4442 4442
 			if (self::$debug) echo __METHOD__."($_uid, partID=".$_structure->getMimeId().") $mime_id: $mime_type<br>";
@@ -4444,15 +4444,15 @@  discard block
 block discarded – undo
4444 4444
 			if ($ignore_first_part)
4445 4445
 			{
4446 4446
 				$ignore_first_part = false;
4447
-				continue;	// ignore multipart/alternative itself
4447
+				continue; // ignore multipart/alternative itself
4448 4448
 			}
4449 4449
 
4450 4450
 			$mimePart = $_structure->getPart($mime_id);
4451 4451
 
4452
-			switch($mimePart->getPrimaryType())
4452
+			switch ($mimePart->getPrimaryType())
4453 4453
 			{
4454 4454
 				case 'text':
4455
-					switch($mimePart->getSubType())
4455
+					switch ($mimePart->getSubType())
4456 4456
 					{
4457 4457
 						case 'plain':
4458 4458
 							if ($mimePart->getBytes() > 0) $partText = $mimePart;
@@ -4469,7 +4469,7 @@  discard block
 block discarded – undo
4469 4469
 					break;
4470 4470
 
4471 4471
 				case 'multipart':
4472
-					switch($mimePart->getSubType())
4472
+					switch ($mimePart->getSubType())
4473 4473
 					{
4474 4474
 						case 'related':
4475 4475
 						case 'mixed':
@@ -4491,13 +4491,13 @@  discard block
 block discarded – undo
4491 4491
 			}
4492 4492
 		}
4493 4493
 
4494
-		switch($_htmlMode)
4494
+		switch ($_htmlMode)
4495 4495
 		{
4496 4496
 			case 'html_only':
4497 4497
 			case 'always_display':
4498 4498
 				if ($partHTML)
4499 4499
 				{
4500
-					switch($partHTML->getSubType())
4500
+					switch ($partHTML->getSubType())
4501 4501
 					{
4502 4502
 						case 'related':
4503 4503
 							return $this->getMultipartRelated($_uid, $partHTML, $_htmlMode, $_preserveSeen);
@@ -4509,7 +4509,7 @@  discard block
 block discarded – undo
4509 4509
 							return $this->getTextPart($_uid, $partHTML, $_htmlMode, $_preserveSeen);
4510 4510
 					}
4511 4511
 				}
4512
-				elseif ($partText && $_htmlMode=='always_display')
4512
+				elseif ($partText && $_htmlMode == 'always_display')
4513 4513
 				{
4514 4514
 					return $this->getTextPart($_uid, $partText, $_htmlMode, $_preserveSeen);
4515 4515
 				}
@@ -4555,7 +4555,7 @@  discard block
 block discarded – undo
4555 4555
 	 * @param array	&$skipParts - passed by reference to have control/knowledge which parts are already fetched
4556 4556
 	 * @return array containing the desired part
4557 4557
 	 */
4558
-	function getMultipartMixed($_uid, Horde_Mime_Part $_structure, $_htmlMode, $_preserveSeen = false, &$skipParts=array())
4558
+	function getMultipartMixed($_uid, Horde_Mime_Part $_structure, $_htmlMode, $_preserveSeen = false, &$skipParts = array())
4559 4559
 	{
4560 4560
 		if (self::$debug) echo __METHOD__."$_uid, $_htmlMode<br>";
4561 4561
 		$bodyPart = array();
@@ -4564,7 +4564,7 @@  discard block
 block discarded – undo
4564 4564
 		$ignore_first_part = true;
4565 4565
 		//$skipParts = array();
4566 4566
 		//error_log(__METHOD__.__LINE__.array2string($_structure->contentTypeMap()));
4567
-		foreach($_structure->contentTypeMap() as $mime_id => $mime_type)
4567
+		foreach ($_structure->contentTypeMap() as $mime_id => $mime_type)
4568 4568
 		{
4569 4569
 			//error_log(__METHOD__."($_uid, ".$_structure->getMimeId().") $mime_id: $mime_type");
4570 4570
 			if (self::$debug) echo __METHOD__."($_uid, partID=".$_structure->getMimeId().") $mime_id: $mime_type<br>";
@@ -4572,9 +4572,9 @@  discard block
 block discarded – undo
4572 4572
 			{
4573 4573
 				$ignore_first_part = false;
4574 4574
 				//error_log(__METHOD__."($_uid, ".$_structure->getMimeId().") SKIPPED FirstPart $mime_id: $mime_type");
4575
-				continue;	// ignore multipart/mixed itself
4575
+				continue; // ignore multipart/mixed itself
4576 4576
 			}
4577
-			if (array_key_exists($mime_id,$skipParts))
4577
+			if (array_key_exists($mime_id, $skipParts))
4578 4578
 			{
4579 4579
 				//error_log(__METHOD__."($_uid, ".$_structure->getMimeId().") SKIPPED $mime_id: $mime_type");
4580 4580
 				continue;
@@ -4582,11 +4582,11 @@  discard block
 block discarded – undo
4582 4582
 
4583 4583
 			$part = $_structure->getPart($mime_id);
4584 4584
 
4585
-			switch($part->getPrimaryType())
4585
+			switch ($part->getPrimaryType())
4586 4586
 			{
4587 4587
 				case 'multipart':
4588 4588
 					if ($part->getDisposition() == 'attachment') continue;
4589
-					switch($part->getSubType())
4589
+					switch ($part->getSubType())
4590 4590
 					{
4591 4591
 						case 'alternative':
4592 4592
 							return array($this->getMultipartAlternative($_uid, $part, $_htmlMode, $_preserveSeen));
@@ -4602,15 +4602,15 @@  discard block
 block discarded – undo
4602 4602
 					}
4603 4603
 					break;
4604 4604
 				case 'application':
4605
-					switch($part->getSubType())
4605
+					switch ($part->getSubType())
4606 4606
 					{
4607 4607
 						case 'pgp-encrypted':
4608
-							if (($part = $_structure->getPart($mime_id+1)) &&
4608
+							if (($part = $_structure->getPart($mime_id + 1)) &&
4609 4609
 								$part->getType() == 'application/octet-stream')
4610 4610
 							{
4611 4611
 								$this->fetchPartContents($_uid, $part);
4612
-								$skipParts[$mime_id]=$mime_type;
4613
-								$skipParts[$mime_id+1]=$part->getType();
4612
+								$skipParts[$mime_id] = $mime_type;
4613
+								$skipParts[$mime_id + 1] = $part->getType();
4614 4614
 								$bodyPart[] = array(
4615 4615
 									'body'		=> $part->getContents(array(
4616 4616
 										'stream' => false,
@@ -4624,15 +4624,15 @@  discard block
 block discarded – undo
4624 4624
 					break;
4625 4625
 
4626 4626
 				case 'text':
4627
-					switch($part->getSubType())
4627
+					switch ($part->getSubType())
4628 4628
 					{
4629 4629
 						case 'plain':
4630 4630
 						case 'html':
4631 4631
 						case 'calendar': // inline ics/ical files
4632
-							if($part->getDisposition() != 'attachment')
4632
+							if ($part->getDisposition() != 'attachment')
4633 4633
 							{
4634 4634
 								$bodyPart[] = $this->getTextPart($_uid, $part, $_htmlMode, $_preserveSeen);
4635
-								$skipParts[$mime_id]=$mime_type;
4635
+								$skipParts[$mime_id] = $mime_type;
4636 4636
 							}
4637 4637
 							//error_log(__METHOD__.' ('.__LINE__.') '.' ->'.$part->type."/".$part->subType.' -> BodyPart:'.array2string($bodyPart[count($bodyPart)-1]));
4638 4638
 							break;
@@ -4641,16 +4641,16 @@  discard block
 block discarded – undo
4641 4641
 
4642 4642
 				case 'message':
4643 4643
 					//skip attachments
4644
-					if($part->getSubType() == 'delivery-status' && $part->getDisposition() != 'attachment')
4644
+					if ($part->getSubType() == 'delivery-status' && $part->getDisposition() != 'attachment')
4645 4645
 					{
4646 4646
 						$bodyPart[] = $this->getTextPart($_uid, $part, $_htmlMode, $_preserveSeen);
4647
-						$skipParts[$mime_id]=$mime_type;
4647
+						$skipParts[$mime_id] = $mime_type;
4648 4648
 					}
4649 4649
 					// do not descend into attached Messages
4650
-					if($part->getSubType() == 'rfc822' || $part->getDisposition() == 'attachment')
4650
+					if ($part->getSubType() == 'rfc822' || $part->getDisposition() == 'attachment')
4651 4651
 					{
4652 4652
 						$skipParts[$mime_id.'.0'] = $mime_type;
4653
-						foreach($part->contentTypeMap() as $sub_id => $sub_type){ $skipParts[$sub_id] = $sub_type;}
4653
+						foreach ($part->contentTypeMap() as $sub_id => $sub_type) { $skipParts[$sub_id] = $sub_type; }
4654 4654
 						//error_log(__METHOD__.' ('.__LINE__.') '.' Uid:'.$_uid.' Part:'.$mime_id.':'.array2string($skipParts));
4655 4655
 						//break 2;
4656 4656
 					}
@@ -4691,13 +4691,13 @@  discard block
 block discarded – undo
4691 4691
 	 * @param boolean $_tryDecodingServerside = true; wether to try to fetch Data with BINARY instead of BODY
4692 4692
 	 * @return string|resource
4693 4693
 	 */
4694
-	function getBodyPart($_uid, $_partID=null, $_folder=null, $_preserveSeen=false, $_stream=false, &$_encoding=null, $_tryDecodingServerside=true)
4694
+	function getBodyPart($_uid, $_partID = null, $_folder = null, $_preserveSeen = false, $_stream = false, &$_encoding = null, $_tryDecodingServerside = true)
4695 4695
 	{
4696
-		if (self::$debug) error_log( __METHOD__.__LINE__."(".array2string($_uid).", $_partID, $_folder, $_preserveSeen, $_stream, $_encoding, $_tryDecodingServerside)");
4696
+		if (self::$debug) error_log(__METHOD__.__LINE__."(".array2string($_uid).", $_partID, $_folder, $_preserveSeen, $_stream, $_encoding, $_tryDecodingServerside)");
4697 4697
 
4698 4698
 		if (empty($_folder))
4699 4699
 		{
4700
-			$_folder = (isset($this->sessionData['mailbox'])&&$this->sessionData['mailbox']? $this->sessionData['mailbox'] : $this->icServer->getCurrentMailbox());
4700
+			$_folder = (isset($this->sessionData['mailbox']) && $this->sessionData['mailbox'] ? $this->sessionData['mailbox'] : $this->icServer->getCurrentMailbox());
4701 4701
 		}
4702 4702
 		//error_log(__METHOD__.' ('.__LINE__.') '.array2string($_folder).'/'.$this->icServer->getCurrentMailbox().'/'. $this->sessionData['mailbox']);
4703 4703
 		// querying contents of body part
@@ -4708,11 +4708,11 @@  discard block
 block discarded – undo
4708 4708
 		$fquery = new Horde_Imap_Client_Fetch_Query();
4709 4709
 		$fetchParams = array(
4710 4710
 			'peek' => $_preserveSeen,
4711
-			'decode' => true,	// try decode on server, does NOT neccessary work
4711
+			'decode' => true, // try decode on server, does NOT neccessary work
4712 4712
 		);
4713
-		if ($_tryDecodingServerside===false)// || ($_tryDecodingServerside&&$this->isDraftFolder($_folder)))
4713
+		if ($_tryDecodingServerside === false)// || ($_tryDecodingServerside&&$this->isDraftFolder($_folder)))
4714 4714
 		{
4715
-			$_tryDecodingServerside=false;
4715
+			$_tryDecodingServerside = false;
4716 4716
 			$fetchParams = array(
4717 4717
 				'peek' => $_preserveSeen,
4718 4718
 			);
@@ -4732,12 +4732,12 @@  discard block
 block discarded – undo
4732 4732
 		}
4733 4733
 		// if we get an empty result, server may have trouble fetching data with UID FETCH $_uid (BINARY.PEEK[$_partID])
4734 4734
 		// thus we trigger a second go with UID FETCH $_uid (BODY.PEEK[$_partID])
4735
-		if (empty($partToReturn)&&$_tryDecodingServerside===true)
4735
+		if (empty($partToReturn) && $_tryDecodingServerside === true)
4736 4736
 		{
4737 4737
 			error_log(__METHOD__.__LINE__.' failed to fetch bodyPart in  BINARY. Try BODY');
4738 4738
 			$partToReturn = $this->getBodyPart($_uid, $_partID, $_folder, $_preserveSeen, $_stream, $_encoding, false);
4739 4739
 		}
4740
-		return ($partToReturn?$partToReturn:null);
4740
+		return ($partToReturn ? $partToReturn : null);
4741 4741
 	}
4742 4742
 
4743 4743
 	/**
@@ -4750,13 +4750,13 @@  discard block
 block discarded – undo
4750 4750
 	 * @param boolean $_stream = false true return a stream, false return string
4751 4751
 	 * @return array containing the desired text part, mimeType and charset
4752 4752
 	 */
4753
-	function getTextPart($_uid, Horde_Mime_Part $_structure, $_htmlMode='', $_preserveSeen=false, $_stream=false)
4753
+	function getTextPart($_uid, Horde_Mime_Part $_structure, $_htmlMode = '', $_preserveSeen = false, $_stream = false)
4754 4754
 	{
4755 4755
 		//error_log(__METHOD__.' ('.__LINE__.') '.'->'.$_uid.':'.array2string($_structure).' '.function_backtrace());
4756 4756
 		$bodyPart = array();
4757
-		if (self::$debug) _debug_array(array($_structure,function_backtrace()));
4757
+		if (self::$debug) _debug_array(array($_structure, function_backtrace()));
4758 4758
 
4759
-		if($_structure->getSubType() == 'html' && !in_array($_htmlMode, array('html_only', 'always_display', 'only_if_no_text')))
4759
+		if ($_structure->getSubType() == 'html' && !in_array($_htmlMode, array('html_only', 'always_display', 'only_if_no_text')))
4760 4760
 		{
4761 4761
 			$bodyPart = array(
4762 4762
 				'error'		=> 1,
@@ -4803,10 +4803,10 @@  discard block
 block discarded – undo
4803 4803
 	 * @param Horde_Mime_part& $calendar_part =null on return calendar-part or null, if there is none
4804 4804
 	 * @return array containing the message body, mimeType and charset
4805 4805
 	 */
4806
-	function getMessageBody($_uid, $_htmlOptions='', $_partID=null, Horde_Mime_Part $_structure=null, $_preserveSeen = false, $_folder = '', &$calendar_part=null)
4806
+	function getMessageBody($_uid, $_htmlOptions = '', $_partID = null, Horde_Mime_Part $_structure = null, $_preserveSeen = false, $_folder = '', &$calendar_part = null)
4807 4807
 	{
4808 4808
 		if (self::$debug) echo __METHOD__."$_uid, $_htmlOptions, $_partID<br>";
4809
-		if($_htmlOptions != '') {
4809
+		if ($_htmlOptions != '') {
4810 4810
 			$this->htmlOptions = $_htmlOptions;
4811 4811
 		}
4812 4812
 		if (empty($_folder))
@@ -4827,7 +4827,7 @@  discard block
 block discarded – undo
4827 4827
 			return array(
4828 4828
 				array(
4829 4829
 					'error'		=> 1,
4830
-					'body'		=> 'Error: Could not fetch structure on mail:'.$_uid." as $_htmlOptions". 'for Mailprofile'.$this->icServer->ImapServerId.' User:'.$GLOBALS['egw_info']['user']['account_lid'],
4830
+					'body'		=> 'Error: Could not fetch structure on mail:'.$_uid." as $_htmlOptions".'for Mailprofile'.$this->icServer->ImapServerId.' User:'.$GLOBALS['egw_info']['user']['account_lid'],
4831 4831
 					'mimeType'	=> 'text/plain',
4832 4832
 					'charSet'	=> self::$displayCharset,
4833 4833
 				)
@@ -4840,7 +4840,7 @@  discard block
 block discarded – undo
4840 4840
 			//_debug_array($_structure->getMimeId()); exit;
4841 4841
 		}
4842 4842
 
4843
-		switch($_structure->getPrimaryType())
4843
+		switch ($_structure->getPrimaryType())
4844 4844
 		{
4845 4845
 			case 'application':
4846 4846
 				return array(
@@ -4852,7 +4852,7 @@  discard block
 block discarded – undo
4852 4852
 				);
4853 4853
 
4854 4854
 			case 'multipart':
4855
-				switch($_structure->getSubType())
4855
+				switch ($_structure->getSubType())
4856 4856
 				{
4857 4857
 					case 'alternative':
4858 4858
 						$bodyParts = array($this->getMultipartAlternative($_uid, $_structure, $this->htmlOptions, $_preserveSeen, $calendar_part));
@@ -4886,7 +4886,7 @@  discard block
 block discarded – undo
4886 4886
 				$bodyPart = array();
4887 4887
 				if ($_structure->getDisposition() != 'attachment')
4888 4888
 				{
4889
-					switch($_structure->getSubType())
4889
+					switch ($_structure->getSubType())
4890 4890
 					{
4891 4891
 						case 'calendar':
4892 4892
 							// this is handeled in getTextPart
@@ -4902,11 +4902,11 @@  discard block
 block discarded – undo
4902 4902
 
4903 4903
 			case 'attachment':
4904 4904
 			case 'message':
4905
-				switch($_structure->getSubType())
4905
+				switch ($_structure->getSubType())
4906 4906
 				{
4907 4907
 					case 'rfc822':
4908 4908
 						$newStructure = $_structure->getParts();
4909
-						if (self::$debug) {echo __METHOD__." Message -> RFC -> NewStructure:"; _debug_array($newStructure[0]);}
4909
+						if (self::$debug) {echo __METHOD__." Message -> RFC -> NewStructure:"; _debug_array($newStructure[0]); }
4910 4910
 						return self::normalizeBodyParts($this->getMessageBody($_uid, $_htmlOptions, $newStructure[0]->getMimeId(), $newStructure[0], $_preserveSeen, $_folder));
4911 4911
 				}
4912 4912
 				break;
@@ -4934,11 +4934,11 @@  discard block
 block discarded – undo
4934 4934
 	{
4935 4935
 		if (is_array($_bodyParts))
4936 4936
 		{
4937
-			foreach($_bodyParts as $singleBodyPart)
4937
+			foreach ($_bodyParts as $singleBodyPart)
4938 4938
 			{
4939 4939
 				if (!isset($singleBodyPart['body'])) {
4940 4940
 					$buff = self::normalizeBodyParts($singleBodyPart);
4941
-					foreach ((array)$buff as $val) { $body2return[] = $val;}
4941
+					foreach ((array)$buff as $val) { $body2return[] = $val; }
4942 4942
 					continue;
4943 4943
 				}
4944 4944
 				$body2return[] = $singleBodyPart;
@@ -4959,14 +4959,14 @@  discard block
 block discarded – undo
4959 4959
 	 * @param boolean $useTidy  switch to use tidy
4960 4960
 	 * @return string a preformatted string with the mails converted to text
4961 4961
 	 */
4962
-	static function &getdisplayableBody(&$mailClass, $bodyParts, $preserveHTML = false,  $useTidy = true)
4962
+	static function &getdisplayableBody(&$mailClass, $bodyParts, $preserveHTML = false, $useTidy = true)
4963 4963
 	{
4964
-		$message='';
4965
-		for($i=0; $i<count($bodyParts); $i++)
4964
+		$message = '';
4965
+		for ($i = 0; $i < count($bodyParts); $i++)
4966 4966
 		{
4967 4967
 			if (!isset($bodyParts[$i]['body'])) {
4968 4968
 				$bodyParts[$i]['body'] = self::getdisplayableBody($mailClass, $bodyParts[$i], $preserveHTML, $useTidy);
4969
-				$message .= empty($bodyParts[$i]['body'])?'':$bodyParts[$i]['body'];
4969
+				$message .= empty($bodyParts[$i]['body']) ? '' : $bodyParts[$i]['body'];
4970 4970
 				continue;
4971 4971
 			}
4972 4972
 			if (isset($bodyParts[$i]['error'])) continue;
@@ -4991,32 +4991,32 @@  discard block
 block discarded – undo
4991 4991
 				'(R)',
4992 4992
 			);
4993 4993
 
4994
-			if(($bodyParts[$i]['mimeType'] == 'text/html' || $bodyParts[$i]['mimeType'] == 'text/plain') &&
4994
+			if (($bodyParts[$i]['mimeType'] == 'text/html' || $bodyParts[$i]['mimeType'] == 'text/plain') &&
4995 4995
 				strtoupper($bodyParts[$i]['charSet']) != 'UTF-8')
4996 4996
 			{
4997
-				$bodyParts[$i]['body'] = preg_replace($sar,$rar,$bodyParts[$i]['body']);
4997
+				$bodyParts[$i]['body'] = preg_replace($sar, $rar, $bodyParts[$i]['body']);
4998 4998
 			}
4999 4999
 
5000
-			if ($bodyParts[$i]['charSet']===false) $bodyParts[$i]['charSet'] = Translation::detect_encoding($bodyParts[$i]['body']);
5000
+			if ($bodyParts[$i]['charSet'] === false) $bodyParts[$i]['charSet'] = Translation::detect_encoding($bodyParts[$i]['body']);
5001 5001
 			// add line breaks to $bodyParts
5002 5002
 			//error_log(__METHOD__.' ('.__LINE__.') '.' Charset:'.$bodyParts[$i]['charSet'].'->'.$bodyParts[$i]['body']);
5003
-			$newBody  = Translation::convert_jsonsafe($bodyParts[$i]['body'], $bodyParts[$i]['charSet']);
5003
+			$newBody = Translation::convert_jsonsafe($bodyParts[$i]['body'], $bodyParts[$i]['charSet']);
5004 5004
 			//error_log(__METHOD__.' ('.__LINE__.') '.' MimeType:'.$bodyParts[$i]['mimeType'].'->'.$newBody);
5005 5005
 			$mailClass->activeMimeType = 'text/plain';
5006 5006
 			if ($bodyParts[$i]['mimeType'] == 'text/html') {
5007 5007
 				$mailClass->activeMimeType = $bodyParts[$i]['mimeType'];
5008 5008
 				if (!$preserveHTML)
5009 5009
 				{
5010
-					$alreadyHtmlLawed=false;
5010
+					$alreadyHtmlLawed = false;
5011 5011
 					// as Translation::convert reduces \r\n to \n and purifier eats \n -> peplace it with a single space
5012
-					$newBody = str_replace("\n"," ",$newBody);
5012
+					$newBody = str_replace("\n", " ", $newBody);
5013 5013
 					// convert HTML to text, as we dont want HTML in infologs
5014 5014
 					if ($useTidy && extension_loaded('tidy'))
5015 5015
 					{
5016 5016
 						$tidy = new tidy();
5017
-						$cleaned = $tidy->repairString($newBody, self::$tidy_config,'utf8');
5017
+						$cleaned = $tidy->repairString($newBody, self::$tidy_config, 'utf8');
5018 5018
 						// Found errors. Strip it all so there's some output
5019
-						if($tidy->getStatus() == 2)
5019
+						if ($tidy->getStatus() == 2)
5020 5020
 						{
5021 5021
 							error_log(__METHOD__.' ('.__LINE__.') '.' ->'.$tidy->errorBuffer);
5022 5022
 						}
@@ -5027,7 +5027,7 @@  discard block
 block discarded – undo
5027 5027
 						if (!$preserveHTML)
5028 5028
 						{
5029 5029
 							// filter only the 'body', as we only want that part, if we throw away the html
5030
-							preg_match('`(<htm.+?<body[^>]*>)(.+?)(</body>.*?</html>)`ims', $newBody, $matches=array());
5030
+							preg_match('`(<htm.+?<body[^>]*>)(.+?)(</body>.*?</html>)`ims', $newBody, $matches = array());
5031 5031
 							if ($matches[2])
5032 5032
 							{
5033 5033
 								$hasOther = true;
@@ -5038,7 +5038,7 @@  discard block
 block discarded – undo
5038 5038
 					else
5039 5039
 					{
5040 5040
 						// htmLawed filter only the 'body'
5041
-						preg_match('`(<htm.+?<body[^>]*>)(.+?)(</body>.*?</html>)`ims', $newBody, $matches=array());
5041
+						preg_match('`(<htm.+?<body[^>]*>)(.+?)(</body>.*?</html>)`ims', $newBody, $matches = array());
5042 5042
 						if ($matches[2])
5043 5043
 						{
5044 5044
 							$hasOther = true;
@@ -5047,17 +5047,17 @@  discard block
 block discarded – undo
5047 5047
 						$htmLawed = new Html\HtmLawed();
5048 5048
 						// the next line should not be needed, but produces better results on HTML 2 Text conversion,
5049 5049
 						// as we switched off HTMLaweds tidy functionality
5050
-						$newBody = str_replace(array('&amp;amp;','<DIV><BR></DIV>',"<DIV>&nbsp;</DIV>",'<div>&nbsp;</div>'),array('&amp;','<BR>','<BR>','<BR>'),$newBody);
5051
-						$newBody = $htmLawed->run($newBody,self::$htmLawed_config);
5052
-						if ($hasOther && $preserveHTML) $newBody = $matches[1]. $newBody. $matches[3];
5053
-						$alreadyHtmlLawed=true;
5050
+						$newBody = str_replace(array('&amp;amp;', '<DIV><BR></DIV>', "<DIV>&nbsp;</DIV>", '<div>&nbsp;</div>'), array('&amp;', '<BR>', '<BR>', '<BR>'), $newBody);
5051
+						$newBody = $htmLawed->run($newBody, self::$htmLawed_config);
5052
+						if ($hasOther && $preserveHTML) $newBody = $matches[1].$newBody.$matches[3];
5053
+						$alreadyHtmlLawed = true;
5054 5054
 					}
5055 5055
 					//error_log(__METHOD__.' ('.__LINE__.') '.' after purify:'.$newBody);
5056
-					if ($preserveHTML==false) $newBody = Mail\Html::convertHTMLToText($newBody,self::$displayCharset,true,true);
5056
+					if ($preserveHTML == false) $newBody = Mail\Html::convertHTMLToText($newBody, self::$displayCharset, true, true);
5057 5057
 					//error_log(__METHOD__.' ('.__LINE__.') '.' after convertHTMLToText:'.$newBody);
5058
-					if ($preserveHTML==false) $newBody = nl2br($newBody); // we need this, as htmLawed removes \r\n
5058
+					if ($preserveHTML == false) $newBody = nl2br($newBody); // we need this, as htmLawed removes \r\n
5059 5059
 					/*if (!$alreadyHtmlLawed) */ $mailClass->getCleanHTML($newBody); // remove stuff we regard as unwanted
5060
-					if ($preserveHTML==false) $newBody = str_replace("<br />","\r\n",$newBody);
5060
+					if ($preserveHTML == false) $newBody = str_replace("<br />", "\r\n", $newBody);
5061 5061
 					//error_log(__METHOD__.' ('.__LINE__.') '.' after getClean:'.$newBody);
5062 5062
 				}
5063 5063
 				$message .= $newBody;
@@ -5066,9 +5066,9 @@  discard block
 block discarded – undo
5066 5066
 			//error_log(__METHOD__.' ('.__LINE__.') '.' Body(after specialchars):'.$newBody);
5067 5067
 			//use Mail\Html::convertHTMLToText instead of strip_tags, (even message is plain text) as strip_tags eats away too much
5068 5068
 			//$newBody = strip_tags($newBody); //we need to fix broken tags (or just stuff like "<800 USD/p" )
5069
-			$newBody = Mail\Html::convertHTMLToText($newBody,self::$displayCharset,false,false);
5069
+			$newBody = Mail\Html::convertHTMLToText($newBody, self::$displayCharset, false, false);
5070 5070
 			//error_log(__METHOD__.' ('.__LINE__.') '.' Body(after strip tags):'.$newBody);
5071
-			$newBody = htmlspecialchars_decode($newBody,ENT_QUOTES);
5071
+			$newBody = htmlspecialchars_decode($newBody, ENT_QUOTES);
5072 5072
 			//error_log(__METHOD__.' ('.__LINE__.') '.' Body (after hmlspc_decode):'.$newBody);
5073 5073
 			$message .= $newBody;
5074 5074
 			//continue;
@@ -5076,27 +5076,27 @@  discard block
 block discarded – undo
5076 5076
 		return $message;
5077 5077
 	}
5078 5078
 
5079
-	static function wordwrap($str, $cols, $cut, $dontbreaklinesstartingwith=false)
5079
+	static function wordwrap($str, $cols, $cut, $dontbreaklinesstartingwith = false)
5080 5080
 	{
5081 5081
 		$lines = explode("\n", $str);
5082 5082
 		$newStr = '';
5083
-		foreach($lines as $line)
5083
+		foreach ($lines as $line)
5084 5084
 		{
5085 5085
 			// replace tabs by 8 space chars, or any tab only counts one char
5086 5086
 			//$line = str_replace("\t","        ",$line);
5087 5087
 			//$newStr .= wordwrap($line, $cols, $cut);
5088
-			$allowedLength = $cols-strlen($cut);
5088
+			$allowedLength = $cols - strlen($cut);
5089 5089
 			//dont try to break lines with links, chance is we mess up the text is way too big
5090
-			if (strlen($line) > $allowedLength && stripos($line,'href=')===false &&
5091
-				($dontbreaklinesstartingwith==false ||
5090
+			if (strlen($line) > $allowedLength && stripos($line, 'href=') === false &&
5091
+				($dontbreaklinesstartingwith == false ||
5092 5092
 				 ($dontbreaklinesstartingwith &&
5093
-				  strlen($dontbreaklinesstartingwith)>=1 &&
5094
-				  substr($line,0,strlen($dontbreaklinesstartingwith)) != $dontbreaklinesstartingwith
5093
+				  strlen($dontbreaklinesstartingwith) >= 1 &&
5094
+				  substr($line, 0, strlen($dontbreaklinesstartingwith)) != $dontbreaklinesstartingwith
5095 5095
 				 )
5096 5096
 				)
5097 5097
 			   )
5098 5098
 			{
5099
-				$s=explode(" ", $line);
5099
+				$s = explode(" ", $line);
5100 5100
 				$line = "";
5101 5101
 				$linecnt = 0;
5102 5102
 				foreach ($s as &$v) {
@@ -5104,22 +5104,22 @@  discard block
 block discarded – undo
5104 5104
 					// only break long words within the wordboundaries,
5105 5105
 					// but it may destroy links, so we check for href and dont do it if we find one
5106 5106
 					// we check for any html within the word, because we do not want to break html by accident
5107
-					if($cnt > $allowedLength && stripos($v,'href=')===false && stripos($v,'onclick=')===false && $cnt == strlen(html_entity_decode($v)))
5107
+					if ($cnt > $allowedLength && stripos($v, 'href=') === false && stripos($v, 'onclick=') === false && $cnt == strlen(html_entity_decode($v)))
5108 5108
 					{
5109
-						$v=wordwrap($v, $allowedLength, $cut, true);
5109
+						$v = wordwrap($v, $allowedLength, $cut, true);
5110 5110
 					}
5111 5111
 					// the rest should be broken at the start of the new word that exceeds the limit
5112
-					if ($linecnt+$cnt > $allowedLength) {
5113
-						$v=$cut.$v;
5112
+					if ($linecnt + $cnt > $allowedLength) {
5113
+						$v = $cut.$v;
5114 5114
 						#$linecnt = 0;
5115
-						$linecnt =strlen($v)-strlen($cut);
5115
+						$linecnt = strlen($v) - strlen($cut);
5116 5116
 					} else {
5117 5117
 						$linecnt += $cnt;
5118 5118
 					}
5119 5119
 					if (strlen($v)) $line .= (strlen($line) ? " " : "").$v;
5120 5120
 				}
5121 5121
 			}
5122
-			$newStr .= $line . "\n";
5122
+			$newStr .= $line."\n";
5123 5123
 		}
5124 5124
 		return $newStr;
5125 5125
 	}
@@ -5134,12 +5134,12 @@  discard block
 block discarded – undo
5134 5134
 	 * @param boolean $_useHeaderInsteadOfEnvelope - force getMessageHeader method to be used for fetching Envelope Information
5135 5135
 	 * @return array the message header
5136 5136
 	 */
5137
-	function getMessageEnvelope($_uid, $_partID = '',$decode=false, $_folder='', $_useHeaderInsteadOfEnvelope=false)
5137
+	function getMessageEnvelope($_uid, $_partID = '', $decode = false, $_folder = '', $_useHeaderInsteadOfEnvelope = false)
5138 5138
 	{
5139 5139
 		//error_log(__METHOD__.' ('.__LINE__.') '.":$_uid,$_partID,$decode,$_folder".function_backtrace());
5140
-		if (empty($_folder)) $_folder = ($this->sessionData['mailbox']? $this->sessionData['mailbox'] : $this->icServer->getCurrentMailbox());
5140
+		if (empty($_folder)) $_folder = ($this->sessionData['mailbox'] ? $this->sessionData['mailbox'] : $this->icServer->getCurrentMailbox());
5141 5141
 		//error_log(__METHOD__.' ('.__LINE__.') '.":$_uid,$_partID,$decode,$_folder");
5142
-		if((empty($_partID)||$_partID=='null')&&$_useHeaderInsteadOfEnvelope===false) {
5142
+		if ((empty($_partID) || $_partID == 'null') && $_useHeaderInsteadOfEnvelope === false) {
5143 5143
 			$uidsToFetch = new Horde_Imap_Client_Ids();
5144 5144
 			if (!(is_object($_uid) || is_array($_uid))) $_uid = (array)$_uid;
5145 5145
 			$uidsToFetch->add($_uid);
@@ -5152,7 +5152,7 @@  discard block
 block discarded – undo
5152 5152
 				'ids' => $uidsToFetch,
5153 5153
 			));
5154 5154
 			if (is_object($headersNew)) {
5155
-				foreach($headersNew as &$_headerObject) {
5155
+				foreach ($headersNew as &$_headerObject) {
5156 5156
 					$env = $_headerObject->getEnvelope();
5157 5157
 					//_debug_array($envFields->singleFields());
5158 5158
 					$singleFields = $envFields->singleFields();
@@ -5167,34 +5167,34 @@  discard block
 block discarded – undo
5167 5167
 							case 'bcc':
5168 5168
 							case 'sender':
5169 5169
 								//error_log(__METHOD__.' ('.__LINE__.') '.$v.'->'.array2string($env->$v->addresses));
5170
-								$envelope[$v]=$env->$v->addresses;
5170
+								$envelope[$v] = $env->$v->addresses;
5171 5171
 								$address = array();
5172 5172
 								if (!is_array($envelope[$v])) break;
5173 5173
 								foreach ($envelope[$v] as $k => $ad)
5174 5174
 								{
5175
-									if (stripos($ad,'@')===false)
5175
+									if (stripos($ad, '@') === false)
5176 5176
 									{
5177
-										$remember=$k;
5177
+										$remember = $k;
5178 5178
 									}
5179 5179
 									else
5180 5180
 									{
5181
-										$address[] = (!is_null($remember)?$envelope[$v][$remember].' ':'').$ad;
5182
-										$remember=null;
5181
+										$address[] = (!is_null($remember) ? $envelope[$v][$remember].' ' : '').$ad;
5182
+										$remember = null;
5183 5183
 									}
5184 5184
 								}
5185 5185
 								$envelope[$v] = $address;
5186 5186
 								break;
5187 5187
 							case 'date':
5188
-								$envelope[$v]=DateTime::to($env->$v);
5188
+								$envelope[$v] = DateTime::to($env->$v);
5189 5189
 								break;
5190 5190
 							default:
5191
-								$envelope[$v]=$env->$v;
5191
+								$envelope[$v] = $env->$v;
5192 5192
 						}
5193 5193
 					}
5194
-					$envelope['size']=$_headerObject->getSize();
5194
+					$envelope['size'] = $_headerObject->getSize();
5195 5195
 				}
5196 5196
 			}
5197
-			$envelope = array_change_key_case($envelope,CASE_UPPER);
5197
+			$envelope = array_change_key_case($envelope, CASE_UPPER);
5198 5198
 			//if ($decode) _debug_array($envelope);
5199 5199
 			//error_log(__METHOD__.' ('.__LINE__.') '.array2string($envelope));
5200 5200
 			if ($decode)
@@ -5202,19 +5202,19 @@  discard block
 block discarded – undo
5202 5202
 				foreach ($envelope as $key => $rvV)
5203 5203
 				{
5204 5204
 					//try idn conversion only on 'FROM', 'TO', 'CC', 'BCC', 'SENDER', 'REPLY-TO'
5205
-					$envelope[$key]=self::decode_header($rvV,in_array($key,array('FROM', 'TO', 'CC', 'BCC', 'SENDER', 'REPLY-TO')));
5205
+					$envelope[$key] = self::decode_header($rvV, in_array($key, array('FROM', 'TO', 'CC', 'BCC', 'SENDER', 'REPLY-TO')));
5206 5206
 				}
5207 5207
 			}
5208 5208
 			return $envelope;
5209 5209
 		} else {
5210 5210
 
5211
-			$headers = $this->getMessageHeader($_uid, $_partID, true,true,$_folder);
5211
+			$headers = $this->getMessageHeader($_uid, $_partID, true, true, $_folder);
5212 5212
 
5213 5213
 			//error_log(__METHOD__.' ('.__LINE__.') '.':'.array2string($headers));
5214 5214
 			//_debug_array($headers);
5215 5215
 			$newData = array(
5216 5216
 				'DATE'		=> $headers['DATE'],
5217
-				'SUBJECT'	=> ($decode ? self::decode_header($headers['SUBJECT']):$headers['SUBJECT']),
5217
+				'SUBJECT'	=> ($decode ? self::decode_header($headers['SUBJECT']) : $headers['SUBJECT']),
5218 5218
 				'MESSAGE_ID'	=> $headers['MESSAGE-ID']
5219 5219
 			);
5220 5220
 			if (isset($headers['IN-REPLY-TO'])) $newData['IN-REPLY-TO'] = $headers['IN-REPLY-TO'];
@@ -5225,11 +5225,11 @@  discard block
 block discarded – undo
5225 5225
 			if (isset($headers['SIZE'])) $newData['SIZE'] = $headers['SIZE'];
5226 5226
 			//_debug_array($newData);
5227 5227
 			$recepientList = array('FROM', 'TO', 'CC', 'BCC', 'SENDER', 'REPLY-TO');
5228
-			foreach($recepientList as $recepientType) {
5229
-				if(isset($headers[$recepientType])) {
5230
-					if ($decode) $headers[$recepientType] =  self::decode_header($headers[$recepientType],true);
5228
+			foreach ($recepientList as $recepientType) {
5229
+				if (isset($headers[$recepientType])) {
5230
+					if ($decode) $headers[$recepientType] = self::decode_header($headers[$recepientType], true);
5231 5231
 					//error_log(__METHOD__.__LINE__." ".$recepientType."->".array2string($headers[$recepientType]));
5232
-					foreach(self::parseAddressList($headers[$recepientType]) as $singleAddress) {
5232
+					foreach (self::parseAddressList($headers[$recepientType]) as $singleAddress) {
5233 5233
 						$addressData = array(
5234 5234
 							'PERSONAL_NAME'		=> $singleAddress->personal ? $singleAddress->personal : 'NIL',
5235 5235
 							'AT_DOMAIN_LIST'	=> $singleAddress->adl ? $singleAddress->adl : 'NIL',
@@ -5237,15 +5237,15 @@  discard block
 block discarded – undo
5237 5237
 							'HOST_NAME'		=> $singleAddress->host ? $singleAddress->host : 'NIL',
5238 5238
 							'EMAIL'			=> $singleAddress->host ? $singleAddress->mailbox.'@'.$singleAddress->host : $singleAddress->mailbox,
5239 5239
 						);
5240
-						if($addressData['PERSONAL_NAME'] != 'NIL') {
5240
+						if ($addressData['PERSONAL_NAME'] != 'NIL') {
5241 5241
 							$addressData['RFC822_EMAIL'] = imap_rfc822_write_address($singleAddress->mailbox, $singleAddress->host, $singleAddress->personal);
5242 5242
 						} else {
5243 5243
 							$addressData['RFC822_EMAIL'] = 'NIL';
5244 5244
 						}
5245
-						$newData[$recepientType][] = ($addressData['RFC822_EMAIL']!='NIL'?$addressData['RFC822_EMAIL']:$addressData['EMAIL']);//$addressData;
5245
+						$newData[$recepientType][] = ($addressData['RFC822_EMAIL'] != 'NIL' ? $addressData['RFC822_EMAIL'] : $addressData['EMAIL']); //$addressData;
5246 5246
 					}
5247 5247
 				} else {
5248
-					if($recepientType == 'SENDER' || $recepientType == 'REPLY-TO') {
5248
+					if ($recepientType == 'SENDER' || $recepientType == 'REPLY-TO') {
5249 5249
 						$newData[$recepientType] = $newData['FROM'];
5250 5250
 					} else {
5251 5251
 						$newData[$recepientType] = array();
@@ -5267,10 +5267,10 @@  discard block
 block discarded – undo
5267 5267
 	 * @param string $_folder folder to work on
5268 5268
 	 * @return array|Horde_Mime_Headers message header as array or object
5269 5269
 	 */
5270
-	function getMessageHeader($_uid, $_partID = '',$decode=false, $preserveUnSeen=false, $_folder='')
5270
+	function getMessageHeader($_uid, $_partID = '', $decode = false, $preserveUnSeen = false, $_folder = '')
5271 5271
 	{
5272 5272
 		//error_log(__METHOD__.' ('.__LINE__.') '.':'.$_uid.', '.$_partID.', '.$decode.', '.$preserveUnSeen.', '.$_folder);
5273
-		if (empty($_folder)) $_folder = ($this->sessionData['mailbox']? $this->sessionData['mailbox'] : $this->icServer->getCurrentMailbox());
5273
+		if (empty($_folder)) $_folder = ($this->sessionData['mailbox'] ? $this->sessionData['mailbox'] : $this->icServer->getCurrentMailbox());
5274 5274
 		$uidsToFetch = new Horde_Imap_Client_Ids();
5275 5275
 		if (!(is_object($_uid) || is_array($_uid))) $_uid = (array)$_uid;
5276 5276
 		$uidsToFetch->add($_uid);
@@ -5278,7 +5278,7 @@  discard block
 block discarded – undo
5278 5278
 		$fquery = new Horde_Imap_Client_Fetch_Query();
5279 5279
 		if ($_partID != '')
5280 5280
 		{
5281
-			$fquery->headerText(array('id'=>$_partID,'peek'=>$preserveUnSeen));
5281
+			$fquery->headerText(array('id'=>$_partID, 'peek'=>$preserveUnSeen));
5282 5282
 			$fquery->structure();
5283 5283
 		}
5284 5284
 		else
@@ -5291,18 +5291,18 @@  discard block
 block discarded – undo
5291 5291
 			'ids' => $uidsToFetch,
5292 5292
 		));
5293 5293
 		if (is_object($headersNew)) {
5294
-			foreach($headersNew as $_fetchObject)
5294
+			foreach ($headersNew as $_fetchObject)
5295 5295
 			{
5296
-				$headers = $_fetchObject->getHeaderText(0,Horde_Imap_Client_Data_Fetch::HEADER_PARSE);
5296
+				$headers = $_fetchObject->getHeaderText(0, Horde_Imap_Client_Data_Fetch::HEADER_PARSE);
5297 5297
 				if ($_partID != '')
5298 5298
 				{
5299 5299
 					$mailStructureObject = $_fetchObject->getStructure();
5300 5300
 					foreach ($mailStructureObject->contentTypeMap() as $mime_id => $mime_type)
5301 5301
 					{
5302
-						if ($mime_id==$_partID)
5302
+						if ($mime_id == $_partID)
5303 5303
 						{
5304 5304
 							//error_log(__METHOD__.' ('.__LINE__.') '."$mime_id == $_partID".array2string($_headerObject->getHeaderText($mime_id,Horde_Imap_Client_Data_Fetch::HEADER_PARSE)->toArray()));
5305
-							$headers = $_fetchObject->getHeaderText($mime_id,Horde_Imap_Client_Data_Fetch::HEADER_PARSE);
5305
+							$headers = $_fetchObject->getHeaderText($mime_id, Horde_Imap_Client_Data_Fetch::HEADER_PARSE);
5306 5306
 							break;
5307 5307
 						}
5308 5308
 					}
@@ -5315,15 +5315,15 @@  discard block
 block discarded – undo
5315 5315
 				if (is_object($headers)) $headers->setUserAgent('EGroupware API '.$GLOBALS['egw_info']['server']['versions']['phpgwapi']);
5316 5316
 				return $headers;
5317 5317
 			}
5318
-			$retValue = is_object($headers) ? $headers->toArray():array();
5318
+			$retValue = is_object($headers) ? $headers->toArray() : array();
5319 5319
 			if ($size) $retValue['size'] = $size;
5320 5320
 		}
5321
-		$retValue = array_change_key_case($retValue,CASE_UPPER);
5321
+		$retValue = array_change_key_case($retValue, CASE_UPPER);
5322 5322
 		//error_log(__METHOD__.' ('.__LINE__.') '.array2string($retValue));
5323 5323
 		// if SUBJECT is an array, use thelast one, as we assume something with the unfolding for the subject did not work
5324 5324
 		if (is_array($retValue['SUBJECT']))
5325 5325
 		{
5326
-			$retValue['SUBJECT'] = $retValue['SUBJECT'][count($retValue['SUBJECT'])-1];
5326
+			$retValue['SUBJECT'] = $retValue['SUBJECT'][count($retValue['SUBJECT']) - 1];
5327 5327
 		}
5328 5328
 		//error_log(__METHOD__.' ('.__LINE__.') '.':'.array2string($decode ? self::decode_header($retValue,true):$retValue));
5329 5329
 		if ($decode)
@@ -5331,7 +5331,7 @@  discard block
 block discarded – undo
5331 5331
 			foreach ($retValue as $key => $rvV)
5332 5332
 			{
5333 5333
 				//try idn conversion only on 'FROM', 'TO', 'CC', 'BCC', 'SENDER', 'REPLY-TO'
5334
-				$retValue[$key]=self::decode_header($rvV,in_array($key,array('FROM', 'TO', 'CC', 'BCC', 'SENDER', 'REPLY-TO')));
5334
+				$retValue[$key] = self::decode_header($rvV, in_array($key, array('FROM', 'TO', 'CC', 'BCC', 'SENDER', 'REPLY-TO')));
5335 5335
 			}
5336 5336
 		}
5337 5337
 		return $retValue;
@@ -5348,14 +5348,14 @@  discard block
 block discarded – undo
5348 5348
 	function getMessageRawHeader($_uid, $_partID = '', $_folder = '')
5349 5349
 	{
5350 5350
 		static $rawHeaders;
5351
-		if (empty($_folder)) $_folder = ($this->sessionData['mailbox']? $this->sessionData['mailbox'] : $this->icServer->getCurrentMailbox());
5351
+		if (empty($_folder)) $_folder = ($this->sessionData['mailbox'] ? $this->sessionData['mailbox'] : $this->icServer->getCurrentMailbox());
5352 5352
 		//error_log(__METHOD__.' ('.__LINE__.') '." Try Using Cache for raw Header $_uid, $_partID in Folder $_folder");
5353 5353
 
5354
-		if (is_null($rawHeaders)||!is_array($rawHeaders)) $rawHeaders = Cache::getCache(Cache::INSTANCE,'email','rawHeadersCache'.trim($GLOBALS['egw_info']['user']['account_id']),null,array(),60*60*1);
5355
-		if (isset($rawHeaders[$this->icServer->ImapServerId][(string)$_folder][$_uid][(empty($_partID)?'NIL':$_partID)]))
5354
+		if (is_null($rawHeaders) || !is_array($rawHeaders)) $rawHeaders = Cache::getCache(Cache::INSTANCE, 'email', 'rawHeadersCache'.trim($GLOBALS['egw_info']['user']['account_id']), null, array(), 60 * 60 * 1);
5355
+		if (isset($rawHeaders[$this->icServer->ImapServerId][(string)$_folder][$_uid][(empty($_partID) ? 'NIL' : $_partID)]))
5356 5356
 		{
5357 5357
 			//error_log(__METHOD__.' ('.__LINE__.') '." Using Cache for raw Header $_uid, $_partID in Folder $_folder");
5358
-			return $rawHeaders[$this->icServer->ImapServerId][(string)$_folder][$_uid][(empty($_partID)?'NIL':$_partID)];
5358
+			return $rawHeaders[$this->icServer->ImapServerId][(string)$_folder][$_uid][(empty($_partID) ? 'NIL' : $_partID)];
5359 5359
 		}
5360 5360
 		$uidsToFetch = new Horde_Imap_Client_Ids();
5361 5361
 		$uid = $_uid;
@@ -5365,7 +5365,7 @@  discard block
 block discarded – undo
5365 5365
 		$fquery = new Horde_Imap_Client_Fetch_Query();
5366 5366
 		if ($_partID != '')
5367 5367
 		{
5368
-			$fquery->headerText(array('id'=>$_partID,'peek'=>true));
5368
+			$fquery->headerText(array('id'=>$_partID, 'peek'=>true));
5369 5369
 			$fquery->structure();
5370 5370
 		}
5371 5371
 		else
@@ -5376,14 +5376,14 @@  discard block
 block discarded – undo
5376 5376
 			'ids' => $uidsToFetch,
5377 5377
 		));
5378 5378
 		if (is_object($headersNew)) {
5379
-			foreach($headersNew as &$_headerObject) {
5379
+			foreach ($headersNew as &$_headerObject) {
5380 5380
 				$retValue = $_headerObject->getHeaderText();
5381 5381
 				if ($_partID != '')
5382 5382
 				{
5383 5383
 					$mailStructureObject = $_headerObject->getStructure();
5384 5384
 					foreach ($mailStructureObject->contentTypeMap() as $mime_id => $mime_type)
5385 5385
 					{
5386
-						if ($mime_id==$_partID)
5386
+						if ($mime_id == $_partID)
5387 5387
 						{
5388 5388
 							$retValue = $_headerObject->getHeaderText($mime_id);
5389 5389
 						}
@@ -5391,8 +5391,8 @@  discard block
 block discarded – undo
5391 5391
 				}
5392 5392
 			}
5393 5393
 		}
5394
-		$rawHeaders[$this->icServer->ImapServerId][(string)$_folder][$_uid][(empty($_partID)?'NIL':$_partID)]=$retValue;
5395
-		Cache::setCache(Cache::INSTANCE,'email','rawHeadersCache'.trim($GLOBALS['egw_info']['user']['account_id']),$rawHeaders,60*60*1);
5394
+		$rawHeaders[$this->icServer->ImapServerId][(string)$_folder][$_uid][(empty($_partID) ? 'NIL' : $_partID)] = $retValue;
5395
+		Cache::setCache(Cache::INSTANCE, 'email', 'rawHeadersCache'.trim($GLOBALS['egw_info']['user']['account_id']), $rawHeaders, 60 * 60 * 1);
5396 5396
 		return $retValue;
5397 5397
 	}
5398 5398
 
@@ -5405,25 +5405,25 @@  discard block
 block discarded – undo
5405 5405
 	{
5406 5406
 		$style = '';
5407 5407
 		if (empty($_bodyParts)) return "";
5408
-		foreach((array)$_bodyParts as $singleBodyPart) {
5408
+		foreach ((array)$_bodyParts as $singleBodyPart) {
5409 5409
 			if (!isset($singleBodyPart['body'])) {
5410 5410
 				$singleBodyPart['body'] = self::getStyles($singleBodyPart);
5411 5411
 				$style .= $singleBodyPart['body'];
5412 5412
 				continue;
5413 5413
 			}
5414 5414
 
5415
-			if ($singleBodyPart['charSet']===false) $singleBodyPart['charSet'] = Translation::detect_encoding($singleBodyPart['body']);
5415
+			if ($singleBodyPart['charSet'] === false) $singleBodyPart['charSet'] = Translation::detect_encoding($singleBodyPart['body']);
5416 5416
 			$singleBodyPart['body'] = Translation::convert(
5417 5417
 				$singleBodyPart['body'],
5418 5418
 				strtolower($singleBodyPart['charSet'])
5419 5419
 			);
5420 5420
 			$ct = 0;
5421
-			$newStyle=array();
5422
-			if (stripos($singleBodyPart['body'],'<style')!==false)  $ct = preg_match_all('#<style(?:\s.*)?>(.+)</style>#isU', $singleBodyPart['body'], $newStyle);
5423
-			if ($ct>0)
5421
+			$newStyle = array();
5422
+			if (stripos($singleBodyPart['body'], '<style') !== false)  $ct = preg_match_all('#<style(?:\s.*)?>(.+)</style>#isU', $singleBodyPart['body'], $newStyle);
5423
+			if ($ct > 0)
5424 5424
 			{
5425 5425
 				//error_log(__METHOD__.' ('.__LINE__.') '.'#'.$ct.'#'.array2string($newStyle));
5426
-				$style2buffer = implode('',$newStyle[0]);
5426
+				$style2buffer = implode('', $newStyle[0]);
5427 5427
 			}
5428 5428
 			if ($style2buffer && strtoupper(self::$displayCharset) == 'UTF-8')
5429 5429
 			{
@@ -5431,7 +5431,7 @@  discard block
 block discarded – undo
5431 5431
 				$test = json_encode($style2buffer);
5432 5432
 				//error_log(__METHOD__.' ('.__LINE__.') '.'#'.$test.'# ->'.strlen($style2buffer).' Error:'.json_last_error());
5433 5433
 				//if (json_last_error() != JSON_ERROR_NONE && strlen($style2buffer)>0)
5434
-				if ($test=="null" && strlen($style2buffer)>0)
5434
+				if ($test == "null" && strlen($style2buffer) > 0)
5435 5435
 				{
5436 5436
 					// this should not be needed, unless something fails with charset detection/ wrong charset passed
5437 5437
 					error_log(__METHOD__.' ('.__LINE__.') '.' Found Invalid sequence for utf-8 in CSS:'.$style2buffer.' Charset Reported:'.$singleBodyPart['charSet'].' Carset Detected:'.Translation::detect_encoding($style2buffer));
@@ -5442,19 +5442,19 @@  discard block
 block discarded – undo
5442 5442
 		}
5443 5443
 		// clean out comments and stuff
5444 5444
 		$search = array(
5445
-			'@url\(http:\/\/[^\)].*?\)@si',  // url calls e.g. in style definitions
5445
+			'@url\(http:\/\/[^\)].*?\)@si', // url calls e.g. in style definitions
5446 5446
 //			'@<!--[\s\S]*?[ \t\n\r]*-->@',   // Strip multi-line comments including CDATA
5447 5447
 //			'@<!--[\s\S]*?[ \t\n\r]*--@',    // Strip broken multi-line comments including CDATA
5448 5448
 		);
5449
-		$style = preg_replace($search,"",$style);
5449
+		$style = preg_replace($search, "", $style);
5450 5450
 
5451 5451
 		// CSS Security
5452 5452
 		// http://code.google.com/p/browsersec/wiki/Part1#Cascading_stylesheets
5453
-		$css = preg_replace('/(javascript|expression|-moz-binding)/i','',$style);
5454
-		if (stripos($css,'script')!==false) Mail\Html::replaceTagsCompletley($css,'script'); // Strip out script that may be included
5453
+		$css = preg_replace('/(javascript|expression|-moz-binding)/i', '', $style);
5454
+		if (stripos($css, 'script') !== false) Mail\Html::replaceTagsCompletley($css, 'script'); // Strip out script that may be included
5455 5455
 		// we need this, as styledefinitions are enclosed with curly brackets; and template stuff tries to replace everything between curly brackets that is having no horizontal whitespace
5456 5456
 		// as the comments as <!-- styledefinition --> in stylesheet are outdated, and ck-editor does not understand it, we remove it
5457
-		$css = str_replace(array(':','<!--','-->'),array(': ','',''),$css);
5457
+		$css = str_replace(array(':', '<!--', '-->'), array(': ', '', ''), $css);
5458 5458
 		//error_log(__METHOD__.' ('.__LINE__.') '.$css);
5459 5459
 		// TODO: we may have to strip urls and maybe comments and ifs
5460 5460
 		return $css;
@@ -5469,16 +5469,16 @@  discard block
 block discarded – undo
5469 5469
 	 * @param boolean $_stream =false true: return a stream, false: return string, stream suppresses any caching
5470 5470
 	 * @return string the message body
5471 5471
 	 */
5472
-	function getMessageRawBody($_uid, $_partID = '', $_folder='', $_stream=false)
5472
+	function getMessageRawBody($_uid, $_partID = '', $_folder = '', $_stream = false)
5473 5473
 	{
5474 5474
 		//TODO: caching einbauen static!
5475 5475
 		static $rawBody;
5476 5476
 		if (is_null($rawBody)) $rawBody = array();
5477
-		if (empty($_folder)) $_folder = ($this->sessionData['mailbox']? $this->sessionData['mailbox'] : $this->icServer->getCurrentMailbox());
5478
-		if (!$_stream && isset($rawBody[$this->icServer->ImapServerId][$_folder][$_uid][(empty($_partID)?'NIL':$_partID)]))
5477
+		if (empty($_folder)) $_folder = ($this->sessionData['mailbox'] ? $this->sessionData['mailbox'] : $this->icServer->getCurrentMailbox());
5478
+		if (!$_stream && isset($rawBody[$this->icServer->ImapServerId][$_folder][$_uid][(empty($_partID) ? 'NIL' : $_partID)]))
5479 5479
 		{
5480 5480
 			//error_log(__METHOD__.' ('.__LINE__.') '." Using Cache for raw Body $_uid, $_partID in Folder $_folder");
5481
-			return $rawBody[$this->icServer->ImapServerId][$_folder][$_uid][(empty($_partID)?'NIL':$_partID)];
5481
+			return $rawBody[$this->icServer->ImapServerId][$_folder][$_uid][(empty($_partID) ? 'NIL' : $_partID)];
5482 5482
 		}
5483 5483
 
5484 5484
 		$uidsToFetch = new Horde_Imap_Client_Ids();
@@ -5491,13 +5491,13 @@  discard block
 block discarded – undo
5491 5491
 		if ($_partID != '')
5492 5492
 		{
5493 5493
 			$fquery->structure();
5494
-			$fquery->bodyPart($_partID,array('peek'=>true));
5494
+			$fquery->bodyPart($_partID, array('peek'=>true));
5495 5495
 		}
5496 5496
 		$headersNew = $this->icServer->fetch($_folder, $fquery, array(
5497 5497
 			'ids' => $uidsToFetch,
5498 5498
 		));
5499 5499
 		if (is_object($headersNew)) {
5500
-			foreach($headersNew as &$_headerObject) {
5500
+			foreach ($headersNew as &$_headerObject) {
5501 5501
 				$body = $_headerObject->getFullMsg($_stream);
5502 5502
 				if ($_partID != '')
5503 5503
 				{
@@ -5505,7 +5505,7 @@  discard block
 block discarded – undo
5505 5505
 					//_debug_array($mailStructureObject->contentTypeMap());
5506 5506
 					foreach ($mailStructureObject->contentTypeMap() as $mime_id => $mime_type)
5507 5507
 					{
5508
-						if ($mime_id==$_partID)
5508
+						if ($mime_id == $_partID)
5509 5509
 						{
5510 5510
 							$body = $_headerObject->getBodyPart($mime_id, $_stream);
5511 5511
 						}
@@ -5516,7 +5516,7 @@  discard block
 block discarded – undo
5516 5516
 		//error_log(__METHOD__.' ('.__LINE__.') '."[$this->icServer->ImapServerId][$_folder][$_uid][".(empty($_partID)?'NIL':$_partID)."]");
5517 5517
 		if (!$_stream)
5518 5518
 		{
5519
-			$rawBody[$this->icServer->ImapServerId][$_folder][$_uid][(empty($_partID)?'NIL':$_partID)] = $body;
5519
+			$rawBody[$this->icServer->ImapServerId][$_folder][$_uid][(empty($_partID) ? 'NIL' : $_partID)] = $body;
5520 5520
 		}
5521 5521
 		return $body;
5522 5522
 	}
@@ -5531,13 +5531,13 @@  discard block
 block discarded – undo
5531 5531
 	 * @param Horde_Imap_Client_Fetch_Query $fquery=null default query just structure
5532 5532
 	 * @return Horde_Mime_Part
5533 5533
 	 */
5534
-	function getStructure($_uid, $_partID=null, $_folder=null, $_preserveSeen=false)
5534
+	function getStructure($_uid, $_partID = null, $_folder = null, $_preserveSeen = false)
5535 5535
 	{
5536
-		if (self::$debug) error_log( __METHOD__.' ('.__LINE__.') '.":$_uid, $_partID");
5536
+		if (self::$debug) error_log(__METHOD__.' ('.__LINE__.') '.":$_uid, $_partID");
5537 5537
 
5538 5538
 		if (empty($_folder))
5539 5539
 		{
5540
-			$_folder = ($this->sessionData['mailbox']? $this->sessionData['mailbox'] : $this->icServer->getCurrentMailbox());
5540
+			$_folder = ($this->sessionData['mailbox'] ? $this->sessionData['mailbox'] : $this->icServer->getCurrentMailbox());
5541 5541
 		}
5542 5542
 		$uidsToFetch = new Horde_Imap_Client_Ids();
5543 5543
 		if (!(is_object($_uid) || is_array($_uid))) $_uid = (array)$_uid;
@@ -5555,7 +5555,7 @@  discard block
 block discarded – undo
5555 5555
 				'ids' => $uidsToFetch,
5556 5556
 			))->first();
5557 5557
 
5558
-			return is_object($mail)?$mail->getStructure():null;
5558
+			return is_object($mail) ? $mail->getStructure() : null;
5559 5559
 		}
5560 5560
 		catch (\Exception $e)
5561 5561
 		{
@@ -5578,14 +5578,14 @@  discard block
 block discarded – undo
5578 5578
 	 * @param string $_folder folder to work on
5579 5579
 	 * @return array  an array of information about the attachment: array of array(name, size, mimeType, partID, encoding)
5580 5580
 	 */
5581
-	function getMessageAttachments($_uid, $_partID=null, Horde_Mime_Part $_structure=null, $fetchEmbeddedImages=true, $fetchTextCalendar=false, $resolveTNEF=true, $_folder='')
5581
+	function getMessageAttachments($_uid, $_partID = null, Horde_Mime_Part $_structure = null, $fetchEmbeddedImages = true, $fetchTextCalendar = false, $resolveTNEF = true, $_folder = '')
5582 5582
 	{
5583
-		if (self::$debug) error_log( __METHOD__.":$_uid, $_partID");
5584
-		if (empty($_folder)) $_folder = ($this->sessionData['mailbox']? $this->sessionData['mailbox'] : $this->icServer->getCurrentMailbox());
5583
+		if (self::$debug) error_log(__METHOD__.":$_uid, $_partID");
5584
+		if (empty($_folder)) $_folder = ($this->sessionData['mailbox'] ? $this->sessionData['mailbox'] : $this->icServer->getCurrentMailbox());
5585 5585
 		$attachments = array();
5586 5586
 		if (!isset($_structure))
5587 5587
 		{
5588
-			$_structure = $this->getStructure($_uid, $_partID,$_folder,true);
5588
+			$_structure = $this->getStructure($_uid, $_partID, $_folder, true);
5589 5589
 			//error_log(__METHOD__.' ('.__LINE__.') '.':'.print_r($_structure->contentTypeMap(),true));
5590 5590
 		}
5591 5591
 		if (!$_structure || !$_structure->contentTypeMap()) return array();
@@ -5593,7 +5593,7 @@  discard block
 block discarded – undo
5593 5593
 		$skipParts = array();
5594 5594
 		$tnefParts = array();
5595 5595
 		$skip = 0;
5596
-		foreach($_structure->contentTypeMap() as $mime_id => $mime_type)
5596
+		foreach ($_structure->contentTypeMap() as $mime_id => $mime_type)
5597 5597
 		{
5598 5598
 			// skip multipart/encrypted incl. its two sub-parts, as we show 2. sub-part as body to be decrypted client-side
5599 5599
 			if ($mime_type == 'multipart/encrypted')
@@ -5601,7 +5601,7 @@  discard block
 block discarded – undo
5601 5601
 				$skip = 2;
5602 5602
 				continue;
5603 5603
 			}
5604
-			elseif($skip)
5604
+			elseif ($skip)
5605 5605
 			{
5606 5606
 				$skip--;
5607 5607
 				continue;
@@ -5615,10 +5615,10 @@  discard block
 block discarded – undo
5615 5615
 			$partPrimaryType = $part->getPrimaryType();
5616 5616
 			// we only want to retrieve the attachments of the current mail, not those of possible
5617 5617
 			// attached mails
5618
-			if ($mime_type=='message/rfc822' && $_partID!=$mime_id)
5618
+			if ($mime_type == 'message/rfc822' && $_partID != $mime_id)
5619 5619
 			{
5620 5620
 				//error_log(__METHOD__.' ('.__LINE__.') '.' Uid:'.$uid.'->'.$mime_id.':'.array2string($part->contentTypeMap()));
5621
-				foreach($part->contentTypeMap() as $sub_id => $sub_type) {if ($sub_id != $mime_id) $skipParts[$sub_id] = $sub_type;}
5621
+				foreach ($part->contentTypeMap() as $sub_id => $sub_type) {if ($sub_id != $mime_id) $skipParts[$sub_id] = $sub_type; }
5622 5622
 			}
5623 5623
 			if (empty($partDisposition) && $partPrimaryType != 'multipart' && $partPrimaryType != 'text')
5624 5624
 			{
@@ -5626,27 +5626,27 @@  discard block
 block discarded – undo
5626 5626
 				// attachment with no link to show the attachment inline.
5627 5627
 				// Considering this: we "list" everything that matches the above criteria
5628 5628
 				// as attachment in order to not loose/miss information on our data
5629
-				$partDisposition='attachment';
5629
+				$partDisposition = 'attachment';
5630 5630
 			}
5631 5631
 			//error_log(__METHOD__.' ('.__LINE__.') '.' Uid:'.$uid.' Part:'.$_partID.'->'.$mime_id.':'.array2string($skipParts));
5632
-			if (array_key_exists($mime_id,$skipParts)) continue;
5632
+			if (array_key_exists($mime_id, $skipParts)) continue;
5633 5633
 
5634 5634
 			if ($partDisposition == 'attachment' ||
5635
-				(($partDisposition == 'inline' || empty($partDisposition)) && $partPrimaryType == 'image' && $part->getContentId()=='') ||
5635
+				(($partDisposition == 'inline' || empty($partDisposition)) && $partPrimaryType == 'image' && $part->getContentId() == '') ||
5636 5636
 				(($partDisposition == 'inline' || empty($partDisposition)) && $partPrimaryType != 'image' && $partPrimaryType != 'text' && $partPrimaryType != 'multipart') ||
5637
-				($mime_type=='image/tiff') || //always fetch. even if $fetchEmbeddedImages is false. as we cannot display tiffs
5637
+				($mime_type == 'image/tiff') || //always fetch. even if $fetchEmbeddedImages is false. as we cannot display tiffs
5638 5638
 				($fetchEmbeddedImages && ($partDisposition == 'inline' || empty($partDisposition)) && $partPrimaryType == 'image') ||
5639 5639
 				($fetchTextCalendar && $partPrimaryType == 'text' && $part->getSubType() == 'calendar'))
5640 5640
 			{
5641 5641
 				// if type is message/rfc822 and _partID is given, and MimeID equals partID
5642 5642
 				// we attempt to fetch "ourselves"
5643
-				if ($_partID==$part->getMimeId() && $part->getPrimaryType()=='message') continue;
5643
+				if ($_partID == $part->getMimeId() && $part->getPrimaryType() == 'message') continue;
5644 5644
 				$attachment = $part->getAllDispositionParameters();
5645 5645
 				$attachment['disposition'] = $part->getDisposition();
5646 5646
 				$attachment['mimeType'] = $mime_type;
5647 5647
 				$attachment['uid'] = $_uid;
5648 5648
 				$attachment['partID'] = $mime_id;
5649
-				if (!isset($attachment['name'])||empty($attachment['name'])) $attachment['name'] = $part->getName();
5649
+				if (!isset($attachment['name']) || empty($attachment['name'])) $attachment['name'] = $part->getName();
5650 5650
 				if ($fetchTextCalendar)
5651 5651
 				{
5652 5652
 					//error_log(__METHOD__.' ('.__LINE__.') '.array2string($part->getAllContentTypeParameters()));
@@ -5656,11 +5656,11 @@  discard block
 block discarded – undo
5656 5656
 				}
5657 5657
 				$attachment['size'] = $part->getBytes();
5658 5658
 				if (($cid = $part->getContentId())) $attachment['cid'] = $cid;
5659
-				if (empty($attachment['name'])) $attachment['name'] = (isset($attachment['cid'])&&!empty($attachment['cid'])?$attachment['cid']:lang("unknown").'_Uid'.$_uid.'_Part'.$mime_id).'.'.MimeMagic::mime2ext($mime_type);
5659
+				if (empty($attachment['name'])) $attachment['name'] = (isset($attachment['cid']) && !empty($attachment['cid']) ? $attachment['cid'] : lang("unknown").'_Uid'.$_uid.'_Part'.$mime_id).'.'.MimeMagic::mime2ext($mime_type);
5660 5660
 				//error_log(__METHOD__.' ('.__LINE__.') '.' Uid:'.$uid.' Part:'.$_partID.'->'.$mime_id.':'.array2string($attachment));
5661 5661
 				//typical winmail.dat attachment is
5662 5662
 				//Array([size] => 1462762[filename] => winmail.dat[mimeType] => application/ms-tnef[uid] => 100[partID] => 2[name] => winmail.dat)
5663
-				if ($resolveTNEF && ($attachment['mimeType']=='application/ms-tnef' || !strcasecmp($attachment['name'],'winmail.dat')))
5663
+				if ($resolveTNEF && ($attachment['mimeType'] == 'application/ms-tnef' || !strcasecmp($attachment['name'], 'winmail.dat')))
5664 5664
 				{
5665 5665
 					$tnefParts[] = $attachment;
5666 5666
 				}
@@ -5675,31 +5675,31 @@  discard block
 block discarded – undo
5675 5675
 			//error_log(__METHOD__.__LINE__.array2string($tnefParts));
5676 5676
 			foreach ($tnefParts as $k => $tnp)
5677 5677
 			{
5678
-				$tnefResolved=false;
5679
-				$tnef_data = $this->getAttachment($tnp['uid'],$tnp['partID'],$k,false);
5678
+				$tnefResolved = false;
5679
+				$tnef_data = $this->getAttachment($tnp['uid'], $tnp['partID'], $k, false);
5680 5680
 				$myTnef = $this->tnef_decoder($tnef_data['attachment']);
5681 5681
 				//error_log(__METHOD__.__LINE__.array2string($myTnef->getParts()));
5682 5682
 				// Note: MimeId starts with 0, almost always, we cannot use that as winmail_id
5683 5683
 				// we need to build Something that meets the needs
5684 5684
 				if ($myTnef)
5685 5685
 				{
5686
-					foreach($myTnef->getParts() as $mime_id => $part)
5686
+					foreach ($myTnef->getParts() as $mime_id => $part)
5687 5687
 					{
5688
-						$tnefResolved=true;
5688
+						$tnefResolved = true;
5689 5689
 						$attachment = $part->getAllDispositionParameters();
5690 5690
 						$attachment['disposition'] = $part->getDisposition();
5691 5691
 						$attachment['mimeType'] = $part->getType();
5692 5692
 						$attachment['uid'] = $tnp['uid'];
5693 5693
 						$attachment['partID'] = $tnp['partID'];
5694 5694
 						$attachment['is_winmail'] = $tnp['uid'].'@'.$tnp['partID'].'@'.$mime_id;
5695
-						if (!isset($attachment['name'])||empty($attachment['name'])) $attachment['name'] = $part->getName();
5695
+						if (!isset($attachment['name']) || empty($attachment['name'])) $attachment['name'] = $part->getName();
5696 5696
 						$attachment['size'] = $part->getBytes();
5697 5697
 						if (($cid = $part->getContentId())) $attachment['cid'] = $cid;
5698
-						if (empty($attachment['name'])) $attachment['name'] = (isset($attachment['cid'])&&!empty($attachment['cid'])?$attachment['cid']:lang("unknown").'_Uid'.$_uid.'_Part'.$mime_id).'.'.MimeMagic::mime2ext($attachment['mimeType']);
5698
+						if (empty($attachment['name'])) $attachment['name'] = (isset($attachment['cid']) && !empty($attachment['cid']) ? $attachment['cid'] : lang("unknown").'_Uid'.$_uid.'_Part'.$mime_id).'.'.MimeMagic::mime2ext($attachment['mimeType']);
5699 5699
 						$attachments[] = $attachment;
5700 5700
 					}
5701 5701
 				}
5702
-				if ($tnefResolved===false) $attachments[]=$tnp;
5702
+				if ($tnefResolved === false) $attachments[] = $tnp;
5703 5703
 			}
5704 5704
 		}
5705 5705
 		//error_log(__METHOD__.__LINE__.array2string($attachments));
@@ -5714,9 +5714,9 @@  discard block
 block discarded – undo
5714 5714
 	 * @return boolean|Horde_Mime_part Multipart/Mixed part decoded attachments |
5715 5715
 	 *	return false if there's no attachments or failure
5716 5716
 	 */
5717
-	public function tnef_decoder( $data )
5717
+	public function tnef_decoder($data)
5718 5718
 	{
5719
-		foreach(array('Horde_Compress', 'Horde_Icalendar', 'Horde_Mapi') as $class)
5719
+		foreach (array('Horde_Compress', 'Horde_Icalendar', 'Horde_Mapi') as $class)
5720 5720
 		{
5721 5721
 			if (!class_exists($class))
5722 5722
 			{
@@ -5748,7 +5748,7 @@  discard block
 block discarded – undo
5748 5748
 				$tmp_part->setContents($data['stream']);
5749 5749
 				$tmp_part->setDescription($data['name']);
5750 5750
 
5751
-				$type = $data['type'] . '/' . $data['subtype'];
5751
+				$type = $data['type'].'/'.$data['subtype'];
5752 5752
 				if (in_array($type, array('application/octet-stream', 'application/base64')))
5753 5753
 				{
5754 5754
 					$type = Horde_Mime_Magic::filenameToMIME($data['name']);
@@ -5791,24 +5791,24 @@  discard block
 block discarded – undo
5791 5791
 	 *
5792 5792
 	 * @return array returns an array of all resolved embeded attachments from winmail.dat
5793 5793
 	 */
5794
-	function getTnefAttachments ($_uid, $_partID, $_stream=false)
5794
+	function getTnefAttachments($_uid, $_partID, $_stream = false)
5795 5795
 	{
5796
-		$tnef_data = $this->getAttachment($_uid, $_partID,0,false);
5796
+		$tnef_data = $this->getAttachment($_uid, $_partID, 0, false);
5797 5797
 		$tnef_parts = $this->tnef_decoder($tnef_data['attachment']);
5798 5798
 		$attachments = array();
5799 5799
 		if ($tnef_parts)
5800 5800
 		{
5801
-			foreach($tnef_parts->getParts() as $mime_id => $part)
5801
+			foreach ($tnef_parts->getParts() as $mime_id => $part)
5802 5802
 			{
5803 5803
 
5804 5804
 				$attachment = $part->getAllDispositionParameters();
5805 5805
 				$attachment['mimeType'] = $part->getType();
5806
-				if (!isset($attachment['filename'])||empty($attachment['filename'])) $attachment['filename'] = $part->getName();
5806
+				if (!isset($attachment['filename']) || empty($attachment['filename'])) $attachment['filename'] = $part->getName();
5807 5807
 				if (($cid = $part->getContentId())) $attachment['cid'] = $cid;
5808 5808
 				if (empty($attachment['filename']))
5809 5809
 				{
5810
-					$attachment['filename'] = (isset($attachment['cid'])&&!empty($attachment['cid'])?
5811
-						$attachment['cid']:lang("unknown").'_Uid'.$_uid.'_Part'.$mime_id).'.'.MimeMagic::mime2ext($attachment['mimeType']);
5810
+					$attachment['filename'] = (isset($attachment['cid']) && !empty($attachment['cid']) ?
5811
+						$attachment['cid'] : lang("unknown").'_Uid'.$_uid.'_Part'.$mime_id).'.'.MimeMagic::mime2ext($attachment['mimeType']);
5812 5812
 				}
5813 5813
 
5814 5814
 				$attachment['attachment'] = $part->getContents(array('stream'=>$_stream));
@@ -5832,10 +5832,10 @@  discard block
 block discarded – undo
5832 5832
 	 *
5833 5833
 	 * @return array
5834 5834
 	 */
5835
-	function getAttachment($_uid, $_partID, $_winmail_nr=0, $_returnPart=true, $_stream=false, $_folder=null)
5835
+	function getAttachment($_uid, $_partID, $_winmail_nr = 0, $_returnPart = true, $_stream = false, $_folder = null)
5836 5836
 	{
5837 5837
 		//error_log(__METHOD__.__LINE__."Uid:$_uid, PartId:$_partID, WinMailNr:$_winmail_nr, ReturnPart:$_returnPart, Stream:$_stream, Folder:$_folder".function_backtrace());
5838
-		if (!isset($_folder)) $_folder = ($this->sessionData['mailbox']? $this->sessionData['mailbox'] : $this->icServer->getCurrentMailbox());
5838
+		if (!isset($_folder)) $_folder = ($this->sessionData['mailbox'] ? $this->sessionData['mailbox'] : $this->icServer->getCurrentMailbox());
5839 5839
 
5840 5840
 		$uidsToFetch = new Horde_Imap_Client_Ids();
5841 5841
 		if (!(is_object($_uid) || is_array($_uid))) $_uid = (array)$_uid;
@@ -5848,36 +5848,36 @@  discard block
 block discarded – undo
5848 5848
 			'ids' => $uidsToFetch,
5849 5849
 		));
5850 5850
 		if (is_object($headersNew)) {
5851
-			foreach($headersNew as $id=>$_headerObject) {
5851
+			foreach ($headersNew as $id=>$_headerObject) {
5852 5852
 				$body = $_headerObject->getFullMsg();
5853 5853
 				if ($_partID != '')
5854 5854
 				{
5855 5855
 					$mailStructureObject = $_headerObject->getStructure();
5856 5856
 					$mailStructureObject->contentTypeMap();
5857 5857
 					$part = $mailStructureObject->getPart($_partID);
5858
-					$partDisposition = ($part?$part->getDisposition():'failed');
5859
-					if ($partDisposition=='failed')
5858
+					$partDisposition = ($part ? $part->getDisposition() : 'failed');
5859
+					if ($partDisposition == 'failed')
5860 5860
 					{
5861 5861
 						error_log(__METHOD__.'('.__LINE__.'):'.array2string($_uid).','.$_partID.' ID:'.$id.' HObject:'.array2string($_headerObject).' StructureObject:'.array2string($mailStructureObject->contentTypeMap()).'->'.function_backtrace());
5862 5862
 					}
5863 5863
 					// if $partDisposition is empty, we assume attachment, and hope that the function
5864 5864
 					// itself is only triggered to fetch attachments
5865
-					if (empty($partDisposition)) $partDisposition='attachment';
5866
-					if ($part && ($partDisposition=='attachment' || $partDisposition=='inline' || ($part->getPrimaryType() == 'text' && $part->getSubType() == 'calendar')))
5865
+					if (empty($partDisposition)) $partDisposition = 'attachment';
5866
+					if ($part && ($partDisposition == 'attachment' || $partDisposition == 'inline' || ($part->getPrimaryType() == 'text' && $part->getSubType() == 'calendar')))
5867 5867
 					{
5868 5868
 						//$headerObject=$part->getAllDispositionParameters();//not used anywhere around here
5869 5869
 						$structure_mime = $part->getType();
5870 5870
 						$filename = $part->getName();
5871 5871
 						$charset = $part->getContentTypeParameter('charset');
5872 5872
 						//$structure_bytes = $part->getBytes(); $structure_partID=$part->getMimeId(); error_log(__METHOD__.__LINE__." fetchPartContents(".array2string($_uid).", $structure_partID, $_stream, $_preserveSeen,$structure_mime)" );
5873
-						$this->fetchPartContents($_uid, $part, $_stream, $_preserveSeen=true,$structure_mime);
5873
+						$this->fetchPartContents($_uid, $part, $_stream, $_preserveSeen = true, $structure_mime);
5874 5874
 						if ($_returnPart) return $part;
5875 5875
 					}
5876 5876
 				}
5877 5877
 			}
5878 5878
 		}
5879 5879
 		$ext = MimeMagic::mime2ext($structure_mime);
5880
-		if ($ext && stripos($filename,'.')===false && stripos($filename,$ext)===false) $filename = trim($filename).'.'.$ext;
5880
+		if ($ext && stripos($filename, '.') === false && stripos($filename, $ext) === false) $filename = trim($filename).'.'.$ext;
5881 5881
 		if (!$part)
5882 5882
 		{
5883 5883
 			throw new Exception\WrongParameter("Error: Could not fetch attachment for Uid=".array2string($_uid).", PartId=$_partID, WinMailNr=$_winmail_nr, folder=$_folder");
@@ -5895,20 +5895,20 @@  discard block
 block discarded – undo
5895 5895
 		// try guessing the mimetype, if we get the application/octet-stream
5896 5896
 		if (strtolower($attachmentData['type']) == 'application/octet-stream') $attachmentData['type'] = MimeMagic::filename2mime($attachmentData['filename']);
5897 5897
 		# if the attachment holds a winmail number and is a winmail.dat then we have to handle that.
5898
-		if ( $filename == 'winmail.dat' && $_winmail_nr)
5898
+		if ($filename == 'winmail.dat' && $_winmail_nr)
5899 5899
 		{
5900 5900
 			//by now _uid is of type array
5901
-			$tnefResolved=false;
5902
-			$wantedPart=$_uid[0].'@'.$_partID;
5901
+			$tnefResolved = false;
5902
+			$wantedPart = $_uid[0].'@'.$_partID;
5903 5903
 			$myTnef = $this->tnef_decoder($attachmentData['attachment']);
5904 5904
 			//error_log(__METHOD__.__LINE__.array2string($myTnef->getParts()));
5905 5905
 			// Note: MimeId starts with 0, almost always, we cannot use that as winmail_id
5906 5906
 			// we need to build Something that meets the needs
5907 5907
 			if ($myTnef)
5908 5908
 			{
5909
-				foreach($myTnef->getParts() as $mime_id => $part)
5909
+				foreach ($myTnef->getParts() as $mime_id => $part)
5910 5910
 				{
5911
-					$tnefResolved=true;
5911
+					$tnefResolved = true;
5912 5912
 					$attachment = $part->getAllDispositionParameters();
5913 5913
 					$attachment['mimeType'] = $part->getType();
5914 5914
 					//error_log(__METHOD__.__LINE__.'#'.$mime_id.'#'.$filename.'#'.array2string($attachment));
@@ -5916,9 +5916,9 @@  discard block
 block discarded – undo
5916 5916
 					if ($_winmail_nr == $wantedPart.'@'.$mime_id)
5917 5917
 					{
5918 5918
 						//error_log(__METHOD__.__LINE__.'#'.$structure_mime.'#'.$filename.'#'.array2string($attachment));
5919
-						if (!isset($attachment['filename'])||empty($attachment['filename'])) $attachment['filename'] = $part->getName();
5919
+						if (!isset($attachment['filename']) || empty($attachment['filename'])) $attachment['filename'] = $part->getName();
5920 5920
 						if (($cid = $part->getContentId())) $attachment['cid'] = $cid;
5921
-						if (empty($attachment['filename'])) $attachment['filename'] = (isset($attachment['cid'])&&!empty($attachment['cid'])?$attachment['cid']:lang("unknown").'_Uid'.$_uid.'_Part'.$mime_id).'.'.MimeMagic::mime2ext($attachment['mimeType']);
5921
+						if (empty($attachment['filename'])) $attachment['filename'] = (isset($attachment['cid']) && !empty($attachment['cid']) ? $attachment['cid'] : lang("unknown").'_Uid'.$_uid.'_Part'.$mime_id).'.'.MimeMagic::mime2ext($attachment['mimeType']);
5922 5922
 						$wmattach = $attachment;
5923 5923
 						$wmattach['attachment'] = $part->getContents(array('stream'=>$_stream));
5924 5924
 
@@ -5928,7 +5928,7 @@  discard block
 block discarded – undo
5928 5928
 			if ($tnefResolved)
5929 5929
 			{
5930 5930
 				$ext = MimeMagic::mime2ext($wmattach['mimeType']);
5931
-				if ($ext && stripos($wmattach['filename'],'.')===false && stripos($wmattach['filename'],$ext)===false) $wmattach['filename'] = trim($wmattach['filename']).'.'.$ext;
5931
+				if ($ext && stripos($wmattach['filename'], '.') === false && stripos($wmattach['filename'], $ext) === false) $wmattach['filename'] = trim($wmattach['filename']).'.'.$ext;
5932 5932
 				$attachmentData = array(
5933 5933
 					'type'       => $wmattach['mimeType'],
5934 5934
 					'filename'   => $wmattach['filename'],
@@ -5952,21 +5952,21 @@  discard block
 block discarded – undo
5952 5952
 	 *	true:
5953 5953
 	 * @return Horde_Mime_Part
5954 5954
 	 */
5955
-	function getAttachmentByCID($_uid, $_cid, $_part, $_stream=null)
5955
+	function getAttachmentByCID($_uid, $_cid, $_part, $_stream = null)
5956 5956
 	{
5957 5957
 		// some static variables to avoid fetching the same mail multiple times
5958
-		static $uid=null, $part=null, $structure=null;
5958
+		static $uid = null, $part = null, $structure = null;
5959 5959
 		//error_log(__METHOD__.' ('.__LINE__.') '.":$_uid, $_cid, $_part");
5960 5960
 
5961
-		if(empty($_cid)) return false;
5961
+		if (empty($_cid)) return false;
5962 5962
 
5963 5963
 		if ($_uid != $uid || $_part != $part)
5964 5964
 		{
5965
-			$structure = $this->getStructure($uid=$_uid, $part=$_part);
5965
+			$structure = $this->getStructure($uid = $_uid, $part = $_part);
5966 5966
 		}
5967 5967
 		/** @var Horde_Mime_Part */
5968 5968
 		$attachment = null;
5969
-		foreach($structure->contentTypeMap() as $mime_id => $mime_type)
5969
+		foreach ($structure->contentTypeMap() as $mime_id => $mime_type)
5970 5970
 		{
5971 5971
 			$part = $structure->getPart($mime_id);
5972 5972
 
@@ -6018,16 +6018,16 @@  discard block
 block discarded – undo
6018 6018
 	 * @param string  $_mimetype to decide wether to try to fetch part as binary or not
6019 6019
 	 * @return Horde_Mime_Part
6020 6020
 	 */
6021
-	public function fetchPartContents($_uid, Horde_Mime_Part $part=null, $_stream=false, $_preserveSeen=false, $_mimetype=null)
6021
+	public function fetchPartContents($_uid, Horde_Mime_Part $part = null, $_stream = false, $_preserveSeen = false, $_mimetype = null)
6022 6022
 	{
6023
-		if (is_null($part)) return null;//new Horde_Mime_Part;
6023
+		if (is_null($part)) return null; //new Horde_Mime_Part;
6024 6024
 		$encoding = null;
6025 6025
 		$fetchAsBinary = true;
6026
-		if ($_mimetype && strtolower($_mimetype)=='message/rfc822') $fetchAsBinary = false;
6026
+		if ($_mimetype && strtolower($_mimetype) == 'message/rfc822') $fetchAsBinary = false;
6027 6027
 		// we need to set content on structure to decode transfer encoding
6028 6028
 		$part->setContents(
6029 6029
 			$this->getBodyPart($_uid, $part->getMimeId(), null, $_preserveSeen, $_stream, $encoding, $fetchAsBinary),
6030
-			array('encoding' => (!$fetchAsBinary&&!$encoding?'8bit':$encoding)));
6030
+			array('encoding' => (!$fetchAsBinary && !$encoding ? '8bit' : $encoding)));
6031 6031
 
6032 6032
 		return $part;
6033 6033
 	}
@@ -6045,17 +6045,17 @@  discard block
 block discarded – undo
6045 6045
 	 * @return the id of the message appended or exception
6046 6046
 	 * @throws Exception\WrongUserinput
6047 6047
 	 */
6048
-	function appendMessage($_folderName, $_header, $_body, $_flags='\\Recent')
6048
+	function appendMessage($_folderName, $_header, $_body, $_flags = '\\Recent')
6049 6049
 	{
6050 6050
 		if (!is_resource($_header))
6051 6051
 		{
6052
-			if (stripos($_header,'message-id:')===false)
6052
+			if (stripos($_header, 'message-id:') === false)
6053 6053
 			{
6054 6054
 				$_header = 'Message-ID: <'.self::getRandomString().'@localhost>'."\n".$_header;
6055 6055
 			}
6056 6056
 			//error_log(__METHOD__.' ('.__LINE__.') '."$_folderName, $_header, $_body, $_flags");
6057
-			$_header = ltrim(str_replace("\n","\r\n",$_header));
6058
-			$_header .= str_replace("\n","\r\n",$_body);
6057
+			$_header = ltrim(str_replace("\n", "\r\n", $_header));
6058
+			$_header .= str_replace("\n", "\r\n", $_body);
6059 6059
 		}
6060 6060
 		// the recent flag is the default enforced here ; as we assume the _flags is always set,
6061 6061
 		// we default it to hordes default (Recent) (, other wise we should not pass the parameter
@@ -6073,7 +6073,7 @@  discard block
 block discarded – undo
6073 6073
 			// searched for the message-id then returning the uid found
6074 6074
 			//$dataNflags[] = array('data'=>array(array('t'=>'text','v'=>"$header"."$body")), 'flags'=>array($_flags));
6075 6075
 			$dataNflags[] = array('data' => $_header, 'flags'=>array($_flags));
6076
-			$messageid = $this->icServer->append($_folderName,$dataNflags);
6076
+			$messageid = $this->icServer->append($_folderName, $dataNflags);
6077 6077
 		}
6078 6078
 		catch (\Exception $e)
6079 6079
 		{
@@ -6085,7 +6085,7 @@  discard block
 block discarded – undo
6085 6085
 		//$messageid = true; // for debug reasons only
6086 6086
 		if ($messageid === true || empty($messageid)) // try to figure out the message uid
6087 6087
 		{
6088
-			$list = $this->getHeaders($_folderName, $_startMessage=1, 1, 'INTERNALDATE', true, array(),null, false);
6088
+			$list = $this->getHeaders($_folderName, $_startMessage = 1, 1, 'INTERNALDATE', true, array(), null, false);
6089 6089
 			if ($list)
6090 6090
 			{
6091 6091
 				if (self::$debug) error_log(__METHOD__.' ('.__LINE__.') '.' MessageUid:'.$messageid.' but found:'.array2string($list));
@@ -6125,27 +6125,27 @@  discard block
 block discarded – undo
6125 6125
 	 *				'attachments'=>$attachments,
6126 6126
 	 *				'headers'=>$headers,; boolean false on failure
6127 6127
 	 */
6128
-	static function get_mailcontent(&$mailClass,$uid,$partid='',$mailbox='', $preserveHTML = false, $addHeaderSection=true, $includeAttachments=true)
6128
+	static function get_mailcontent(&$mailClass, $uid, $partid = '', $mailbox = '', $preserveHTML = false, $addHeaderSection = true, $includeAttachments = true)
6129 6129
 	{
6130 6130
 			//echo __METHOD__." called for $uid,$partid <br>";
6131
-			$headers = $mailClass->getMessageHeader($uid,$partid,true,false,$mailbox);
6131
+			$headers = $mailClass->getMessageHeader($uid, $partid, true, false, $mailbox);
6132 6132
 			if (empty($headers)) return false;
6133 6133
 			// dont force retrieval of the textpart, let mailClass preferences decide
6134
-			$bodyParts = $mailClass->getMessageBody($uid,($preserveHTML?'always_display':'only_if_no_text'),$partid,null,false,$mailbox);
6134
+			$bodyParts = $mailClass->getMessageBody($uid, ($preserveHTML ? 'always_display' : 'only_if_no_text'), $partid, null, false, $mailbox);
6135 6135
 			// if we do not want HTML but there is no TextRepresentation with the message itself, try converting
6136
-			if ( !$preserveHTML && $bodyParts[0]['mimeType']=='text/html')
6136
+			if (!$preserveHTML && $bodyParts[0]['mimeType'] == 'text/html')
6137 6137
 			{
6138
-				foreach($bodyParts as $i => $part)
6138
+				foreach ($bodyParts as $i => $part)
6139 6139
 				{
6140
-					if ($bodyParts[$i]['mimeType']=='text/html')
6140
+					if ($bodyParts[$i]['mimeType'] == 'text/html')
6141 6141
 					{
6142
-						$bodyParts[$i]['body'] = Mail\Html::convertHTMLToText($bodyParts[$i]['body'],$bodyParts[$i]['charSet'],true,$stripalltags=true);
6143
-						$bodyParts[$i]['mimeType']='text/plain';
6142
+						$bodyParts[$i]['body'] = Mail\Html::convertHTMLToText($bodyParts[$i]['body'], $bodyParts[$i]['charSet'], true, $stripalltags = true);
6143
+						$bodyParts[$i]['mimeType'] = 'text/plain';
6144 6144
 					}
6145 6145
 				}
6146 6146
 			}
6147 6147
 			//error_log(array2string($bodyParts));
6148
-			$attachments = $includeAttachments?$mailClass->getMessageAttachments($uid,$partid,null,true,false,true,$mailbox):array();
6148
+			$attachments = $includeAttachments ? $mailClass->getMessageAttachments($uid, $partid, null, true, false, true, $mailbox) : array();
6149 6149
 
6150 6150
 			if ($mailClass->isSentFolder($mailbox)) $mailaddress = $headers['TO'];
6151 6151
 			elseif (isset($headers['FROM'])) $mailaddress = $headers['FROM'];
@@ -6156,7 +6156,7 @@  discard block
 block discarded – undo
6156 6156
 
6157 6157
 			$message = self::getdisplayableBody($mailClass, $bodyParts, $preserveHTML);
6158 6158
 			if ($preserveHTML && $mailClass->activeMimeType == 'text/plain') $message = '<pre>'.$message.'</pre>';
6159
-			$headdata = ($addHeaderSection ? self::createHeaderInfoSection($headers, '',$preserveHTML) : '');
6159
+			$headdata = ($addHeaderSection ? self::createHeaderInfoSection($headers, '', $preserveHTML) : '');
6160 6160
 			$message = $headdata.$message;
6161 6161
 			//echo __METHOD__.'<br>';
6162 6162
 			//_debug_array($attachments);
@@ -6172,25 +6172,25 @@  discard block
 block discarded – undo
6172 6172
 						//_debug_array($mailClass->getMessageHeader($uid, $attachment['partID']));
6173 6173
 						//_debug_array($mailClass->getMessageBody($uid,'', $attachment['partID']));
6174 6174
 						//_debug_array($mailClass->getMessageAttachments($uid, $attachment['partID']));
6175
-						$mailcontent = self::get_mailcontent($mailClass,$uid,$attachment['partID'],$mailbox);
6176
-						$headdata ='';
6175
+						$mailcontent = self::get_mailcontent($mailClass, $uid, $attachment['partID'], $mailbox);
6176
+						$headdata = '';
6177 6177
 						if ($mailcontent['headers'])
6178 6178
 						{
6179
-							$headdata = self::createHeaderInfoSection($mailcontent['headers'],'',$preserveHTML);
6179
+							$headdata = self::createHeaderInfoSection($mailcontent['headers'], '', $preserveHTML);
6180 6180
 						}
6181 6181
 						if ($mailcontent['message'])
6182 6182
 						{
6183
-							$tempname =tempnam($GLOBALS['egw_info']['server']['temp_dir'],$GLOBALS['egw_info']['flags']['currentapp']."_");
6183
+							$tempname = tempnam($GLOBALS['egw_info']['server']['temp_dir'], $GLOBALS['egw_info']['flags']['currentapp']."_");
6184 6184
 							$attachedMessages[] = array(
6185 6185
 								'type' => 'TEXT/PLAIN',
6186 6186
 								'name' => $mailcontent['subject'].'.txt',
6187 6187
 								'tmp_name' => $tempname,
6188 6188
 							);
6189
-							$tmpfile = fopen($tempname,'w');
6190
-							fwrite($tmpfile,$headdata.$mailcontent['message']);
6189
+							$tmpfile = fopen($tempname, 'w');
6190
+							fwrite($tmpfile, $headdata.$mailcontent['message']);
6191 6191
 							fclose($tmpfile);
6192 6192
 						}
6193
-						foreach($mailcontent['attachments'] as &$tmpval)
6193
+						foreach ($mailcontent['attachments'] as &$tmpval)
6194 6194
 						{
6195 6195
 							$attachedMessages[] = $tmpval;
6196 6196
 						}
@@ -6198,36 +6198,36 @@  discard block
 block discarded – undo
6198 6198
 					}
6199 6199
 					else
6200 6200
 					{
6201
-						$attachments[$num] = array_merge($attachments[$num],$mailClass->getAttachment($uid, $attachment['partID'],0,false,false));
6201
+						$attachments[$num] = array_merge($attachments[$num], $mailClass->getAttachment($uid, $attachment['partID'], 0, false, false));
6202 6202
 
6203
-						if (empty($attachments[$num]['attachment'])&&$attachments[$num]['cid'])
6203
+						if (empty($attachments[$num]['attachment']) && $attachments[$num]['cid'])
6204 6204
 						{
6205
-							$c = $mailClass->getAttachmentByCID($uid, $attachment['cid'], $attachment['partID'],true);
6205
+							$c = $mailClass->getAttachmentByCID($uid, $attachment['cid'], $attachment['partID'], true);
6206 6206
 							$attachments[$num]['attachment'] = $c->getContents();
6207 6207
 						}
6208 6208
 						// no attempt to convert, if we dont know about the charset
6209
-						if (isset($attachments[$num]['charset'])&&!empty($attachments[$num]['charset'])) {
6209
+						if (isset($attachments[$num]['charset']) && !empty($attachments[$num]['charset'])) {
6210 6210
 							// we do not try guessing the charset, if it is not set
6211 6211
 							//if ($attachments[$num]['charset']===false) $attachments[$num]['charset'] = Translation::detect_encoding($attachments[$num]['attachment']);
6212
-							Translation::convert($attachments[$num]['attachment'],$attachments[$num]['charset']);
6212
+							Translation::convert($attachments[$num]['attachment'], $attachments[$num]['charset']);
6213 6213
 						}
6214
-						if(in_array($attachments[$num]['name'], $file_list))
6214
+						if (in_array($attachments[$num]['name'], $file_list))
6215 6215
 						{
6216 6216
 							$dupe_count[$attachments[$num]['name']]++;
6217
-							$attachments[$num]['name'] = pathinfo($attachments[$num]['name'], PATHINFO_FILENAME) .
6218
-								' ('.($dupe_count[$attachments[$num]['name']] + 1).')' . '.' .
6217
+							$attachments[$num]['name'] = pathinfo($attachments[$num]['name'], PATHINFO_FILENAME).
6218
+								' ('.($dupe_count[$attachments[$num]['name']] + 1).')'.'.'.
6219 6219
 								pathinfo($attachments[$num]['name'], PATHINFO_EXTENSION);
6220 6220
 						}
6221 6221
 						$attachments[$num]['type'] = $attachments[$num]['mimeType'];
6222
-						$attachments[$num]['tmp_name'] = tempnam($GLOBALS['egw_info']['server']['temp_dir'],$GLOBALS['egw_info']['flags']['currentapp']."_");
6223
-						$tmpfile = fopen($attachments[$num]['tmp_name'],'w');
6224
-						fwrite($tmpfile,$attachments[$num]['attachment']);
6222
+						$attachments[$num]['tmp_name'] = tempnam($GLOBALS['egw_info']['server']['temp_dir'], $GLOBALS['egw_info']['flags']['currentapp']."_");
6223
+						$tmpfile = fopen($attachments[$num]['tmp_name'], 'w');
6224
+						fwrite($tmpfile, $attachments[$num]['attachment']);
6225 6225
 						fclose($tmpfile);
6226 6226
 						$file_list[] = $attachments[$num]['name'];
6227 6227
 						unset($attachments[$num]['attachment']);
6228 6228
 					}
6229 6229
 				}
6230
-				if (is_array($attachedMessages)) $attachments = array_merge($attachments,$attachedMessages);
6230
+				if (is_array($attachedMessages)) $attachments = array_merge($attachments, $attachedMessages);
6231 6231
 			}
6232 6232
 			return array(
6233 6233
 					'mailaddress'=>$mailaddress,
@@ -6249,10 +6249,10 @@  discard block
 block discarded – undo
6249 6249
 	{
6250 6250
 		$c = 0;
6251 6251
 		// use the standardIdentity
6252
-		foreach($_identities as $key => $acc) {
6253
-			if ($c==0) $identity = $acc;
6252
+		foreach ($_identities as $key => $acc) {
6253
+			if ($c == 0) $identity = $acc;
6254 6254
 			//error_log(__METHOD__.__LINE__." $key == $_profile_id ");
6255
-			if ($key==$_profile_id) $identity = $acc;
6255
+			if ($key == $_profile_id) $identity = $acc;
6256 6256
 			$c++;
6257 6257
 		}
6258 6258
 		return $identity;
@@ -6264,29 +6264,29 @@  discard block
 block discarded – undo
6264 6264
 	 * @param bool createHTML do it with HTML breaks
6265 6265
 	 * @return string a preformatted string with the information of the header worked into it
6266 6266
 	 */
6267
-	static function createHeaderInfoSection($header,$headline='', $createHTML = false)
6267
+	static function createHeaderInfoSection($header, $headline = '', $createHTML = false)
6268 6268
 	{
6269 6269
 		$headdata = null;
6270 6270
 		//error_log(__METHOD__.' ('.__LINE__.') '.array2string($header).function_backtrace());
6271
-		if ($header['SUBJECT']) $headdata = lang('subject').': '.$header['SUBJECT'].($createHTML?"<br />":"\n");
6272
-		if ($header['FROM']) $headdata .= lang('from').': '.self::convertAddressArrayToString($header['FROM'], $createHTML).($createHTML?"<br />":"\n");
6273
-		if ($header['SENDER']) $headdata .= lang('sender').': '.self::convertAddressArrayToString($header['SENDER'], $createHTML).($createHTML?"<br />":"\n");
6274
-		if ($header['TO']) $headdata .= lang('to').': '.self::convertAddressArrayToString($header['TO'], $createHTML).($createHTML?"<br />":"\n");
6275
-		if ($header['CC']) $headdata .= lang('cc').': '.self::convertAddressArrayToString($header['CC'], $createHTML).($createHTML?"<br />":"\n");
6276
-		if ($header['BCC']) $headdata .= lang('bcc').': '.self::convertAddressArrayToString($header['BCC'], $createHTML).($createHTML?"<br />":"\n");
6277
-		if ($header['DATE']) $headdata .= lang('date').': '.$header['DATE'].($createHTML?"<br />":"\n");
6278
-		if ($header['PRIORITY'] && $header['PRIORITY'] != 'normal') $headdata .= lang('priority').': '.$header['PRIORITY'].($createHTML?"<br />":"\n");
6279
-		if ($header['IMPORTANCE'] && $header['IMPORTANCE'] !='normal') $headdata .= lang('importance').': '.$header['IMPORTANCE'].($createHTML?"<br />":"\n");
6271
+		if ($header['SUBJECT']) $headdata = lang('subject').': '.$header['SUBJECT'].($createHTML ? "<br />" : "\n");
6272
+		if ($header['FROM']) $headdata .= lang('from').': '.self::convertAddressArrayToString($header['FROM'], $createHTML).($createHTML ? "<br />" : "\n");
6273
+		if ($header['SENDER']) $headdata .= lang('sender').': '.self::convertAddressArrayToString($header['SENDER'], $createHTML).($createHTML ? "<br />" : "\n");
6274
+		if ($header['TO']) $headdata .= lang('to').': '.self::convertAddressArrayToString($header['TO'], $createHTML).($createHTML ? "<br />" : "\n");
6275
+		if ($header['CC']) $headdata .= lang('cc').': '.self::convertAddressArrayToString($header['CC'], $createHTML).($createHTML ? "<br />" : "\n");
6276
+		if ($header['BCC']) $headdata .= lang('bcc').': '.self::convertAddressArrayToString($header['BCC'], $createHTML).($createHTML ? "<br />" : "\n");
6277
+		if ($header['DATE']) $headdata .= lang('date').': '.$header['DATE'].($createHTML ? "<br />" : "\n");
6278
+		if ($header['PRIORITY'] && $header['PRIORITY'] != 'normal') $headdata .= lang('priority').': '.$header['PRIORITY'].($createHTML ? "<br />" : "\n");
6279
+		if ($header['IMPORTANCE'] && $header['IMPORTANCE'] != 'normal') $headdata .= lang('importance').': '.$header['IMPORTANCE'].($createHTML ? "<br />" : "\n");
6280 6280
 		//if ($mailcontent['headers']['ORGANIZATION']) $headdata .= lang('organization').': '.$mailcontent['headers']['ORGANIZATION']."\
6281 6281
 		if (!empty($headdata))
6282 6282
 		{
6283
-			if (!empty($headline) && $headline != 'SUPPRESS') $headdata = "---------------------------- $headline ----------------------------".($createHTML?"<br />":"\n").$headdata;
6284
-			if (empty($headline)) $headdata = ($headline != 'SUPPRESS'?"--------------------------------------------------------".($createHTML?"<br />":"\n"):'').$headdata;
6285
-			$headdata .= ($headline != 'SUPPRESS'?"--------------------------------------------------------".($createHTML?"<br />":"\n"):'');
6283
+			if (!empty($headline) && $headline != 'SUPPRESS') $headdata = "---------------------------- $headline ----------------------------".($createHTML ? "<br />" : "\n").$headdata;
6284
+			if (empty($headline)) $headdata = ($headline != 'SUPPRESS' ? "--------------------------------------------------------".($createHTML ? "<br />" : "\n") : '').$headdata;
6285
+			$headdata .= ($headline != 'SUPPRESS' ? "--------------------------------------------------------".($createHTML ? "<br />" : "\n") : '');
6286 6286
 		}
6287 6287
 		else
6288 6288
 		{
6289
-			$headdata = ($headline != 'SUPPRESS'?"--------------------------------------------------------".($createHTML?"<br />":"\n"):'');
6289
+			$headdata = ($headline != 'SUPPRESS' ? "--------------------------------------------------------".($createHTML ? "<br />" : "\n") : '');
6290 6290
 		}
6291 6291
 		return $headdata;
6292 6292
 	}
@@ -6299,8 +6299,8 @@  discard block
 block discarded – undo
6299 6299
 	 */
6300 6300
 	static function adaptSubjectForImport($subject)
6301 6301
 	{
6302
-		$subject = str_replace('$$','__',($subject?$subject:lang('(no subject)')));
6303
-		$subject = str_ireplace(array('[FWD]','[',']','{','}','<','>'),array('Fwd:',' ',' ',' ',' ',' ',' '),trim($subject));
6302
+		$subject = str_replace('$$', '__', ($subject ? $subject : lang('(no subject)')));
6303
+		$subject = str_ireplace(array('[FWD]', '[', ']', '{', '}', '<', '>'), array('Fwd:', ' ', ' ', ' ', ' ', ' ', ' '), trim($subject));
6304 6304
 		return $subject;
6305 6305
 	}
6306 6306
 
@@ -6312,15 +6312,15 @@  discard block
 block discarded – undo
6312 6312
 	static function convertAddressArrayToString($rfcAddressArray)
6313 6313
 	{
6314 6314
 		//error_log(__METHOD__.' ('.__LINE__.') '.array2string($rfcAddressArray));
6315
-		$returnAddr ='';
6315
+		$returnAddr = '';
6316 6316
 		if (is_array($rfcAddressArray))
6317 6317
 		{
6318
-			foreach((array)$rfcAddressArray as $addressData) {
6318
+			foreach ((array)$rfcAddressArray as $addressData) {
6319 6319
 				//error_log(__METHOD__.' ('.__LINE__.') '.array2string($addressData));
6320
-				if($addressData['MAILBOX_NAME'] == 'NIL') {
6320
+				if ($addressData['MAILBOX_NAME'] == 'NIL') {
6321 6321
 					continue;
6322 6322
 				}
6323
-				if(strtolower($addressData['MAILBOX_NAME']) == 'undisclosed-recipients') {
6323
+				if (strtolower($addressData['MAILBOX_NAME']) == 'undisclosed-recipients') {
6324 6324
 					continue;
6325 6325
 				}
6326 6326
 				if ($addressData['RFC822_EMAIL'])
@@ -6329,7 +6329,7 @@  discard block
 block discarded – undo
6329 6329
 				}
6330 6330
 				else
6331 6331
 				{
6332
-					$emailaddress = ($addressData['PERSONAL_NAME']?$addressData['PERSONAL_NAME'].' <'.$addressData['EMAIL'].'>':$addressData['EMAIL']);
6332
+					$emailaddress = ($addressData['PERSONAL_NAME'] ? $addressData['PERSONAL_NAME'].' <'.$addressData['EMAIL'].'>' : $addressData['EMAIL']);
6333 6333
 					$addressObjectA = self::parseAddressList($emailaddress);
6334 6334
 				}
6335 6335
 				$addressObject = $addressObjectA[0];
@@ -6338,10 +6338,10 @@  discard block
 block discarded – undo
6338 6338
 				//$mb =(string)$addressObject->mailbox;
6339 6339
 				//$h = (string)$addressObject->host;
6340 6340
 				//$p = (string)$addressObject->personal;
6341
-				$returnAddr .= (strlen($returnAddr)>0?',':'');
6341
+				$returnAddr .= (strlen($returnAddr) > 0 ? ',' : '');
6342 6342
 				//error_log(__METHOD__.' ('.__LINE__.') '.$p.' <'.$mb.'@'.$h.'>');
6343 6343
 				$buff = imap_rfc822_write_address($addressObject->mailbox, Horde_Idna::decode($addressObject->host), $addressObject->personal);
6344
-				$buff = str_replace(array('<','>','"\'','\'"'),array('[',']','"','"'),$buff);
6344
+				$buff = str_replace(array('<', '>', '"\'', '\'"'), array('[', ']', '"', '"'), $buff);
6345 6345
 				//error_log(__METHOD__.' ('.__LINE__.') '.' Address: '.$returnAddr);
6346 6346
 				$returnAddr .= $buff;
6347 6347
 			}
@@ -6349,8 +6349,8 @@  discard block
 block discarded – undo
6349 6349
 		else
6350 6350
 		{
6351 6351
 			// do not mess with strings, return them untouched /* ToDo: validate string as Address */
6352
-			$rfcAddressArray = self::decode_header($rfcAddressArray,true);
6353
-			$rfcAddressArray = str_replace(array('<','>','"\'','\'"'),array('[',']','"','"'),$rfcAddressArray);
6352
+			$rfcAddressArray = self::decode_header($rfcAddressArray, true);
6353
+			$rfcAddressArray = str_replace(array('<', '>', '"\'', '\'"'), array('[', ']', '"', '"'), $rfcAddressArray);
6354 6354
 			if (is_string($rfcAddressArray)) return $rfcAddressArray;
6355 6355
 		}
6356 6356
 		return $returnAddr;
@@ -6364,12 +6364,12 @@  discard block
 block discarded – undo
6364 6364
 	 * @param string &$err error-message on error
6365 6365
 	 * @return string/boolean merged content or false on error
6366 6366
 	 */
6367
-	static function merge($content,$ids,$mimetype='')
6367
+	static function merge($content, $ids, $mimetype = '')
6368 6368
 	{
6369 6369
 		$mergeobj = new Contacts\Merge();
6370 6370
 
6371
-		if (empty($mimetype)) $mimetype = (strlen(strip_tags($content)) == strlen($content) ?'text/plain':'text/html');
6372
-		$rv = $mergeobj->merge_string($content,$ids,$err='',$mimetype, array(), self::$displayCharset);
6371
+		if (empty($mimetype)) $mimetype = (strlen(strip_tags($content)) == strlen($content) ? 'text/plain' : 'text/html');
6372
+		$rv = $mergeobj->merge_string($content, $ids, $err = '', $mimetype, array(), self::$displayCharset);
6373 6373
 		if (empty($rv) && !empty($content) && !empty($err)) $rv = $content;
6374 6374
 		if (!empty($err) && !empty($content) && !empty($ids)) error_log(__METHOD__.' ('.__LINE__.') '.' Merge failed for Ids:'.array2string($ids).' ContentType:'.$mimetype.' Content:'.$content.' Reason:'.array2string($err));
6375 6375
 		return $rv;
@@ -6411,12 +6411,12 @@  discard block
 block discarded – undo
6411 6411
 		else
6412 6412
 			settype($bytes, 'integer');
6413 6413
 
6414
-		return $bytes . ' ' . $type ;
6414
+		return $bytes.' '.$type;
6415 6415
 	}
6416 6416
 
6417 6417
 	static function detect_qp(&$sting) {
6418 6418
 		$needle = '/(=[0-9][A-F])|(=[A-F][0-9])|(=[A-F][A-F])|(=[0-9][0-9])/';
6419
-		return preg_match("$needle",$string);
6419
+		return preg_match("$needle", $string);
6420 6420
 	}
6421 6421
 
6422 6422
 	/**
@@ -6429,11 +6429,11 @@  discard block
 block discarded – undo
6429 6429
 	 * @param string $_methodNline - Information where the log was taken
6430 6430
 	 * @return void
6431 6431
 	 */
6432
-	static function logRunTimes($_starttime,$_endtime=null,$_message='',$_methodNline='')
6432
+	static function logRunTimes($_starttime, $_endtime = null, $_message = '', $_methodNline = '')
6433 6433
 	{
6434 6434
 		if (is_null($_endtime)) $_endtime = microtime(true);
6435 6435
 		$usagetime = microtime(true) - $_starttime;
6436
-		if (self::$debugTimes) error_log($_methodNline.' took:'.number_format($usagetime,5).'(s) '.($_message?'Details:'.$_message:''));
6436
+		if (self::$debugTimes) error_log($_methodNline.' took:'.number_format($usagetime, 5).'(s) '.($_message ? 'Details:'.$_message : ''));
6437 6437
 	}
6438 6438
 
6439 6439
 	/**
@@ -6446,9 +6446,9 @@  discard block
 block discarded – undo
6446 6446
 	 *
6447 6447
 	 * @throws Exception\WrongUserinput
6448 6448
 	 */
6449
-	static function checkFileBasics(&$_formData, $IDtoAddToFileName='', $reqMimeType='message/rfc822')
6449
+	static function checkFileBasics(&$_formData, $IDtoAddToFileName = '', $reqMimeType = 'message/rfc822')
6450 6450
 	{
6451
-		if (parse_url($_formData['file'],PHP_URL_SCHEME) == 'egw-data') return $_formData['file'];
6451
+		if (parse_url($_formData['file'], PHP_URL_SCHEME) == 'egw-data') return $_formData['file'];
6452 6452
 
6453 6453
 		//error_log(__METHOD__.__FILE__.array2string($_formData).' Id:'.$IDtoAddToFileName.' ReqMimeType:'.$reqMimeType);
6454 6454
 		$importfailed = $tmpFileName = false;
@@ -6458,7 +6458,7 @@  discard block
 block discarded – undo
6458 6458
 			$importfailed = true;
6459 6459
 			$alert_msg .= lang("Empty file %1 ignored.", $_formData['name']);
6460 6460
 		}
6461
-		elseif (parse_url($_formData['file'],PHP_URL_SCHEME) == 'vfs' || is_uploaded_file($_formData['file']) ||
6461
+		elseif (parse_url($_formData['file'], PHP_URL_SCHEME) == 'vfs' || is_uploaded_file($_formData['file']) ||
6462 6462
 			realpath(dirname($_formData['file'])) == realpath($GLOBALS['egw_info']['server']['temp_dir']))
6463 6463
 		{
6464 6464
 			// ensure existance of eGW temp dir
@@ -6466,7 +6466,7 @@  discard block
 block discarded – undo
6466 6466
 			// and different from any other temp file location set in php.ini
6467 6467
 			if (!file_exists($GLOBALS['egw_info']['server']['temp_dir']))
6468 6468
 			{
6469
-				@mkdir($GLOBALS['egw_info']['server']['temp_dir'],0700);
6469
+				@mkdir($GLOBALS['egw_info']['server']['temp_dir'], 0700);
6470 6470
 			}
6471 6471
 
6472 6472
 			// if we were NOT able to create this temp directory, then make an ERROR report
@@ -6493,14 +6493,14 @@  discard block
 block discarded – undo
6493 6493
 			// maybe its application/octet-stream -> this may mean that we could not determine the type
6494 6494
 			// so we check for the suffix too
6495 6495
 			// trust vfs mime-types, trust the mimetype if it contains a method
6496
-			if ((substr($_formData['file'],0,6) !== 'vfs://' || $_formData['type'] == 'application/octet-stream') && stripos($_formData['type'],'method=')===false)
6496
+			if ((substr($_formData['file'], 0, 6) !== 'vfs://' || $_formData['type'] == 'application/octet-stream') && stripos($_formData['type'], 'method=') === false)
6497 6497
 			{
6498
-				$buff = explode('.',$_formData['name']);
6498
+				$buff = explode('.', $_formData['name']);
6499 6499
 				$suffix = '';
6500 6500
 				if (is_array($buff)) $suffix = array_pop($buff); // take the last extension to check with ext2mime
6501 6501
 				if (!empty($suffix)) $sfxMimeType = MimeMagic::ext2mime($suffix);
6502 6502
 				if (!empty($suffix) && !empty($sfxMimeType) &&
6503
-					(strlen(trim($_formData['type']))==0 || (strtolower(trim($_formData['type'])) != $sfxMimeType)))
6503
+					(strlen(trim($_formData['type'])) == 0 || (strtolower(trim($_formData['type'])) != $sfxMimeType)))
6504 6504
 				{
6505 6505
 					error_log(__METHOD__.' ('.__LINE__.') '.' Data:'.array2string($_formData));
6506 6506
 					error_log(__METHOD__.' ('.__LINE__.') '.' Form reported Mimetype:'.$_formData['type'].' but seems to be:'.$sfxMimeType);
@@ -6515,13 +6515,13 @@  discard block
 block discarded – undo
6515 6515
 			if ($reqMimeType)
6516 6516
 			{
6517 6517
 				// so if PHP did not pass any file_type info, then substitute the rfc default value
6518
-				if (substr(strtolower(trim($_formData['type'])),0,strlen($mime_type_default)) != $mime_type_default)
6518
+				if (substr(strtolower(trim($_formData['type'])), 0, strlen($mime_type_default)) != $mime_type_default)
6519 6519
 				{
6520 6520
 					if (!(strtolower(trim($_formData['type'])) == "application/octet-stream" && $sfxMimeType == $reqMimeType))
6521 6521
 					{
6522 6522
 						//error_log("Message rejected, no message/rfc. Is:".$_formData['type']);
6523 6523
 						$importfailed = true;
6524
-						$alert_msg .= lang("File rejected, no %2. Is:%1",$_formData['type'],$reqMimeType);
6524
+						$alert_msg .= lang("File rejected, no %2. Is:%1", $_formData['type'], $reqMimeType);
6525 6525
 					}
6526 6526
 					if ((strtolower(trim($_formData['type'])) != $reqMimeType && $sfxMimeType == $reqMimeType))
6527 6527
 					{
@@ -6530,17 +6530,17 @@  discard block
 block discarded – undo
6530 6530
 				}
6531 6531
 			}
6532 6532
 			// as FreeBSD seems to have problems with the generated temp names we append some more random stuff
6533
-			$randomString = chr(rand(65,90)).chr(rand(48,57)).chr(rand(65,90)).chr(rand(48,57)).chr(rand(65,90));
6533
+			$randomString = chr(rand(65, 90)).chr(rand(48, 57)).chr(rand(65, 90)).chr(rand(48, 57)).chr(rand(65, 90));
6534 6534
 			$tmpFileName = $GLOBALS['egw_info']['user']['account_id'].
6535 6535
 				trim($IDtoAddToFileName).basename($_formData['file']).'_'.$randomString;
6536 6536
 
6537
-			if (parse_url($_formData['file'],PHP_URL_SCHEME) == 'vfs')
6537
+			if (parse_url($_formData['file'], PHP_URL_SCHEME) == 'vfs')
6538 6538
 			{
6539
-				$tmpFileName = $_formData['file'];	// no need to store it somewhere
6539
+				$tmpFileName = $_formData['file']; // no need to store it somewhere
6540 6540
 			}
6541 6541
 			elseif (is_uploaded_file($_formData['file']))
6542 6542
 			{
6543
-				move_uploaded_file($_formData['file'], $GLOBALS['egw_info']['server']['temp_dir'].'/'.$tmpFileName);	// requirement for safe_mode!
6543
+				move_uploaded_file($_formData['file'], $GLOBALS['egw_info']['server']['temp_dir'].'/'.$tmpFileName); // requirement for safe_mode!
6544 6544
 			}
6545 6545
 			else
6546 6546
 			{
@@ -6549,7 +6549,7 @@  discard block
 block discarded – undo
6549 6549
 		} else {
6550 6550
 			//error_log("Import of message ".$_formData['file']." failes to meet basic restrictions");
6551 6551
 			$importfailed = true;
6552
-			$alert_msg .= lang("Processing of file %1 failed. Failed to meet basic restrictions.",$_formData['name']);
6552
+			$alert_msg .= lang("Processing of file %1 failed. Failed to meet basic restrictions.", $_formData['name']);
6553 6553
 		}
6554 6554
 		if ($importfailed == true)
6555 6555
 		{
@@ -6557,7 +6557,7 @@  discard block
 block discarded – undo
6557 6557
 		}
6558 6558
 		else
6559 6559
 		{
6560
-			if (parse_url($tmpFileName,PHP_URL_SCHEME) == 'vfs')
6560
+			if (parse_url($tmpFileName, PHP_URL_SCHEME) == 'vfs')
6561 6561
 			{
6562 6562
 				Vfs::load_wrapper('vfs');
6563 6563
 			}
@@ -6582,7 +6582,7 @@  discard block
 block discarded – undo
6582 6582
 		$images = null;
6583 6583
 		if (preg_match_all("/(src|background)=\"(.*)\"/Ui", $_html2parse, $images) && isset($images[2]))
6584 6584
 		{
6585
-			foreach($images[2] as $i => $url)
6585
+			foreach ($images[2] as $i => $url)
6586 6586
 			{
6587 6587
 				//$isData = false;
6588 6588
 				$basedir = $data = '';
@@ -6594,20 +6594,20 @@  discard block
 block discarded – undo
6594 6594
 					$filename = basename($url);
6595 6595
 					if (($directory = dirname($url)) == '.') $directory = '';
6596 6596
 					$ext = pathinfo($filename, PATHINFO_EXTENSION);
6597
-					$mimeType  = MimeMagic::ext2mime($ext);
6598
-					if ( strlen($directory) > 1 && substr($directory,-1) != '/') { $directory .= '/'; }
6597
+					$mimeType = MimeMagic::ext2mime($ext);
6598
+					if (strlen($directory) > 1 && substr($directory, -1) != '/') { $directory .= '/'; }
6599 6599
 					$myUrl = $directory.$filename;
6600
-					if ($myUrl[0]=='/') // local path -> we only allow path's that are available via http/https (or vfs)
6600
+					if ($myUrl[0] == '/') // local path -> we only allow path's that are available via http/https (or vfs)
6601 6601
 					{
6602
-						$basedir = ($_SERVER['HTTPS']?'https://':'http://'.$_SERVER['HTTP_HOST']);
6602
+						$basedir = ($_SERVER['HTTPS'] ? 'https://' : 'http://'.$_SERVER['HTTP_HOST']);
6603 6603
 					}
6604 6604
 					// use vfs instead of url containing webdav.php
6605 6605
 					// ToDo: we should test if the webdav url is of our own scope, as we cannot handle foreign
6606 6606
 					// webdav.php urls as vfs
6607
-					if (strpos($myUrl,'/webdav.php') !== false) // we have a webdav link, so we build a vfs/sqlfs link of it.
6607
+					if (strpos($myUrl, '/webdav.php') !== false) // we have a webdav link, so we build a vfs/sqlfs link of it.
6608 6608
 					{
6609 6609
 						Vfs::load_wrapper('vfs');
6610
-						list(,$myUrl) = explode('/webdav.php',$myUrl,2);
6610
+						list(,$myUrl) = explode('/webdav.php', $myUrl, 2);
6611 6611
 						$basedir = 'vfs://default';
6612 6612
 						$needTempFile = false;
6613 6613
 					}
@@ -6620,11 +6620,11 @@  discard block
 block discarded – undo
6620 6620
 						// Strips the url and store it into a temp for further procss
6621 6621
 						$tmp_url = html_entity_decode($myUrl);
6622 6622
 
6623
-						parse_str(parse_url($tmp_url, PHP_URL_QUERY),$URI_params);
6623
+						parse_str(parse_url($tmp_url, PHP_URL_QUERY), $URI_params);
6624 6624
 						if ($URI_params['mailbox'] && $URI_params['uid'] && $URI_params['cid'])
6625 6625
 						{
6626 6626
 							$mail_bo->reopen(base64_decode($URI_params['mailbox']));
6627
-							$attachment = $mail_bo->getAttachmentByCID($URI_params['uid'], base64_decode($URI_params['cid']),base64_decode($URI_params['partID']),true);
6627
+							$attachment = $mail_bo->getAttachmentByCID($URI_params['uid'], base64_decode($URI_params['cid']), base64_decode($URI_params['partID']), true);
6628 6628
 							$mail_bo->closeConnection();
6629 6629
 							if ($attachment)
6630 6630
 							{
@@ -6635,32 +6635,32 @@  discard block
 block discarded – undo
6635 6635
 						}
6636 6636
 					}
6637 6637
 
6638
-					if ( strlen($basedir) > 1 && substr($basedir,-1) != '/' && $myUrl[0]!='/') { $basedir .= '/'; }
6639
-					if ($needTempFile && !$attachment && substr($myUrl,0,4) !== "http") $data = file_get_contents($basedir.urldecode($myUrl));
6638
+					if (strlen($basedir) > 1 && substr($basedir, -1) != '/' && $myUrl[0] != '/') { $basedir .= '/'; }
6639
+					if ($needTempFile && !$attachment && substr($myUrl, 0, 4) !== "http") $data = file_get_contents($basedir.urldecode($myUrl));
6640 6640
 				}
6641
-				if (substr($url,0,strlen('data:'))=='data:')
6641
+				if (substr($url, 0, strlen('data:')) == 'data:')
6642 6642
 				{
6643 6643
 					//error_log(__METHOD__.' ('.__LINE__.') '.' -> '.$i.': '.array2string($images[$i]));
6644 6644
 					// we only support base64 encoded data
6645
-					$tmp = substr($url,strlen('data:'));
6646
-					list($mimeType,$data_base64) = explode(';base64,',$tmp);
6645
+					$tmp = substr($url, strlen('data:'));
6646
+					list($mimeType, $data_base64) = explode(';base64,', $tmp);
6647 6647
 					$data = base64_decode($data_base64);
6648 6648
 					// FF currently does NOT add any mime-type
6649 6649
 					if (strtolower(substr($mimeType, 0, 6)) != 'image/')
6650 6650
 					{
6651 6651
 						$mimeType = MimeMagic::analyze_data($data);
6652 6652
 					}
6653
-					list($what,$exactly) = explode('/',$mimeType);
6653
+					list($what, $exactly) = explode('/', $mimeType);
6654 6654
 					$needTempFile = true;
6655
-					$filename = ($what?$what:'data').$imageC++.'.'.$exactly;
6655
+					$filename = ($what ? $what : 'data').$imageC++.'.'.$exactly;
6656 6656
 				}
6657 6657
 				if ($data || $needTempFile === false)
6658 6658
 				{
6659 6659
 					if ($needTempFile)
6660 6660
 					{
6661
-						$attachment_file =tempnam($GLOBALS['egw_info']['server']['temp_dir'],$GLOBALS['egw_info']['flags']['currentapp']."_");
6662
-						$tmpfile = fopen($attachment_file,'w');
6663
-						fwrite($tmpfile,$data);
6661
+						$attachment_file = tempnam($GLOBALS['egw_info']['server']['temp_dir'], $GLOBALS['egw_info']['flags']['currentapp']."_");
6662
+						$tmpfile = fopen($attachment_file, 'w');
6663
+						fwrite($tmpfile, $data);
6664 6664
 						fclose($tmpfile);
6665 6665
 					}
6666 6666
 					else
@@ -6671,7 +6671,7 @@  discard block
 block discarded – undo
6671 6671
 					// (or similar) in all cases (when cut&paste). This may lead to more attached files, in case
6672 6672
 					// we use the same image multiple times, but, if we do this, we should try to detect that
6673 6673
 					// on upload. filename itself is not sufficient to determine the sameness of images
6674
-					$cid = 'cid:' . md5($attachment_file);
6674
+					$cid = 'cid:'.md5($attachment_file);
6675 6675
 					if ($_mailObject->AddEmbeddedImage($attachment_file, substr($cid, 4), urldecode($filename), $mimeType) !== null)
6676 6676
 					{
6677 6677
 						//$_html2parse = preg_replace("/".$images[1][$i]."=\"".preg_quote($url, '/')."\"/Ui", $images[1][$i]."=\"".$cid."\"", $_html2parse);
@@ -6693,10 +6693,10 @@  discard block
 block discarded – undo
6693 6693
 	 * @param string& $importID ID for the imported message, used by attachments to identify them unambiguously
6694 6694
 	 * @return mixed array of messages with success and failed messages or exception
6695 6695
 	 */
6696
-	function importMessageToMergeAndSend(Storage\Merge $bo_merge, $document, $SendAndMergeTocontacts, &$_folder, &$importID='')
6696
+	function importMessageToMergeAndSend(Storage\Merge $bo_merge, $document, $SendAndMergeTocontacts, &$_folder, &$importID = '')
6697 6697
 	{
6698 6698
 		$importfailed = false;
6699
-		$processStats = array('success'=>array(),'failed'=>array());
6699
+		$processStats = array('success'=>array(), 'failed'=>array());
6700 6700
 		if (empty($SendAndMergeTocontacts))
6701 6701
 		{
6702 6702
 			$importfailed = true;
@@ -6737,7 +6737,7 @@  discard block
 block discarded – undo
6737 6737
 				$_folder = $this->getSentFolder();
6738 6738
 			}
6739 6739
 			$delimiter = $this->getHierarchyDelimiter();
6740
-			if($_folder=='INBOX'.$delimiter) $_folder='INBOX';
6740
+			if ($_folder == 'INBOX'.$delimiter) $_folder = 'INBOX';
6741 6741
 			if ($importfailed === false)
6742 6742
 			{
6743 6743
 				$Subject = $mailObject->getHeader('Subject');
@@ -6755,9 +6755,9 @@  discard block
 block discarded – undo
6755 6755
 				{
6756 6756
 					$mailObject->clearReplyTos();
6757 6757
 					$activeMailProfiles = $this->mail->getAccountIdentities($this->profileID);
6758
-					$activeMailProfile = self::getStandardIdentityForProfile($activeMailProfiles,$this->profileID);
6758
+					$activeMailProfile = self::getStandardIdentityForProfile($activeMailProfiles, $this->profileID);
6759 6759
 
6760
-					$mailObject->addReplyTo(Horde_Idna::encode($activeMailProfile['ident_email']),Mail::generateIdentityString($activeMailProfile,false));
6760
+					$mailObject->addReplyTo(Horde_Idna::encode($activeMailProfile['ident_email']), Mail::generateIdentityString($activeMailProfile, false));
6761 6761
 				}
6762 6762
 				foreach ($SendAndMergeTocontacts as $k => $val)
6763 6763
 				{
@@ -6771,12 +6771,12 @@  discard block
 block discarded – undo
6771 6771
 						//error_log(__METHOD__.' ('.__LINE__.') '.array2string($mailObject));
6772 6772
 
6773 6773
 						// Parse destinations for placeholders
6774
-						foreach(Mailer::$type2header as $type => $h)
6774
+						foreach (Mailer::$type2header as $type => $h)
6775 6775
 						{
6776 6776
 							//error_log('ID ' . $val . ' ' .$type . ': ' . $mailObject->getHeader(Mailer::$type2header[$type]) . ' -> ' .$bo_merge->merge_string($mailObject->getHeader(Mailer::$type2header[$type]),$val,$e,'text/plain',array(),self::$displayCharset));
6777
-							$merged = $bo_merge->merge_string($mailObject->getHeader(Mailer::$type2header[$type]),$val,$e,'text/plain',array(),self::$displayCharset);
6778
-							$mailObject->addAddress($merged,'',$type);
6779
-							if($type == 'to')
6777
+							$merged = $bo_merge->merge_string($mailObject->getHeader(Mailer::$type2header[$type]), $val, $e, 'text/plain', array(), self::$displayCharset);
6778
+							$mailObject->addAddress($merged, '', $type);
6779
+							if ($type == 'to')
6780 6780
 							{
6781 6781
 								$email = $merged;
6782 6782
 							}
@@ -6789,26 +6789,26 @@  discard block
 block discarded – undo
6789 6789
 							//error_log(__METHOD__.' ('.__LINE__.') '.' ID:'.$val.' Data:'.array2string($contact));
6790 6790
 							$email = ($contact['email'] ? $contact['email'] : $contact['email_home']);
6791 6791
 							$nfn = ($contact['n_fn'] ? $contact['n_fn'] : $contact['n_given'].' '.$contact['n_family']);
6792
-							if($email)
6792
+							if ($email)
6793 6793
 							{
6794 6794
 								$mailObject->addAddress(Horde_Idna::encode($email), $nfn);
6795 6795
 							}
6796 6796
 						}
6797 6797
 
6798 6798
 						$activeMailProfiles = $this->getAccountIdentities($this->profileID);
6799
-						$activeMailProfile = self::getStandardIdentityForProfile($activeMailProfiles,$this->profileID);
6799
+						$activeMailProfile = self::getStandardIdentityForProfile($activeMailProfiles, $this->profileID);
6800 6800
 						//error_log(__METHOD__.' ('.__LINE__.') '.array2string($activeMailProfile));
6801 6801
 						$mailObject->setFrom($activeMailProfile['ident_email'],
6802
-							self::generateIdentityString($activeMailProfile,false));
6802
+							self::generateIdentityString($activeMailProfile, false));
6803 6803
 
6804 6804
 						$mailObject->removeHeader('Message-ID');
6805 6805
 						$mailObject->removeHeader('Date');
6806 6806
 						$mailObject->clearCustomHeaders();
6807 6807
 						$mailObject->addHeader('Subject', $bo_merge->merge_string($Subject, $val, $e, 'text/plain', array(), self::$displayCharset));
6808 6808
 						//error_log(__METHOD__.' ('.__LINE__.') '.' ContentType:'.$mailObject->BodyContentType);
6809
-						if($text_body) $text_body->setContents($bo_merge->merge_string($Body, $val, $e, 'text/plain', array(), self::$displayCharset),array('encoding'=>Horde_Mime_Part::DEFAULT_ENCODING));
6809
+						if ($text_body) $text_body->setContents($bo_merge->merge_string($Body, $val, $e, 'text/plain', array(), self::$displayCharset), array('encoding'=>Horde_Mime_Part::DEFAULT_ENCODING));
6810 6810
 						//error_log(__METHOD__.' ('.__LINE__.') '.' Result:'.$mailObject->Body.' error:'.array2string($e));
6811
-						if($html_body) $html_body->setContents($bo_merge->merge_string($AltBody, $val, $e, 'text/html', array(), self::$displayCharset),array('encoding'=>Horde_Mime_Part::DEFAULT_ENCODING));
6811
+						if ($html_body) $html_body->setContents($bo_merge->merge_string($AltBody, $val, $e, 'text/html', array(), self::$displayCharset), array('encoding'=>Horde_Mime_Part::DEFAULT_ENCODING));
6812 6812
 
6813 6813
 						//error_log(__METHOD__.' ('.__LINE__.') '.array2string($mailObject));
6814 6814
 						// set a higher timeout for big messages
@@ -6817,7 +6817,7 @@  discard block
 block discarded – undo
6817 6817
 						try {
6818 6818
 							$mailObject->send();
6819 6819
 						}
6820
-						catch(Exception $e) {
6820
+						catch (Exception $e) {
6821 6821
 							$sendOK = false;
6822 6822
 							$errorInfo = $e->getMessage();
6823 6823
 							//error_log(__METHOD__.' ('.__LINE__.') '.array2string($errorInfo));
@@ -6831,41 +6831,41 @@  discard block
 block discarded – undo
6831 6831
 						$mailObject->clearCustomHeaders();
6832 6832
 
6833 6833
 						// Parse destinations for placeholders
6834
-						foreach(Mailer::$type2header as $type => $h)
6834
+						foreach (Mailer::$type2header as $type => $h)
6835 6835
 						{
6836
-							$merged = $bo_merge->merge_string($mailObject->getHeader(Mailer::$type2header[$type]),$val,$e,'text/plain',array(),self::$displayCharset);
6836
+							$merged = $bo_merge->merge_string($mailObject->getHeader(Mailer::$type2header[$type]), $val, $e, 'text/plain', array(), self::$displayCharset);
6837 6837
 							//error_log($type . ': ' . $mailObject->getHeader(Mailer::$type2header[$type]) . ' -> ' .$merged);
6838
-							$mailObject->addAddress(trim($merged,'"'),'',$type);
6838
+							$mailObject->addAddress(trim($merged, '"'), '', $type);
6839 6839
 						}
6840 6840
 
6841 6841
 						// No addresses from placeholders?  Treat it as just a contact ID
6842
-						if (count($mailObject->getAddresses('to',true)) == 0 &&
6842
+						if (count($mailObject->getAddresses('to', true)) == 0 &&
6843 6843
 							is_numeric($val) || $GLOBALS['egw']->accounts->name2id($val)) // do the merge
6844 6844
 						{
6845 6845
 							$contact = $bo_merge->contacts->read($val);
6846 6846
 							//error_log(__METHOD__.' ('.__LINE__.') '.array2string($contact));
6847 6847
 							$email = ($contact['email'] ? $contact['email'] : $contact['email_home']);
6848 6848
 							$nfn = ($contact['n_fn'] ? $contact['n_fn'] : $contact['n_given'].' '.$contact['n_family']);
6849
-							if($email)
6849
+							if ($email)
6850 6850
 							{
6851 6851
 								$mailObject->addAddress(Horde_Idna::encode($email), $nfn);
6852 6852
 							}
6853 6853
 						}
6854 6854
 						$mailObject->addHeader('Subject', $bo_merge->merge_string($Subject, $val, $e, 'text/plain', array(), self::$displayCharset));
6855 6855
 						//error_log(__METHOD__.' ('.__LINE__.') '.' ContentType:'.$mailObject->BodyContentType);
6856
-						if (!empty($Body)) $text_body->setContents($bo_merge->merge_string($Body, $val, $e, 'text/plain', array(), self::$displayCharset),array('encoding'=>Horde_Mime_Part::DEFAULT_ENCODING));
6856
+						if (!empty($Body)) $text_body->setContents($bo_merge->merge_string($Body, $val, $e, 'text/plain', array(), self::$displayCharset), array('encoding'=>Horde_Mime_Part::DEFAULT_ENCODING));
6857 6857
 						//error_log(__METHOD__.' ('.__LINE__.') '.' Result:'.$mailObject->Body.' error:'.array2string($e));
6858
-						if (!empty($AltBody)) $html_body->setContents($bo_merge->merge_string($AltBody, $val, $e, 'text/html', array(), self::$displayCharset),array('encoding'=>Horde_Mime_Part::DEFAULT_ENCODING));
6858
+						if (!empty($AltBody)) $html_body->setContents($bo_merge->merge_string($AltBody, $val, $e, 'text/html', array(), self::$displayCharset), array('encoding'=>Horde_Mime_Part::DEFAULT_ENCODING));
6859 6859
 						$_folder = $this->getDraftFolder();
6860 6860
 					}
6861 6861
 					if ($sendOK || $openAsDraft)
6862 6862
 					{
6863
-						if ($this->folderExists($_folder,true))
6863
+						if ($this->folderExists($_folder, true))
6864 6864
 						{
6865
-						    if($this->isSentFolder($_folder))
6865
+						    if ($this->isSentFolder($_folder))
6866 6866
 							{
6867 6867
 						        $flags = '\\Seen';
6868
-						    } elseif($this->isDraftFolder($_folder)) {
6868
+						    } elseif ($this->isDraftFolder($_folder)) {
6869 6869
 						        $flags = '\\Draft';
6870 6870
 						    } else {
6871 6871
 						        $flags = '';
@@ -6873,7 +6873,7 @@  discard block
 block discarded – undo
6873 6873
 							$savefailed = false;
6874 6874
 							try
6875 6875
 							{
6876
-								$messageUid =$this->appendMessage($_folder,
6876
+								$messageUid = $this->appendMessage($_folder,
6877 6877
 									$mailObject->getRaw(),
6878 6878
 									null,
6879 6879
 									$flags);
@@ -6881,10 +6881,10 @@  discard block
 block discarded – undo
6881 6881
 							catch (\Exception\WrongUserinput $e)
6882 6882
 							{
6883 6883
 								$savefailed = true;
6884
-								$alert_msg .= lang("Save of message %1 failed. Could not save message to folder %2 due to: %3",$Subject,$_folder,$e->getMessage());
6884
+								$alert_msg .= lang("Save of message %1 failed. Could not save message to folder %2 due to: %3", $Subject, $_folder, $e->getMessage());
6885 6885
 							}
6886 6886
 							// no send, save successful, and message_uid present
6887
-							if ($savefailed===false && $messageUid && is_null($sendOK))
6887
+							if ($savefailed === false && $messageUid && is_null($sendOK))
6888 6888
 							{
6889 6889
 								$importID = $messageUid;
6890 6890
 								$openComposeWindow = true;
@@ -6893,20 +6893,20 @@  discard block
 block discarded – undo
6893 6893
 						else
6894 6894
 						{
6895 6895
 							$savefailed = true;
6896
-							$alert_msg .= lang("Saving of message %1 failed. Destination Folder %2 does not exist.",$Subject,$_folder);
6896
+							$alert_msg .= lang("Saving of message %1 failed. Destination Folder %2 does not exist.", $Subject, $_folder);
6897 6897
 						}
6898 6898
 						if ($sendOK)
6899 6899
 						{
6900
-							$processStats['success'][$val] = 'Send succeeded to '.$nfn.'<'.$email.'>'.($savefailed?' but failed to store to Folder:'.$_folder:'');
6900
+							$processStats['success'][$val] = 'Send succeeded to '.$nfn.'<'.$email.'>'.($savefailed ? ' but failed to store to Folder:'.$_folder : '');
6901 6901
 						}
6902 6902
 						else
6903 6903
 						{
6904
-							if (!$openComposeWindow) $processStats['failed'][$val] = $errorInfo?$errorInfo:'Send failed to '.$nfn.'<'.$email.'> See error_log for details';
6904
+							if (!$openComposeWindow) $processStats['failed'][$val] = $errorInfo ? $errorInfo : 'Send failed to '.$nfn.'<'.$email.'> See error_log for details';
6905 6905
 						}
6906 6906
 					}
6907
-					if (!is_null($sendOK) && $sendOK===false && is_null($openComposeWindow))
6907
+					if (!is_null($sendOK) && $sendOK === false && is_null($openComposeWindow))
6908 6908
 					{
6909
-						$processStats['failed'][$val] = $errorInfo?$errorInfo:'Send failed to '.$nfn.'<'.$email.'> See error_log for details';
6909
+						$processStats['failed'][$val] = $errorInfo ? $errorInfo : 'Send failed to '.$nfn.'<'.$email.'> See error_log for details';
6910 6910
 					}
6911 6911
 				}
6912 6912
 			}
@@ -6968,13 +6968,13 @@  discard block
 block discarded – undo
6968 6968
 	 * @param boolean $force8bitOnPrimaryPart (default false. force transferEncoding and charset to 8bit/utf8 if we have a textpart as primaryPart)
6969 6969
 	 * @throws Exception\WrongParameter when the required Horde_Mail_Part not found
6970 6970
 	 */
6971
-	function parseRawMessageIntoMailObject(Mailer $mailer, $message, $force8bitOnPrimaryPart=false)
6971
+	function parseRawMessageIntoMailObject(Mailer $mailer, $message, $force8bitOnPrimaryPart = false)
6972 6972
 	{
6973 6973
 		if (is_string($message) || is_resource($message))
6974 6974
 		{
6975 6975
 			$structure = Horde_Mime_Part::parseMessage($message);
6976 6976
 			//error_log(__METHOD__.__LINE__.'#'.$structure->getPrimaryType().'#');
6977
-			if ($force8bitOnPrimaryPart&&$structure->getPrimaryType()=='text')
6977
+			if ($force8bitOnPrimaryPart && $structure->getPrimaryType() == 'text')
6978 6978
 			{
6979 6979
 				$structure->setTransferEncoding('8bit');
6980 6980
 				$structure->setCharset('utf-8');
@@ -6983,19 +6983,18 @@  discard block
 block discarded – undo
6983 6983
 			//error_log(__METHOD__.__LINE__.':'.array2string($structure));
6984 6984
 
6985 6985
 			// unfortunately parseMessage does NOT return parsed headers (we assume header is shorter then 8k)
6986
-			$start = is_string($message) ? substr($message, 0, 8192) :
6987
-				(fseek($message, 0, SEEK_SET) == -1 ? '' : fread($message, 8192));
6986
+			$start = is_string($message) ? substr($message, 0, 8192) : (fseek($message, 0, SEEK_SET) == -1 ? '' : fread($message, 8192));
6988 6987
 
6989 6988
 			$length = strpos($start, Horde_Mime_Part::RFC_EOL.Horde_Mime_Part::RFC_EOL);
6990
-			if ($length===false) $length = strlen($start);
6991
-			$headers = Horde_Mime_Headers::parseHeaders(substr($start, 0,$length));
6989
+			if ($length === false) $length = strlen($start);
6990
+			$headers = Horde_Mime_Headers::parseHeaders(substr($start, 0, $length));
6992 6991
 
6993
-			foreach($headers->toArray(array('nowrap' => true)) as $header => $value)
6992
+			foreach ($headers->toArray(array('nowrap' => true)) as $header => $value)
6994 6993
 			{
6995
-				foreach((array)$value as $n => $val)
6994
+				foreach ((array)$value as $n => $val)
6996 6995
 				{
6997 6996
 					$overwrite = !$n;
6998
-					switch($header)
6997
+					switch ($header)
6999 6998
 					{
7000 6999
 						case 'Content-Transfer-Encoding':
7001 7000
 							//as we parse the message and this sets the part with a Content-Transfer-Encoding, we
@@ -7016,7 +7015,7 @@  discard block
 block discarded – undo
7016 7015
 		}
7017 7016
 		else
7018 7017
 		{
7019
-			if (($type = gettype($message)) == 'object') $type = get_class ($message);
7018
+			if (($type = gettype($message)) == 'object') $type = get_class($message);
7020 7019
 			throw new Exception\WrongParameter('Wrong parameter type for message: '.$type);
7021 7020
 		}
7022 7021
 	}
@@ -7030,50 +7029,50 @@  discard block
 block discarded – undo
7030 7029
 	 * @param string $default_domain
7031 7030
 	 * @return Horde_Mail_Rfc822_List iteratable Horde_Mail_Rfc822_Address objects with attributes mailbox, host, personal and valid
7032 7031
 	 */
7033
-	public static function parseAddressList($addresses, $default_domain=null)
7032
+	public static function parseAddressList($addresses, $default_domain = null)
7034 7033
 	{
7035 7034
 		$rfc822 = new Horde_Mail_Rfc822();
7036 7035
 		$ret = $rfc822->parseAddressList($addresses, $default_domain ? array('default_domain' => $default_domain) : array());
7037 7036
 		//error_log(__METHOD__.__LINE__.'#'.array2string($addresses).'#'.array2string($ret).'#'.$ret->count().'#'.$ret->count.function_backtrace());
7038
-		if ((empty($ret) || $ret->count()==0)&& is_string($addresses) && strlen($addresses)>0)
7037
+		if ((empty($ret) || $ret->count() == 0) && is_string($addresses) && strlen($addresses) > 0)
7039 7038
 		{
7040 7039
 			$matches = array();
7041
-			preg_match_all("/[\w\.,-.,_.,0-9.]+@[\w\.,-.,_.,0-9.]+/",$addresses,$matches);
7040
+			preg_match_all("/[\w\.,-.,_.,0-9.]+@[\w\.,-.,_.,0-9.]+/", $addresses, $matches);
7042 7041
 			//error_log(__METHOD__.__LINE__.array2string($matches));
7043
-			foreach ($matches[0] as &$match) {$match = trim($match,', ');}
7044
-			$addresses = implode(',',$matches[0]);
7042
+			foreach ($matches[0] as &$match) {$match = trim($match, ', '); }
7043
+			$addresses = implode(',', $matches[0]);
7045 7044
 			//error_log(__METHOD__.__LINE__.array2string($addresses));
7046 7045
 			$ret = $rfc822->parseAddressList($addresses, $default_domain ? array('default_domain' => $default_domain) : array());
7047 7046
 			//error_log(__METHOD__.__LINE__.'#'.array2string($addresses).'#'.array2string($ret).'#'.$ret->count().'#'.$ret->count);
7048 7047
 		}
7049
-		$previousFailed=false;
7048
+		$previousFailed = false;
7050 7049
 		$ret2 = new Horde_Mail_Rfc822_List();
7051 7050
 		// handle known problems on emailaddresses
7052
-		foreach($ret as $i => $adr)
7051
+		foreach ($ret as $i => $adr)
7053 7052
 		{
7054 7053
 			//mailaddresses enclosed in single quotes like '[email protected]' show up as 'me as mailbox and you.com' as host
7055
-			if ($adr->mailbox && stripos($adr->mailbox,"'")== 0 &&
7056
-					$adr->host && stripos($adr->host,"'")== (strlen($adr->host) -1))
7054
+			if ($adr->mailbox && stripos($adr->mailbox, "'") == 0 &&
7055
+					$adr->host && stripos($adr->host, "'") == (strlen($adr->host) - 1))
7057 7056
 			{
7058
-				$adr->mailbox = str_replace("'","",$adr->mailbox);
7059
-				$adr->host = str_replace("'","",$adr->host);
7057
+				$adr->mailbox = str_replace("'", "", $adr->mailbox);
7058
+				$adr->host = str_replace("'", "", $adr->host);
7060 7059
 			}
7061 7060
 			// no mailbox or host part as 'Xr\xc3\xa4hlyz, User <[email protected]>' is parsed as 2 addresses separated by ','
7062 7061
 			//#'Xr\xc3\xa4hlyz, User <[email protected]>'
7063 7062
 			//#Horde_Mail_Rfc822_List Object([_data:protected] => Array(
7064 7063
 			//[0] => Horde_Mail_Rfc822_Address Object([comment] => Array()[mailbox] => Xr\xc3\xa4hlyz[_host:protected] => [_personal:protected] => )
7065 7064
 			//[1] => Horde_Mail_Rfc822_Address Object([comment] => Array()[mailbox] => mailboxpart1.mailboxpart2[_host:protected] => youthost.com[_personal:protected] => User))[_filter:protected] => Array()[_ptr:protected] => )#2#,
7066
-			if (strlen($adr->mailbox)==0||strlen($adr->host)==0)
7065
+			if (strlen($adr->mailbox) == 0 || strlen($adr->host) == 0)
7067 7066
 			{
7068
-				$remember = ($adr->mailbox?$adr->mailbox:($adr->host?$adr->host:''));
7069
-				$previousFailed=true;
7067
+				$remember = ($adr->mailbox ? $adr->mailbox : ($adr->host ? $adr->host : ''));
7068
+				$previousFailed = true;
7070 7069
 				//error_log(__METHOD__.__LINE__."('$addresses', $default_domain) parsed $i: mailbox=$adr->mailbox, host=$adr->host, personal=$adr->personal");
7071 7070
 			}
7072 7071
 			else
7073 7072
 			{
7074
-				if ($previousFailed && $remember) $adr->personal = $remember. ' ' . $adr->personal;
7073
+				if ($previousFailed && $remember) $adr->personal = $remember.' '.$adr->personal;
7075 7074
 				$remember = '';
7076
-				$previousFailed=false;
7075
+				$previousFailed = false;
7077 7076
 				//error_log(__METHOD__.__LINE__."('$addresses', $default_domain) parsed $i: mailbox=$adr->mailbox, host=$adr->host, personal=$adr->personal");
7078 7077
 				$ret2->add($adr);
7079 7078
 			}
@@ -7089,7 +7088,7 @@  discard block
 block discarded – undo
7089 7088
 	 * @param string $_folder
7090 7089
 	 * @return boolean
7091 7090
 	 */
7092
-	function sendMDN($uid,$_folder)
7091
+	function sendMDN($uid, $_folder)
7093 7092
 	{
7094 7093
 		$acc = Mail\Account::read($this->profileID);
7095 7094
 		$identity = Mail\Account::read_identity($acc['ident_id'], true, null, $acc);
@@ -7119,7 +7118,7 @@  discard block
 block discarded – undo
7119 7118
 	 */
7120 7119
 	function addAccount($_hookValues)
7121 7120
 	{
7122
-		error_log(__METHOD__.' ('.__LINE__.') '.' NOT DONE YET!' . ' hookValue = '. $_hookValues);
7121
+		error_log(__METHOD__.' ('.__LINE__.') '.' NOT DONE YET!'.' hookValue = '.$_hookValues);
7123 7122
 
7124 7123
 	}
7125 7124
 
@@ -7133,7 +7132,7 @@  discard block
 block discarded – undo
7133 7132
 	 */
7134 7133
 	function deleteAccount($_hookValues)
7135 7134
 	{
7136
-		error_log(__METHOD__.' ('.__LINE__.') '.' NOT DONE YET!' . ' hookValue = '. $_hookValues);
7135
+		error_log(__METHOD__.' ('.__LINE__.') '.' NOT DONE YET!'.' hookValue = '.$_hookValues);
7137 7136
 
7138 7137
 	}
7139 7138
 
@@ -7147,7 +7146,7 @@  discard block
 block discarded – undo
7147 7146
 	 */
7148 7147
 	function updateAccount($_hookValues)
7149 7148
 	{
7150
-		error_log(__METHOD__.' ('.__LINE__.') '.' NOT DONE YET!' . ' hookValue = '. $_hookValues);
7149
+		error_log(__METHOD__.' ('.__LINE__.') '.' NOT DONE YET!'.' hookValue = '.$_hookValues);
7151 7150
 
7152 7151
 	}
7153 7152
 }
Please login to merge, or discard this patch.
Braces   +1821 added lines, -544 removed lines patch added patch discarded remove patch
@@ -199,7 +199,10 @@  discard block
 block discarded – undo
199 199
 	public static function getInstance($_restoreSession=true, &$_profileID=0, $_validate=true, $_oldImapServerObject=false, $_reuseCache=null)
200 200
 	{
201 201
 		//$_restoreSession=false;
202
-		if (is_null($_reuseCache)) $_reuseCache = $_restoreSession;
202
+		if (is_null($_reuseCache))
203
+		{
204
+			$_reuseCache = $_restoreSession;
205
+		}
203 206
 		//error_log(__METHOD__.' ('.__LINE__.') '.' RestoreSession:'.$_restoreSession.' ProfileId:'.$_profileID.'/'.Mail\Account::get_default_acc_id().' for user:'.$GLOBALS['egw_info']['user']['account_lid'].' called from:'.function_backtrace());
204 207
 		//error_log(__METHOD__.' ('.__LINE__.') '.array2string($_oldImapServerObject));
205 208
 		self::$profileDefunct = Cache::getCache(Cache::INSTANCE,'email','profileDefunct'.trim($GLOBALS['egw_info']['user']['account_id']),null,array(),5*1);
@@ -230,9 +233,15 @@  discard block
 block discarded – undo
230 233
 			{
231 234
 				$profileID = Mail\Account::get_default_acc_id();
232 235
 			}
233
-			if ($profileID!=$_profileID) $_restoreSession==false;
236
+			if ($profileID!=$_profileID)
237
+			{
238
+				$_restoreSession==false;
239
+			}
234 240
 			$_profileID=$profileID;
235
-			if (self::$debug) error_log(__METHOD__.' ('.__LINE__.') '.' called with profileID==0 using '.$profileID.' instead->'.function_backtrace());
241
+			if (self::$debug)
242
+			{
243
+				error_log(__METHOD__.' ('.__LINE__.') '.' called with profileID==0 using '.$profileID.' instead->'.function_backtrace());
244
+			}
236 245
 		}
237 246
 		// no validation or restoreSession for old ImapServer Object, just fetch it and return it
238 247
 		if ($_oldImapServerObject===true)
@@ -271,7 +280,8 @@  discard block
 block discarded – undo
271 280
 				// TODO: merge mailprefs into userprefs, for easy treatment
272 281
 				self::$instances[$_profileID]->mailPreferences = $GLOBALS['egw_info']['user']['preferences']['mail'];
273 282
 				self::$instances[$_profileID]->htmlOptions  = self::$instances[$_profileID]->mailPreferences['htmlOptions'];
274
-			} catch (\Exception $e)
283
+			}
284
+			catch (\Exception $e)
275 285
 			{
276 286
 				$newprofileID = Mail\Account::get_default_acc_id();
277 287
 				// try loading the default profile for the user
@@ -289,9 +299,15 @@  discard block
 block discarded – undo
289 299
 			self::storeActiveProfileIDToPref(self::$instances[$_profileID]->icServer, $_profileID, $_validate );
290 300
 		}
291 301
 		self::$instances[$_profileID]->profileID = $_profileID;
292
-		if (!isset(self::$instances[$_profileID]->idna2)) self::$instances[$_profileID]->idna2 = new Horde_Idna;
302
+		if (!isset(self::$instances[$_profileID]->idna2))
303
+		{
304
+			self::$instances[$_profileID]->idna2 = new Horde_Idna;
305
+		}
293 306
 		//if ($_profileID==0); error_log(__METHOD__.' ('.__LINE__.') '.' RestoreSession:'.$_restoreSession.' ProfileId:'.$_profileID);
294
-		if (is_null(self::$mailConfig)) self::$mailConfig = Config::read('mail');
307
+		if (is_null(self::$mailConfig))
308
+		{
309
+			self::$mailConfig = Config::read('mail');
310
+		}
295 311
 		return self::$instances[$_profileID];
296 312
 	}
297 313
 
@@ -316,14 +332,20 @@  discard block
 block discarded – undo
316 332
 			}
317 333
 			catch (\Exception $e)
318 334
 			{
319
-				if ($_profileID != Mail\Account::get_default_acc_id()) $_profileID = Mail\Account::get_default_acc_id();
335
+				if ($_profileID != Mail\Account::get_default_acc_id())
336
+				{
337
+					$_profileID = Mail\Account::get_default_acc_id();
338
+				}
320 339
 				error_log(__METHOD__.__LINE__.' '.$e->getMessage());
321 340
 				return false;
322 341
 			}
323 342
 		}
324 343
 		if ($oldProfileID != $_profileID)
325 344
 		{
326
-			if ($oldProfileID && $_profileID==0) $_profileID = $oldProfileID;
345
+			if ($oldProfileID && $_profileID==0)
346
+			{
347
+				$_profileID = $oldProfileID;
348
+			}
327 349
 			$GLOBALS['egw']->preferences->add('mail','ActiveProfileID',$_profileID,'user');
328 350
 			// save prefs
329 351
 			$GLOBALS['egw']->preferences->save_repository(true);
@@ -353,11 +375,17 @@  discard block
 block discarded – undo
353 375
 				{
354 376
 					return $_acc_id;
355 377
 				}
356
-				if (self::$debug) error_log(__METHOD__."($_acc_id) account NOT valid, no imap-host!");
378
+				if (self::$debug)
379
+				{
380
+					error_log(__METHOD__."($_acc_id) account NOT valid, no imap-host!");
381
+				}
357 382
 			}
358 383
 			catch (\Exception $e) {
359 384
 				unset($e);
360
-				if (self::$debug) error_log(__METHOD__."($_acc_id) account NOT found!");
385
+				if (self::$debug)
386
+				{
387
+					error_log(__METHOD__."($_acc_id) account NOT found!");
388
+				}
361 389
 			}
362 390
 		}
363 391
 		// no account specified or specified account not found or not valid
@@ -366,11 +394,17 @@  discard block
 block discarded – undo
366 394
 		{
367 395
 			if (!empty($imap_host) && ($account = Mail\Account::read($acc_id)) && $account->is_imap())
368 396
 			{
369
-				if (self::$debug && $_acc_id) error_log(__METHOD__."($_acc_id) using $acc_id instead");
397
+				if (self::$debug && $_acc_id)
398
+				{
399
+					error_log(__METHOD__."($_acc_id) using $acc_id instead");
400
+				}
370 401
 				return $acc_id;
371 402
 			}
372 403
 		}
373
-		if (self::$debug) error_log(__METHOD__."($_acc_id) NO valid account found!");
404
+		if (self::$debug)
405
+		{
406
+			error_log(__METHOD__."($_acc_id) NO valid account found!");
407
+		}
374 408
 		return 0;
375 409
 	}
376 410
 
@@ -386,10 +420,19 @@  discard block
 block discarded – undo
386 420
 	 */
387 421
 	private function __construct($_displayCharset='utf-8',$_restoreSession=true, $_profileID=0, $_oldImapServerObject=false, $_reuseCache=null)
388 422
 	{
389
-		if (is_null($_reuseCache)) $_reuseCache = $_restoreSession;
390
-		if (!empty($_displayCharset)) self::$displayCharset = $_displayCharset;
423
+		if (is_null($_reuseCache))
424
+		{
425
+			$_reuseCache = $_restoreSession;
426
+		}
427
+		if (!empty($_displayCharset))
428
+		{
429
+			self::$displayCharset = $_displayCharset;
430
+		}
391 431
 		// not nummeric, we assume we only want an empty class object
392
-		if (!is_numeric($_profileID)) return true;
432
+		if (!is_numeric($_profileID))
433
+		{
434
+			return true;
435
+		}
393 436
 		if ($_restoreSession)
394 437
 		{
395 438
 			//error_log(__METHOD__." Session restore ".function_backtrace());
@@ -404,7 +447,10 @@  discard block
 block discarded – undo
404 447
 			$firstMessage = $this->sessionData['previewMessage'];
405 448
 			$this->sessionData = array();
406 449
 		}
407
-		if (!$_reuseCache) $this->forcePrefReload($_profileID,!$_reuseCache);
450
+		if (!$_reuseCache)
451
+		{
452
+			$this->forcePrefReload($_profileID,!$_reuseCache);
453
+		}
408 454
 		try
409 455
 		{
410 456
 			$this->profileID = self::validateProfileID($_profileID);
@@ -428,7 +474,10 @@  discard block
 block discarded – undo
428 474
 			$_profileID = $this->profileID = $GLOBALS['egw_info']['user']['preferences']['mail']['ActiveProfileID'] = $this->icServer->ImapServerId;
429 475
 		}
430 476
 
431
-		if (is_null(self::$mailConfig)) self::$mailConfig = Config::read('mail');
477
+		if (is_null(self::$mailConfig))
478
+		{
479
+			self::$mailConfig = Config::read('mail');
480
+		}
432 481
 	}
433 482
 
434 483
 	/**
@@ -457,7 +506,10 @@  discard block
 block discarded – undo
457 506
 		// unset the mail_preferences session object, to force the reload/rebuild
458 507
 		Cache::setSession('mail','mail_preferences',serialize(array()));
459 508
 		Cache::setSession('emailadmin','session_data',serialize(array()));
460
-		if ($_resetFolderObjects) self::resetFolderObjectCache($_profile_id);
509
+		if ($_resetFolderObjects)
510
+		{
511
+			self::resetFolderObjectCache($_profile_id);
512
+		}
461 513
 	}
462 514
 
463 515
 	/**
@@ -467,7 +519,10 @@  discard block
 block discarded – undo
467 519
 	{
468 520
 		$this->sessionData = array();//Cache::getCache(Cache::SESSION,'mail','session_data',$callback=null,$callback_params=array(),$expiration=60*60*1);
469 521
 		self::$activeFolderCache = Cache::getCache(Cache::INSTANCE,'email','activeMailbox'.trim($GLOBALS['egw_info']['user']['account_id']),null,array(),60*60*10);
470
-		if (!empty(self::$activeFolderCache[$this->profileID])) $this->sessionData['mailbox'] = self::$activeFolderCache[$this->profileID];
522
+		if (!empty(self::$activeFolderCache[$this->profileID]))
523
+		{
524
+			$this->sessionData['mailbox'] = self::$activeFolderCache[$this->profileID];
525
+		}
471 526
 	}
472 527
 
473 528
 	/**
@@ -476,7 +531,10 @@  discard block
 block discarded – undo
476 531
 	function saveSessionData()
477 532
 	{
478 533
 		//error_log(__METHOD__.' ('.__LINE__.') '.array2string(array_keys($this->sessionData)));
479
-		if (!empty($this->sessionData['mailbox'])) self::$activeFolderCache[$this->profileID]=$this->sessionData['mailbox'];
534
+		if (!empty($this->sessionData['mailbox']))
535
+		{
536
+			self::$activeFolderCache[$this->profileID]=$this->sessionData['mailbox'];
537
+		}
480 538
 		if (isset(self::$activeFolderCache) && is_array(self::$activeFolderCache))
481 539
 		{
482 540
 			Cache::setCache(Cache::INSTANCE,'email','activeMailbox'.trim($GLOBALS['egw_info']['user']['account_id']),self::$activeFolderCache, 60*60*10);
@@ -497,8 +555,14 @@  discard block
 block discarded – undo
497 555
 	 */
498 556
 	static function unsetCachedObjects($_profileID=null)
499 557
 	{
500
-		if (is_null($_profileID)) $_profileID = Mail\Account::get_default_acc_id();
501
-		if (is_array($_profileID) && $_profileID['account_id']) $account_id = $_profileID['account_id'];
558
+		if (is_null($_profileID))
559
+		{
560
+			$_profileID = Mail\Account::get_default_acc_id();
561
+		}
562
+		if (is_array($_profileID) && $_profileID['account_id'])
563
+		{
564
+			$account_id = $_profileID['account_id'];
565
+		}
502 566
 		//error_log(__METHOD__.__LINE__.' called with ProfileID:'.array2string($_profileID).' from '.function_backtrace());
503 567
 		if (!is_array($_profileID) && (is_numeric($_profileID) || !(stripos($_profileID,'tracker_')===false)))
504 568
 		{
@@ -531,7 +595,10 @@  discard block
 block discarded – undo
531 595
 				Cache::setCache(Cache::INSTANCE,'email','vacationNotice'.trim($account_id),$vacationCached, $expiration=60*60*24*1);
532 596
 			}
533 597
 
534
-			if (isset(self::$instances[$_profileID])) unset(self::$instances[$_profileID]);
598
+			if (isset(self::$instances[$_profileID]))
599
+			{
600
+				unset(self::$instances[$_profileID]);
601
+			}
535 602
 		}
536 603
 		if (is_array($_profileID) && $_profileID['location'] == 'clear_cache')
537 604
 		{
@@ -560,7 +627,10 @@  discard block
 block discarded – undo
560 627
 	static function resetConnectionErrorCache($_ImapServerId=null,$account_id=null)
561 628
 	{
562 629
 		//error_log(__METHOD__.' ('.__LINE__.') '.' for Profile:'.array2string($_ImapServerId) .' for user:'.trim($account_id));
563
-		if (is_null($account_id)) $account_id = $GLOBALS['egw_info']['user']['account_id'];
630
+		if (is_null($account_id))
631
+		{
632
+			$account_id = $GLOBALS['egw_info']['user']['account_id'];
633
+		}
564 634
 		if (is_array($_ImapServerId))
565 635
 		{
566 636
 			// called via hook
@@ -599,7 +669,10 @@  discard block
 block discarded – undo
599 669
 	static function resetFolderObjectCache($_ImapServerId=null,$account_id=null)
600 670
 	{
601 671
 		//error_log(__METHOD__.' ('.__LINE__.') '.' called for Profile:'.array2string($_ImapServerId).'->'.function_backtrace());
602
-		if (is_null($account_id)) $account_id = $GLOBALS['egw_info']['user']['account_id'];
672
+		if (is_null($account_id))
673
+		{
674
+			$account_id = $GLOBALS['egw_info']['user']['account_id'];
675
+		}
603 676
 		// on [location] => verify_settings we coud either use [prefs] => Array([ActiveProfileID] => 9, .. as $_ImapServerId
604 677
 		// or treat it as not given. we try that path
605 678
 		if (is_null($_ImapServerId)||is_array($_ImapServerId))
@@ -673,10 +746,14 @@  discard block
 block discarded – undo
673 746
 
674 747
 		$userEMailAdresses = array($acc['ident_email']=>$acc['ident_realname']);
675 748
 
676
-		foreach($identities as $ik => $ident) {
749
+		foreach($identities as $ik => $ident)
750
+		{
677 751
 			//error_log(__METHOD__.' ('.__LINE__.') '.':'.$ik.'->'.array2string($ident));
678 752
 			$identity = Mail\Account::read_identity($ik);
679
-			if (!empty($identity['ident_email']) && !isset($userEMailAdresses[$identity['ident_email']])) $userEMailAdresses[$identity['ident_email']] = $identity['ident_realname'];
753
+			if (!empty($identity['ident_email']) && !isset($userEMailAdresses[$identity['ident_email']]))
754
+			{
755
+				$userEMailAdresses[$identity['ident_email']] = $identity['ident_realname'];
756
+			}
680 757
 		}
681 758
 		//error_log(__METHOD__.' ('.__LINE__.') '.array2string($userEMailAdresses));
682 759
 		return $userEMailAdresses;
@@ -694,13 +771,20 @@  discard block
 block discarded – undo
694 771
 		foreach(Mail\Account::search($only_current_user=($_accountToSearch?$_accountToSearch:true), $just_name=true) as $acc_id => $identity_name)
695 772
 		{
696 773
 			$acc = Mail\Account::read($acc_id,($_accountToSearch?$_accountToSearch:null));
697
-			if (!$resolve_placeholders) $userEMailAdresses[$acc['ident_id']] = array('acc_id'=>$acc_id,'ident_id'=>$acc['ident_id'],'ident_email'=>$acc['ident_email'],'ident_org'=>$acc['ident_org'],'ident_realname'=>$acc['ident_realname'],'ident_signature'=>$acc['ident_signature'],'ident_name'=>$acc['ident_name']);
774
+			if (!$resolve_placeholders)
775
+			{
776
+				$userEMailAdresses[$acc['ident_id']] = array('acc_id'=>$acc_id,'ident_id'=>$acc['ident_id'],'ident_email'=>$acc['ident_email'],'ident_org'=>$acc['ident_org'],'ident_realname'=>$acc['ident_realname'],'ident_signature'=>$acc['ident_signature'],'ident_name'=>$acc['ident_name']);
777
+			}
698 778
 
699
-			foreach(Mail\Account::identities($acc) as $ik => $ident) {
779
+			foreach(Mail\Account::identities($acc) as $ik => $ident)
780
+			{
700 781
 				//error_log(__METHOD__.' ('.__LINE__.') '.':'.$ik.'->'.array2string($ident));
701 782
 				$identity = Mail\Account::read_identity($ik,$resolve_placeholders);
702 783
 				//error_log(__METHOD__.' ('.__LINE__.') '.':'.$ik.'->'.array2string($identity));
703
-				if (!isset($userEMailAdresses[$identity['ident_id']])) $userEMailAdresses[$identity['ident_id']] = array('acc_id'=>$acc_id,'ident_id'=>$identity['ident_id'],'ident_email'=>$identity['ident_email'],'ident_org'=>$identity['ident_org'],'ident_realname'=>$identity['ident_realname'],'ident_signature'=>$identity['ident_signature'],'ident_name'=>$identity['ident_name']);
784
+				if (!isset($userEMailAdresses[$identity['ident_id']]))
785
+				{
786
+					$userEMailAdresses[$identity['ident_id']] = array('acc_id'=>$acc_id,'ident_id'=>$identity['ident_id'],'ident_email'=>$identity['ident_email'],'ident_org'=>$identity['ident_org'],'ident_realname'=>$identity['ident_realname'],'ident_signature'=>$identity['ident_signature'],'ident_name'=>$identity['ident_name']);
787
+				}
704 788
 			}
705 789
 		}
706 790
 		//error_log(__METHOD__.' ('.__LINE__.') '.array2string($userEMailAdresses));
@@ -720,12 +804,16 @@  discard block
 block discarded – undo
720 804
 			$account = Mail\Account::read($account);
721 805
 		}
722 806
 		$userEMailAdresses = array();
723
-		foreach(Mail\Account::identities($account, true, 'params') as $ik => $ident) {
807
+		foreach(Mail\Account::identities($account, true, 'params') as $ik => $ident)
808
+		{
724 809
 			//error_log(__METHOD__.' ('.__LINE__.') '.':'.$ik.'->'.array2string($ident));
725 810
 			$identity = Mail\Account::read_identity($ik,true,null,$account);
726 811
 			//error_log(__METHOD__.' ('.__LINE__.') '.':'.$ik.'->'.array2string($identity));
727 812
 			// standardIdentity has ident_id==acc_id (as it is done within account->identities)
728
-			if (empty($identity['ident_id'])) $identity['ident_id'] = $identity['acc_id'];
813
+			if (empty($identity['ident_id']))
814
+			{
815
+				$identity['ident_id'] = $identity['acc_id'];
816
+			}
729 817
 			if (!isset($userEMailAdresses[$identity['ident_id']]))
730 818
 			{
731 819
 				$userEMailAdresses[$identity['ident_id']] = array('acc_id'=>$identity['acc_id'],
@@ -768,15 +856,25 @@  discard block
 block discarded – undo
768 856
 		// account select box
769 857
 		$selectedID = $this->profileID;
770 858
 		$allAccountData = Mail\Account::search($only_current_user=true, false, null);
771
-		if ($allAccountData) {
859
+		if ($allAccountData)
860
+		{
772 861
 			$rememberFirst=$selectedFound=null;
773 862
 			foreach ($allAccountData as $tmpkey => $icServers)
774 863
 			{
775
-				if (is_null($rememberFirst)) $rememberFirst = $tmpkey;
776
-				if ($tmpkey == $selectedID) $selectedFound=true;
864
+				if (is_null($rememberFirst))
865
+				{
866
+					$rememberFirst = $tmpkey;
867
+				}
868
+				if ($tmpkey == $selectedID)
869
+				{
870
+					$selectedFound=true;
871
+				}
777 872
 				//error_log(__METHOD__.' ('.__LINE__.') '.' Key:'.$tmpkey.'->'.array2string($icServers->acc_imap_host));
778 873
 				$host = $icServers->acc_imap_host;
779
-				if (empty($host)) continue;
874
+				if (empty($host))
875
+				{
876
+					continue;
877
+				}
780 878
 				$identities[$icServers->acc_id] = $icServers['ident_realname'].' '.$icServers['ident_org'].' <'.$icServers['ident_email'].'>';
781 879
 				//error_log(__METHOD__.' ('.__LINE__.') '.' Key:'.$tmpkey.'->'.array2string($identities[$icServers->acc_id]));
782 880
 			}
@@ -836,7 +934,10 @@  discard block
 block discarded – undo
836 934
 	 */
837 935
 	function reopen($_foldername)
838 936
 	{
839
-		if (self::$debugTimes) $starttime = microtime (true);
937
+		if (self::$debugTimes)
938
+		{
939
+			$starttime = microtime (true);
940
+		}
840 941
 
841 942
 		//error_log(__METHOD__.' ('.__LINE__.') '."('$_foldername') ".function_backtrace());
842 943
 		// TODO: trying to reduce traffic to the IMAP Server here, introduces problems with fetching the bodies of
@@ -846,12 +947,16 @@  discard block
 block discarded – undo
846 947
 		//{
847 948
 			//error_log( __METHOD__.' ('.__LINE__.') '." $_foldername ".function_backtrace());
848 949
 			//error_log(__METHOD__.' ('.__LINE__.') '.' Connected with icServer for Profile:'.$this->profileID.'?'.print_r($this->icServer->_connected,true));
849
-			if ($this->folderIsSelectable($_foldername)) {
950
+			if ($this->folderIsSelectable($_foldername))
951
+			{
850 952
 				$this->icServer->openMailbox($_foldername);
851 953
 			}
852 954
 			$folderOpened = $_foldername;
853 955
 		//}
854
-		if (self::$debugTimes) self::logRunTimes($starttime,null,'Folder:'.$_foldername,__METHOD__.' ('.__LINE__.') ');
956
+		if (self::$debugTimes)
957
+		{
958
+			self::logRunTimes($starttime,null,'Folder:'.$_foldername,__METHOD__.' ('.__LINE__.') ');
959
+		}
855 960
 	}
856 961
 
857 962
 
@@ -866,13 +971,22 @@  discard block
 block discarded – undo
866 971
 	{
867 972
 		//error_log( "-------------------------->open connection ".function_backtrace());
868 973
 		//error_log(__METHOD__.' ('.__LINE__.') '.' ->'.array2string($this->icServer));
869
-		if (self::$debugTimes) $starttime = microtime (true);
974
+		if (self::$debugTimes)
975
+		{
976
+			$starttime = microtime (true);
977
+		}
870 978
 		$mailbox=null;
871 979
 		try
872 980
 		{
873
-			if(isset($this->sessionData['mailbox'])&&$this->folderExists($this->sessionData['mailbox'])) $mailbox = $this->sessionData['mailbox'];
874
-			if (empty($mailbox)) $mailbox = $this->icServer->getCurrentMailbox();
875
-/*
981
+			if(isset($this->sessionData['mailbox'])&&$this->folderExists($this->sessionData['mailbox']))
982
+			{
983
+				$mailbox = $this->sessionData['mailbox'];
984
+			}
985
+			if (empty($mailbox))
986
+			{
987
+				$mailbox = $this->icServer->getCurrentMailbox();
988
+			}
989
+			/*
876 990
 			if (isset(Mail\Imap::$supports_keywords[$_icServerID]))
877 991
 			{
878 992
 				$this->icServer->openMailbox($mailbox);
@@ -897,7 +1011,10 @@  discard block
 block discarded – undo
897 1011
 			error_log(__METHOD__.' ('.__LINE__.') '."->open connection for Server with profileID:".$_icServerID." trying to examine ($mailbox) failed!".$e->getMessage());
898 1012
 			throw new Exception(__METHOD__." failed to ".__METHOD__." on Profile to $_icServerID while trying to examine $mailbox:".$e->getMessage());
899 1013
 		}
900
-		if (self::$debugTimes) self::logRunTimes($starttime,null,'ProfileID:'.$_icServerID,__METHOD__.' ('.__LINE__.') ');
1014
+		if (self::$debugTimes)
1015
+		{
1016
+			self::logRunTimes($starttime,null,'ProfileID:'.$_icServerID,__METHOD__.' ('.__LINE__.') ');
1017
+		}
901 1018
 	}
902 1019
 
903 1020
 	/**
@@ -909,7 +1026,10 @@  discard block
 block discarded – undo
909 1026
 	function getQuotaRoot()
910 1027
 	{
911 1028
 		static $quota;
912
-		if (isset($quota)) return $quota;
1029
+		if (isset($quota))
1030
+		{
1031
+			return $quota;
1032
+		}
913 1033
 		if (isset(self::$profileDefunct[$this->profileID]) && strlen(self::$profileDefunct[$this->profileID]))
914 1034
 		{
915 1035
 			// something is wrong. Do not proceed. either no folder or profile is marked as defunct for this request
@@ -918,7 +1038,8 @@  discard block
 block discarded – undo
918 1038
 		try
919 1039
 		{
920 1040
 			$this->icServer->getCurrentMailbox();
921
-			if(!$this->icServer->hasCapability('QUOTA')) {
1041
+			if(!$this->icServer->hasCapability('QUOTA'))
1042
+			{
922 1043
 				$quota = false;
923 1044
 				return false;
924 1045
 			}
@@ -936,12 +1057,15 @@  discard block
 block discarded – undo
936 1057
 			}
937 1058
 		}
938 1059
 		//error_log(__METHOD__.' ('.__LINE__.') '.array2string($quota));
939
-		if(is_array($quota)) {
1060
+		if(is_array($quota))
1061
+		{
940 1062
 			$quota = array(
941 1063
 				'usage'	=> $quota['USED'],
942 1064
 				'limit'	=> $quota['QMAX'],
943 1065
 			);
944
-		} else {
1066
+		}
1067
+		else
1068
+		{
945 1069
 			$quota = false;
946 1070
 		}
947 1071
 		return $quota;
@@ -957,7 +1081,11 @@  discard block
 block discarded – undo
957 1081
 	static function getTimeOut($_use='IMAP')
958 1082
 	{
959 1083
 		$timeout = $GLOBALS['egw_info']['user']['preferences']['mail']['connectionTimeout'];
960
-		if (empty($timeout)) $timeout = ($_use=='SIEVE'?10:20); // this is the default value
1084
+		if (empty($timeout))
1085
+		{
1086
+			$timeout = ($_use=='SIEVE'?10:20);
1087
+		}
1088
+		// this is the default value
961 1089
 		return $timeout;
962 1090
 	}
963 1091
 
@@ -975,9 +1103,13 @@  discard block
 block discarded – undo
975 1103
 		$foldersNameSpace = array();
976 1104
 		$delimiter = $this->getHierarchyDelimiter();
977 1105
 		// TODO: cache by $this->icServer->ImapServerId
978
-		if (is_null($nameSpace)) $nameSpace = $this->icServer->getNameSpaceArray();
1106
+		if (is_null($nameSpace))
1107
+		{
1108
+			$nameSpace = $this->icServer->getNameSpaceArray();
1109
+		}
979 1110
 		//error_log(__METHOD__.' ('.__LINE__.') '.array2string($nameSpace));
980
-		if (is_array($nameSpace)) {
1111
+		if (is_array($nameSpace))
1112
+		{
981 1113
 			foreach($nameSpace as $type => $singleNameSpaceArray)
982 1114
 			{
983 1115
 				foreach ($singleNameSpaceArray as $singleNameSpace)
@@ -994,7 +1126,9 @@  discard block
 block discarded – undo
994 1126
 						$_foldersNameSpace['prefix_present'] = 'forced';
995 1127
 						// uw-imap server with mailbox prefix or dovecot maybe
996 1128
 						$_foldersNameSpace['prefix'] = 'mail';
997
-					} else {
1129
+					}
1130
+					else
1131
+					{
998 1132
 						$_foldersNameSpace['prefix_present'] = !empty($singleNameSpace['name']);
999 1133
 						$_foldersNameSpace['prefix'] = $singleNameSpace['name'];
1000 1134
 					}
@@ -1021,7 +1155,10 @@  discard block
 block discarded – undo
1021 1155
 		foreach($nameSpace as &$singleNameSpace)
1022 1156
 		{
1023 1157
 			//if (substr($singleNameSpace['prefix'],0,strlen($folderName))==$folderName) return $singleNameSpace['prefix'];
1024
-			if (substr($folderName,0,strlen($singleNameSpace['prefix']))==$singleNameSpace['prefix']) return $singleNameSpace['prefix'];
1158
+			if (substr($folderName,0,strlen($singleNameSpace['prefix']))==$singleNameSpace['prefix'])
1159
+			{
1160
+				return $singleNameSpace['prefix'];
1161
+			}
1025 1162
 		}
1026 1163
 		return "";
1027 1164
 	}
@@ -1035,8 +1172,14 @@  discard block
 block discarded – undo
1035 1172
 	function getHierarchyDelimiter($_useCache=true)
1036 1173
 	{
1037 1174
 		static $HierarchyDelimiter = null;
1038
-		if (is_null($HierarchyDelimiter)) $HierarchyDelimiter = Cache::getCache(Cache::INSTANCE,'email','HierarchyDelimiter'.trim($GLOBALS['egw_info']['user']['account_id']),null,array(),60*60*24*5);
1039
-		if ($_useCache===false) unset($HierarchyDelimiter[$this->icServer->ImapServerId]);
1175
+		if (is_null($HierarchyDelimiter))
1176
+		{
1177
+			$HierarchyDelimiter = Cache::getCache(Cache::INSTANCE,'email','HierarchyDelimiter'.trim($GLOBALS['egw_info']['user']['account_id']),null,array(),60*60*24*5);
1178
+		}
1179
+		if ($_useCache===false)
1180
+		{
1181
+			unset($HierarchyDelimiter[$this->icServer->ImapServerId]);
1182
+		}
1040 1183
 		if (isset($HierarchyDelimiter[$this->icServer->ImapServerId])&&!empty($HierarchyDelimiter[$this->icServer->ImapServerId]))
1041 1184
 		{
1042 1185
 			return $HierarchyDelimiter[$this->icServer->ImapServerId];
@@ -1070,14 +1213,19 @@  discard block
 block discarded – undo
1070 1213
 	{
1071 1214
 		//error_log(__METHOD__.' ('.__LINE__.') '.':'.$this->icServer->ImapServerId.' Connected:'.$this->icServer->_connected);
1072 1215
 		static $_specialUseFolders = null;
1073
-		if (is_null($_specialUseFolders)||empty($_specialUseFolders)) $_specialUseFolders = Cache::getCache(Cache::INSTANCE,'email','specialUseFolders'.trim($GLOBALS['egw_info']['user']['account_id']),null,array(),60*60*24*5);
1216
+		if (is_null($_specialUseFolders)||empty($_specialUseFolders))
1217
+		{
1218
+			$_specialUseFolders = Cache::getCache(Cache::INSTANCE,'email','specialUseFolders'.trim($GLOBALS['egw_info']['user']['account_id']),null,array(),60*60*24*5);
1219
+		}
1074 1220
 		//error_log(__METHOD__.' ('.__LINE__.') '.array2string($this->icServer->acc_folder_trash));
1075 1221
 		//error_log(__METHOD__.' ('.__LINE__.') '.array2string($this->icServer->acc_folder_sent));
1076 1222
 		//error_log(__METHOD__.' ('.__LINE__.') '.array2string($this->icServer->acc_folder_draft));
1077 1223
 		//error_log(__METHOD__.' ('.__LINE__.') '.array2string($this->icServer->acc_folder_template));
1078 1224
 		self::$specialUseFolders = $_specialUseFolders[$this->icServer->ImapServerId];
1079 1225
 		if (isset($_specialUseFolders[$this->icServer->ImapServerId]) && !empty($_specialUseFolders[$this->icServer->ImapServerId]))
1080
-			return $_specialUseFolders[$this->icServer->ImapServerId];
1226
+		{
1227
+					return $_specialUseFolders[$this->icServer->ImapServerId];
1228
+		}
1081 1229
 		$_specialUseFolders[$this->icServer->ImapServerId]=array();
1082 1230
 		//if (!empty($this->icServer->acc_folder_trash) && !isset($_specialUseFolders[$this->icServer->ImapServerId][$this->icServer->acc_folder_trash]))
1083 1231
 			$_specialUseFolders[$this->icServer->ImapServerId][$this->icServer->acc_folder_trash]='Trash';
@@ -1105,7 +1253,8 @@  discard block
 block discarded – undo
1105 1253
 	function folderIsSelectable($folderToSelect)
1106 1254
 	{
1107 1255
 		$retval = true;
1108
-		if($folderToSelect && ($folderStatus = $this->getFolderStatus($folderToSelect,false,true))) {
1256
+		if($folderToSelect && ($folderStatus = $this->getFolderStatus($folderToSelect,false,true)))
1257
+		{
1109 1258
 			if (!empty($folderStatus['attributes']) && stripos(array2string($folderStatus['attributes']),'noselect')!==false)
1110 1259
 			{
1111 1260
 				$retval = false;
@@ -1158,7 +1307,10 @@  discard block
 block discarded – undo
1158 1307
 	 */
1159 1308
 	function getFolderStatus($_folderName,$ignoreStatusCache=false,$basicInfoOnly=false,$fetchSubscribedInfo=true)
1160 1309
 	{
1161
-		if (self::$debug) error_log(__METHOD__.' ('.__LINE__.') '." called with:$_folderName,$ignoreStatusCache,$basicInfoOnly");
1310
+		if (self::$debug)
1311
+		{
1312
+			error_log(__METHOD__.' ('.__LINE__.') '." called with:$_folderName,$ignoreStatusCache,$basicInfoOnly");
1313
+		}
1162 1314
 		if (!is_string($_folderName) || empty($_folderName)||(isset(self::$profileDefunct[$this->profileID]) && strlen(self::$profileDefunct[$this->profileID])))
1163 1315
 		{
1164 1316
 			// something is wrong. Do not proceed. either no folder or profile is marked as defunct for this request
@@ -1170,7 +1322,10 @@  discard block
 block discarded – undo
1170 1322
 		{
1171 1323
 			$folderInfoCache = $folderBasicInfo[$this->profileID];
1172 1324
 		}
1173
-		if (isset($folderInfoCache[$_folderName]) && $ignoreStatusCache==false && $basicInfoOnly) return $folderInfoCache[$_folderName];
1325
+		if (isset($folderInfoCache[$_folderName]) && $ignoreStatusCache==false && $basicInfoOnly)
1326
+		{
1327
+			return $folderInfoCache[$_folderName];
1328
+		}
1174 1329
 		$retValue = array();
1175 1330
 		$retValue['subscribed'] = false;
1176 1331
 /*
@@ -1199,7 +1354,10 @@  discard block
 block discarded – undo
1199 1354
 			if (is_array($ret))
1200 1355
 			{
1201 1356
 				$retkeys = array_keys($ret);
1202
-				if ($retkeys[0]==$_folderName) $folderInfoCache[$_folderName] = $ret[$retkeys[0]];
1357
+				if ($retkeys[0]==$_folderName)
1358
+				{
1359
+					$folderInfoCache[$_folderName] = $ret[$retkeys[0]];
1360
+				}
1203 1361
 			}
1204 1362
 			else
1205 1363
 			{
@@ -1208,7 +1366,8 @@  discard block
 block discarded – undo
1208 1366
 		}
1209 1367
 		$folderInfo = $folderInfoCache[$_folderName];
1210 1368
 		//error_log(__METHOD__.' ('.__LINE__.') '.array2string($folderInfo).'->'.function_backtrace());
1211
-		if($ignoreStatusCache||!$folderInfo|| !is_array($folderInfo)) {
1369
+		if($ignoreStatusCache||!$folderInfo|| !is_array($folderInfo))
1370
+		{
1212 1371
 			try
1213 1372
 			{
1214 1373
 				$folderInfo = $this->_getStatus($_folderName,$ignoreStatusCache);
@@ -1243,7 +1402,8 @@  discard block
 block discarded – undo
1243 1402
 		$retValue['shortName']		= array_pop($shortNameParts);
1244 1403
 		$retValue['displayName']	= $_folderName;
1245 1404
 		$retValue['shortDisplayName']	= $retValue['shortName'];
1246
-		if(strtoupper($retValue['shortName']) == 'INBOX') {
1405
+		if(strtoupper($retValue['shortName']) == 'INBOX')
1406
+		{
1247 1407
 			$retValue['displayName']	= lang('INBOX');
1248 1408
 			$retValue['shortDisplayName']	= lang('INBOX');
1249 1409
 		}
@@ -1252,7 +1412,10 @@  discard block
 block discarded – undo
1252 1412
 		{
1253 1413
 			$retValue['displayName'] = $retValue['shortDisplayName'] = lang($retValue['shortName']);
1254 1414
 		}
1255
-		if ($folderInfo) $folderBasicInfo[$this->profileID][$_folderName]=$retValue;
1415
+		if ($folderInfo)
1416
+		{
1417
+			$folderBasicInfo[$this->profileID][$_folderName]=$retValue;
1418
+		}
1256 1419
 		//error_log(__METHOD__.' ('.__LINE__.') '.' '.$_folderName.array2string($retValue['attributes']));
1257 1420
 		if ($basicInfoOnly || (isset($retValue['attributes']) && stripos(array2string($retValue['attributes']),'noselect')!==false))
1258 1421
 		{
@@ -1264,24 +1427,34 @@  discard block
 block discarded – undo
1264 1427
 		static $subscribedFolders = null;
1265 1428
 		static $nameSpace = null;
1266 1429
 		static $prefix = null;
1267
-		if (is_null($nameSpace) || empty($nameSpace[$this->profileID])) $nameSpace[$this->profileID] = $this->_getNameSpaces();
1430
+		if (is_null($nameSpace) || empty($nameSpace[$this->profileID]))
1431
+		{
1432
+			$nameSpace[$this->profileID] = $this->_getNameSpaces();
1433
+		}
1268 1434
 		if (!empty($nameSpace[$this->profileID]))
1269 1435
 		{
1270 1436
 			$nsNoPersonal=array();
1271 1437
 			foreach($nameSpace[$this->profileID] as &$ns)
1272 1438
 			{
1273
-				if ($ns['type']!='personal') $nsNoPersonal[]=$ns;
1439
+				if ($ns['type']!='personal')
1440
+				{
1441
+					$nsNoPersonal[]=$ns;
1442
+				}
1274 1443
 			}
1275 1444
 			$nameSpace[$this->profileID]=$nsNoPersonal;
1276 1445
 		}
1277
-		if (is_null($prefix) || empty($prefix[$this->profileID]) || empty($prefix[$this->profileID][$_folderName])) $prefix[$this->profileID][$_folderName] = $this->getFolderPrefixFromNamespace($nameSpace[$this->profileID], $_folderName);
1446
+		if (is_null($prefix) || empty($prefix[$this->profileID]) || empty($prefix[$this->profileID][$_folderName]))
1447
+		{
1448
+			$prefix[$this->profileID][$_folderName] = $this->getFolderPrefixFromNamespace($nameSpace[$this->profileID], $_folderName);
1449
+		}
1278 1450
 
1279 1451
 		if ($fetchSubscribedInfo && is_null($subscribedFolders) || empty($subscribedFolders[$this->profileID]))
1280 1452
 		{
1281 1453
 			$subscribedFolders[$this->profileID] = $this->icServer->listSubscribedMailboxes();
1282 1454
 		}
1283 1455
 
1284
-		if($fetchSubscribedInfo && is_array($subscribedFolders[$this->profileID]) && in_array($_folderName,$subscribedFolders[$this->profileID])) {
1456
+		if($fetchSubscribedInfo && is_array($subscribedFolders[$this->profileID]) && in_array($_folderName,$subscribedFolders[$this->profileID]))
1457
+		{
1285 1458
 			$retValue['subscribed'] = true;
1286 1459
 		}
1287 1460
 
@@ -1300,8 +1473,7 @@  discard block
 block discarded – undo
1300 1473
 				(isset($this->mailPreferences['trustServersUnseenInfo']) &&
1301 1474
 				$this->mailPreferences['trustServersUnseenInfo']==2 &&
1302 1475
 				$prefix[$this->profileID][$_folderName] != '' && stripos($_folderName,$prefix[$this->profileID][$_folderName]) !== false)
1303
-			)
1304
-			{
1476
+			) {
1305 1477
 				//error_log(__METHOD__." returned folderStatus for Folder $_folderName:".print_r($prefix,true).' TS:'.$this->mailPreferences['trustServersUnseenInfo']);
1306 1478
 				// we filter for the combined status of unseen and undeleted, as this is what we show in list
1307 1479
 				try
@@ -1313,13 +1485,19 @@  discard block
 block discarded – undo
1313 1485
 				}
1314 1486
 				catch (\Exception $ee)
1315 1487
 				{
1316
-					if (self::$debug) error_log(__METHOD__." could not fetch/calculate unseen counter for $_folderName Reason:'".$ee->getMessage()."' but requested.");
1488
+					if (self::$debug)
1489
+					{
1490
+						error_log(__METHOD__." could not fetch/calculate unseen counter for $_folderName Reason:'".$ee->getMessage()."' but requested.");
1491
+					}
1317 1492
 				}
1318 1493
 			}
1319 1494
 		}
1320 1495
 		catch (\Exception $e)
1321 1496
 		{
1322
-			if (self::$debug) error_log(__METHOD__." returned folderStatus for Folder $_folderName:".print_r($e->getMessage(),true));
1497
+			if (self::$debug)
1498
+			{
1499
+				error_log(__METHOD__." returned folderStatus for Folder $_folderName:".print_r($e->getMessage(),true));
1500
+			}
1323 1501
 		}
1324 1502
 
1325 1503
 		return $retValue;
@@ -1344,8 +1522,14 @@  discard block
 block discarded – undo
1344 1522
 	function getHeaders($_folderName, $_startMessage, $_numberOfMessages, $_sort, $_reverse, $_filter, $_thisUIDOnly=null, $_cacheResult=true, $_fetchPreviews=false)
1345 1523
 	{
1346 1524
 		//self::$debug=true;
1347
-		if (self::$debug) error_log(__METHOD__.' ('.__LINE__.') '.function_backtrace());
1348
-		if (self::$debug) error_log(__METHOD__.' ('.__LINE__.') '."$_folderName,$_startMessage, $_numberOfMessages, $_sort, $_reverse, ".array2string($_filter).", $_thisUIDOnly");
1525
+		if (self::$debug)
1526
+		{
1527
+			error_log(__METHOD__.' ('.__LINE__.') '.function_backtrace());
1528
+		}
1529
+		if (self::$debug)
1530
+		{
1531
+			error_log(__METHOD__.' ('.__LINE__.') '."$_folderName,$_startMessage, $_numberOfMessages, $_sort, $_reverse, ".array2string($_filter).", $_thisUIDOnly");
1532
+		}
1349 1533
 		$reverse = (bool)$_reverse;
1350 1534
 		// get the list of messages to fetch
1351 1535
 		$this->reopen($_folderName);
@@ -1366,21 +1550,34 @@  discard block
 block discarded – undo
1366 1550
 				//$_filter['range'] ="$start:$end";
1367 1551
 				//$_filter['range'] ="$_startMessage:*";
1368 1552
 			}
1369
-			if (self::$debug) error_log(__METHOD__.' ('.__LINE__.') '."$_folderName, $_sort, $reverse, ".array2string($_filter).", $rByUid");
1370
-			if (self::$debug||self::$debugTimes) $starttime = microtime (true);
1553
+			if (self::$debug)
1554
+			{
1555
+				error_log(__METHOD__.' ('.__LINE__.') '."$_folderName, $_sort, $reverse, ".array2string($_filter).", $rByUid");
1556
+			}
1557
+			if (self::$debug||self::$debugTimes)
1558
+			{
1559
+				$starttime = microtime (true);
1560
+			}
1371 1561
 			//see this example below for a 12 week datefilter (since)
1372 1562
 			//$_filter = array('status'=>array('UNDELETED'),'type'=>"SINCE",'string'=> date("d-M-Y", $starttime-(3600*24*7*12)));
1373 1563
 			$_sortResult = $this->getSortedList($_folderName, $_sort, $reverse, $_filter, $rByUid, $_cacheResult);
1374 1564
 			$sortResult = $_sortResult['match']->ids;
1375 1565
 			//$modseq = $_sortResult['modseq'];
1376 1566
 			//error_log(__METHOD__.' ('.__LINE__.') '.'Modsequence:'.$modseq);
1377
-			if (self::$debug||self::$debugTimes) self::logRunTimes($starttime,null,' call getSortedList for Folder:'.$_folderName.' Filter:'.array2string($_filter).' Ids:'.array2string($_thisUIDOnly),__METHOD__.' ('.__LINE__.') ');
1567
+			if (self::$debug||self::$debugTimes)
1568
+			{
1569
+				self::logRunTimes($starttime,null,' call getSortedList for Folder:'.$_folderName.' Filter:'.array2string($_filter).' Ids:'.array2string($_thisUIDOnly),__METHOD__.' ('.__LINE__.') ');
1570
+			}
1378 1571
 
1379
-			if (self::$debug) error_log(__METHOD__.' ('.__LINE__.') '.array2string($sortResult));
1572
+			if (self::$debug)
1573
+			{
1574
+				error_log(__METHOD__.' ('.__LINE__.') '.array2string($sortResult));
1575
+			}
1380 1576
 			#$this->icServer->setDebug(false);
1381 1577
 			#print "</pre>";
1382 1578
 			// nothing found
1383
-			if(!is_array($sortResult) || empty($sortResult)) {
1579
+			if(!is_array($sortResult) || empty($sortResult))
1580
+			{
1384 1581
 				$retValue = array();
1385 1582
 				$retValue['info']['total']	= 0;
1386 1583
 				$retValue['info']['first']	= 0;
@@ -1392,7 +1589,8 @@  discard block
 block discarded – undo
1392 1589
 			#_debug_array($sortResult);
1393 1590
 			#_debug_array(array_slice($sortResult, -5, -2));
1394 1591
 			//error_log("REVERSE: $reverse");
1395
-			if($reverse === true) {
1592
+			if($reverse === true)
1593
+			{
1396 1594
 				if  ($_startMessage<=$total)
1397 1595
 				{
1398 1596
 					$startMessage = $_startMessage-1;
@@ -1404,7 +1602,10 @@  discard block
 block discarded – undo
1404 1602
 					{
1405 1603
 						$numberOfMessages = $total%$_numberOfMessages;
1406 1604
 						//$numberOfMessages = abs($_startMessage-$total-1);
1407
-						if ($numberOfMessages>0 && $numberOfMessages<=$_numberOfMessages) $_numberOfMessages = $numberOfMessages;
1605
+						if ($numberOfMessages>0 && $numberOfMessages<=$_numberOfMessages)
1606
+						{
1607
+							$_numberOfMessages = $numberOfMessages;
1608
+						}
1408 1609
 						//error_log(__METHOD__.' ('.__LINE__.') '.' Start:'.$_startMessage.' NumberOfMessages:'.$_numberOfMessages.' Total:'.$total);
1409 1610
 					}
1410 1611
 					$startMessage=($total-$_numberOfMessages)-1;
@@ -1418,19 +1619,36 @@  discard block
 block discarded – undo
1418 1619
 					//$retValue['info']['first'] = $startMessage;
1419 1620
 					//$retValue['info']['last'] = $total;
1420 1621
 				}
1421
-				if($startMessage > 0) {
1422
-					if (self::$debug) error_log(__METHOD__.' ('.__LINE__.') '.' StartMessage:'.(-($_numberOfMessages+$startMessage)).', '.-$startMessage.' Number of Messages:'.count($sortResult));
1622
+				if($startMessage > 0)
1623
+				{
1624
+					if (self::$debug)
1625
+					{
1626
+						error_log(__METHOD__.' ('.__LINE__.') '.' StartMessage:'.(-($_numberOfMessages+$startMessage)).', '.-$startMessage.' Number of Messages:'.count($sortResult));
1627
+					}
1423 1628
 					$sortResult = array_slice($sortResult, -($_numberOfMessages+$startMessage), -$startMessage);
1424
-				} else {
1425
-					if (self::$debug) error_log(__METHOD__.' ('.__LINE__.') '.' StartMessage:'.(-($_numberOfMessages+($_startMessage-1))).', AllTheRest, Number of Messages:'.count($sortResult));
1629
+				}
1630
+				else
1631
+				{
1632
+					if (self::$debug)
1633
+					{
1634
+						error_log(__METHOD__.' ('.__LINE__.') '.' StartMessage:'.(-($_numberOfMessages+($_startMessage-1))).', AllTheRest, Number of Messages:'.count($sortResult));
1635
+					}
1426 1636
 					$sortResult = array_slice($sortResult, -($_numberOfMessages+($_startMessage-1)));
1427 1637
 				}
1428 1638
 				$sortResult = array_reverse($sortResult);
1429
-			} else {
1430
-				if (self::$debug) error_log(__METHOD__.' ('.__LINE__.') '.' StartMessage:'.($_startMessage-1).', '.$_numberOfMessages.' Number of Messages:'.count($sortResult));
1639
+			}
1640
+			else
1641
+			{
1642
+				if (self::$debug)
1643
+				{
1644
+					error_log(__METHOD__.' ('.__LINE__.') '.' StartMessage:'.($_startMessage-1).', '.$_numberOfMessages.' Number of Messages:'.count($sortResult));
1645
+				}
1431 1646
 				$sortResult = array_slice($sortResult, $_startMessage-1, $_numberOfMessages);
1432 1647
 			}
1433
-			if (self::$debug) error_log(__METHOD__.' ('.__LINE__.') '.array2string($sortResult));
1648
+			if (self::$debug)
1649
+			{
1650
+				error_log(__METHOD__.' ('.__LINE__.') '.array2string($sortResult));
1651
+			}
1434 1652
 		}
1435 1653
 		else
1436 1654
 		{
@@ -1439,7 +1657,10 @@  discard block
 block discarded – undo
1439 1657
 
1440 1658
 
1441 1659
 		// fetch the data for the selected messages
1442
-		if (self::$debug||self::$debugTimes) $starttime = microtime(true);
1660
+		if (self::$debug||self::$debugTimes)
1661
+		{
1662
+			$starttime = microtime(true);
1663
+		}
1443 1664
 		try
1444 1665
 		{
1445 1666
 			$uidsToFetch = new Horde_Imap_Client_Ids();
@@ -1463,7 +1684,10 @@  discard block
 block discarded – undo
1463 1684
 			$fquery->flags();
1464 1685
 			$fquery->imapDate();// needed to ensure getImapDate fetches the internaldate, not the current time
1465 1686
 			// if $_fetchPreviews is activated fetch part of the messages too
1466
-			if ($_fetchPreviews) $fquery->fullText(array('peek'=>true,'length'=>((int)$_fetchPreviews<5000?5000:$_fetchPreviews),'start'=>0));
1687
+			if ($_fetchPreviews)
1688
+			{
1689
+				$fquery->fullText(array('peek'=>true,'length'=>((int)$_fetchPreviews<5000?5000:$_fetchPreviews),'start'=>0));
1690
+			}
1467 1691
 			$headersNew = $this->icServer->fetch($_folderName, $fquery, array(
1468 1692
 				'ids' => $uidsToFetch,
1469 1693
 			));
@@ -1486,14 +1710,20 @@  discard block
 block discarded – undo
1486 1710
 
1487 1711
 		$cnt = 0;
1488 1712
 
1489
-		foreach((array)$sortResult as $uid) {
1713
+		foreach((array)$sortResult as $uid)
1714
+		{
1490 1715
 			$sortOrder[$uid] = $cnt++;
1491 1716
 		}
1492 1717
 
1493 1718
 		$count = 0;
1494
-		if (is_object($headersNew)) {
1495
-			if (self::$debug||self::$debugTimes) $starttime = microtime(true);
1496
-			foreach($headersNew->ids() as $id) {
1719
+		if (is_object($headersNew))
1720
+		{
1721
+			if (self::$debug||self::$debugTimes)
1722
+			{
1723
+				$starttime = microtime(true);
1724
+			}
1725
+			foreach($headersNew->ids() as $id)
1726
+			{
1497 1727
 				$_headerObject = $headersNew->get($id);
1498 1728
 				//error_log(__METHOD__.' ('.__LINE__.') '.array2string($_headerObject));
1499 1729
 				$headerObject = array();
@@ -1506,7 +1736,10 @@  discard block
 block discarded – undo
1506 1736
 				// Get already cached headers, 'fetchHeaders' is a label matchimg above
1507 1737
 				$headerForPrio = $_headerObject->getHeaders('fetchHeaders',Horde_Imap_Client_Data_Fetch::HEADER_PARSE)->toArray();
1508 1738
 				// Try to fetch header with key='' as some servers might have no fetchHeaders index. e.g. yandex.com
1509
-				if (empty($headerForPrio)) $headerForPrio = $_headerObject->getHeaders('',Horde_Imap_Client_Data_Fetch::HEADER_PARSE)->toArray();
1739
+				if (empty($headerForPrio))
1740
+				{
1741
+					$headerForPrio = $_headerObject->getHeaders('',Horde_Imap_Client_Data_Fetch::HEADER_PARSE)->toArray();
1742
+				}
1510 1743
 				//fetch the fullMsg part if all conditions match to be available in case $_headerObject->getHeaders returns
1511 1744
 				//nothing worthwhile (as it does for googlemail accounts, when preview is switched on
1512 1745
 				if ($_fetchPreviews)
@@ -1517,12 +1750,16 @@  discard block
 block discarded – undo
1517 1750
 					if (empty($headerForPrio)||(is_array($headerForPrio)&&count($headerForPrio)===1&&$headerForPrio['']))
1518 1751
 					{
1519 1752
 						$length = strpos($bodyPreview, Horde_Mime_Part::RFC_EOL.Horde_Mime_Part::RFC_EOL);
1520
-						if ($length===false) $length = strlen($bodyPreview);
1753
+						if ($length===false)
1754
+						{
1755
+							$length = strlen($bodyPreview);
1756
+						}
1521 1757
 						$headerForPrio =  Horde_Mime_Headers::parseHeaders(substr($bodyPreview, 0,$length))->toArray();
1522 1758
 					}
1523 1759
 				}
1524 1760
 				$headerForPrio = array_change_key_case($headerForPrio, CASE_UPPER);
1525
-				if (self::$debug) {
1761
+				if (self::$debug)
1762
+				{
1526 1763
 					error_log(__METHOD__.' ('.__LINE__.') '.array2string($_headerObject).'UID:'.$_headerObject->getUid().' Size:'.$_headerObject->getSize().' Date:'.$_headerObject->getImapDate().'/'.DateTime::to($_headerObject->getImapDate(),'Y-m-d H:i:s'));
1527 1764
 					error_log(__METHOD__.' ('.__LINE__.') '.array2string($headerForPrio));
1528 1765
 				}
@@ -1532,11 +1769,16 @@  discard block
 block discarded – undo
1532 1769
 					$total--;
1533 1770
 					continue;
1534 1771
 				}
1535
-				if ( isset($headerForPrio['DISPOSITION-NOTIFICATION-TO']) ) {
1772
+				if ( isset($headerForPrio['DISPOSITION-NOTIFICATION-TO']) )
1773
+				{
1536 1774
 					$headerObject['DISPOSITION-NOTIFICATION-TO'] = self::decode_header(trim($headerForPrio['DISPOSITION-NOTIFICATION-TO']));
1537
-				} else if ( isset($headerForPrio['RETURN-RECEIPT-TO']) ) {
1775
+				}
1776
+				else if ( isset($headerForPrio['RETURN-RECEIPT-TO']) )
1777
+				{
1538 1778
 					$headerObject['DISPOSITION-NOTIFICATION-TO'] = self::decode_header(trim($headerForPrio['RETURN-RECEIPT-TO']));
1539
-				} else if ( isset($headerForPrio['X-CONFIRM-READING-TO']) ) {
1779
+				}
1780
+				else if ( isset($headerForPrio['X-CONFIRM-READING-TO']) )
1781
+				{
1540 1782
 					$headerObject['DISPOSITION-NOTIFICATION-TO'] = self::decode_header(trim($headerForPrio['X-CONFIRM-READING-TO']));
1541 1783
 				} /*else $sent_not = "";*/
1542 1784
 				//error_log(__METHOD__.' ('.__LINE__.') '.array2string($headerObject));
@@ -1568,7 +1810,11 @@  discard block
 block discarded – undo
1568 1810
 						$rfcAddr = self::parseAddressList($ad); // does some fixing of known problems too
1569 1811
 						foreach ($rfcAddr as $_rfcAddr)
1570 1812
 						{
1571
-							if (!$_rfcAddr->valid)	continue; // skip. not a valid address
1813
+							if (!$_rfcAddr->valid)
1814
+							{
1815
+								continue;
1816
+							}
1817
+							// skip. not a valid address
1572 1818
 							$address[] = imap_rfc822_write_address($_rfcAddr->mailbox,$_rfcAddr->host,$_rfcAddr->personal);
1573 1819
 						}
1574 1820
 					}
@@ -1584,7 +1830,10 @@  discard block
 block discarded – undo
1584 1830
 				{
1585 1831
 					// $bodyPreview is populated at the beginning of the loop, as it may be
1586 1832
 					// needed to parse the Headers of the Message
1587
-					if (empty($bodyPreview)) $bodyPreview = $_headerObject->getFullMsg();
1833
+					if (empty($bodyPreview))
1834
+					{
1835
+						$bodyPreview = $_headerObject->getFullMsg();
1836
+					}
1588 1837
 					//error_log(__METHOD__.' ('.__LINE__.') '.array2string($bodyPreview));
1589 1838
 					$base = Horde_Mime_Part::parseMessage($bodyPreview);
1590 1839
 					foreach($base->partIterator() as $part)
@@ -1597,7 +1846,8 @@  discard block
 block discarded – undo
1597 1846
 												'encode' => Horde_Mime_Part::ENCODE_BINARY,	// otherwise we cant recode charset
1598 1847
 											)), $charset, 'utf-8');
1599 1848
 							$headerObject['BODYPREVIEW']=trim(str_replace(array("\r\n","\r","\n"),' ',mb_substr(Translation::convert_jsonsafe($buffer),0,((int)$_fetchPreviews<300?300:$_fetchPreviews))));
1600
-						} elseif (empty($headerObject['BODYPREVIEW'])&&$part->getPrimaryType()== 'multipart')
1849
+						}
1850
+						elseif (empty($headerObject['BODYPREVIEW'])&&$part->getPrimaryType()== 'multipart')
1601 1851
 						{
1602 1852
 							//error_log(__METHOD__.' ('.__LINE__.') '.array2string($part));
1603 1853
 						}
@@ -1613,7 +1863,10 @@  discard block
 block discarded – undo
1613 1863
 				$messageMimeType='';
1614 1864
 				foreach ($mailStructureObject->contentTypeMap() as $mime_id => $mime_type)
1615 1865
 				{
1616
-					if ($mime_id==0 || $messageMimeType==='') $messageMimeType = $mime_type;
1866
+					if ($mime_id==0 || $messageMimeType==='')
1867
+					{
1868
+						$messageMimeType = $mime_type;
1869
+					}
1617 1870
 					$part = $mailStructureObject->getPart($mime_id);
1618 1871
 					$partdisposition = $part->getDisposition();
1619 1872
 					$partPrimaryType = $part->getPrimaryType();
@@ -1623,7 +1876,8 @@  discard block
 block discarded – undo
1623 1876
 					// bodypreview could be found (multipart/....)
1624 1877
 					if ($_fetchPreviews && empty($headerObject['BODYPREVIEW'])&&($partPrimaryType == 'text') &&
1625 1878
 						((intval($mime_id) === 1) || !$mime_id) &&
1626
-						($partdisposition !== 'attachment')) {
1879
+						($partdisposition !== 'attachment'))
1880
+					{
1627 1881
 							$_structure=$part;
1628 1882
 							$this->fetchPartContents($uid, $_structure, false,true);
1629 1883
 							$headerObject['BODYPREVIEW']=trim(str_replace(array("\r\n","\r","\n"),' ',mb_substr(Mail\Html::convertHTMLToText($_structure->getContents()),0,((int)$_fetchPreviews<300?300:$_fetchPreviews))));
@@ -1645,10 +1899,19 @@  discard block
 block discarded – undo
1645 1899
 					if ($mime_type=='message/rfc822')
1646 1900
 					{
1647 1901
 						//error_log(__METHOD__.' ('.__LINE__.') '.' Uid:'.$uid.'->'.$mime_id.':'.array2string($part->contentTypeMap()));
1648
-						foreach($part->contentTypeMap() as $sub_id => $sub_type) { if ($sub_id != $mime_id) $skipParts[$sub_id] = $sub_type;}
1902
+						foreach($part->contentTypeMap() as $sub_id => $sub_type)
1903
+						{
1904
+if ($sub_id != $mime_id)
1905
+						{
1906
+							$skipParts[$sub_id] = $sub_type;
1907
+						}
1908
+						}
1649 1909
 					}
1650 1910
 					//error_log(__METHOD__.' ('.__LINE__.') '.' Uid:'.$uid.'->'.$mime_id.' Disp:'.$partdisposition.' Type:'.$partPrimaryType.' Skip:'.array2string($skipParts));
1651
-					if (array_key_exists($mime_id,$skipParts)) continue;
1911
+					if (array_key_exists($mime_id,$skipParts))
1912
+					{
1913
+						continue;
1914
+					}
1652 1915
 					if ($partdisposition=='attachment' ||
1653 1916
 						($partdisposition=='inline'&&$partPrimaryType == 'image'&&$mime_type=='image/tiff') || // as we are not able to display tiffs
1654 1917
 						($partdisposition=='inline'&&$partPrimaryType == 'image'&&empty($cid)) ||
@@ -1659,7 +1922,10 @@  discard block
 block discarded – undo
1659 1922
 						$headerObject['ATTACHMENTS'][$mime_id]['uid']=$uid;
1660 1923
 						$headerObject['ATTACHMENTS'][$mime_id]['cid'] = $cid;
1661 1924
 						$headerObject['ATTACHMENTS'][$mime_id]['partID']=$mime_id;
1662
-						if (!isset($headerObject['ATTACHMENTS'][$mime_id]['name']))$headerObject['ATTACHMENTS'][$mime_id]['name']=$part->getName();
1925
+						if (!isset($headerObject['ATTACHMENTS'][$mime_id]['name']))
1926
+						{
1927
+							$headerObject['ATTACHMENTS'][$mime_id]['name']=$part->getName();
1928
+						}
1663 1929
 						if (!strcasecmp($headerObject['ATTACHMENTS'][$mime_id]['name'],'winmail.dat') ||
1664 1930
 							$headerObject['ATTACHMENTS'][$mime_id]['mimeType']=='application/ms-tnef')
1665 1931
 						{
@@ -1673,18 +1939,27 @@  discard block
 block discarded – undo
1673 1939
 				//error_log(__METHOD__.' ('.__LINE__.') '.' FindBody (plain):'.array2string($mailStructureObject->findBody('plain')));
1674 1940
 				//error_log(__METHOD__.' ('.__LINE__.') '.' FindBody (html):'.array2string($mailStructureObject->findBody('html')));
1675 1941
 				//if($count == 0) error_log(__METHOD__.array2string($headerObject));
1676
-				if (empty($headerObject['UID'])) continue;
1942
+				if (empty($headerObject['UID']))
1943
+				{
1944
+					continue;
1945
+				}
1677 1946
 				//$uid = ($rByUid ? $headerObject['UID'] : $headerObject['MSG_NUM']);
1678 1947
 				// make dates like "Mon, 23 Apr 2007 10:11:06 UT" working with strtotime
1679
-				if(substr($headerObject['DATE'],-2) === 'UT') {
1948
+				if(substr($headerObject['DATE'],-2) === 'UT')
1949
+				{
1680 1950
 					$headerObject['DATE'] .= 'C';
1681 1951
 				}
1682
-				if(substr($headerObject['INTERNALDATE'],-2) === 'UT') {
1952
+				if(substr($headerObject['INTERNALDATE'],-2) === 'UT')
1953
+				{
1683 1954
 					$headerObject['INTERNALDATE'] .= 'C';
1684 1955
 				}
1685 1956
 				//error_log(__METHOD__.' ('.__LINE__.') '.' '.$headerObject['SUBJECT'].'->'.$headerObject['DATE'].'<->'.$headerObject['INTERNALDATE'] .'#');
1686 1957
 				//error_log(__METHOD__.' ('.__LINE__.') '.' '.$this->decode_subject($headerObject['SUBJECT']).'->'.$headerObject['DATE']);
1687
-				if (isset($headerObject['ATTACHMENTS']) && count($headerObject['ATTACHMENTS'])) foreach ($headerObject['ATTACHMENTS'] as &$a) { $retValue['header'][$sortOrder[$uid]]['attachments'][]=$a;}
1958
+				if (isset($headerObject['ATTACHMENTS']) && count($headerObject['ATTACHMENTS']))
1959
+				{
1960
+					foreach ($headerObject['ATTACHMENTS'] as &$a) { $retValue['header'][$sortOrder[$uid]]['attachments'][]=$a;
1961
+				}
1962
+				}
1688 1963
 				$retValue['header'][$sortOrder[$uid]]['subject']	= $this->decode_subject($headerObject['SUBJECT']);
1689 1964
 				$retValue['header'][$sortOrder[$uid]]['size'] 		= $headerObject['SIZE'];
1690 1965
 				$retValue['header'][$sortOrder[$uid]]['date']		= self::_strtotime(($headerObject['DATE']&&!($headerObject['DATE']=='NIL')?$headerObject['DATE']:$headerObject['INTERNALDATE']),'ts',true);
@@ -1695,25 +1970,35 @@  discard block
 block discarded – undo
1695 1970
 				$retValue['header'][$sortOrder[$uid]]['bodypreview']		= $headerObject['BODYPREVIEW'];
1696 1971
 				$retValue['header'][$sortOrder[$uid]]['priority']		= ($headerObject['PRIORITY']?$headerObject['PRIORITY']:3);
1697 1972
 				//error_log(__METHOD__.' ('.__LINE__.') '.' '.array2string($retValue['header'][$sortOrder[$uid]]));
1698
-				if (isset($headerObject['DISPOSITION-NOTIFICATION-TO'])) $retValue['header'][$sortOrder[$uid]]['disposition-notification-to'] = $headerObject['DISPOSITION-NOTIFICATION-TO'];
1699
-				if (is_array($headerObject['FLAGS'])) {
1973
+				if (isset($headerObject['DISPOSITION-NOTIFICATION-TO']))
1974
+				{
1975
+					$retValue['header'][$sortOrder[$uid]]['disposition-notification-to'] = $headerObject['DISPOSITION-NOTIFICATION-TO'];
1976
+				}
1977
+				if (is_array($headerObject['FLAGS']))
1978
+				{
1700 1979
 					$retValue['header'][$sortOrder[$uid]] = array_merge($retValue['header'][$sortOrder[$uid]],self::prepareFlagsArray($headerObject));
1701 1980
 				}
1702 1981
 				//error_log(__METHOD__.' ('.__LINE__.') '.$headerObject['SUBJECT'].'->'.array2string($_headerObject->getEnvelope()->__get('from')));
1703
-				if(is_array($headerObject['FROM']) && $headerObject['FROM'][0]) {
1982
+				if(is_array($headerObject['FROM']) && $headerObject['FROM'][0])
1983
+				{
1704 1984
 					$retValue['header'][$sortOrder[$uid]]['sender_address'] = self::decode_header($headerObject['FROM'][0],true);
1705 1985
 				}
1706
-				if(is_array($headerObject['REPLY-TO']) && $headerObject['REPLY-TO'][0]) {
1986
+				if(is_array($headerObject['REPLY-TO']) && $headerObject['REPLY-TO'][0])
1987
+				{
1707 1988
 					$retValue['header'][$sortOrder[$uid]]['reply_to_address'] = self::decode_header($headerObject['REPLY-TO'][0],true);
1708 1989
 				}
1709
-				if(is_array($headerObject['TO']) && $headerObject['TO'][0]) {
1990
+				if(is_array($headerObject['TO']) && $headerObject['TO'][0])
1991
+				{
1710 1992
 					$retValue['header'][$sortOrder[$uid]]['to_address'] = self::decode_header($headerObject['TO'][0],true);
1711 1993
 					if (count($headerObject['TO'])>1)
1712 1994
 					{
1713 1995
 						$ki=0;
1714 1996
 						foreach($headerObject['TO'] as $k => $add)
1715 1997
 						{
1716
-							if ($k==0) continue;
1998
+							if ($k==0)
1999
+							{
2000
+								continue;
2001
+							}
1717 2002
 							//error_log(__METHOD__.' ('.__LINE__.') '."-> $k:".array2string($add));
1718 2003
 							$retValue['header'][$sortOrder[$uid]]['additional_to_addresses'][$ki] = self::decode_header($add,true);
1719 2004
 							//error_log(__METHOD__.' ('.__LINE__.') '.array2string($retValue['header'][$sortOrder[$uid]]['additional_to_addresses'][$ki]));
@@ -1721,7 +2006,8 @@  discard block
 block discarded – undo
1721 2006
 						}
1722 2007
 					}
1723 2008
 				}
1724
-				if(is_array($headerObject['CC']) && count($headerObject['CC'])>0) {
2009
+				if(is_array($headerObject['CC']) && count($headerObject['CC'])>0)
2010
+				{
1725 2011
 					$ki=0;
1726 2012
 					foreach($headerObject['CC'] as $k => $add)
1727 2013
 					{
@@ -1735,27 +2021,41 @@  discard block
 block discarded – undo
1735 2021
 
1736 2022
 				$count++;
1737 2023
 			}
1738
-			if (self::$debug||self::$debugTimes) self::logRunTimes($starttime,null,' fetching Headers and stuff for Folder:'.$_folderName,__METHOD__.' ('.__LINE__.') ');
2024
+			if (self::$debug||self::$debugTimes)
2025
+			{
2026
+				self::logRunTimes($starttime,null,' fetching Headers and stuff for Folder:'.$_folderName,__METHOD__.' ('.__LINE__.') ');
2027
+			}
1739 2028
 			//self::$debug=false;
1740 2029
 			// sort the messages to the requested displayorder
1741
-			if(is_array($retValue['header'])) {
2030
+			if(is_array($retValue['header']))
2031
+			{
1742 2032
 				$countMessages = $total;
1743
-				if (isset($_filter['range'])) $countMessages = self::$folderStatusCache[$this->profileID][$_folderName]['messages'];
2033
+				if (isset($_filter['range']))
2034
+				{
2035
+					$countMessages = self::$folderStatusCache[$this->profileID][$_folderName]['messages'];
2036
+				}
1744 2037
 				ksort($retValue['header']);
1745 2038
 				$retValue['info']['total']	= $total;
1746 2039
 				//if ($_startMessage>$total) $_startMessage = $total-($count-1);
1747 2040
 				$retValue['info']['first']	= $_startMessage;
1748 2041
 				$retValue['info']['last']	= $_startMessage + $count - 1 ;
1749 2042
 				return $retValue;
1750
-			} else {
2043
+			}
2044
+			else
2045
+			{
1751 2046
 				$retValue = array();
1752 2047
 				$retValue['info']['total']	= 0;
1753 2048
 				$retValue['info']['first']	= 0;
1754 2049
 				$retValue['info']['last']	= 0;
1755 2050
 				return $retValue;
1756 2051
 			}
1757
-		} else {
1758
-			if ($headersNew == null && empty($_thisUIDOnly)) error_log(__METHOD__." -> retrieval of Message Details to Query $queryString failed: ".print_r($headersNew,TRUE));
2052
+		}
2053
+		else
2054
+		{
2055
+			if ($headersNew == null && empty($_thisUIDOnly))
2056
+			{
2057
+				error_log(__METHOD__." -> retrieval of Message Details to Query $queryString failed: ".print_r($headersNew,TRUE));
2058
+			}
1759 2059
 			$retValue = array();
1760 2060
 			$retValue['info']['total']  = 0;
1761 2061
 			$retValue['info']['first']  = 0;
@@ -1772,7 +2072,10 @@  discard block
 block discarded – undo
1772 2072
 	 */
1773 2073
 	static function prepareFlagsArray($headerObject)
1774 2074
 	{
1775
-		if (is_array($headerObject['FLAGS'])) $headerFlags = array_map('strtolower',$headerObject['FLAGS']);
2075
+		if (is_array($headerObject['FLAGS']))
2076
+		{
2077
+			$headerFlags = array_map('strtolower',$headerObject['FLAGS']);
2078
+		}
1776 2079
 		$retValue = array();
1777 2080
 		$retValue['recent']		= in_array('\\recent', $headerFlags);
1778 2081
 		$retValue['flagged']	= in_array('\\flagged', $headerFlags);
@@ -1823,26 +2126,45 @@  discard block
 block discarded – undo
1823 2126
 		//error_log(__METHOD__.' ('.__LINE__.') '.' Filter:'.array2string($_filter));
1824 2127
 		$try2useCache = true;
1825 2128
 		static $eMailListContainsDeletedMessages = null;
1826
-		if (is_null($eMailListContainsDeletedMessages)) $eMailListContainsDeletedMessages = Cache::getCache(Cache::INSTANCE,'email','eMailListContainsDeletedMessages'.trim($GLOBALS['egw_info']['user']['account_id']),null,array(),60*60*1);
2129
+		if (is_null($eMailListContainsDeletedMessages))
2130
+		{
2131
+			$eMailListContainsDeletedMessages = Cache::getCache(Cache::INSTANCE,'email','eMailListContainsDeletedMessages'.trim($GLOBALS['egw_info']['user']['account_id']),null,array(),60*60*1);
2132
+		}
1827 2133
 		// this indicates, that there is no Filter set, and the returned set/subset should not contain DELETED Messages, nor filtered for UNDELETED
1828 2134
 		if ($setSession==true && ((strpos(array2string($_filter), 'UNDELETED') === false && strpos(array2string($_filter), 'DELETED') === false)))
1829 2135
 		{
1830
-			if (self::$debugTimes) $starttime = microtime(true);
1831
-			if (is_null($eMailListContainsDeletedMessages) || empty($eMailListContainsDeletedMessages[$this->profileID]) || empty($eMailListContainsDeletedMessages[$this->profileID][$_folderName])) $eMailListContainsDeletedMessages = Cache::getCache(Cache::INSTANCE,'email','eMailListContainsDeletedMessages'.trim($GLOBALS['egw_info']['user']['account_id']),null,array(),60*60*1);
2136
+			if (self::$debugTimes)
2137
+			{
2138
+				$starttime = microtime(true);
2139
+			}
2140
+			if (is_null($eMailListContainsDeletedMessages) || empty($eMailListContainsDeletedMessages[$this->profileID]) || empty($eMailListContainsDeletedMessages[$this->profileID][$_folderName]))
2141
+			{
2142
+				$eMailListContainsDeletedMessages = Cache::getCache(Cache::INSTANCE,'email','eMailListContainsDeletedMessages'.trim($GLOBALS['egw_info']['user']['account_id']),null,array(),60*60*1);
2143
+			}
1832 2144
 			$five=true;
1833 2145
 			$dReverse=1;
1834 2146
 			$deletedMessages = $this->getSortedList($_folderName, 0, $dReverse, array('status'=>array('DELETED')),$five,false);
1835
-			if (self::$debug) error_log(__METHOD__.' ('.__LINE__.') Found DeletedMessages:'.array2string($eMailListContainsDeletedMessages));
1836
-			$eMailListContainsDeletedMessages[$this->profileID][$_folderName] =$deletedMessages['count'];
1837
-			Cache::setCache(Cache::INSTANCE,'email','eMailListContainsDeletedMessages'.trim($GLOBALS['egw_info']['user']['account_id']),$eMailListContainsDeletedMessages, 60*60*1);
1838
-			if (self::$debugTimes) self::logRunTimes($starttime,null,'setting eMailListContainsDeletedMessages for Profile:'.$this->profileID.' Folder:'.$_folderName.' to '.$eMailListContainsDeletedMessages[$this->profileID][$_folderName],__METHOD__.' ('.__LINE__.') ');			//error_log(__METHOD__.' ('.__LINE__.') '.' Profile:'.$this->profileID.' Folder:'.$_folderName.' -> EXISTS/SessStat:'.array2string($folderStatus['MESSAGES']).'/'.self::$folderStatusCache[$this->profileID][$_folderName]['messages'].' ListContDelMsg/SessDeleted:'.$eMailListContainsDeletedMessages[$this->profileID][$_folderName].'/'.self::$folderStatusCache[$this->profileID][$_folderName]['deleted']);
2147
+			if (self::$debug)
2148
+			{
2149
+				error_log(__METHOD__.' ('.__LINE__.') Found DeletedMessages:'.array2string($eMailListContainsDeletedMessages));
2150
+			}
2151
+			$eMailListContainsDeletedMessages[$this->profileID][$_folderName] =$deletedMessages['count'];
2152
+			Cache::setCache(Cache::INSTANCE,'email','eMailListContainsDeletedMessages'.trim($GLOBALS['egw_info']['user']['account_id']),$eMailListContainsDeletedMessages, 60*60*1);
2153
+			if (self::$debugTimes)
2154
+			{
2155
+				self::logRunTimes($starttime,null,'setting eMailListContainsDeletedMessages for Profile:'.$this->profileID.' Folder:'.$_folderName.' to '.$eMailListContainsDeletedMessages[$this->profileID][$_folderName],__METHOD__.' ('.__LINE__.') ');
2156
+			}
2157
+			//error_log(__METHOD__.' ('.__LINE__.') '.' Profile:'.$this->profileID.' Folder:'.$_folderName.' -> EXISTS/SessStat:'.array2string($folderStatus['MESSAGES']).'/'.self::$folderStatusCache[$this->profileID][$_folderName]['messages'].' ListContDelMsg/SessDeleted:'.$eMailListContainsDeletedMessages[$this->profileID][$_folderName].'/'.self::$folderStatusCache[$this->profileID][$_folderName]['deleted']);
1839 2158
 		}
1840 2159
 		$try2useCache = false;
1841 2160
 		//self::$supportsORinQuery[$this->profileID]=true;
1842 2161
 		if (is_null(self::$supportsORinQuery) || !isset(self::$supportsORinQuery[$this->profileID]))
1843 2162
 		{
1844 2163
 			self::$supportsORinQuery = Cache::getCache(Cache::INSTANCE,'email','supportsORinQuery'.trim($GLOBALS['egw_info']['user']['account_id']),null,array(),60*60*10);
1845
-			if (!isset(self::$supportsORinQuery[$this->profileID])) self::$supportsORinQuery[$this->profileID]=true;
2164
+			if (!isset(self::$supportsORinQuery[$this->profileID]))
2165
+			{
2166
+				self::$supportsORinQuery[$this->profileID]=true;
2167
+			}
1846 2168
 		}
1847 2169
 		//error_log(__METHOD__.' ('.__LINE__.') '.array2string($_filter).' SupportsOrInQuery:'.self::$supportsORinQuery[$this->profileID]);
1848 2170
 		$filter = $this->createIMAPFilter($_folderName, $_filter,self::$supportsORinQuery[$this->profileID]);
@@ -1853,15 +2175,26 @@  discard block
 block discarded – undo
1853 2175
 		}
1854 2176
 		//_debug_array($filter);
1855 2177
 		//error_log(__METHOD__.' ('.__LINE__.') '.array2string($filter).'#'.array2string($this->icServer->capability()));
1856
-		if($this->icServer->hasCapability('SORT')) {
2178
+		if($this->icServer->hasCapability('SORT'))
2179
+		{
1857 2180
 			// when using an orQuery and we sort by date. sort seems to fail on certain servers => ZIMBRA with Horde_Imap_Client
1858 2181
 			// thus we translate the search request from date to Horde_Imap_Client::SORT_SEQUENCE (which should be the same, if
1859 2182
 			// there is no messing with the dates)
1860 2183
 			//if (self::$supportsORinQuery[$this->profileID]&&$_sort=='date'&&$_filter['type']=='quick'&&!empty($_filter['string']))$_sort='INTERNALDATE';
1861
-			if (self::$debug) error_log(__METHOD__." Mailserver has SORT Capability, SortBy: ".array2string($_sort)." Reverse: $_reverse");
2184
+			if (self::$debug)
2185
+			{
2186
+				error_log(__METHOD__." Mailserver has SORT Capability, SortBy: ".array2string($_sort)." Reverse: $_reverse");
2187
+			}
1862 2188
 			$sortOrder = $this->_getSortString($_sort, $_reverse);
1863
-			if ($_reverse && in_array(Horde_Imap_Client::SORT_REVERSE,$sortOrder)) $_reverse=false; // as we reversed the result already
1864
-			if (self::$debug) error_log(__METHOD__." Mailserver runs SORT: SortBy:".array2string($_sort)."->".array2string($sortOrder)." Filter: ".array2string($filter));
2189
+			if ($_reverse && in_array(Horde_Imap_Client::SORT_REVERSE,$sortOrder))
2190
+			{
2191
+				$_reverse=false;
2192
+			}
2193
+			// as we reversed the result already
2194
+			if (self::$debug)
2195
+			{
2196
+				error_log(__METHOD__." Mailserver runs SORT: SortBy:".array2string($_sort)."->".array2string($sortOrder)." Filter: ".array2string($filter));
2197
+			}
1865 2198
 			try
1866 2199
 			{
1867 2200
 				$sortResult = $this->icServer->search($_folderName, $filter, array(
@@ -1873,7 +2206,10 @@  discard block
 block discarded – undo
1873 2206
 				//error_log(__METHOD__.'('.__LINE__.'):'.$e->getMessage());
1874 2207
 				$resultByUid = false;
1875 2208
 				$sortOrder = array(Horde_Imap_Client::SORT_SEQUENCE);
1876
-				if ($_reverse) array_unshift($sortOrder,Horde_Imap_Client::SORT_REVERSE);
2209
+				if ($_reverse)
2210
+				{
2211
+					array_unshift($sortOrder,Horde_Imap_Client::SORT_REVERSE);
2212
+				}
1877 2213
 				try
1878 2214
 				{
1879 2215
 					$sortResult = $this->icServer->search($_folderName, $filter, array(
@@ -1885,9 +2221,17 @@  discard block
 block discarded – undo
1885 2221
 					$sortResult = self::$folderStatusCache[$this->profileID][$_folderName]['sortResult'];
1886 2222
 				}
1887 2223
 			}
1888
-			if (self::$debug) error_log(__METHOD__.print_r($sortResult,true));
1889
-		} else {
1890
-			if (self::$debug) error_log(__METHOD__." Mailserver has NO SORT Capability");
2224
+			if (self::$debug)
2225
+			{
2226
+				error_log(__METHOD__.print_r($sortResult,true));
2227
+			}
2228
+		}
2229
+		else
2230
+		{
2231
+			if (self::$debug)
2232
+			{
2233
+				error_log(__METHOD__." Mailserver has NO SORT Capability");
2234
+			}
1891 2235
 			//$sortOrder = array(Horde_Imap_Client::SORT_SEQUENCE);
1892 2236
 			//if ($_reverse) array_unshift($sortOrder,Horde_Imap_Client::SORT_REVERSE);
1893 2237
 			try
@@ -1901,7 +2245,10 @@  discard block
 block discarded – undo
1901 2245
 				// possible error OR Query. But Horde gives no detailed Info :-(
1902 2246
 				self::$supportsORinQuery[$this->profileID]=false;
1903 2247
 				Cache::setCache(Cache::INSTANCE,'email','supportsORinQuery'.trim($GLOBALS['egw_info']['user']['account_id']),self::$supportsORinQuery,60*60*10);
1904
-				if (self::$debug) error_log(__METHOD__.__LINE__." Mailserver seems to have NO OR Capability for Search:".$sortResult->message);
2248
+				if (self::$debug)
2249
+				{
2250
+					error_log(__METHOD__.__LINE__." Mailserver seems to have NO OR Capability for Search:".$sortResult->message);
2251
+				}
1905 2252
 				$filter = $this->createIMAPFilter($_folderName, $_filter, self::$supportsORinQuery[$this->profileID]);
1906 2253
 				try
1907 2254
 				{
@@ -1912,11 +2259,15 @@  discard block
 block discarded – undo
1912 2259
 				{
1913 2260
 				}
1914 2261
 			}
1915
-			if(is_array($sortResult['match'])) {
2262
+			if(is_array($sortResult['match']))
2263
+			{
1916 2264
 					// not sure that this is going so succeed as $sortResult['match'] is a hordeObject
1917 2265
 					sort($sortResult['match'], SORT_NUMERIC);
1918 2266
 			}
1919
-			if (self::$debug) error_log(__METHOD__." using Filter:".print_r($filter,true)." ->".print_r($sortResult,true));
2267
+			if (self::$debug)
2268
+			{
2269
+				error_log(__METHOD__." using Filter:".print_r($filter,true)." ->".print_r($sortResult,true));
2270
+			}
1920 2271
 		}
1921 2272
 		if ($setSession)
1922 2273
 		{
@@ -1945,7 +2296,8 @@  discard block
 block discarded – undo
1945 2296
 		$_reverse=false;
1946 2297
 		if (is_numeric($_sort))
1947 2298
 		{
1948
-			switch($_sort) {
2299
+			switch($_sort)
2300
+			{
1949 2301
 				case 2:
1950 2302
 					$retValue = array(Horde_Imap_Client::SORT_FROM);
1951 2303
 					break;
@@ -1967,7 +2319,8 @@  discard block
 block discarded – undo
1967 2319
 		}
1968 2320
 		else
1969 2321
 		{
1970
-			switch(strtoupper($_sort)) {
2322
+			switch(strtoupper($_sort))
2323
+			{
1971 2324
 				case 'FROMADDRESS':
1972 2325
 					$retValue = array(Horde_Imap_Client::SORT_FROM);
1973 2326
 					break;
@@ -1993,7 +2346,10 @@  discard block
 block discarded – undo
1993 2346
 					break;
1994 2347
 			}
1995 2348
 		}
1996
-		if ($_reverse) array_unshift($retValue,Horde_Imap_Client::SORT_REVERSE);
2349
+		if ($_reverse)
2350
+		{
2351
+			array_unshift($retValue,Horde_Imap_Client::SORT_REVERSE);
2352
+		}
1997 2353
 		//error_log(__METHOD__.' ('.__LINE__.') '.' '.($_reverse?'REVERSE ':'').$_sort.'->'.$retValue);
1998 2354
 		return $retValue;
1999 2355
 	}
@@ -2012,7 +2368,10 @@  discard block
 block discarded – undo
2012 2368
 		$imapFilter->charset('UTF-8');
2013 2369
 
2014 2370
 		//_debug_array($_criterias);
2015
-		if (self::$debug) error_log(__METHOD__.' ('.__LINE__.') '.' Criterias:'.(!is_array($_criterias)?" none -> returning":array2string($_criterias)));
2371
+		if (self::$debug)
2372
+		{
2373
+			error_log(__METHOD__.' ('.__LINE__.') '.' Criterias:'.(!is_array($_criterias)?" none -> returning":array2string($_criterias)));
2374
+		}
2016 2375
 		if((!is_array($_criterias) || $_criterias['status']=='any') &&
2017 2376
 			(!isset($_criterias['string']) || empty($_criterias['string'])) &&
2018 2377
 			(!isset($_criterias['range'])|| empty($_criterias['range']) ||
@@ -2027,11 +2386,13 @@  discard block
 block discarded – undo
2027 2386
 		// statusQuery MUST be placed first, as search for subject/mailbody and such is
2028 2387
 		// depending on charset. flagSearch is not BUT messes the charset if called afterwards
2029 2388
 		$statusQueryValid = false;
2030
-		foreach((array)$_criterias['status'] as $k => $criteria) {
2389
+		foreach((array)$_criterias['status'] as $k => $criteria)
2390
+		{
2031 2391
 			$imapStatusFilter = new Horde_Imap_Client_Search_Query();
2032 2392
 			$imapStatusFilter->charset('UTF-8');
2033 2393
 			$criteria = strtoupper($criteria);
2034
-			switch ($criteria) {
2394
+			switch ($criteria)
2395
+			{
2035 2396
 				case 'ANSWERED':
2036 2397
 				case 'DELETED':
2037 2398
 				case 'FLAGGED':
@@ -2114,9 +2475,11 @@  discard block
 block discarded – undo
2114 2475
 		$imapSearchFilter = new Horde_Imap_Client_Search_Query();
2115 2476
 		$imapSearchFilter->charset('UTF-8');
2116 2477
 
2117
-		if(!empty($_criterias['string'])) {
2478
+		if(!empty($_criterias['string']))
2479
+		{
2118 2480
 			$criteria = strtoupper($_criterias['type']);
2119
-			switch ($criteria) {
2481
+			switch ($criteria)
2482
+			{
2120 2483
 				case 'BYDATE':
2121 2484
 				case 'QUICK':
2122 2485
 				case 'QUICKWITHCC':
@@ -2124,9 +2487,12 @@  discard block
 block discarded – undo
2124 2487
 					//$imapSearchFilter->charset('UTF-8');
2125 2488
 					$imapFilter2 = new Horde_Imap_Client_Search_Query();
2126 2489
 					$imapFilter2->charset('UTF-8');
2127
-					if($this->isSentFolder($_folder)) {
2490
+					if($this->isSentFolder($_folder))
2491
+					{
2128 2492
 						$imapFilter2->headerText('TO', $_criterias['string'], $not=false);
2129
-					} else {
2493
+					}
2494
+					else
2495
+					{
2130 2496
 						$imapFilter2->headerText('FROM', $_criterias['string'], $not=false);
2131 2497
 					}
2132 2498
 					if ($_supportsOrInQuery)
@@ -2157,7 +2523,10 @@  discard block
 block discarded – undo
2157 2523
 											'GB'=>1024*1000*1000,'G'=>1024*1000*1000,
2158 2524
 											'TB'=>1024*1000*1000*1000,'T'=>1024*1000*1000*1000);
2159 2525
 						$numberinBytes=(float)$_criterias['string'];
2160
-						if (isset($multipleBy[$unit])) $numberinBytes=(float)$_criterias['string']*$multipleBy[$unit];
2526
+						if (isset($multipleBy[$unit]))
2527
+						{
2528
+							$numberinBytes=(float)$_criterias['string']*$multipleBy[$unit];
2529
+						}
2161 2530
 						//error_log(__METHOD__.__LINE__.'#'.$_criterias['string'].'->'.(float)$_criterias['string'].'#'.$unit.' ='.$numberinBytes);
2162 2531
 						$_criterias['string']=$numberinBytes;
2163 2532
 					}
@@ -2194,8 +2563,14 @@  discard block
 block discarded – undo
2194 2563
 					break;
2195 2564
 			}
2196 2565
 		}
2197
-		if ($statusQueryValid && !$queryValid) $queryValid=true;
2198
-		if ($queryValid) $imapFilter->andSearch($imapSearchFilter);
2566
+		if ($statusQueryValid && !$queryValid)
2567
+		{
2568
+			$queryValid=true;
2569
+		}
2570
+		if ($queryValid)
2571
+		{
2572
+			$imapFilter->andSearch($imapSearchFilter);
2573
+		}
2199 2574
 
2200 2575
 		if (isset($_criterias['range']) && !empty($_criterias['range']))
2201 2576
 		{
@@ -2210,7 +2585,8 @@  discard block
 block discarded – undo
2210 2585
 				unset($_criterias['before']);
2211 2586
 				$criteria=$_criterias['range']='ON';
2212 2587
 			}
2213
-			switch ($criteria) {
2588
+			switch ($criteria)
2589
+			{
2214 2590
 				case 'BETWEEN':
2215 2591
 					//try to be smart about missing
2216 2592
 					//enddate
@@ -2246,8 +2622,14 @@  discard block
 block discarded – undo
2246 2622
 					$rangeValid = true;
2247 2623
 					break;
2248 2624
 			}
2249
-			if ($rangeValid && !$queryValid) $queryValid=true;
2250
-			if ($rangeValid) $imapFilter->andSearch($imapRangeFilter);
2625
+			if ($rangeValid && !$queryValid)
2626
+			{
2627
+				$queryValid=true;
2628
+			}
2629
+			if ($rangeValid)
2630
+			{
2631
+				$imapFilter->andSearch($imapRangeFilter);
2632
+			}
2251 2633
 		}
2252 2634
 		if (self::$debug)
2253 2635
 		{
@@ -2255,10 +2637,13 @@  discard block
 block discarded – undo
2255 2637
 			$query_str = $imapFilter->build();
2256 2638
 			//error_log(__METHOD__.' ('.__LINE__.') '.' '.$query_str['query'].' created by Criterias:'.(!is_array($_criterias)?" none -> returning":array2string($_criterias)));
2257 2639
 		}
2258
-		if($queryValid==false) {
2640
+		if($queryValid==false)
2641
+		{
2259 2642
 			$imapFilter->flag('DELETED', $set=false);
2260 2643
 			return $imapFilter;
2261
-		} else {
2644
+		}
2645
+		else
2646
+		{
2262 2647
 			return $imapFilter;
2263 2648
 		}
2264 2649
 	}
@@ -2315,7 +2700,10 @@  discard block
 block discarded – undo
2315 2700
 					}
2316 2701
 					$stringA[] = imap_rfc822_write_address($_rfcAddr->mailbox,Horde_Idna::decode($_rfcAddr->host),$_rfcAddr->personal);
2317 2702
 				}
2318
-				if (!empty($stringA)) $_string = implode(',',$stringA);
2703
+				if (!empty($stringA))
2704
+				{
2705
+					$_string = implode(',',$stringA);
2706
+				}
2319 2707
 			}
2320 2708
 			if ($_tryIDNConversion==='FORCE')
2321 2709
 			{
@@ -2340,7 +2728,10 @@  discard block
 block discarded – undo
2340 2728
 		{
2341 2729
 			return 'No Subject';
2342 2730
 		}
2343
-		if ($decode) $_string = self::decode_header($_string);
2731
+		if ($decode)
2732
+		{
2733
+			$_string = self::decode_header($_string);
2734
+		}
2344 2735
 		// make sure its utf-8
2345 2736
 		$test = @json_encode($_string);
2346 2737
 		if (($test=="null" || $test === false || is_null($test)) && strlen($_string)>0)
@@ -2378,7 +2769,8 @@  discard block
 block discarded – undo
2378 2769
 	 * @param string _parent the parent foldername
2379 2770
 	 * @return ISO-8859-1 / UTF7-IMAP encoded string
2380 2771
 	 */
2381
-	function _encodeFolderName($_folderName) {
2772
+	function _encodeFolderName($_folderName)
2773
+	{
2382 2774
 		return Translation::convert($_folderName, self::$displayCharset, 'ISO-8859-1');
2383 2775
 		#return Translation::convert($_folderName, self::$displayCharset, 'UTF7-IMAP');
2384 2776
 	}
@@ -2394,21 +2786,36 @@  discard block
 block discarded – undo
2394 2786
 	 */
2395 2787
 	function createFolder($_parent, $_folderName, &$_error)
2396 2788
 	{
2397
-		if (self::$debug) error_log(__METHOD__.' ('.__LINE__.') '."->"."$_parent, $_folderName called from:".function_backtrace());
2789
+		if (self::$debug)
2790
+		{
2791
+			error_log(__METHOD__.' ('.__LINE__.') '."->"."$_parent, $_folderName called from:".function_backtrace());
2792
+		}
2398 2793
 		$parent		= $_parent;//$this->_encodeFolderName($_parent);
2399 2794
 		$folderName	= $_folderName;//$this->_encodeFolderName($_folderName);
2400 2795
 
2401
-		if(empty($parent)) {
2796
+		if(empty($parent))
2797
+		{
2402 2798
 			$newFolderName = $folderName;
2403
-		} else {
2799
+		}
2800
+		else
2801
+		{
2404 2802
 			$HierarchyDelimiter = $this->getHierarchyDelimiter();
2405 2803
 			$newFolderName = $parent . $HierarchyDelimiter . $folderName;
2406 2804
 		}
2407
-		if (empty($newFolderName)) return false;
2408
-		if (self::$debug) error_log(__METHOD__.' ('.__LINE__.') '.'->'.$newFolderName);
2805
+		if (empty($newFolderName))
2806
+		{
2807
+			return false;
2808
+		}
2809
+		if (self::$debug)
2810
+		{
2811
+			error_log(__METHOD__.' ('.__LINE__.') '.'->'.$newFolderName);
2812
+		}
2409 2813
 		if ($this->folderExists($newFolderName,true))
2410 2814
 		{
2411
-			if (self::$debug) error_log(__METHOD__.' ('.__LINE__.') '." Folder $newFolderName already exists.");
2815
+			if (self::$debug)
2816
+			{
2817
+				error_log(__METHOD__.' ('.__LINE__.') '." Folder $newFolderName already exists.");
2818
+			}
2412 2819
 			return $newFolderName;
2413 2820
 		}
2414 2821
 		try
@@ -2456,13 +2863,19 @@  discard block
 block discarded – undo
2456 2863
 		$parent		= $_parent;//$this->_encodeFolderName($_parent);
2457 2864
 		$folderName	= $_folderName;//$this->_encodeFolderName($_folderName);
2458 2865
 
2459
-		if(empty($parent)) {
2866
+		if(empty($parent))
2867
+		{
2460 2868
 			$newFolderName = $folderName;
2461
-		} else {
2869
+		}
2870
+		else
2871
+		{
2462 2872
 			$HierarchyDelimiter = $this->getHierarchyDelimiter();
2463 2873
 			$newFolderName = $parent . $HierarchyDelimiter . $folderName;
2464 2874
 		}
2465
-		if (self::$debug) error_log("create folder: $newFolderName");
2875
+		if (self::$debug)
2876
+		{
2877
+			error_log("create folder: $newFolderName");
2878
+		}
2466 2879
 		try
2467 2880
 		{
2468 2881
 			$this->icServer->renameMailbox($oldFolderName, $newFolderName);
@@ -2536,8 +2949,14 @@  discard block
 block discarded – undo
2536 2949
 	 */
2537 2950
 	function getFolderObjects($_subscribedOnly=false, $_getCounters=false, $_alwaysGetDefaultFolders=false,$_useCacheIfPossible=true)
2538 2951
 	{
2539
-		if (self::$debug) error_log(__METHOD__.' ('.__LINE__.') '.' ServerID:'.$this->icServer->ImapServerId.", subscribedOnly:$_subscribedOnly, getCounters:$_getCounters, alwaysGetDefaultFolders:$_alwaysGetDefaultFolders, _useCacheIfPossible:$_useCacheIfPossible");
2540
-		if (self::$debugTimes) $starttime = microtime (true);
2952
+		if (self::$debug)
2953
+		{
2954
+			error_log(__METHOD__.' ('.__LINE__.') '.' ServerID:'.$this->icServer->ImapServerId.", subscribedOnly:$_subscribedOnly, getCounters:$_getCounters, alwaysGetDefaultFolders:$_alwaysGetDefaultFolders, _useCacheIfPossible:$_useCacheIfPossible");
2955
+		}
2956
+		if (self::$debugTimes)
2957
+		{
2958
+			$starttime = microtime (true);
2959
+		}
2541 2960
 		static $folders2return;
2542 2961
 		//$_subscribedOnly=false;
2543 2962
 		// always use static on single request if info is available;
@@ -2545,23 +2964,35 @@  discard block
 block discarded – undo
2545 2964
 		// set $_useCacheIfPossible to false !
2546 2965
 		if ($_useCacheIfPossible && isset($folders2return[$this->icServer->ImapServerId]) && !empty($folders2return[$this->icServer->ImapServerId]))
2547 2966
 		{
2548
-			if (self::$debugTimes) self::logRunTimes($starttime,null,'using static',__METHOD__.' ('.__LINE__.') ');
2967
+			if (self::$debugTimes)
2968
+			{
2969
+				self::logRunTimes($starttime,null,'using static',__METHOD__.' ('.__LINE__.') ');
2970
+			}
2549 2971
 			return $folders2return[$this->icServer->ImapServerId];
2550 2972
 		}
2551 2973
 
2552 2974
 		if ($_subscribedOnly && $_getCounters===false)
2553 2975
 		{
2554
-			if (is_null($folders2return)) $folders2return = Cache::getCache(Cache::INSTANCE,'email','folderObjects'.trim($GLOBALS['egw_info']['user']['account_id']),null,array(),60*60*1);
2976
+			if (is_null($folders2return))
2977
+			{
2978
+				$folders2return = Cache::getCache(Cache::INSTANCE,'email','folderObjects'.trim($GLOBALS['egw_info']['user']['account_id']),null,array(),60*60*1);
2979
+			}
2555 2980
 			if ($_useCacheIfPossible && isset($folders2return[$this->icServer->ImapServerId]) && !empty($folders2return[$this->icServer->ImapServerId]))
2556 2981
 			{
2557 2982
 				//error_log(__METHOD__.' ('.__LINE__.') '.' using Cached folderObjects'.array2string($folders2return[$this->icServer->ImapServerId]));
2558
-				if (self::$debugTimes) self::logRunTimes($starttime,null,'from Cache',__METHOD__.' ('.__LINE__.') ');
2983
+				if (self::$debugTimes)
2984
+				{
2985
+					self::logRunTimes($starttime,null,'from Cache',__METHOD__.' ('.__LINE__.') ');
2986
+				}
2559 2987
 				return $folders2return[$this->icServer->ImapServerId];
2560 2988
 			}
2561 2989
 		}
2562 2990
 		// use $folderBasicInfo for holding attributes and other basic folderinfo $folderBasicInfo[$this->icServer->ImapServerId]
2563 2991
 		static $folderBasicInfo;
2564
-		if (is_null($folderBasicInfo)||!isset($folderBasicInfo[$this->icServer->ImapServerId])) $folderBasicInfo = Cache::getCache(Cache::INSTANCE,'email','folderBasicInfo'.trim($GLOBALS['egw_info']['user']['account_id']),null,array(),60*60*1);
2992
+		if (is_null($folderBasicInfo)||!isset($folderBasicInfo[$this->icServer->ImapServerId]))
2993
+		{
2994
+			$folderBasicInfo = Cache::getCache(Cache::INSTANCE,'email','folderBasicInfo'.trim($GLOBALS['egw_info']['user']['account_id']),null,array(),60*60*1);
2995
+		}
2565 2996
 		//error_log(__METHOD__.' ('.__LINE__.') '.array2string(array_keys($folderBasicInfo[$this->icServer->ImapServerId])));
2566 2997
 
2567 2998
 		$delimiter = $this->getHierarchyDelimiter();
@@ -2574,7 +3005,8 @@  discard block
 block discarded – undo
2574 3005
 		$inboxData->shortFolderName	= 'INBOX';
2575 3006
 		$inboxData->shortDisplayName	= lang('INBOX');
2576 3007
 		$inboxData->subscribed = true;
2577
-		if($_getCounters == true) {
3008
+		if($_getCounters == true)
3009
+		{
2578 3010
 			$inboxData->counter = $this->getMailBoxCounters('INBOX');
2579 3011
 		}
2580 3012
 		// force unsubscribed by preference showAllFoldersInFolderPane
@@ -2593,12 +3025,14 @@  discard block
 block discarded – undo
2593 3025
 		//error_log(__METHOD__.__LINE__.array2string($nameSpace));
2594 3026
 		if (is_array($nameSpace))
2595 3027
 		{
2596
-			foreach($nameSpace as $k => $singleNameSpace) {
3028
+			foreach($nameSpace as $k => $singleNameSpace)
3029
+			{
2597 3030
 				$type = $singleNameSpace['type'];
2598 3031
 				// the following line (assumption that for the same namespace the delimiter should be equal) may be wrong
2599 3032
 				$foldersNameSpace[$type]['delimiter']  = $singleNameSpace['delimiter'];
2600 3033
 
2601
-				if(is_array($singleNameSpace)&&$fetchedAllInOneGo==false) {
3034
+				if(is_array($singleNameSpace)&&$fetchedAllInOneGo==false)
3035
+				{
2602 3036
 					// fetch and sort the subscribed folders
2603 3037
 					// we alway fetch the subscribed, as this provides the only way to tell
2604 3038
 					// if a folder is subscribed or not
@@ -2649,8 +3083,12 @@  discard block
 block discarded – undo
2649 3083
 							}
2650 3084
 						}
2651 3085
 						//error_log(__METHOD__.' ('.__LINE__.') '.' '.$type.'->'.array2string($foldersNameSpace[$type]['subscribed']));
2652
-						if (!is_array($foldersNameSpace[$type]['all'])) $foldersNameSpace[$type]['all'] = array();
2653
-						if ($_subscribedOnly == true && !empty($foldersNameSpace[$type]['subscribed'])) {
3086
+						if (!is_array($foldersNameSpace[$type]['all']))
3087
+						{
3088
+							$foldersNameSpace[$type]['all'] = array();
3089
+						}
3090
+						if ($_subscribedOnly == true && !empty($foldersNameSpace[$type]['subscribed']))
3091
+						{
2654 3092
 							continue;
2655 3093
 						}
2656 3094
 
@@ -2680,7 +3118,8 @@  discard block
 block discarded – undo
2680 3118
 					}
2681 3119
 
2682 3120
 					//error_log(__METHOD__.' ('.__LINE__.') '.' '.$type.'->'.array2string($allMailboxesExt));
2683
-					foreach ($allMailboxesExt as $mbx) {
3121
+					foreach ($allMailboxesExt as $mbx)
3122
+					{
2684 3123
 						if (!isset($folderBasicInfo[$this->icServer->ImapServerId][$mbx['MAILBOX']]))
2685 3124
 						{
2686 3125
 							$folderBasicInfo[$this->icServer->ImapServerId][$mbx['MAILBOX']]=array(
@@ -2703,20 +3142,33 @@  discard block
 block discarded – undo
2703 3142
 						if (isset($allMailBoxesExtSorted[$mbx['MAILBOX']])||
2704 3143
 							isset($allMailBoxesExtSorted[$mbx['MAILBOX'].$foldersNameSpace[$type]['delimiter']])||
2705 3144
 							(substr($mbx['MAILBOX'],-1)==$foldersNameSpace[$type]['delimiter'] && isset($allMailBoxesExtSorted[substr($mbx['MAILBOX'],0,-1)]))
2706
-						) continue;
3145
+						)
3146
+						{
3147
+							continue;
3148
+						}
2707 3149
 
2708 3150
 						//echo '#'.$mbx['MAILBOX'].':'.array2string($mbx)."#<br>";
2709 3151
 						$allMailBoxesExtSorted[$mbx['MAILBOX']] = $mbx;
2710 3152
 					}
2711
-					if (is_array($allMailBoxesExtSorted)) ksort($allMailBoxesExtSorted);
3153
+					if (is_array($allMailBoxesExtSorted))
3154
+					{
3155
+						ksort($allMailBoxesExtSorted);
3156
+					}
2712 3157
 					//_debug_array(array_keys($allMailBoxesExtSorted));
2713 3158
 					$allMailboxes = array();
2714
-					foreach ((array)$allMailBoxesExtSorted as $mbx) {
2715
-						if (!in_array($mbx['MAILBOX'],$allMailboxes)) $allMailboxes[] = $mbx['MAILBOX'];
3159
+					foreach ((array)$allMailBoxesExtSorted as $mbx)
3160
+					{
3161
+						if (!in_array($mbx['MAILBOX'],$allMailboxes))
3162
+						{
3163
+							$allMailboxes[] = $mbx['MAILBOX'];
3164
+						}
2716 3165
 						//echo "Result:";_debug_array($allMailboxes);
2717 3166
 					}
2718 3167
 					$foldersNameSpace[$type]['all'] = $allMailboxes;
2719
-					if (is_array($foldersNameSpace[$type]['all'])) sort($foldersNameSpace[$type]['all']);
3168
+					if (is_array($foldersNameSpace[$type]['all']))
3169
+					{
3170
+						sort($foldersNameSpace[$type]['all']);
3171
+					}
2720 3172
 				}
2721 3173
 			}
2722 3174
 		}
@@ -2725,24 +3177,50 @@  discard block
 block discarded – undo
2725 3177
 		//echo "<br>FolderNameSpace To Process:";_debug_array($foldersNameSpace);
2726 3178
 		$autoFolderObjects = $folders = array();
2727 3179
 		$autofolder_exists = array();
2728
-		foreach( array('personal', 'others', 'shared') as $type) {
2729
-			if(isset($foldersNameSpace[$type])) {
2730
-				if($_subscribedOnly) {
2731
-					if( !empty($foldersNameSpace[$type]['subscribed']) ) $listOfFolders = $foldersNameSpace[$type]['subscribed'];
2732
-				} else {
2733
-					if( !empty($foldersNameSpace[$type]['all'])) $listOfFolders = $foldersNameSpace[$type]['all'];
2734
-				}
2735
-				foreach((array)$listOfFolders as $folderName) {
3180
+		foreach( array('personal', 'others', 'shared') as $type)
3181
+		{
3182
+			if(isset($foldersNameSpace[$type]))
3183
+			{
3184
+				if($_subscribedOnly)
3185
+				{
3186
+					if( !empty($foldersNameSpace[$type]['subscribed']) )
3187
+					{
3188
+						$listOfFolders = $foldersNameSpace[$type]['subscribed'];
3189
+					}
3190
+				}
3191
+				else
3192
+				{
3193
+					if( !empty($foldersNameSpace[$type]['all']))
3194
+					{
3195
+						$listOfFolders = $foldersNameSpace[$type]['all'];
3196
+					}
3197
+				}
3198
+				foreach((array)$listOfFolders as $folderName)
3199
+				{
2736 3200
 					//echo "<br>FolderToCheck:$folderName<br>";
2737 3201
 					//error_log(__METHOD__.__LINE__.'#Delimiter:'.$delimiter.':#'.$folderName);
2738
-					if ($_subscribedOnly && empty($foldersNameSpace[$type]['all'])) continue;//when subscribedonly, we fetch all folders in one go.
2739
-					if($_subscribedOnly && !(in_array($folderName, $foldersNameSpace[$type]['all'])||in_array($folderName.$foldersNameSpace[$type]['delimiter'], $foldersNameSpace[$type]['all']))) {
3202
+					if ($_subscribedOnly && empty($foldersNameSpace[$type]['all']))
3203
+					{
3204
+						continue;
3205
+					}
3206
+					//when subscribedonly, we fetch all folders in one go.
3207
+					if($_subscribedOnly && !(in_array($folderName, $foldersNameSpace[$type]['all'])||in_array($folderName.$foldersNameSpace[$type]['delimiter'], $foldersNameSpace[$type]['all'])))
3208
+					{
2740 3209
 						#echo "$folderName failed to be here <br>";
2741 3210
 						continue;
2742 3211
 					}
2743
-					if (isset($folders[$folderName])) continue;
2744
-					if (isset($autoFolderObjects[$folderName])) continue;
2745
-					if (empty($delimiter)||$delimiter != $foldersNameSpace[$type]['delimiter']) $delimiter = $foldersNameSpace[$type]['delimiter'];
3212
+					if (isset($folders[$folderName]))
3213
+					{
3214
+						continue;
3215
+					}
3216
+					if (isset($autoFolderObjects[$folderName]))
3217
+					{
3218
+						continue;
3219
+					}
3220
+					if (empty($delimiter)||$delimiter != $foldersNameSpace[$type]['delimiter'])
3221
+					{
3222
+						$delimiter = $foldersNameSpace[$type]['delimiter'];
3223
+					}
2746 3224
 					$folderParts = explode($delimiter, $folderName);
2747 3225
 					$shortName = array_pop($folderParts);
2748 3226
 
@@ -2750,17 +3228,20 @@  discard block
 block discarded – undo
2750 3228
 					$folderObject->delimiter	= $delimiter;
2751 3229
 					$folderObject->folderName	= $folderName;
2752 3230
 					$folderObject->shortFolderName	= $shortName;
2753
-					if(!$_subscribedOnly) {
3231
+					if(!$_subscribedOnly)
3232
+					{
2754 3233
 						#echo $folderName."->".$type."<br>";
2755 3234
 						#_debug_array($foldersNameSpace[$type]['subscribed']);
2756 3235
 						$folderObject->subscribed = in_array($folderName, (array)$foldersNameSpace[$type]['subscribed']);
2757 3236
 					}
2758 3237
 
2759
-					if($_getCounters == true) {
3238
+					if($_getCounters == true)
3239
+					{
2760 3240
 						//error_log(__METHOD__.' ('.__LINE__.') '.' getCounter forFolder:'.$folderName);
2761 3241
 						$folderObject->counter = $this->getMailBoxCounters($folderName);
2762 3242
 					}
2763
-					if(strtoupper($folderName) == 'INBOX') {
3243
+					if(strtoupper($folderName) == 'INBOX')
3244
+					{
2764 3245
 						$folderName = 'INBOX';
2765 3246
 						$folderObject->folderName	= 'INBOX';
2766 3247
 						$folderObject->shortFolderName	= 'INBOX';
@@ -2768,24 +3249,34 @@  discard block
 block discarded – undo
2768 3249
 						$folderObject->shortDisplayName = lang('INBOX');
2769 3250
 						$folderObject->subscribed	= true;
2770 3251
 					// translate the automatic Folders (Sent, Drafts, ...) like the INBOX
2771
-					} elseif (in_array($shortName,self::$autoFolders)) {
3252
+					}
3253
+					elseif (in_array($shortName,self::$autoFolders))
3254
+					{
2772 3255
 						$tmpfolderparts = explode($delimiter,$folderObject->folderName);
2773 3256
 						array_pop($tmpfolderparts);
2774 3257
 						$folderObject->displayName = implode($delimiter,$tmpfolderparts).$delimiter.lang($shortName);
2775 3258
 						$folderObject->shortDisplayName = lang($shortName);
2776 3259
 						unset($tmpfolderparts);
2777
-					} else {
3260
+					}
3261
+					else
3262
+					{
2778 3263
 						$folderObject->displayName = $folderObject->folderName;
2779 3264
 						$folderObject->shortDisplayName = $shortName;
2780 3265
 					}
2781 3266
 					//$folderName = $folderName;
2782
-					if (in_array($shortName,self::$autoFolders)&&self::searchValueInFolderObjects($shortName,$autoFolderObjects)===false) {
3267
+					if (in_array($shortName,self::$autoFolders)&&self::searchValueInFolderObjects($shortName,$autoFolderObjects)===false)
3268
+					{
2783 3269
 						$autoFolderObjects[$folderName] = $folderObject;
2784
-					} else {
3270
+					}
3271
+					else
3272
+					{
2785 3273
 						$folders[$folderName] = $folderObject;
2786 3274
 					}
2787 3275
 					//error_log(__METHOD__.' ('.__LINE__.') '.':'.$folderObject->folderName);
2788
-					if (!isset(self::$specialUseFolders)) $this->getSpecialUseFolders ();
3276
+					if (!isset(self::$specialUseFolders))
3277
+					{
3278
+						$this->getSpecialUseFolders ();
3279
+					}
2789 3280
 					if (isset(self::$specialUseFolders[$folderName]))
2790 3281
 					{
2791 3282
 						$autofolder_exists[$folderName] = self::$specialUseFolders[$folderName];
@@ -2793,7 +3284,8 @@  discard block
 block discarded – undo
2793 3284
 				}
2794 3285
 			}
2795 3286
 		}
2796
-		if (is_array($autoFolderObjects) && !empty($autoFolderObjects)) {
3287
+		if (is_array($autoFolderObjects) && !empty($autoFolderObjects))
3288
+		{
2797 3289
 			uasort($autoFolderObjects,array($this,"sortByAutoFolderPos"));
2798 3290
 		}
2799 3291
 		// check if some standard folders are missing and need to be created
@@ -2802,7 +3294,10 @@  discard block
 block discarded – undo
2802 3294
 			// if new folders have been created, re-read folders ignoring the cache
2803 3295
 			return $this->getFolderObjects($_subscribedOnly, $_getCounters, $_alwaysGetDefaultFolders, false);	// false = do NOT use cache
2804 3296
 		}
2805
-		if (is_array($folders)) uasort($folders,array($this,"sortByDisplayName"));
3297
+		if (is_array($folders))
3298
+		{
3299
+			uasort($folders,array($this,"sortByDisplayName"));
3300
+		}
2806 3301
 		//$folders2return = array_merge($autoFolderObjects,$folders);
2807 3302
 		//_debug_array($folders2return); #exit;
2808 3303
 		$folders2return[$this->icServer->ImapServerId] = array_merge((array)$inboxFolderObject,(array)$autoFolderObjects,(array)$folders);
@@ -2814,7 +3309,10 @@  discard block
 block discarded – undo
2814 3309
 			Cache::setCache(Cache::INSTANCE,'email','folderObjects'.trim($GLOBALS['egw_info']['user']['account_id']),$folders2return,$expiration=60*60*1);
2815 3310
 		}
2816 3311
 		Cache::setCache(Cache::INSTANCE,'email','folderBasicInfo'.trim($GLOBALS['egw_info']['user']['account_id']),$folderBasicInfo,$expiration=60*60*1);
2817
-		if (self::$debugTimes) self::logRunTimes($starttime,null,function_backtrace(),__METHOD__.' ('.__LINE__.') ');
3312
+		if (self::$debugTimes)
3313
+		{
3314
+			self::logRunTimes($starttime,null,function_backtrace(),__METHOD__.' ('.__LINE__.') ');
3315
+		}
2818 3316
 		return $folders2return[$this->icServer->ImapServerId];
2819 3317
 	}
2820 3318
 
@@ -2842,31 +3340,44 @@  discard block
 block discarded – undo
2842 3340
 
2843 3341
 		$folders = $nameSpace =  array();
2844 3342
 		$nameSpaceTmp = $this->_getNameSpaces();
2845
-		foreach($nameSpaceTmp as $k => $singleNameSpace) {
3343
+		foreach($nameSpaceTmp as $k => $singleNameSpace)
3344
+		{
2846 3345
 			$nameSpace[$singleNameSpace['type']]=$singleNameSpace;
2847 3346
 		}
2848 3347
 		unset($nameSpaceTmp);
2849 3348
 
2850 3349
 		//error_log(__METHOD__.__LINE__.array2string($nameSpace));
2851 3350
 		// Get special use folders
2852
-		if (!isset(self::$specialUseFolders)) $this->getSpecialUseFolders (); // Set self::$specialUseFolders
3351
+		if (!isset(self::$specialUseFolders))
3352
+		{
3353
+			$this->getSpecialUseFolders ();
3354
+		}
3355
+		// Set self::$specialUseFolders
2853 3356
 		// topLevelQueries generally ignore the $_search param. Except for Config::examineNamespace
2854
-		if ($_onlyTopLevel) // top level leaves
3357
+		if ($_onlyTopLevel)
3358
+		{
3359
+			// top level leaves
2855 3360
 		{
2856 3361
 			// Get top mailboxes of icServer
2857 3362
 			$topFolders = $this->icServer->getMailboxes("", 2, true);
3363
+		}
2858 3364
 			// Trigger examination of namespace to retrieve
2859 3365
 			// folders located in other and shared; needed only for some servers
2860
-			if (is_null(self::$mailConfig)) self::$mailConfig = Config::read('mail');
3366
+			if (is_null(self::$mailConfig))
3367
+			{
3368
+				self::$mailConfig = Config::read('mail');
3369
+			}
2861 3370
 			if (self::$mailConfig['examineNamespace'])
2862 3371
 			{
2863 3372
 				$prefixes=array();
2864 3373
 				if (is_array($nameSpace))
2865 3374
 				{
2866
-					foreach($nameSpace as $k => $singleNameSpace) {
3375
+					foreach($nameSpace as $k => $singleNameSpace)
3376
+					{
2867 3377
 						$type = $singleNameSpace['type'];
2868 3378
 
2869
-						if(is_array($singleNameSpace) && $singleNameSpace['prefix']){
3379
+						if(is_array($singleNameSpace) && $singleNameSpace['prefix'])
3380
+						{
2870 3381
 							$prefixes[$type] = $singleNameSpace['prefix'];
2871 3382
 							//regard extra care for nameSpacequeries when configured AND respect $_search
2872 3383
 							$result = $this->icServer->getMailboxes($singleNameSpace['prefix'], $_search==0?0:2, true);
@@ -2942,7 +3453,10 @@  discard block
 block discarded – undo
2942 3453
 							$nFolders [$path] = $folder;
2943 3454
 						}
2944 3455
 					}
2945
-					if (is_array($aFolders)) uasort ($aFolders, array($this,'sortByAutofolder'));
3456
+					if (is_array($aFolders))
3457
+					{
3458
+						uasort ($aFolders, array($this,'sortByAutofolder'));
3459
+					}
2946 3460
 					//ksort($aFolders);
2947 3461
 
2948 3462
 					// Sort none auto folders base on mailbox name
@@ -2952,12 +3466,17 @@  discard block
 block discarded – undo
2952 3466
 				}
2953 3467
 				else
2954 3468
 				{
2955
-					if (is_array($subFolders)) ksort($subFolders);
3469
+					if (is_array($subFolders))
3470
+					{
3471
+						ksort($subFolders);
3472
+					}
2956 3473
 				}
2957 3474
 				$folders = array_merge($folders,(array)$mainFolder, (array)$subFolders);
2958 3475
 			}
2959 3476
 		}
2960
-		elseif ($_nodePath) // single node
3477
+		elseif ($_nodePath)
3478
+		{
3479
+			// single node
2961 3480
 		{
2962 3481
 			switch ($_search)
2963 3482
 			{
@@ -2965,6 +3484,7 @@  discard block
 block discarded – undo
2965 3484
 				case 0:
2966 3485
 				case 2:
2967 3486
 					$path = $_nodePath.''.$delimiter;
3487
+		}
2968 3488
 					break;
2969 3489
 				// Node itself
2970 3490
 				// shouldn't contain next level delimiter
@@ -2983,11 +3503,14 @@  discard block
 block discarded – undo
2983 3503
 
2984 3504
 			uasort($folders,array($this,'sortByMailbox'));//ksort($folders);
2985 3505
 		}
2986
-		elseif(!$_nodePath) // all
3506
+		elseif(!$_nodePath)
3507
+		{
3508
+			// all
2987 3509
 		{
2988 3510
 			if ($_subscribedOnly)
2989 3511
 			{
2990 3512
 				$folders = $this->icServer->listSubscribedMailboxes('', 0, true);
3513
+		}
2991 3514
 			}
2992 3515
 			else
2993 3516
 			{
@@ -2999,7 +3522,10 @@  discard block
 block discarded – undo
2999 3522
 		{
3000 3523
 			// SORTING FOLDERS
3001 3524
 			//self::$debugTimes=true;
3002
-			if (self::$debugTimes) $starttime = microtime (true);
3525
+			if (self::$debugTimes)
3526
+			{
3527
+				$starttime = microtime (true);
3528
+			}
3003 3529
 			// Merge of all auto folders and specialusefolders
3004 3530
 			$autoFoldersTmp = array_unique((array_merge(self::$autoFolders, array_values(self::$specialUseFolders))));
3005 3531
 			uasort($folders,array($this,'sortByMailbox'));//ksort($folders);
@@ -3009,73 +3535,103 @@  discard block
 block discarded – undo
3009 3535
 			$isGoogleMail=false;
3010 3536
 			foreach($autoFoldersTmp as $afk=>$aF)
3011 3537
 			{
3012
-				if (!isset($mySpecialUseFolders[$aF]) && $aF) $mySpecialUseFolders[$aF]=$this->getFolderByType($aF,false);
3538
+				if (!isset($mySpecialUseFolders[$aF]) && $aF)
3539
+				{
3540
+					$mySpecialUseFolders[$aF]=$this->getFolderByType($aF,false);
3541
+				}
3013 3542
 				//error_log($afk.':'.$aF.'->'.$mySpecialUseFolders[$aF]);
3014 3543
 			}
3015 3544
 			//error_log(array2string($mySpecialUseFolders));
3016
-			foreach ($tmpFolders as $k => $f) {
3545
+			foreach ($tmpFolders as $k => $f)
3546
+			{
3017 3547
 				$sorted=false;
3018
-				if (strtoupper(substr($k,0,5))=='INBOX') {
3019
-					if (strtoupper($k)=='INBOX') {
3548
+				if (strtoupper(substr($k,0,5))=='INBOX')
3549
+				{
3550
+					if (strtoupper($k)=='INBOX')
3551
+					{
3020 3552
 						//error_log(__METHOD__.__LINE__.':'.strtoupper(substr($k,0,5)).':'.$k);
3021 3553
 						$inboxFolderObject[$k]=$f;
3022 3554
 						unset($folders[$k]);
3023 3555
 						$sorted=true;
3024
-					} else {
3556
+					}
3557
+					else
3558
+					{
3025 3559
 						$isAutoFolder=false;
3026 3560
 						foreach($autoFoldersTmp as $afk=>$aF)
3027 3561
 						{
3028 3562
 							//error_log(__METHOD__.__LINE__.$k.':'.$aF.'->'.$mySpecialUseFolders[$aF]);
3029 3563
 							if($aF && strlen($mySpecialUseFolders[$aF])&&/*strlen($k)>=strlen($mySpecialUseFolders[$aF])&&*/
3030 3564
 								($mySpecialUseFolders[$aF]==$k || substr($k,0,strlen($mySpecialUseFolders[$aF].$delimiter))==$mySpecialUseFolders[$aF].$delimiter || //k may be child of an autofolder
3031
-								stristr($mySpecialUseFolders[$aF],$k.$delimiter)!==false)) // k is parent of an autofolder
3565
+								stristr($mySpecialUseFolders[$aF],$k.$delimiter)!==false))
3566
+							{
3567
+								// k is parent of an autofolder
3032 3568
 							{
3033 3569
 								//error_log(__METHOD__.__LINE__.$k.'->'.$mySpecialUseFolders[$aF]);
3034 3570
 								$isAutoFolder=true;
3571
+							}
3035 3572
 								$autoFolderObjects[$k]=$f;
3036 3573
 								break;
3037 3574
 							}
3038 3575
 						}
3039
-						if ($isAutoFolder==false) $inboxSubFolderObjects[$k]=$f;
3576
+						if ($isAutoFolder==false)
3577
+						{
3578
+							$inboxSubFolderObjects[$k]=$f;
3579
+						}
3040 3580
 						unset($folders[$k]);
3041 3581
 						$sorted=true;
3042 3582
 					}
3043
-				} elseif (strtoupper(substr($k,0,13))=='[GOOGLE MAIL]') {
3583
+				}
3584
+				elseif (strtoupper(substr($k,0,13))=='[GOOGLE MAIL]')
3585
+				{
3044 3586
 					$isGoogleMail=true;
3045
-					if (strtoupper($k)=='[GOOGLE MAIL]') {
3587
+					if (strtoupper($k)=='[GOOGLE MAIL]')
3588
+					{
3046 3589
 						$googleMailFolderObject[$k]=$f;
3047 3590
 						unset($folders[$k]);
3048 3591
 						$sorted=true;
3049
-					} else {
3592
+					}
3593
+					else
3594
+					{
3050 3595
 						$isAutoFolder=false;
3051 3596
 						foreach($autoFoldersTmp as $afk=>$aF)
3052 3597
 						{
3053 3598
 							//error_log($k.':'.$aF.'->'.$mySpecialUseFolders[$aF]);
3054 3599
 							if($aF && strlen($mySpecialUseFolders[$aF])&&/*strlen($k)>=strlen($mySpecialUseFolders[$aF])&&*/
3055 3600
 								($mySpecialUseFolders[$aF]==$k || substr($k,0,strlen($mySpecialUseFolders[$aF].$delimiter))==$mySpecialUseFolders[$aF].$delimiter|| //k may be child of an autofolder
3056
-								stristr($mySpecialUseFolders[$aF],$k.$delimiter)!==false)) // k is parent of an autofolder
3601
+								stristr($mySpecialUseFolders[$aF],$k.$delimiter)!==false))
3602
+							{
3603
+								// k is parent of an autofolder
3057 3604
 							{
3058 3605
 								//error_log($k.'->'.$mySpecialUseFolders[$aF]);
3059 3606
 								$isAutoFolder=true;
3607
+							}
3060 3608
 								$googleAutoFolderObjects[$k]=$f;
3061 3609
 								break;
3062 3610
 							}
3063 3611
 						}
3064
-						if ($isAutoFolder==false) $googleSubFolderObjects[$k]=$f;
3612
+						if ($isAutoFolder==false)
3613
+						{
3614
+							$googleSubFolderObjects[$k]=$f;
3615
+						}
3065 3616
 						unset($folders[$k]);
3066 3617
 						$sorted=true;
3067 3618
 					}
3068
-				} else {
3619
+				}
3620
+				else
3621
+				{
3069 3622
 					$isAutoFolder=false;
3070 3623
 					foreach($autoFoldersTmp as $afk=>$aF)
3071 3624
 					{
3072 3625
 						//error_log($k.':'.$aF.'->'.$mySpecialUseFolders[$aF]);
3073 3626
 						if($aF && strlen($mySpecialUseFolders[$aF])&&/*strlen($k)>=strlen($mySpecialUseFolders[$aF])&&*/
3074 3627
 								($mySpecialUseFolders[$aF]==$k || substr($k,0,strlen($mySpecialUseFolders[$aF].$delimiter))==$mySpecialUseFolders[$aF].$delimiter|| //k may be child of an autofolder
3075
-								stristr($mySpecialUseFolders[$aF],$k.$delimiter)!==false)) // k is parent of an autofolder
3628
+								stristr($mySpecialUseFolders[$aF],$k.$delimiter)!==false))
3629
+						{
3630
+							// k is parent of an autofolder
3076 3631
 						{
3077 3632
 							//error_log($k.'->'.$mySpecialUseFolders[$aF]);
3078 3633
 							$isAutoFolder=true;
3634
+						}
3079 3635
 							$autoFolderObjects[$k]=$f;
3080 3636
 							unset($folders[$k]);
3081 3637
 							$sorted=true;
@@ -3091,7 +3647,8 @@  discard block
 block discarded – undo
3091 3647
 						if ($nameSpace[$type]['prefix_present']&&$nameSpace[$type]['prefix'])
3092 3648
 						{
3093 3649
 							if (substr($k,0,strlen($nameSpace[$type]['prefix']))==$nameSpace[$type]['prefix']||
3094
-								substr($k,0,strlen($nameSpace[$type]['prefix'])-strlen($nameSpace[$type]['delimiter']))==substr($nameSpace[$type]['prefix'],0,strlen($nameSpace[$type]['delimiter'])*-1)) {
3650
+								substr($k,0,strlen($nameSpace[$type]['prefix'])-strlen($nameSpace[$type]['delimiter']))==substr($nameSpace[$type]['prefix'],0,strlen($nameSpace[$type]['delimiter'])*-1))
3651
+							{
3095 3652
 								//error_log(__METHOD__.__LINE__.':'.substr($k,0,strlen($nameSpace[$type]['prefix'])).':'.$k);
3096 3653
 								$typeFolderObject[$type][$k]=$f;
3097 3654
 								unset($folders[$k]);
@@ -3118,9 +3675,12 @@  discard block
 block discarded – undo
3118 3675
 				}
3119 3676
 			}
3120 3677
 			//error_log(__METHOD__.__LINE__.array2string($autoFolderObjects));
3121
-			if (!$isGoogleMail) {
3678
+			if (!$isGoogleMail)
3679
+			{
3122 3680
 				$folders = array_merge($inboxFolderObject,$autoFolderObjects,(array)$inboxSubFolderObjects,(array)$folders,(array)$typeFolderObject['others'],(array)$typeFolderObject['shared']);
3123
-			} else {
3681
+			}
3682
+			else
3683
+			{
3124 3684
 				// avoid calling sortByAutoFolder as it is not regarding subfolders
3125 3685
 				$gAutoFolderObjectsTmp = $googleAutoFolderObjects;
3126 3686
 				unset($googleAutoFolderObjects);
@@ -3137,7 +3697,10 @@  discard block
 block discarded – undo
3137 3697
 				}
3138 3698
 				$folders = array_merge($inboxFolderObject,$autoFolderObjects,(array)$folders,(array)$googleMailFolderObject,$googleAutoFolderObjects,$googleSubFolderObjects,(array)$typeFolderObject['others'],(array)$typeFolderObject['shared']);
3139 3699
 			}
3140
-			if (self::$debugTimes) self::logRunTimes($starttime,null,function_backtrace(),__METHOD__.' ('.__LINE__.') Sorting:');
3700
+			if (self::$debugTimes)
3701
+			{
3702
+				self::logRunTimes($starttime,null,function_backtrace(),__METHOD__.' ('.__LINE__.') Sorting:');
3703
+			}
3141 3704
 			//self::$debugTimes=false;
3142 3705
 		}
3143 3706
 		// Get counter information and add them to each fetched folders array
@@ -3187,7 +3750,13 @@  discard block
 block discarded – undo
3187 3750
 		$rv = false;
3188 3751
 		foreach ($haystack as $k => $v)
3189 3752
 		{
3190
-			foreach($v as &$sv) {if (trim($sv)==trim($needle)) return $k;}
3753
+			foreach($v as &$sv)
3754
+			{
3755
+if (trim($sv)==trim($needle))
3756
+			{
3757
+				return $k;
3758
+			}
3759
+			}
3191 3760
 		}
3192 3761
 		return $rv;
3193 3762
 	}
@@ -3214,7 +3783,10 @@  discard block
 block discarded – undo
3214 3783
 	 */
3215 3784
 	static function pathToFolderData ($_path, $_hDelimiter)
3216 3785
 	{
3217
-		if (!strpos($_path, self::DELIMITER)) $_path = self::DELIMITER.$_path;
3786
+		if (!strpos($_path, self::DELIMITER))
3787
+		{
3788
+			$_path = self::DELIMITER.$_path;
3789
+		}
3218 3790
 		list(,$path) = explode(self::DELIMITER, $_path);
3219 3791
 		$path_chain = $parts = explode($_hDelimiter, $path);
3220 3792
 		$name = array_pop($parts);
@@ -3243,7 +3815,10 @@  discard block
 block discarded – undo
3243 3815
 		$b = self::pathToFolderData($_b['MAILBOX'], $_b['delimiter']);
3244 3816
 		$pos1 = array_search(trim($a['name']),self::$autoFolders);
3245 3817
 		$pos2 = array_search(trim($b['name']),self::$autoFolders);
3246
-		if ($pos1 == $pos2) return 0;
3818
+		if ($pos1 == $pos2)
3819
+		{
3820
+			return 0;
3821
+		}
3247 3822
 		return ($pos1 < $pos2) ? -1 : 1;
3248 3823
 	}
3249 3824
 
@@ -3274,7 +3849,10 @@  discard block
 block discarded – undo
3274 3849
 		// 0, 1 und -1
3275 3850
 		$pos1 = array_search(trim($a->shortFolderName),self::$autoFolders);
3276 3851
 		$pos2 = array_search(trim($b->shortFolderName),self::$autoFolders);
3277
-		if ($pos1 == $pos2) return 0;
3852
+		if ($pos1 == $pos2)
3853
+		{
3854
+			return 0;
3855
+		}
3278 3856
 		return ($pos1 < $pos2) ? -1 : 1;
3279 3857
 	}
3280 3858
 
@@ -3295,11 +3873,18 @@  discard block
 block discarded – undo
3295 3873
 		}
3296 3874
 		catch (\Exception $e)
3297 3875
 		{
3298
-			if (self::$debug) error_log(__METHOD__." returned FolderStatus for Folder $folderName:".$e->getMessage());
3876
+			if (self::$debug)
3877
+			{
3878
+				error_log(__METHOD__." returned FolderStatus for Folder $folderName:".$e->getMessage());
3879
+			}
3299 3880
 			return false;
3300 3881
 		}
3301
-		if(is_array($folderStatus)) {
3302
-			if ($_returnObject===false) return $folderStatus;
3882
+		if(is_array($folderStatus))
3883
+		{
3884
+			if ($_returnObject===false)
3885
+			{
3886
+				return $folderStatus;
3887
+			}
3303 3888
 			$status =  new \stdClass;
3304 3889
 			$status->messages   = $folderStatus['MESSAGES'];
3305 3890
 			$status->unseen     = $folderStatus['UNSEEN'];
@@ -3326,7 +3911,8 @@  discard block
 block discarded – undo
3326 3911
 	{
3327 3912
 		#echo __METHOD__." retrieve SubFolders for $_mailbox$delimiter <br>";
3328 3913
 		$maxreclevel=25;
3329
-		if ($reclevel > $maxreclevel) {
3914
+		if ($reclevel > $maxreclevel)
3915
+		{
3330 3916
 			error_log( __METHOD__." Recursion Level Exeeded ($reclevel) while looking up $_mailbox$delimiter ");
3331 3917
 			return array();
3332 3918
 		}
@@ -3340,7 +3926,8 @@  discard block
 block discarded – undo
3340 3926
 //error_log(__METHOD__.' ('.__LINE__.') '.' Delimiter:'.array2string($delimiter));
3341 3927
 //error_log(__METHOD__.' ('.__LINE__.') '.array2string($mbx));
3342 3928
 		// Example: Array([INBOX/GaGa] => Array([MAILBOX] => INBOX/GaGa[ATTRIBUTES] => Array([0] => \\unmarked)[delimiter] => /))
3343
-		if (is_array($mbx[$mbxkeys[0]]["ATTRIBUTES"]) && (in_array('\HasChildren',$mbx[$mbxkeys[0]]["ATTRIBUTES"]) || in_array('\Haschildren',$mbx[$mbxkeys[0]]["ATTRIBUTES"]) || in_array('\haschildren',$mbx[$mbxkeys[0]]["ATTRIBUTES"]))) {
3929
+		if (is_array($mbx[$mbxkeys[0]]["ATTRIBUTES"]) && (in_array('\HasChildren',$mbx[$mbxkeys[0]]["ATTRIBUTES"]) || in_array('\Haschildren',$mbx[$mbxkeys[0]]["ATTRIBUTES"]) || in_array('\haschildren',$mbx[$mbxkeys[0]]["ATTRIBUTES"])))
3930
+		{
3344 3931
 			// if there are children fetch them
3345 3932
 			//echo $mbx[$mbxkeys[0]]['MAILBOX']."<br>";
3346 3933
 
@@ -3348,7 +3935,8 @@  discard block
 block discarded – undo
3348 3935
 			//$buff = $this->icServer->getMailboxes($mbx[$mbxkeys[0]]['MAILBOX'],2,false);
3349 3936
 			//_debug_array($buff);
3350 3937
 			$allMailboxes = array();
3351
-			foreach ($buff as $mbxname) {
3938
+			foreach ($buff as $mbxname)
3939
+			{
3352 3940
 //error_log(__METHOD__.' ('.__LINE__.') '.array2string($mbxname));
3353 3941
 				$mbxname = preg_replace('~'.($delimiter == '.' ? "\\".$delimiter:$delimiter).'+~s',$delimiter,$mbxname['MAILBOX']);
3354 3942
 				#echo "About to recur in level $reclevel:".$mbxname."<br>";
@@ -3357,9 +3945,14 @@  discard block
 block discarded – undo
3357 3945
 					$allMailboxes = array_merge($allMailboxes, self::getMailBoxesRecursive($mbxname, $delimiter, $prefix, $reclevel));
3358 3946
 				}
3359 3947
 			}
3360
-			if (!(in_array('\NoSelect',$mbx[$mbxkeys[0]]["ATTRIBUTES"]) || in_array('\Noselect',$mbx[$mbxkeys[0]]["ATTRIBUTES"]) || in_array('\noselect',$mbx[$mbxkeys[0]]["ATTRIBUTES"]))) $allMailboxes[] = $mbx[$mbxkeys[0]]['MAILBOX'];
3948
+			if (!(in_array('\NoSelect',$mbx[$mbxkeys[0]]["ATTRIBUTES"]) || in_array('\Noselect',$mbx[$mbxkeys[0]]["ATTRIBUTES"]) || in_array('\noselect',$mbx[$mbxkeys[0]]["ATTRIBUTES"])))
3949
+			{
3950
+				$allMailboxes[] = $mbx[$mbxkeys[0]]['MAILBOX'];
3951
+			}
3361 3952
 			return $allMailboxes;
3362
-		} else {
3953
+		}
3954
+		else
3955
+		{
3363 3956
 			return array($_mailbox);
3364 3957
 		}
3365 3958
 	}
@@ -3383,14 +3976,21 @@  discard block
 block discarded – undo
3383 3976
 			'Outbox'   => array('profileKey'=>'acc_folder_outbox','autoFolderName'=>'Outbox'),
3384 3977
 			'Archive'   => array('profileKey'=>'acc_folder_archive','autoFolderName'=>'Archive'),
3385 3978
 		);
3386
-		if ($_type == 'Templates') $_type = 'Template';	// for some reason self::$autofolders uses 'Templates'!
3979
+		if ($_type == 'Templates')
3980
+		{
3981
+			$_type = 'Template';
3982
+		}
3983
+		// for some reason self::$autofolders uses 'Templates'!
3387 3984
 		$created = false;
3388 3985
 		if (!isset($types[$_type]))
3389 3986
 		{
3390 3987
 			error_log(__METHOD__.' ('.__LINE__.') '.' '.$_type.' not supported for '.__METHOD__);
3391 3988
 			return false;
3392 3989
 		}
3393
-		if (is_null(self::$specialUseFolders) || empty(self::$specialUseFolders)) self::$specialUseFolders = $this->getSpecialUseFolders();
3990
+		if (is_null(self::$specialUseFolders) || empty(self::$specialUseFolders))
3991
+		{
3992
+			self::$specialUseFolders = $this->getSpecialUseFolders();
3993
+		}
3394 3994
 
3395 3995
 		//highest precedence
3396 3996
 		try
@@ -3400,25 +4000,39 @@  discard block
 block discarded – undo
3400 4000
 		catch (\Exception $e)
3401 4001
 		{
3402 4002
 			// we know that outbox is not supported, but we use this here, as we autocreate expected SpecialUseFolders in this function
3403
-			if ($_type != 'Outbox') error_log(__METHOD__.' ('.__LINE__.') '.' Failed to retrieve Folder'.$_folderName." for ".array2string($types[$_type]).":".$e->getMessage());
4003
+			if ($_type != 'Outbox')
4004
+			{
4005
+				error_log(__METHOD__.' ('.__LINE__.') '.' Failed to retrieve Folder'.$_folderName." for ".array2string($types[$_type]).":".$e->getMessage());
4006
+			}
3404 4007
 			$_folderName = false;
3405 4008
 		}
3406 4009
 		// do not try to autocreate configured Archive-Folder. Return false if configured folder does not exist
3407
-		if ($_type == 'Archive') {
3408
-			if ($_folderName && $_checkexistance && strtolower($_folderName) !='none' && !$this->folderExists($_folderName,true)) {
4010
+		if ($_type == 'Archive')
4011
+		{
4012
+			if ($_folderName && $_checkexistance && strtolower($_folderName) !='none' && !$this->folderExists($_folderName,true))
4013
+			{
3409 4014
 				return false;
3410
-			} else {
4015
+			}
4016
+			else
4017
+			{
3411 4018
 				return $_folderName;
3412 4019
 			}
3413 4020
 
3414 4021
 		}
3415 4022
 		// does the folder exist??? (is configured/preset, but non-existent)
3416
-		if ($_folderName && $_checkexistance && strtolower($_folderName) !='none' && !$this->folderExists($_folderName,true)) {
4023
+		if ($_folderName && $_checkexistance && strtolower($_folderName) !='none' && !$this->folderExists($_folderName,true))
4024
+		{
3417 4025
 			try
3418 4026
 			{
3419 4027
 				$error = null;
3420
-				if (($_folderName = $this->createFolder('', $_folderName, $error))) $created = true;
3421
-				if ($error) error_log(__METHOD__.' ('.__LINE__.') '.' Failed to create Folder '.$_folderName." for $_type:".$error);
4028
+				if (($_folderName = $this->createFolder('', $_folderName, $error)))
4029
+				{
4030
+					$created = true;
4031
+				}
4032
+				if ($error)
4033
+				{
4034
+					error_log(__METHOD__.' ('.__LINE__.') '.' Failed to create Folder '.$_folderName." for $_type:".$error);
4035
+				}
3422 4036
 			}
3423 4037
 			catch(Exception $e)
3424 4038
 			{
@@ -3427,9 +4041,16 @@  discard block
 block discarded – undo
3427 4041
 			}
3428 4042
 		}
3429 4043
 		// not sure yet if false is the correct behavior on none
3430
-		if ($_folderName =='none') return 'none' ; //false;
4044
+		if ($_folderName =='none')
4045
+		{
4046
+			return 'none' ;
4047
+		}
4048
+		//false;
3431 4049
 		//no (valid) folder found yet; try specialUseFolders
3432
-		if (empty($_folderName) && is_array(self::$specialUseFolders) && ($f = array_search($_type,self::$specialUseFolders))) $_folderName = $f;
4050
+		if (empty($_folderName) && is_array(self::$specialUseFolders) && ($f = array_search($_type,self::$specialUseFolders)))
4051
+		{
4052
+			$_folderName = $f;
4053
+		}
3433 4054
 		//no specialUseFolder; try some Defaults
3434 4055
 		if (empty($_folderName) && isset($types[$_type]))
3435 4056
 		{
@@ -3455,7 +4076,10 @@  discard block
 block discarded – undo
3455 4076
 					$error = null;
3456 4077
 					$this->createFolder('', $prefix.$types[$_type]['autoFolderName'],$error);
3457 4078
 					$_folderName = $prefix.$types[$_type]['autoFolderName'];
3458
-					if ($error) error_log(__METHOD__.' ('.__LINE__.') '.' Failed to create Folder '.$_folderName." for $_type:".$error);
4079
+					if ($error)
4080
+					{
4081
+						error_log(__METHOD__.' ('.__LINE__.') '.' Failed to create Folder '.$_folderName." for $_type:".$error);
4082
+					}
3459 4083
 				}
3460 4084
 				catch(Exception $e)
3461 4085
 				{
@@ -3558,25 +4182,35 @@  discard block
 block discarded – undo
3558 4182
 	function isSentFolder($_folderName, $_checkexistance=TRUE, $_exactMatch=false)
3559 4183
 	{
3560 4184
 		$sentFolder = $this->getSentFolder($_checkexistance);
3561
-		if(empty($sentFolder)) {
4185
+		if(empty($sentFolder))
4186
+		{
3562 4187
 			return false;
3563 4188
 		}
3564 4189
 		// does the folder exist???
3565
-		if ($_checkexistance && !$this->folderExists($_folderName)) {
4190
+		if ($_checkexistance && !$this->folderExists($_folderName))
4191
+		{
3566 4192
 			return false;
3567 4193
 		}
3568 4194
 
3569 4195
 		if ($_exactMatch)
3570 4196
 		{
3571
-			if(false !== stripos($_folderName, $sentFolder)&& strlen($_folderName)==strlen($sentFolder)) {
4197
+			if(false !== stripos($_folderName, $sentFolder)&& strlen($_folderName)==strlen($sentFolder))
4198
+			{
3572 4199
 				return true;
3573
-			} else {
4200
+			}
4201
+			else
4202
+			{
3574 4203
 				return false;
3575 4204
 			}
3576
-		} else {
3577
-			if(false !== stripos($_folderName, $sentFolder)) {
4205
+		}
4206
+		else
4207
+		{
4208
+			if(false !== stripos($_folderName, $sentFolder))
4209
+			{
3578 4210
 				return true;
3579
-			} else {
4211
+			}
4212
+			else
4213
+			{
3580 4214
 				return false;
3581 4215
 			}
3582 4216
 		}
@@ -3591,23 +4225,33 @@  discard block
 block discarded – undo
3591 4225
 	 */
3592 4226
 	function isOutbox($_folderName, $_checkexistance=TRUE, $_exactMatch=false)
3593 4227
 	{
3594
-		if (stripos($_folderName, 'Outbox')===false) {
4228
+		if (stripos($_folderName, 'Outbox')===false)
4229
+		{
3595 4230
 			return false;
3596 4231
 		}
3597 4232
 		// does the folder exist???
3598
-		if ($_checkexistance && $GLOBALS['egw_info']['user']['apps']['activesync'] && !$this->folderExists($_folderName)) {
4233
+		if ($_checkexistance && $GLOBALS['egw_info']['user']['apps']['activesync'] && !$this->folderExists($_folderName))
4234
+		{
3599 4235
 			$outboxFolder = $this->getOutboxFolder($_checkexistance);
3600 4236
 			if ($_exactMatch)
3601 4237
 			{
3602
-				if(false !== stripos($_folderName, $outboxFolder)&& strlen($_folderName)==strlen($outboxFolder)) {
4238
+				if(false !== stripos($_folderName, $outboxFolder)&& strlen($_folderName)==strlen($outboxFolder))
4239
+				{
3603 4240
 					return true;
3604
-				} else {
4241
+				}
4242
+				else
4243
+				{
3605 4244
 					return false;
3606 4245
 				}
3607
-			} else {
3608
-				if(false !== stripos($_folderName, $outboxFolder)) {
4246
+			}
4247
+			else
4248
+			{
4249
+				if(false !== stripos($_folderName, $outboxFolder))
4250
+				{
3609 4251
 					return true;
3610
-				} else {
4252
+				}
4253
+				else
4254
+				{
3611 4255
 					return false;
3612 4256
 				}
3613 4257
 			}
@@ -3625,25 +4269,38 @@  discard block
 block discarded – undo
3625 4269
 	function isDraftFolder($_folderName, $_checkexistance=TRUE, $_exactMatch=false)
3626 4270
 	{
3627 4271
 		$draftFolder = $this->getDraftFolder($_checkexistance);
3628
-		if(empty($draftFolder)) {
4272
+		if(empty($draftFolder))
4273
+		{
3629 4274
 			return false;
3630 4275
 		}
3631 4276
 		// does the folder exist???
3632
-		if ($_checkexistance && !$this->folderExists($_folderName)) {
4277
+		if ($_checkexistance && !$this->folderExists($_folderName))
4278
+		{
3633 4279
 			return false;
3634 4280
 		}
3635
-		if (is_a($_folderName,"Horde_Imap_Client_Mailbox")) $_folderName = $_folderName->utf8;
4281
+		if (is_a($_folderName,"Horde_Imap_Client_Mailbox"))
4282
+		{
4283
+			$_folderName = $_folderName->utf8;
4284
+		}
3636 4285
 		if ($_exactMatch)
3637 4286
 		{
3638
-			if(false !== stripos($_folderName, $draftFolder)&& strlen($_folderName)==strlen($draftFolder)) {
4287
+			if(false !== stripos($_folderName, $draftFolder)&& strlen($_folderName)==strlen($draftFolder))
4288
+			{
4289
+				return true;
4290
+			}
4291
+			else
4292
+			{
4293
+				return false;
4294
+			}
4295
+		}
4296
+		else
4297
+		{
4298
+			if(false !== stripos($_folderName, $draftFolder))
4299
+			{
3639 4300
 				return true;
3640
-			} else {
3641
-				return false;
3642 4301
 			}
3643
-		} else {
3644
-			if(false !== stripos($_folderName, $draftFolder)) {
3645
-				return true;
3646
-			} else {
4302
+			else
4303
+			{
3647 4304
 				return false;
3648 4305
 			}
3649 4306
 		}
@@ -3659,25 +4316,35 @@  discard block
 block discarded – undo
3659 4316
 	function isTrashFolder($_folderName, $_checkexistance=TRUE, $_exactMatch=false)
3660 4317
 	{
3661 4318
 		$trashFolder = $this->getTrashFolder($_checkexistance);
3662
-		if(empty($trashFolder)) {
4319
+		if(empty($trashFolder))
4320
+		{
3663 4321
 			return false;
3664 4322
 		}
3665 4323
 		// does the folder exist???
3666
-		if ($_checkexistance && !$this->folderExists($_folderName)) {
4324
+		if ($_checkexistance && !$this->folderExists($_folderName))
4325
+		{
3667 4326
 			return false;
3668 4327
 		}
3669 4328
 
3670 4329
 		if ($_exactMatch)
3671 4330
 		{
3672
-			if(false !== stripos($_folderName, $trashFolder)&& strlen($_folderName)==strlen($trashFolder)) {
4331
+			if(false !== stripos($_folderName, $trashFolder)&& strlen($_folderName)==strlen($trashFolder))
4332
+			{
3673 4333
 				return true;
3674
-			} else {
4334
+			}
4335
+			else
4336
+			{
3675 4337
 				return false;
3676 4338
 			}
3677
-		} else {
3678
-			if(false !== stripos($_folderName, $trashFolder)) {
4339
+		}
4340
+		else
4341
+		{
4342
+			if(false !== stripos($_folderName, $trashFolder))
4343
+			{
3679 4344
 				return true;
3680
-			} else {
4345
+			}
4346
+			else
4347
+			{
3681 4348
 				return false;
3682 4349
 			}
3683 4350
 		}
@@ -3693,24 +4360,34 @@  discard block
 block discarded – undo
3693 4360
 	function isTemplateFolder($_folderName, $_checkexistance=TRUE, $_exactMatch=false)
3694 4361
 	{
3695 4362
 		$templateFolder = $this->getTemplateFolder($_checkexistance);
3696
-		if(empty($templateFolder)) {
4363
+		if(empty($templateFolder))
4364
+		{
3697 4365
 			return false;
3698 4366
 		}
3699 4367
 		// does the folder exist???
3700
-		if ($_checkexistance && !$this->folderExists($_folderName)) {
4368
+		if ($_checkexistance && !$this->folderExists($_folderName))
4369
+		{
3701 4370
 			return false;
3702 4371
 		}
3703 4372
 		if ($_exactMatch)
3704 4373
 		{
3705
-			if(false !== stripos($_folderName, $templateFolder)&& strlen($_folderName)==strlen($templateFolder)) {
4374
+			if(false !== stripos($_folderName, $templateFolder)&& strlen($_folderName)==strlen($templateFolder))
4375
+			{
3706 4376
 				return true;
3707
-			} else {
4377
+			}
4378
+			else
4379
+			{
3708 4380
 				return false;
3709 4381
 			}
3710
-		} else {
3711
-			if(false !== stripos($_folderName, $templateFolder)) {
4382
+		}
4383
+		else
4384
+		{
4385
+			if(false !== stripos($_folderName, $templateFolder))
4386
+			{
3712 4387
 				return true;
3713
-			} else {
4388
+			}
4389
+			else
4390
+			{
3714 4391
 				return false;
3715 4392
 			}
3716 4393
 		}
@@ -3729,15 +4406,27 @@  discard block
 block discarded – undo
3729 4406
 		if (empty($_folder))
3730 4407
 		{
3731 4408
 			// this error is more or less without significance, unless we force the check
3732
-			if ($_forceCheck===true) error_log(__METHOD__.' ('.__LINE__.') '.' Called with empty Folder:'.$_folder.function_backtrace());
4409
+			if ($_forceCheck===true)
4410
+			{
4411
+				error_log(__METHOD__.' ('.__LINE__.') '.' Called with empty Folder:'.$_folder.function_backtrace());
4412
+			}
3733 4413
 			return false;
3734 4414
 		}
3735 4415
 		// when check is not enforced , we assume a folder represented as Horde_Imap_Client_Mailbox as existing folder
3736
-		if (is_a($_folder,"Horde_Imap_Client_Mailbox")&&$_forceCheck===false) return true;
3737
-		if (is_a($_folder,"Horde_Imap_Client_Mailbox")) $_folder =  $_folder->utf8;
4416
+		if (is_a($_folder,"Horde_Imap_Client_Mailbox")&&$_forceCheck===false)
4417
+		{
4418
+			return true;
4419
+		}
4420
+		if (is_a($_folder,"Horde_Imap_Client_Mailbox"))
4421
+		{
4422
+			$_folder =  $_folder->utf8;
4423
+		}
3738 4424
 		// reduce traffic within the Instance per User; Expire every 5 hours
3739 4425
 		//error_log(__METHOD__.' ('.__LINE__.') '.' Called with Folder:'.$_folder.function_backtrace());
3740
-		if (is_null($folderInfo)) $folderInfo = Cache::getCache(Cache::INSTANCE,'email','icServerFolderExistsInfo'.trim($GLOBALS['egw_info']['user']['account_id']),null,array(),$expiration=60*60*5);
4426
+		if (is_null($folderInfo))
4427
+		{
4428
+			$folderInfo = Cache::getCache(Cache::INSTANCE,'email','icServerFolderExistsInfo'.trim($GLOBALS['egw_info']['user']['account_id']),null,array(),$expiration=60*60*5);
4429
+		}
3741 4430
 		//error_log(__METHOD__.' ('.__LINE__.') '.'Cached Info on Folder:'.$_folder.' for Profile:'.$this->profileID.($forceCheck?'(forcedCheck)':'').':'.array2string($folderInfo));
3742 4431
 		if (!empty($folderInfo) && isset($folderInfo[$this->profileID]) && isset($folderInfo[$this->profileID][$_folder]) && $forceCheck===false)
3743 4432
 		{
@@ -3755,7 +4444,8 @@  discard block
 block discarded – undo
3755 4444
 
3756 4445
 		// does the folder exist???
3757 4446
 		//error_log(__METHOD__."->Connected?".$this->icServer->_connected.", ".$_folder.", ".($forceCheck?' forceCheck activated':'dont check on server'));
3758
-		if ( $forceCheck || empty($folderInfo) || !isset($folderInfo[$this->profileID]) || !isset($folderInfo[$this->profileID][$_folder])) {
4447
+		if ( $forceCheck || empty($folderInfo) || !isset($folderInfo[$this->profileID]) || !isset($folderInfo[$this->profileID][$_folder]))
4448
+		{
3759 4449
 			//error_log(__METHOD__."->NotConnected and forceCheck with profile:".$this->profileID);
3760 4450
 			//return false;
3761 4451
 			//try to connect
@@ -3796,9 +4486,12 @@  discard block
 block discarded – undo
3796 4486
 
3797 4487
 		$this->icServer->openMailbox($folderName);
3798 4488
 
3799
-		if(strtolower($folderName) == strtolower($trashFolder) && $deleteOptions == "move_to_trash") {
4489
+		if(strtolower($folderName) == strtolower($trashFolder) && $deleteOptions == "move_to_trash")
4490
+		{
3800 4491
 			$this->deleteMessages('all',$folderName,'remove_immediately');
3801
-		} else {
4492
+		}
4493
+		else
4494
+		{
3802 4495
 			$this->icServer->expunge($folderName);
3803 4496
 		}
3804 4497
 	}
@@ -3817,10 +4510,16 @@  discard block
 block discarded – undo
3817 4510
 	{
3818 4511
 		//error_log(__METHOD__.' ('.__LINE__.') '.'->'.array2string($_messageUID).','.array2string($_folder).', '.$_forceDeleteMethod);
3819 4512
 		$oldMailbox = '';
3820
-		if (is_null($_folder) || empty($_folder)) $_folder = $this->sessionData['mailbox'];
4513
+		if (is_null($_folder) || empty($_folder))
4514
+		{
4515
+			$_folder = $this->sessionData['mailbox'];
4516
+		}
3821 4517
 		if (empty($_messageUID))
3822 4518
 		{
3823
-			if (self::$debug) error_log(__METHOD__." no messages Message(s): ".implode(',',$_messageUID));
4519
+			if (self::$debug)
4520
+			{
4521
+				error_log(__METHOD__." no messages Message(s): ".implode(',',$_messageUID));
4522
+			}
3824 4523
 			return false;
3825 4524
 		}
3826 4525
 		elseif ($_messageUID==='all')
@@ -3830,32 +4529,48 @@  discard block
 block discarded – undo
3830 4529
 		else
3831 4530
 		{
3832 4531
 			$uidsToDelete = new Horde_Imap_Client_Ids();
3833
-			if (!(is_object($_messageUID) || is_array($_messageUID))) $_messageUID = (array)$_messageUID;
4532
+			if (!(is_object($_messageUID) || is_array($_messageUID)))
4533
+			{
4534
+				$_messageUID = (array)$_messageUID;
4535
+			}
3834 4536
 			$uidsToDelete->add($_messageUID);
3835 4537
 		}
3836 4538
 		$deleteOptions = $_forceDeleteMethod; // use forceDeleteMethod if not "no", or unknown method
3837
-		if ($_forceDeleteMethod === 'no' || !in_array($_forceDeleteMethod,array('move_to_trash',"mark_as_deleted","remove_immediately"))) $deleteOptions  = ($this->mailPreferences['deleteOptions']?$this->mailPreferences['deleteOptions']:"mark_as_deleted");
4539
+		if ($_forceDeleteMethod === 'no' || !in_array($_forceDeleteMethod,array('move_to_trash',"mark_as_deleted","remove_immediately")))
4540
+		{
4541
+			$deleteOptions  = ($this->mailPreferences['deleteOptions']?$this->mailPreferences['deleteOptions']:"mark_as_deleted");
4542
+		}
3838 4543
 		//error_log(__METHOD__.' ('.__LINE__.') '.'->'.array2string($_messageUID).','.$_folder.'/'.$this->sessionData['mailbox'].' Option:'.$deleteOptions);
3839 4544
 		$trashFolder    = $this->getTrashFolder();
3840 4545
 		$draftFolder	= $this->getDraftFolder(); //$GLOBALS['egw_info']['user']['preferences']['mail']['draftFolder'];
3841 4546
 		$templateFolder = $this->getTemplateFolder(); //$GLOBALS['egw_info']['user']['preferences']['mail']['templateFolder'];
3842 4547
 		if((strtolower($_folder) == strtolower($trashFolder) && $deleteOptions == "move_to_trash") ||
3843
-		   (strtolower($_folder) == strtolower($draftFolder))) {
4548
+		   (strtolower($_folder) == strtolower($draftFolder)))
4549
+		{
3844 4550
 			$deleteOptions = "remove_immediately";
3845 4551
 		}
3846
-		if($this->icServer->getCurrentMailbox() != $_folder) {
4552
+		if($this->icServer->getCurrentMailbox() != $_folder)
4553
+		{
3847 4554
 			$oldMailbox = $this->icServer->getCurrentMailbox();
3848 4555
 			$this->icServer->openMailbox($_folder);
3849 4556
 		}
3850 4557
 		//error_log(__METHOD__.' ('.__LINE__.') '.'->'.array2string($_messageUID).','.$_folder.'/'.$this->sessionData['mailbox'].' Option:'.$deleteOptions);
3851 4558
 		$updateCache = false;
3852
-		switch($deleteOptions) {
4559
+		switch($deleteOptions)
4560
+		{
3853 4561
 			case "move_to_trash":
3854 4562
 				//error_log(__METHOD__.' ('.__LINE__.') ');
3855 4563
 				$updateCache = true;
3856
-				if(!empty($trashFolder)) {
3857
-					if (self::$debug) error_log(__METHOD__.' ('.__LINE__.') '.implode(' : ', $_messageUID));
3858
-					if (self::$debug) error_log(__METHOD__.' ('.__LINE__.') '."$trashFolder <= $_folder / ". $this->sessionData['mailbox']);
4564
+				if(!empty($trashFolder))
4565
+				{
4566
+					if (self::$debug)
4567
+					{
4568
+						error_log(__METHOD__.' ('.__LINE__.') '.implode(' : ', $_messageUID));
4569
+					}
4570
+					if (self::$debug)
4571
+					{
4572
+						error_log(__METHOD__.' ('.__LINE__.') '."$trashFolder <= $_folder / ". $this->sessionData['mailbox']);
4573
+					}
3859 4574
 					// copy messages
3860 4575
 					try
3861 4576
 					{
@@ -3871,7 +4586,10 @@  discard block
 block discarded – undo
3871 4586
 			case "mark_as_deleted":
3872 4587
 				//error_log(__METHOD__.' ('.__LINE__.') ');
3873 4588
 				// mark messages as deleted
3874
-				if (is_null($_messageUID)) $_messageUID='all';
4589
+				if (is_null($_messageUID))
4590
+				{
4591
+					$_messageUID='all';
4592
+				}
3875 4593
 				foreach((array)$_messageUID as $key =>$uid)
3876 4594
 				{
3877 4595
 					//flag messages, that are flagged for deletion as seen too
@@ -3879,7 +4597,10 @@  discard block
 block discarded – undo
3879 4597
 					$flags = $this->getFlags($uid);
3880 4598
 					$this->flagMessages('delete', $uid, $_folder);
3881 4599
 					//error_log(__METHOD__.' ('.__LINE__.') '.array2string($flags));
3882
-					if (strpos( array2string($flags),'Deleted')!==false) $undelete[] = $uid;
4600
+					if (strpos( array2string($flags),'Deleted')!==false)
4601
+					{
4602
+						$undelete[] = $uid;
4603
+					}
3883 4604
 					unset($flags);
3884 4605
 				}
3885 4606
 				foreach((array)$undelete as $key =>$uid)
@@ -3891,7 +4612,10 @@  discard block
 block discarded – undo
3891 4612
 			case "remove_immediately":
3892 4613
 				//error_log(__METHOD__.' ('.__LINE__.') ');
3893 4614
 				$updateCache = true;
3894
-				if (is_null($_messageUID)) $_messageUID='all';
4615
+				if (is_null($_messageUID))
4616
+				{
4617
+					$_messageUID='all';
4618
+				}
3895 4619
 				if (is_object($_messageUID))
3896 4620
 				{
3897 4621
 					$this->flagMessages('delete', $_messageUID, $_folder);
@@ -3908,7 +4632,8 @@  discard block
 block discarded – undo
3908 4632
 				$this->icServer->expunge($_folder);
3909 4633
 				break;
3910 4634
 		}
3911
-		if($oldMailbox != '') {
4635
+		if($oldMailbox != '')
4636
+		{
3912 4637
 			$this->icServer->openMailbox($oldMailbox);
3913 4638
 		}
3914 4639
 
@@ -3922,11 +4647,15 @@  discard block
 block discarded – undo
3922 4647
 	 *
3923 4648
 	 * @return null/array flags
3924 4649
 	 */
3925
-	function getFlags ($_messageUID) {
4650
+	function getFlags ($_messageUID)
4651
+	{
3926 4652
 		try
3927 4653
 		{
3928 4654
 			$uidsToFetch = new Horde_Imap_Client_Ids();
3929
-			if (!(is_object($_messageUID) || is_array($_messageUID))) $_messageUID = (array)$_messageUID;
4655
+			if (!(is_object($_messageUID) || is_array($_messageUID)))
4656
+			{
4657
+				$_messageUID = (array)$_messageUID;
4658
+			}
3930 4659
 			$uidsToFetch->add($_messageUID);
3931 4660
 			$_folderName = $this->icServer->getCurrentMailbox();
3932 4661
 			$fquery = new Horde_Imap_Client_Fetch_Query();
@@ -3934,8 +4663,10 @@  discard block
 block discarded – undo
3934 4663
 			$headersNew = $this->icServer->fetch($_folderName, $fquery, array(
3935 4664
 				'ids' => $uidsToFetch,
3936 4665
 			));
3937
-			if (is_object($headersNew)) {
3938
-				foreach($headersNew->ids() as $id) {
4666
+			if (is_object($headersNew))
4667
+			{
4668
+				foreach($headersNew->ids() as $id)
4669
+				{
3939 4670
 					$_headerObject = $headersNew->get($id);
3940 4671
 					$flags = $_headerObject->getFlags();
3941 4672
 				}
@@ -3960,10 +4691,16 @@  discard block
 block discarded – undo
3960 4691
 	 */
3961 4692
 	function getNotifyFlags ($_messageUID, $flags=null)
3962 4693
 	{
3963
-		if (self::$debug) error_log(__METHOD__.$_messageUID.' Flags:'.array2string($flags));
4694
+		if (self::$debug)
4695
+		{
4696
+			error_log(__METHOD__.$_messageUID.' Flags:'.array2string($flags));
4697
+		}
3964 4698
 		try
3965 4699
 		{
3966
-			if($flags===null) $flags =  $this->getFlags($_messageUID);
4700
+			if($flags===null)
4701
+			{
4702
+				$flags =  $this->getFlags($_messageUID);
4703
+			}
3967 4704
 		}
3968 4705
 		catch (\Exception $e)
3969 4706
 		{
@@ -3971,10 +4708,14 @@  discard block
 block discarded – undo
3971 4708
 		}
3972 4709
 
3973 4710
 		if ( stripos( array2string($flags),'MDNSent')!==false)
3974
-			return true;
4711
+		{
4712
+					return true;
4713
+		}
3975 4714
 
3976 4715
 		if ( stripos( array2string($flags),'MDNnotSent')!==false)
3977
-			return false;
4716
+		{
4717
+					return false;
4718
+		}
3978 4719
 
3979 4720
 		return null;
3980 4721
 	}
@@ -3995,7 +4736,10 @@  discard block
 block discarded – undo
3995 4736
 		//error_log(__METHOD__.' ('.__LINE__.') '.'->' .$_flag." ".array2string($_messageUID).",$_folder /".$this->sessionData['mailbox']);
3996 4737
 		if (empty($_messageUID))
3997 4738
 		{
3998
-			if (self::$debug) error_log(__METHOD__." no messages Message(s): ".implode(',',$_messageUID));
4739
+			if (self::$debug)
4740
+			{
4741
+				error_log(__METHOD__." no messages Message(s): ".implode(',',$_messageUID));
4742
+			}
3999 4743
 			return false;
4000 4744
 		}
4001 4745
 		$this->icServer->openMailbox(($_folder?$_folder:$this->sessionData['mailbox']));
@@ -4003,7 +4747,10 @@  discard block
 block discarded – undo
4003 4747
 		if (is_array($_messageUID)&& count($_messageUID)>50)
4004 4748
 		{
4005 4749
 			$count = $this->getMailBoxCounters($folder,true);
4006
-			if ($count->messages == count($_messageUID)) $_messageUID='all';
4750
+			if ($count->messages == count($_messageUID))
4751
+			{
4752
+				$_messageUID='all';
4753
+			}
4007 4754
 		}
4008 4755
 
4009 4756
 		if ($_messageUID==='all')
@@ -4012,7 +4759,10 @@  discard block
 block discarded – undo
4012 4759
 		}
4013 4760
 		else
4014 4761
 		{
4015
-			if (!(is_object($_messageUID) || is_array($_messageUID))) $_messageUID = (array)$_messageUID;
4762
+			if (!(is_object($_messageUID) || is_array($_messageUID)))
4763
+			{
4764
+				$_messageUID = (array)$_messageUID;
4765
+			}
4016 4766
 			$messageUIDs = array_chunk($_messageUID,50,true);
4017 4767
 		}
4018 4768
 		try
@@ -4028,7 +4778,8 @@  discard block
 block discarded – undo
4028 4778
 					$uidsToModify = new Horde_Imap_Client_Ids();
4029 4779
 					$uidsToModify->add($uids);
4030 4780
 				}
4031
-				switch($_flag) {
4781
+				switch($_flag)
4782
+				{
4032 4783
 					case "delete":
4033 4784
 						$ret = $this->icServer->store($folder, array('add'=>array('\\Deleted'), 'ids'=> $uidsToModify));
4034 4785
 						break;
@@ -4114,7 +4865,10 @@  discard block
 block discarded – undo
4114 4865
 		{
4115 4866
 			error_log(__METHOD__.__LINE__.' Error, could not flag messages in folder '.$folder.' Reason:'.$e->getMessage());
4116 4867
 		}
4117
-		if ($folder instanceof Horde_Imap_Client_Mailbox) $_folder = $folder->utf8;
4868
+		if ($folder instanceof Horde_Imap_Client_Mailbox)
4869
+		{
4870
+			$_folder = $folder->utf8;
4871
+		}
4118 4872
 		//error_log(__METHOD__.__LINE__.'#'.$this->icServer->ImapServerId.'#'.array2string($_folder).'#');
4119 4873
 		self::$folderStatusCache[$this->icServer->ImapServerId][(!empty($_folder)?$_folder: $this->sessionData['mailbox'])]['uidValidity'] = 0;
4120 4874
 
@@ -4143,7 +4897,10 @@  discard block
 block discarded – undo
4143 4897
 		//$deleteOptions  = $GLOBALS['egw_info']["user"]["preferences"]["mail"]["deleteOptions"];
4144 4898
 		if (empty($_messageUID))
4145 4899
 		{
4146
-			if (self::$debug) error_log(__METHOD__." no Message(s): ".implode(',',$_messageUID));
4900
+			if (self::$debug)
4901
+			{
4902
+				error_log(__METHOD__." no Message(s): ".implode(',',$_messageUID));
4903
+			}
4147 4904
 			return false;
4148 4905
 		}
4149 4906
 		elseif ($_messageUID==='all')
@@ -4155,7 +4912,10 @@  discard block
 block discarded – undo
4155 4912
 		{
4156 4913
 			//error_log(__METHOD__." Message(s): ".implode(',',$_messageUID));
4157 4914
 			$uidsToMove = new Horde_Imap_Client_Ids();
4158
-			if (!(is_object($_messageUID) || is_array($_messageUID))) $_messageUID = (array)$_messageUID;
4915
+			if (!(is_object($_messageUID) || is_array($_messageUID)))
4916
+			{
4917
+				$_messageUID = (array)$_messageUID;
4918
+			}
4159 4919
 			$uidsToMove->add($_messageUID);
4160 4920
 		}
4161 4921
 		$sourceFolder = (!empty($currentFolder)?$currentFolder: $this->sessionData['mailbox']);
@@ -4177,12 +4937,14 @@  discard block
 block discarded – undo
4177 4937
 
4178 4938
 			//error_log(__METHOD__.' ('.__LINE__.') '.' Sourceserver:'.$source->ImapServerId.' mailheaders:'.array2string($headersNew));
4179 4939
 
4180
-			if (is_object($headersNew)) {
4940
+			if (is_object($headersNew))
4941
+			{
4181 4942
 				$c=0;
4182 4943
 				$retUid = new Horde_Imap_Client_Ids();
4183 4944
 				// we copy chunks of 5 to avoid too much memory and/or server stress
4184 4945
 				// some servers seem not to allow/support the appendig of multiple messages. so we are down to one
4185
-				foreach($headersNew as &$_headerObject) {
4946
+				foreach($headersNew as &$_headerObject)
4947
+				{
4186 4948
 					$c++;
4187 4949
 					$flags = $_headerObject->getFlags(); //unseen status seems to be lost when retrieving the full message
4188 4950
 					$date = $_headerObject->getImapDate();
@@ -4266,7 +5028,11 @@  discard block
 block discarded – undo
4266 5028
 	{
4267 5029
 		try {
4268 5030
 			$date = new DateTime($_date);	// parse date & time including timezone (throws exception, if not parsable)
4269
-			if ($convert2usertime) $date->setUser();	// convert to user-time
5031
+			if ($convert2usertime)
5032
+			{
5033
+				$date->setUser();
5034
+			}
5035
+			// convert to user-time
4270 5036
 			$date2return = $date->format($format);
4271 5037
 		}
4272 5038
 		catch(\Exception $e)
@@ -4298,9 +5064,15 @@  discard block
 block discarded – undo
4298 5064
 	static function htmlentities($_string, $_charset=false)
4299 5065
 	{
4300 5066
 		//setting the charset (if not given)
4301
-		if ($_charset===false) $_charset = self::$displayCharset;
5067
+		if ($_charset===false)
5068
+		{
5069
+			$_charset = self::$displayCharset;
5070
+		}
4302 5071
 		$string = @htmlentities($_string, ENT_QUOTES, $_charset, false);
4303
-		if (empty($string) && !empty($_string)) $string = @htmlentities(Translation::convert($_string,Translation::detect_encoding($_string),$_charset),ENT_QUOTES | ENT_IGNORE,$_charset, false);
5072
+		if (empty($string) && !empty($_string))
5073
+		{
5074
+			$string = @htmlentities(Translation::convert($_string,Translation::detect_encoding($_string),$_charset),ENT_QUOTES | ENT_IGNORE,$_charset, false);
5075
+		}
4304 5076
 		return $string;
4305 5077
 	}
4306 5078
 
@@ -4320,18 +5092,41 @@  discard block
 block discarded – undo
4320 5092
 		$_html = str_replace(array('&amp;amp;','<DIV><BR></DIV>',"<DIV>&nbsp;</DIV>",'<div>&nbsp;</div>','</td></font>','<br><td>','<tr></tr>','<o:p></o:p>','<o:p>','</o:p>'),
4321 5093
 							 array('&amp;',    '<BR>',           '<BR>',             '<BR>',             '</font></td>','<td>',    '',         '',           '',  ''),$_html);
4322 5094
 		//$_html = str_replace(array('&amp;amp;'),array('&amp;'),$_html);
4323
-		if (stripos($_html,'style')!==false) Mail\Html::replaceTagsCompletley($_html,'style'); // clean out empty or pagewide style definitions / left over tags
4324
-		if (stripos($_html,'head')!==false) Mail\Html::replaceTagsCompletley($_html,'head'); // Strip out stuff in head
5095
+		if (stripos($_html,'style')!==false)
5096
+		{
5097
+			Mail\Html::replaceTagsCompletley($_html,'style');
5098
+		}
5099
+		// clean out empty or pagewide style definitions / left over tags
5100
+		if (stripos($_html,'head')!==false)
5101
+		{
5102
+			Mail\Html::replaceTagsCompletley($_html,'head');
5103
+		}
5104
+		// Strip out stuff in head
4325 5105
 		//if (stripos($_html,'![if')!==false && stripos($_html,'<![endif]>')!==false) Mail\Html::replaceTagsCompletley($_html,'!\[if','<!\[endif\]>',false); // Strip out stuff in ifs
4326 5106
 		//if (stripos($_html,'!--[if')!==false && stripos($_html,'<![endif]-->')!==false) Mail\Html::replaceTagsCompletley($_html,'!--\[if','<!\[endif\]-->',false); // Strip out stuff in ifs
4327 5107
 		//error_log(__METHOD__.' ('.__LINE__.') '.$_html);
4328 5108
 
4329
-		if (get_magic_quotes_gpc() === 1) $_html = stripslashes($_html);
5109
+		if (get_magic_quotes_gpc() === 1)
5110
+		{
5111
+			$_html = stripslashes($_html);
5112
+		}
4330 5113
 		// Strip out doctype in head, as htmlLawed cannot handle it TODO: Consider extracting it and adding it afterwards
4331
-		if (stripos($_html,'!doctype')!==false) Mail\Html::replaceTagsCompletley($_html,'!doctype');
4332
-		if (stripos($_html,'?xml:namespace')!==false) Mail\Html::replaceTagsCompletley($_html,'\?xml:namespace','/>',false);
4333
-		if (stripos($_html,'?xml version')!==false) Mail\Html::replaceTagsCompletley($_html,'\?xml version','\?>',false);
4334
-		if (strpos($_html,'!CURSOR')!==false) Mail\Html::replaceTagsCompletley($_html,'!CURSOR');
5114
+		if (stripos($_html,'!doctype')!==false)
5115
+		{
5116
+			Mail\Html::replaceTagsCompletley($_html,'!doctype');
5117
+		}
5118
+		if (stripos($_html,'?xml:namespace')!==false)
5119
+		{
5120
+			Mail\Html::replaceTagsCompletley($_html,'\?xml:namespace','/>',false);
5121
+		}
5122
+		if (stripos($_html,'?xml version')!==false)
5123
+		{
5124
+			Mail\Html::replaceTagsCompletley($_html,'\?xml version','\?>',false);
5125
+		}
5126
+		if (strpos($_html,'!CURSOR')!==false)
5127
+		{
5128
+			Mail\Html::replaceTagsCompletley($_html,'!CURSOR');
5129
+		}
4335 5130
 		// htmLawed filter only the 'body'
4336 5131
 		//preg_match('`(<htm.+?<body[^>]*>)(.+?)(</body>.*?</html>)`ims', $_html, $matches);
4337 5132
 		//if ($matches[2])
@@ -4370,8 +5165,10 @@  discard block
 block discarded – undo
4370 5165
 		//$charSet = 'iso-8859-1';//self::$displayCharset; //'iso-8859-1'; // self::displayCharset seems to be asmarter fallback than iso-8859-1
4371 5166
 		$CharsetFound=false;
4372 5167
 		//echo "#".$_mimePartObject->encoding.'#<br>';
4373
-		if(is_array($_mimePartObject->parameters)) {
4374
-			if(isset($_mimePartObject->parameters['CHARSET'])) {
5168
+		if(is_array($_mimePartObject->parameters))
5169
+		{
5170
+			if(isset($_mimePartObject->parameters['CHARSET']))
5171
+			{
4375 5172
 				$charSet = $_mimePartObject->parameters['CHARSET'];
4376 5173
 				$CharsetFound=true;
4377 5174
 			}
@@ -4392,7 +5189,10 @@  discard block
 block discarded – undo
4392 5189
 	function decodeMimePart($_mimeMessage, $_encoding, $_charset = '')
4393 5190
 	{
4394 5191
 		// decode the part
4395
-		if (self::$debug) error_log(__METHOD__."() with $_encoding and $_charset:".print_r($_mimeMessage,true));
5192
+		if (self::$debug)
5193
+		{
5194
+			error_log(__METHOD__."() with $_encoding and $_charset:".print_r($_mimeMessage,true));
5195
+		}
4396 5196
 		switch (strtoupper($_encoding))
4397 5197
 		{
4398 5198
 			case 'BASE64':
@@ -4433,13 +5233,19 @@  discard block
 block discarded – undo
4433 5233
 		// sometimes there are 3 parts, when there is an ics/ical attached/included-> we want to show that
4434 5234
 		// as attachment AND as abstracted ical information (we use our notification style here).
4435 5235
 		$partText = $partCalendar = $partHTML = null;
4436
-		if (self::$debug) _debug_array(array("METHOD"=>__METHOD__,"LINE"=>__LINE__,"STRUCTURE"=>$_structure));
5236
+		if (self::$debug)
5237
+		{
5238
+			_debug_array(array("METHOD"=>__METHOD__,"LINE"=>__LINE__,"STRUCTURE"=>$_structure));
5239
+		}
4437 5240
 		//error_log(__METHOD__.' ('.__LINE__.') ');
4438 5241
 		$ignore_first_part = true;
4439 5242
 		foreach($_structure->contentTypeMap() as $mime_id => $mime_type)
4440 5243
 		{
4441 5244
 			//error_log(__METHOD__."($_uid, ".$_structure->getMimeId().") $mime_id: $mime_type"." ignoreFirstPart:".$ignore_first_part);
4442
-			if (self::$debug) echo __METHOD__."($_uid, partID=".$_structure->getMimeId().") $mime_id: $mime_type<br>";
5245
+			if (self::$debug)
5246
+			{
5247
+				echo __METHOD__."($_uid, partID=".$_structure->getMimeId().") $mime_id: $mime_type<br>";
5248
+			}
4443 5249
 
4444 5250
 			if ($ignore_first_part)
4445 5251
 			{
@@ -4455,15 +5261,24 @@  discard block
 block discarded – undo
4455 5261
 					switch($mimePart->getSubType())
4456 5262
 					{
4457 5263
 						case 'plain':
4458
-							if ($mimePart->getBytes() > 0) $partText = $mimePart;
5264
+							if ($mimePart->getBytes() > 0)
5265
+							{
5266
+								$partText = $mimePart;
5267
+							}
4459 5268
 							break;
4460 5269
 
4461 5270
 						case 'html':
4462
-							if ($mimePart->getBytes() > 0)  $partHTML = $mimePart;
5271
+							if ($mimePart->getBytes() > 0)
5272
+							{
5273
+								$partHTML = $mimePart;
5274
+							}
4463 5275
 							break;
4464 5276
 
4465 5277
 						case 'calendar':
4466
-							if ($mimePart->getBytes() > 0)  $partCalendar = $mimePart;
5278
+							if ($mimePart->getBytes() > 0)
5279
+							{
5280
+								$partCalendar = $mimePart;
5281
+							}
4467 5282
 							break;
4468 5283
 					}
4469 5284
 					break;
@@ -4476,7 +5291,10 @@  discard block
 block discarded – undo
4476 5291
 							if (count($mimePart->getParts()) > 1)
4477 5292
 							{
4478 5293
 								// in a multipart alternative we treat the multipart/related as html part
4479
-								if (self::$debug) error_log(__METHOD__." process MULTIPART/".$mimePart->getSubType()." with array as subparts");
5294
+								if (self::$debug)
5295
+								{
5296
+									error_log(__METHOD__." process MULTIPART/".$mimePart->getSubType()." with array as subparts");
5297
+								}
4480 5298
 								$partHTML = $mimePart;
4481 5299
 								break 3; // GET OUT OF LOOP, will be processed according to type
4482 5300
 							}
@@ -4557,9 +5375,15 @@  discard block
 block discarded – undo
4557 5375
 	 */
4558 5376
 	function getMultipartMixed($_uid, Horde_Mime_Part $_structure, $_htmlMode, $_preserveSeen = false, &$skipParts=array())
4559 5377
 	{
4560
-		if (self::$debug) echo __METHOD__."$_uid, $_htmlMode<br>";
5378
+		if (self::$debug)
5379
+		{
5380
+			echo __METHOD__."$_uid, $_htmlMode<br>";
5381
+		}
4561 5382
 		$bodyPart = array();
4562
-		if (self::$debug) _debug_array($_structure);
5383
+		if (self::$debug)
5384
+		{
5385
+			_debug_array($_structure);
5386
+		}
4563 5387
 
4564 5388
 		$ignore_first_part = true;
4565 5389
 		//$skipParts = array();
@@ -4567,7 +5391,10 @@  discard block
 block discarded – undo
4567 5391
 		foreach($_structure->contentTypeMap() as $mime_id => $mime_type)
4568 5392
 		{
4569 5393
 			//error_log(__METHOD__."($_uid, ".$_structure->getMimeId().") $mime_id: $mime_type");
4570
-			if (self::$debug) echo __METHOD__."($_uid, partID=".$_structure->getMimeId().") $mime_id: $mime_type<br>";
5394
+			if (self::$debug)
5395
+			{
5396
+				echo __METHOD__."($_uid, partID=".$_structure->getMimeId().") $mime_id: $mime_type<br>";
5397
+			}
4571 5398
 			if ($ignore_first_part)
4572 5399
 			{
4573 5400
 				$ignore_first_part = false;
@@ -4585,7 +5412,10 @@  discard block
 block discarded – undo
4585 5412
 			switch($part->getPrimaryType())
4586 5413
 			{
4587 5414
 				case 'multipart':
4588
-					if ($part->getDisposition() == 'attachment') continue;
5415
+					if ($part->getDisposition() == 'attachment')
5416
+					{
5417
+						continue;
5418
+					}
4589 5419
 					switch($part->getSubType())
4590 5420
 					{
4591 5421
 						case 'alternative':
@@ -4650,7 +5480,9 @@  discard block
 block discarded – undo
4650 5480
 					if($part->getSubType() == 'rfc822' || $part->getDisposition() == 'attachment')
4651 5481
 					{
4652 5482
 						$skipParts[$mime_id.'.0'] = $mime_type;
4653
-						foreach($part->contentTypeMap() as $sub_id => $sub_type){ $skipParts[$sub_id] = $sub_type;}
5483
+						foreach($part->contentTypeMap() as $sub_id => $sub_type)
5484
+						{
5485
+$skipParts[$sub_id] = $sub_type;}
4654 5486
 						//error_log(__METHOD__.' ('.__LINE__.') '.' Uid:'.$_uid.' Part:'.$mime_id.':'.array2string($skipParts));
4655 5487
 						//break 2;
4656 5488
 					}
@@ -4693,7 +5525,10 @@  discard block
 block discarded – undo
4693 5525
 	 */
4694 5526
 	function getBodyPart($_uid, $_partID=null, $_folder=null, $_preserveSeen=false, $_stream=false, &$_encoding=null, $_tryDecodingServerside=true)
4695 5527
 	{
4696
-		if (self::$debug) error_log( __METHOD__.__LINE__."(".array2string($_uid).", $_partID, $_folder, $_preserveSeen, $_stream, $_encoding, $_tryDecodingServerside)");
5528
+		if (self::$debug)
5529
+		{
5530
+			error_log( __METHOD__.__LINE__."(".array2string($_uid).", $_partID, $_folder, $_preserveSeen, $_stream, $_encoding, $_tryDecodingServerside)");
5531
+		}
4697 5532
 
4698 5533
 		if (empty($_folder))
4699 5534
 		{
@@ -4702,7 +5537,10 @@  discard block
 block discarded – undo
4702 5537
 		//error_log(__METHOD__.' ('.__LINE__.') '.array2string($_folder).'/'.$this->icServer->getCurrentMailbox().'/'. $this->sessionData['mailbox']);
4703 5538
 		// querying contents of body part
4704 5539
 		$uidsToFetch = new Horde_Imap_Client_Ids();
4705
-		if (!(is_object($_uid) || is_array($_uid))) $_uid = (array)$_uid;
5540
+		if (!(is_object($_uid) || is_array($_uid)))
5541
+		{
5542
+			$_uid = (array)$_uid;
5543
+		}
4706 5544
 		$uidsToFetch->add($_uid);
4707 5545
 
4708 5546
 		$fquery = new Horde_Imap_Client_Fetch_Query();
@@ -4710,9 +5548,12 @@  discard block
 block discarded – undo
4710 5548
 			'peek' => $_preserveSeen,
4711 5549
 			'decode' => true,	// try decode on server, does NOT neccessary work
4712 5550
 		);
4713
-		if ($_tryDecodingServerside===false)// || ($_tryDecodingServerside&&$this->isDraftFolder($_folder)))
5551
+		if ($_tryDecodingServerside===false)
5552
+		{
5553
+			// || ($_tryDecodingServerside&&$this->isDraftFolder($_folder)))
4714 5554
 		{
4715 5555
 			$_tryDecodingServerside=false;
5556
+		}
4716 5557
 			$fetchParams = array(
4717 5558
 				'peek' => $_preserveSeen,
4718 5559
 			);
@@ -4754,7 +5595,10 @@  discard block
 block discarded – undo
4754 5595
 	{
4755 5596
 		//error_log(__METHOD__.' ('.__LINE__.') '.'->'.$_uid.':'.array2string($_structure).' '.function_backtrace());
4756 5597
 		$bodyPart = array();
4757
-		if (self::$debug) _debug_array(array($_structure,function_backtrace()));
5598
+		if (self::$debug)
5599
+		{
5600
+			_debug_array(array($_structure,function_backtrace()));
5601
+		}
4758 5602
 
4759 5603
 		if($_structure->getSubType() == 'html' && !in_array($_htmlMode, array('html_only', 'always_display', 'only_if_no_text')))
4760 5604
 		{
@@ -4805,8 +5649,12 @@  discard block
 block discarded – undo
4805 5649
 	 */
4806 5650
 	function getMessageBody($_uid, $_htmlOptions='', $_partID=null, Horde_Mime_Part $_structure=null, $_preserveSeen = false, $_folder = '', &$calendar_part=null)
4807 5651
 	{
4808
-		if (self::$debug) echo __METHOD__."$_uid, $_htmlOptions, $_partID<br>";
4809
-		if($_htmlOptions != '') {
5652
+		if (self::$debug)
5653
+		{
5654
+			echo __METHOD__."$_uid, $_htmlOptions, $_partID<br>";
5655
+		}
5656
+		if($_htmlOptions != '')
5657
+		{
4810 5658
 			$this->htmlOptions = $_htmlOptions;
4811 5659
 		}
4812 5660
 		if (empty($_folder))
@@ -4895,7 +5743,9 @@  discard block
 block discarded – undo
4895 5743
 						default:
4896 5744
 							$bodyPart = array($this->getTextPart($_uid, $_structure, $this->htmlOptions, $_preserveSeen));
4897 5745
 					}
4898
-				} else {
5746
+				}
5747
+				else
5748
+				{
4899 5749
 					// what if the structure->disposition is attachment ,...
4900 5750
 				}
4901 5751
 				return self::normalizeBodyParts($bodyPart);
@@ -4906,13 +5756,18 @@  discard block
 block discarded – undo
4906 5756
 				{
4907 5757
 					case 'rfc822':
4908 5758
 						$newStructure = $_structure->getParts();
4909
-						if (self::$debug) {echo __METHOD__." Message -> RFC -> NewStructure:"; _debug_array($newStructure[0]);}
5759
+						if (self::$debug)
5760
+						{
5761
+echo __METHOD__." Message -> RFC -> NewStructure:"; _debug_array($newStructure[0]);}
4910 5762
 						return self::normalizeBodyParts($this->getMessageBody($_uid, $_htmlOptions, $newStructure[0]->getMimeId(), $newStructure[0], $_preserveSeen, $_folder));
4911 5763
 				}
4912 5764
 				break;
4913 5765
 
4914 5766
 			default:
4915
-				if (self::$debug) _debug_array($_structure);
5767
+				if (self::$debug)
5768
+				{
5769
+					_debug_array($_structure);
5770
+				}
4916 5771
 				return array(
4917 5772
 					array(
4918 5773
 						'body'		=> lang('The mimeparser can not parse this message.').$_structure->getType(),
@@ -4936,9 +5791,12 @@  discard block
 block discarded – undo
4936 5791
 		{
4937 5792
 			foreach($_bodyParts as $singleBodyPart)
4938 5793
 			{
4939
-				if (!isset($singleBodyPart['body'])) {
5794
+				if (!isset($singleBodyPart['body']))
5795
+				{
4940 5796
 					$buff = self::normalizeBodyParts($singleBodyPart);
4941
-					foreach ((array)$buff as $val) { $body2return[] = $val;}
5797
+					foreach ((array)$buff as $val)
5798
+					{
5799
+$body2return[] = $val;}
4942 5800
 					continue;
4943 5801
 				}
4944 5802
 				$body2return[] = $singleBodyPart;
@@ -4964,13 +5822,20 @@  discard block
 block discarded – undo
4964 5822
 		$message='';
4965 5823
 		for($i=0; $i<count($bodyParts); $i++)
4966 5824
 		{
4967
-			if (!isset($bodyParts[$i]['body'])) {
5825
+			if (!isset($bodyParts[$i]['body']))
5826
+			{
4968 5827
 				$bodyParts[$i]['body'] = self::getdisplayableBody($mailClass, $bodyParts[$i], $preserveHTML, $useTidy);
4969 5828
 				$message .= empty($bodyParts[$i]['body'])?'':$bodyParts[$i]['body'];
4970 5829
 				continue;
4971 5830
 			}
4972
-			if (isset($bodyParts[$i]['error'])) continue;
4973
-			if (empty($bodyParts[$i]['body'])) continue;
5831
+			if (isset($bodyParts[$i]['error']))
5832
+			{
5833
+				continue;
5834
+			}
5835
+			if (empty($bodyParts[$i]['body']))
5836
+			{
5837
+				continue;
5838
+			}
4974 5839
 			// some characterreplacements, as they fail to translate
4975 5840
 			$sar = array(
4976 5841
 				'@(\x84|\x93|\x94)@',
@@ -4997,13 +5862,17 @@  discard block
 block discarded – undo
4997 5862
 				$bodyParts[$i]['body'] = preg_replace($sar,$rar,$bodyParts[$i]['body']);
4998 5863
 			}
4999 5864
 
5000
-			if ($bodyParts[$i]['charSet']===false) $bodyParts[$i]['charSet'] = Translation::detect_encoding($bodyParts[$i]['body']);
5865
+			if ($bodyParts[$i]['charSet']===false)
5866
+			{
5867
+				$bodyParts[$i]['charSet'] = Translation::detect_encoding($bodyParts[$i]['body']);
5868
+			}
5001 5869
 			// add line breaks to $bodyParts
5002 5870
 			//error_log(__METHOD__.' ('.__LINE__.') '.' Charset:'.$bodyParts[$i]['charSet'].'->'.$bodyParts[$i]['body']);
5003 5871
 			$newBody  = Translation::convert_jsonsafe($bodyParts[$i]['body'], $bodyParts[$i]['charSet']);
5004 5872
 			//error_log(__METHOD__.' ('.__LINE__.') '.' MimeType:'.$bodyParts[$i]['mimeType'].'->'.$newBody);
5005 5873
 			$mailClass->activeMimeType = 'text/plain';
5006
-			if ($bodyParts[$i]['mimeType'] == 'text/html') {
5874
+			if ($bodyParts[$i]['mimeType'] == 'text/html')
5875
+			{
5007 5876
 				$mailClass->activeMimeType = $bodyParts[$i]['mimeType'];
5008 5877
 				if (!$preserveHTML)
5009 5878
 				{
@@ -5049,15 +5918,28 @@  discard block
 block discarded – undo
5049 5918
 						// as we switched off HTMLaweds tidy functionality
5050 5919
 						$newBody = str_replace(array('&amp;amp;','<DIV><BR></DIV>',"<DIV>&nbsp;</DIV>",'<div>&nbsp;</div>'),array('&amp;','<BR>','<BR>','<BR>'),$newBody);
5051 5920
 						$newBody = $htmLawed->run($newBody,self::$htmLawed_config);
5052
-						if ($hasOther && $preserveHTML) $newBody = $matches[1]. $newBody. $matches[3];
5921
+						if ($hasOther && $preserveHTML)
5922
+						{
5923
+							$newBody = $matches[1]. $newBody. $matches[3];
5924
+						}
5053 5925
 						$alreadyHtmlLawed=true;
5054 5926
 					}
5055 5927
 					//error_log(__METHOD__.' ('.__LINE__.') '.' after purify:'.$newBody);
5056
-					if ($preserveHTML==false) $newBody = Mail\Html::convertHTMLToText($newBody,self::$displayCharset,true,true);
5928
+					if ($preserveHTML==false)
5929
+					{
5930
+						$newBody = Mail\Html::convertHTMLToText($newBody,self::$displayCharset,true,true);
5931
+					}
5057 5932
 					//error_log(__METHOD__.' ('.__LINE__.') '.' after convertHTMLToText:'.$newBody);
5058
-					if ($preserveHTML==false) $newBody = nl2br($newBody); // we need this, as htmLawed removes \r\n
5933
+					if ($preserveHTML==false)
5934
+					{
5935
+						$newBody = nl2br($newBody);
5936
+					}
5937
+					// we need this, as htmLawed removes \r\n
5059 5938
 					/*if (!$alreadyHtmlLawed) */ $mailClass->getCleanHTML($newBody); // remove stuff we regard as unwanted
5060
-					if ($preserveHTML==false) $newBody = str_replace("<br />","\r\n",$newBody);
5939
+					if ($preserveHTML==false)
5940
+					{
5941
+						$newBody = str_replace("<br />","\r\n",$newBody);
5942
+					}
5061 5943
 					//error_log(__METHOD__.' ('.__LINE__.') '.' after getClean:'.$newBody);
5062 5944
 				}
5063 5945
 				$message .= $newBody;
@@ -5094,12 +5976,12 @@  discard block
 block discarded – undo
5094 5976
 				  substr($line,0,strlen($dontbreaklinesstartingwith)) != $dontbreaklinesstartingwith
5095 5977
 				 )
5096 5978
 				)
5097
-			   )
5098
-			{
5979
+			   ) {
5099 5980
 				$s=explode(" ", $line);
5100 5981
 				$line = "";
5101 5982
 				$linecnt = 0;
5102
-				foreach ($s as &$v) {
5983
+				foreach ($s as &$v)
5984
+				{
5103 5985
 					$cnt = strlen($v);
5104 5986
 					// only break long words within the wordboundaries,
5105 5987
 					// but it may destroy links, so we check for href and dont do it if we find one
@@ -5109,14 +5991,20 @@  discard block
 block discarded – undo
5109 5991
 						$v=wordwrap($v, $allowedLength, $cut, true);
5110 5992
 					}
5111 5993
 					// the rest should be broken at the start of the new word that exceeds the limit
5112
-					if ($linecnt+$cnt > $allowedLength) {
5994
+					if ($linecnt+$cnt > $allowedLength)
5995
+					{
5113 5996
 						$v=$cut.$v;
5114 5997
 						#$linecnt = 0;
5115 5998
 						$linecnt =strlen($v)-strlen($cut);
5116
-					} else {
5999
+					}
6000
+					else
6001
+					{
5117 6002
 						$linecnt += $cnt;
5118 6003
 					}
5119
-					if (strlen($v)) $line .= (strlen($line) ? " " : "").$v;
6004
+					if (strlen($v))
6005
+					{
6006
+						$line .= (strlen($line) ? " " : "").$v;
6007
+					}
5120 6008
 				}
5121 6009
 			}
5122 6010
 			$newStr .= $line . "\n";
@@ -5137,11 +6025,18 @@  discard block
 block discarded – undo
5137 6025
 	function getMessageEnvelope($_uid, $_partID = '',$decode=false, $_folder='', $_useHeaderInsteadOfEnvelope=false)
5138 6026
 	{
5139 6027
 		//error_log(__METHOD__.' ('.__LINE__.') '.":$_uid,$_partID,$decode,$_folder".function_backtrace());
5140
-		if (empty($_folder)) $_folder = ($this->sessionData['mailbox']? $this->sessionData['mailbox'] : $this->icServer->getCurrentMailbox());
6028
+		if (empty($_folder))
6029
+		{
6030
+			$_folder = ($this->sessionData['mailbox']? $this->sessionData['mailbox'] : $this->icServer->getCurrentMailbox());
6031
+		}
5141 6032
 		//error_log(__METHOD__.' ('.__LINE__.') '.":$_uid,$_partID,$decode,$_folder");
5142
-		if((empty($_partID)||$_partID=='null')&&$_useHeaderInsteadOfEnvelope===false) {
6033
+		if((empty($_partID)||$_partID=='null')&&$_useHeaderInsteadOfEnvelope===false)
6034
+		{
5143 6035
 			$uidsToFetch = new Horde_Imap_Client_Ids();
5144
-			if (!(is_object($_uid) || is_array($_uid))) $_uid = (array)$_uid;
6036
+			if (!(is_object($_uid) || is_array($_uid)))
6037
+			{
6038
+				$_uid = (array)$_uid;
6039
+			}
5145 6040
 			$uidsToFetch->add($_uid);
5146 6041
 
5147 6042
 			$fquery = new Horde_Imap_Client_Fetch_Query();
@@ -5151,8 +6046,10 @@  discard block
 block discarded – undo
5151 6046
 			$headersNew = $this->icServer->fetch($_folder, $fquery, array(
5152 6047
 				'ids' => $uidsToFetch,
5153 6048
 			));
5154
-			if (is_object($headersNew)) {
5155
-				foreach($headersNew as &$_headerObject) {
6049
+			if (is_object($headersNew))
6050
+			{
6051
+				foreach($headersNew as &$_headerObject)
6052
+				{
5156 6053
 					$env = $_headerObject->getEnvelope();
5157 6054
 					//_debug_array($envFields->singleFields());
5158 6055
 					$singleFields = $envFields->singleFields();
@@ -5169,7 +6066,10 @@  discard block
 block discarded – undo
5169 6066
 								//error_log(__METHOD__.' ('.__LINE__.') '.$v.'->'.array2string($env->$v->addresses));
5170 6067
 								$envelope[$v]=$env->$v->addresses;
5171 6068
 								$address = array();
5172
-								if (!is_array($envelope[$v])) break;
6069
+								if (!is_array($envelope[$v]))
6070
+								{
6071
+									break;
6072
+								}
5173 6073
 								foreach ($envelope[$v] as $k => $ad)
5174 6074
 								{
5175 6075
 									if (stripos($ad,'@')===false)
@@ -5206,7 +6106,9 @@  discard block
 block discarded – undo
5206 6106
 				}
5207 6107
 			}
5208 6108
 			return $envelope;
5209
-		} else {
6109
+		}
6110
+		else
6111
+		{
5210 6112
 
5211 6113
 			$headers = $this->getMessageHeader($_uid, $_partID, true,true,$_folder);
5212 6114
 
@@ -5217,19 +6119,43 @@  discard block
 block discarded – undo
5217 6119
 				'SUBJECT'	=> ($decode ? self::decode_header($headers['SUBJECT']):$headers['SUBJECT']),
5218 6120
 				'MESSAGE_ID'	=> $headers['MESSAGE-ID']
5219 6121
 			);
5220
-			if (isset($headers['IN-REPLY-TO'])) $newData['IN-REPLY-TO'] = $headers['IN-REPLY-TO'];
5221
-			if (isset($headers['REFERENCES'])) $newData['REFERENCES'] = $headers['REFERENCES'];
5222
-			if (isset($headers['THREAD-TOPIC'])) $newData['THREAD-TOPIC'] = $headers['THREAD-TOPIC'];
5223
-			if (isset($headers['THREAD-INDEX'])) $newData['THREAD-INDEX'] = $headers['THREAD-INDEX'];
5224
-			if (isset($headers['LIST-ID'])) $newData['LIST-ID'] = $headers['LIST-ID'];
5225
-			if (isset($headers['SIZE'])) $newData['SIZE'] = $headers['SIZE'];
6122
+			if (isset($headers['IN-REPLY-TO']))
6123
+			{
6124
+				$newData['IN-REPLY-TO'] = $headers['IN-REPLY-TO'];
6125
+			}
6126
+			if (isset($headers['REFERENCES']))
6127
+			{
6128
+				$newData['REFERENCES'] = $headers['REFERENCES'];
6129
+			}
6130
+			if (isset($headers['THREAD-TOPIC']))
6131
+			{
6132
+				$newData['THREAD-TOPIC'] = $headers['THREAD-TOPIC'];
6133
+			}
6134
+			if (isset($headers['THREAD-INDEX']))
6135
+			{
6136
+				$newData['THREAD-INDEX'] = $headers['THREAD-INDEX'];
6137
+			}
6138
+			if (isset($headers['LIST-ID']))
6139
+			{
6140
+				$newData['LIST-ID'] = $headers['LIST-ID'];
6141
+			}
6142
+			if (isset($headers['SIZE']))
6143
+			{
6144
+				$newData['SIZE'] = $headers['SIZE'];
6145
+			}
5226 6146
 			//_debug_array($newData);
5227 6147
 			$recepientList = array('FROM', 'TO', 'CC', 'BCC', 'SENDER', 'REPLY-TO');
5228
-			foreach($recepientList as $recepientType) {
5229
-				if(isset($headers[$recepientType])) {
5230
-					if ($decode) $headers[$recepientType] =  self::decode_header($headers[$recepientType],true);
6148
+			foreach($recepientList as $recepientType)
6149
+			{
6150
+				if(isset($headers[$recepientType]))
6151
+				{
6152
+					if ($decode)
6153
+					{
6154
+						$headers[$recepientType] =  self::decode_header($headers[$recepientType],true);
6155
+					}
5231 6156
 					//error_log(__METHOD__.__LINE__." ".$recepientType."->".array2string($headers[$recepientType]));
5232
-					foreach(self::parseAddressList($headers[$recepientType]) as $singleAddress) {
6157
+					foreach(self::parseAddressList($headers[$recepientType]) as $singleAddress)
6158
+					{
5233 6159
 						$addressData = array(
5234 6160
 							'PERSONAL_NAME'		=> $singleAddress->personal ? $singleAddress->personal : 'NIL',
5235 6161
 							'AT_DOMAIN_LIST'	=> $singleAddress->adl ? $singleAddress->adl : 'NIL',
@@ -5237,17 +6163,25 @@  discard block
 block discarded – undo
5237 6163
 							'HOST_NAME'		=> $singleAddress->host ? $singleAddress->host : 'NIL',
5238 6164
 							'EMAIL'			=> $singleAddress->host ? $singleAddress->mailbox.'@'.$singleAddress->host : $singleAddress->mailbox,
5239 6165
 						);
5240
-						if($addressData['PERSONAL_NAME'] != 'NIL') {
6166
+						if($addressData['PERSONAL_NAME'] != 'NIL')
6167
+						{
5241 6168
 							$addressData['RFC822_EMAIL'] = imap_rfc822_write_address($singleAddress->mailbox, $singleAddress->host, $singleAddress->personal);
5242
-						} else {
6169
+						}
6170
+						else
6171
+						{
5243 6172
 							$addressData['RFC822_EMAIL'] = 'NIL';
5244 6173
 						}
5245 6174
 						$newData[$recepientType][] = ($addressData['RFC822_EMAIL']!='NIL'?$addressData['RFC822_EMAIL']:$addressData['EMAIL']);//$addressData;
5246 6175
 					}
5247
-				} else {
5248
-					if($recepientType == 'SENDER' || $recepientType == 'REPLY-TO') {
6176
+				}
6177
+				else
6178
+				{
6179
+					if($recepientType == 'SENDER' || $recepientType == 'REPLY-TO')
6180
+					{
5249 6181
 						$newData[$recepientType] = $newData['FROM'];
5250
-					} else {
6182
+					}
6183
+					else
6184
+					{
5251 6185
 						$newData[$recepientType] = array();
5252 6186
 					}
5253 6187
 				}
@@ -5270,9 +6204,15 @@  discard block
 block discarded – undo
5270 6204
 	function getMessageHeader($_uid, $_partID = '',$decode=false, $preserveUnSeen=false, $_folder='')
5271 6205
 	{
5272 6206
 		//error_log(__METHOD__.' ('.__LINE__.') '.':'.$_uid.', '.$_partID.', '.$decode.', '.$preserveUnSeen.', '.$_folder);
5273
-		if (empty($_folder)) $_folder = ($this->sessionData['mailbox']? $this->sessionData['mailbox'] : $this->icServer->getCurrentMailbox());
6207
+		if (empty($_folder))
6208
+		{
6209
+			$_folder = ($this->sessionData['mailbox']? $this->sessionData['mailbox'] : $this->icServer->getCurrentMailbox());
6210
+		}
5274 6211
 		$uidsToFetch = new Horde_Imap_Client_Ids();
5275
-		if (!(is_object($_uid) || is_array($_uid))) $_uid = (array)$_uid;
6212
+		if (!(is_object($_uid) || is_array($_uid)))
6213
+		{
6214
+			$_uid = (array)$_uid;
6215
+		}
5276 6216
 		$uidsToFetch->add($_uid);
5277 6217
 
5278 6218
 		$fquery = new Horde_Imap_Client_Fetch_Query();
@@ -5290,7 +6230,8 @@  discard block
 block discarded – undo
5290 6230
 		$headersNew = $this->icServer->fetch($_folder, $fquery, array(
5291 6231
 			'ids' => $uidsToFetch,
5292 6232
 		));
5293
-		if (is_object($headersNew)) {
6233
+		if (is_object($headersNew))
6234
+		{
5294 6235
 			foreach($headersNew as $_fetchObject)
5295 6236
 			{
5296 6237
 				$headers = $_fetchObject->getHeaderText(0,Horde_Imap_Client_Data_Fetch::HEADER_PARSE);
@@ -5312,11 +6253,17 @@  discard block
 block discarded – undo
5312 6253
 			}
5313 6254
 			if ($decode === 'object')
5314 6255
 			{
5315
-				if (is_object($headers)) $headers->setUserAgent('EGroupware API '.$GLOBALS['egw_info']['server']['versions']['phpgwapi']);
6256
+				if (is_object($headers))
6257
+				{
6258
+					$headers->setUserAgent('EGroupware API '.$GLOBALS['egw_info']['server']['versions']['phpgwapi']);
6259
+				}
5316 6260
 				return $headers;
5317 6261
 			}
5318 6262
 			$retValue = is_object($headers) ? $headers->toArray():array();
5319
-			if ($size) $retValue['size'] = $size;
6263
+			if ($size)
6264
+			{
6265
+				$retValue['size'] = $size;
6266
+			}
5320 6267
 		}
5321 6268
 		$retValue = array_change_key_case($retValue,CASE_UPPER);
5322 6269
 		//error_log(__METHOD__.' ('.__LINE__.') '.array2string($retValue));
@@ -5348,10 +6295,16 @@  discard block
 block discarded – undo
5348 6295
 	function getMessageRawHeader($_uid, $_partID = '', $_folder = '')
5349 6296
 	{
5350 6297
 		static $rawHeaders;
5351
-		if (empty($_folder)) $_folder = ($this->sessionData['mailbox']? $this->sessionData['mailbox'] : $this->icServer->getCurrentMailbox());
6298
+		if (empty($_folder))
6299
+		{
6300
+			$_folder = ($this->sessionData['mailbox']? $this->sessionData['mailbox'] : $this->icServer->getCurrentMailbox());
6301
+		}
5352 6302
 		//error_log(__METHOD__.' ('.__LINE__.') '." Try Using Cache for raw Header $_uid, $_partID in Folder $_folder");
5353 6303
 
5354
-		if (is_null($rawHeaders)||!is_array($rawHeaders)) $rawHeaders = Cache::getCache(Cache::INSTANCE,'email','rawHeadersCache'.trim($GLOBALS['egw_info']['user']['account_id']),null,array(),60*60*1);
6304
+		if (is_null($rawHeaders)||!is_array($rawHeaders))
6305
+		{
6306
+			$rawHeaders = Cache::getCache(Cache::INSTANCE,'email','rawHeadersCache'.trim($GLOBALS['egw_info']['user']['account_id']),null,array(),60*60*1);
6307
+		}
5355 6308
 		if (isset($rawHeaders[$this->icServer->ImapServerId][(string)$_folder][$_uid][(empty($_partID)?'NIL':$_partID)]))
5356 6309
 		{
5357 6310
 			//error_log(__METHOD__.' ('.__LINE__.') '." Using Cache for raw Header $_uid, $_partID in Folder $_folder");
@@ -5359,7 +6312,10 @@  discard block
 block discarded – undo
5359 6312
 		}
5360 6313
 		$uidsToFetch = new Horde_Imap_Client_Ids();
5361 6314
 		$uid = $_uid;
5362
-		if (!(is_object($_uid) || is_array($_uid))) $uid = (array)$_uid;
6315
+		if (!(is_object($_uid) || is_array($_uid)))
6316
+		{
6317
+			$uid = (array)$_uid;
6318
+		}
5363 6319
 		$uidsToFetch->add($uid);
5364 6320
 
5365 6321
 		$fquery = new Horde_Imap_Client_Fetch_Query();
@@ -5375,8 +6331,10 @@  discard block
 block discarded – undo
5375 6331
 		$headersNew = $this->icServer->fetch($_folder, $fquery, array(
5376 6332
 			'ids' => $uidsToFetch,
5377 6333
 		));
5378
-		if (is_object($headersNew)) {
5379
-			foreach($headersNew as &$_headerObject) {
6334
+		if (is_object($headersNew))
6335
+		{
6336
+			foreach($headersNew as &$_headerObject)
6337
+			{
5380 6338
 				$retValue = $_headerObject->getHeaderText();
5381 6339
 				if ($_partID != '')
5382 6340
 				{
@@ -5404,22 +6362,33 @@  discard block
 block discarded – undo
5404 6362
 	static function &getStyles($_bodyParts)
5405 6363
 	{
5406 6364
 		$style = '';
5407
-		if (empty($_bodyParts)) return "";
5408
-		foreach((array)$_bodyParts as $singleBodyPart) {
5409
-			if (!isset($singleBodyPart['body'])) {
6365
+		if (empty($_bodyParts))
6366
+		{
6367
+			return "";
6368
+		}
6369
+		foreach((array)$_bodyParts as $singleBodyPart)
6370
+		{
6371
+			if (!isset($singleBodyPart['body']))
6372
+			{
5410 6373
 				$singleBodyPart['body'] = self::getStyles($singleBodyPart);
5411 6374
 				$style .= $singleBodyPart['body'];
5412 6375
 				continue;
5413 6376
 			}
5414 6377
 
5415
-			if ($singleBodyPart['charSet']===false) $singleBodyPart['charSet'] = Translation::detect_encoding($singleBodyPart['body']);
6378
+			if ($singleBodyPart['charSet']===false)
6379
+			{
6380
+				$singleBodyPart['charSet'] = Translation::detect_encoding($singleBodyPart['body']);
6381
+			}
5416 6382
 			$singleBodyPart['body'] = Translation::convert(
5417 6383
 				$singleBodyPart['body'],
5418 6384
 				strtolower($singleBodyPart['charSet'])
5419 6385
 			);
5420 6386
 			$ct = 0;
5421 6387
 			$newStyle=array();
5422
-			if (stripos($singleBodyPart['body'],'<style')!==false)  $ct = preg_match_all('#<style(?:\s.*)?>(.+)</style>#isU', $singleBodyPart['body'], $newStyle);
6388
+			if (stripos($singleBodyPart['body'],'<style')!==false)
6389
+			{
6390
+				$ct = preg_match_all('#<style(?:\s.*)?>(.+)</style>#isU', $singleBodyPart['body'], $newStyle);
6391
+			}
5423 6392
 			if ($ct>0)
5424 6393
 			{
5425 6394
 				//error_log(__METHOD__.' ('.__LINE__.') '.'#'.$ct.'#'.array2string($newStyle));
@@ -5451,7 +6420,11 @@  discard block
 block discarded – undo
5451 6420
 		// CSS Security
5452 6421
 		// http://code.google.com/p/browsersec/wiki/Part1#Cascading_stylesheets
5453 6422
 		$css = preg_replace('/(javascript|expression|-moz-binding)/i','',$style);
5454
-		if (stripos($css,'script')!==false) Mail\Html::replaceTagsCompletley($css,'script'); // Strip out script that may be included
6423
+		if (stripos($css,'script')!==false)
6424
+		{
6425
+			Mail\Html::replaceTagsCompletley($css,'script');
6426
+		}
6427
+		// Strip out script that may be included
5455 6428
 		// we need this, as styledefinitions are enclosed with curly brackets; and template stuff tries to replace everything between curly brackets that is having no horizontal whitespace
5456 6429
 		// as the comments as <!-- styledefinition --> in stylesheet are outdated, and ck-editor does not understand it, we remove it
5457 6430
 		$css = str_replace(array(':','<!--','-->'),array(': ','',''),$css);
@@ -5473,8 +6446,14 @@  discard block
 block discarded – undo
5473 6446
 	{
5474 6447
 		//TODO: caching einbauen static!
5475 6448
 		static $rawBody;
5476
-		if (is_null($rawBody)) $rawBody = array();
5477
-		if (empty($_folder)) $_folder = ($this->sessionData['mailbox']? $this->sessionData['mailbox'] : $this->icServer->getCurrentMailbox());
6449
+		if (is_null($rawBody))
6450
+		{
6451
+			$rawBody = array();
6452
+		}
6453
+		if (empty($_folder))
6454
+		{
6455
+			$_folder = ($this->sessionData['mailbox']? $this->sessionData['mailbox'] : $this->icServer->getCurrentMailbox());
6456
+		}
5478 6457
 		if (!$_stream && isset($rawBody[$this->icServer->ImapServerId][$_folder][$_uid][(empty($_partID)?'NIL':$_partID)]))
5479 6458
 		{
5480 6459
 			//error_log(__METHOD__.' ('.__LINE__.') '." Using Cache for raw Body $_uid, $_partID in Folder $_folder");
@@ -5483,7 +6462,10 @@  discard block
 block discarded – undo
5483 6462
 
5484 6463
 		$uidsToFetch = new Horde_Imap_Client_Ids();
5485 6464
 		$uid = $_uid;
5486
-		if (!(is_object($_uid) || is_array($_uid))) $uid = (array)$_uid;
6465
+		if (!(is_object($_uid) || is_array($_uid)))
6466
+		{
6467
+			$uid = (array)$_uid;
6468
+		}
5487 6469
 		$uidsToFetch->add($uid);
5488 6470
 
5489 6471
 		$fquery = new Horde_Imap_Client_Fetch_Query();
@@ -5496,8 +6478,10 @@  discard block
 block discarded – undo
5496 6478
 		$headersNew = $this->icServer->fetch($_folder, $fquery, array(
5497 6479
 			'ids' => $uidsToFetch,
5498 6480
 		));
5499
-		if (is_object($headersNew)) {
5500
-			foreach($headersNew as &$_headerObject) {
6481
+		if (is_object($headersNew))
6482
+		{
6483
+			foreach($headersNew as &$_headerObject)
6484
+			{
5501 6485
 				$body = $_headerObject->getFullMsg($_stream);
5502 6486
 				if ($_partID != '')
5503 6487
 				{
@@ -5533,14 +6517,20 @@  discard block
 block discarded – undo
5533 6517
 	 */
5534 6518
 	function getStructure($_uid, $_partID=null, $_folder=null, $_preserveSeen=false)
5535 6519
 	{
5536
-		if (self::$debug) error_log( __METHOD__.' ('.__LINE__.') '.":$_uid, $_partID");
6520
+		if (self::$debug)
6521
+		{
6522
+			error_log( __METHOD__.' ('.__LINE__.') '.":$_uid, $_partID");
6523
+		}
5537 6524
 
5538 6525
 		if (empty($_folder))
5539 6526
 		{
5540 6527
 			$_folder = ($this->sessionData['mailbox']? $this->sessionData['mailbox'] : $this->icServer->getCurrentMailbox());
5541 6528
 		}
5542 6529
 		$uidsToFetch = new Horde_Imap_Client_Ids();
5543
-		if (!(is_object($_uid) || is_array($_uid))) $_uid = (array)$_uid;
6530
+		if (!(is_object($_uid) || is_array($_uid)))
6531
+		{
6532
+			$_uid = (array)$_uid;
6533
+		}
5544 6534
 		$uidsToFetch->add($_uid);
5545 6535
 		try
5546 6536
 		{
@@ -5549,7 +6539,10 @@  discard block
 block discarded – undo
5549 6539
 	//		$fquery->envelope();
5550 6540
 	//		$fquery->size();
5551 6541
 			$_fquery->structure();
5552
-			if ($_partID) $_fquery->bodyPart($_partID, array('peek' => $_preserveSeen));
6542
+			if ($_partID)
6543
+			{
6544
+				$_fquery->bodyPart($_partID, array('peek' => $_preserveSeen));
6545
+			}
5553 6546
 
5554 6547
 			$mail = $this->icServer->fetch($_folder, $_fquery, array(
5555 6548
 				'ids' => $uidsToFetch,
@@ -5580,16 +6573,28 @@  discard block
 block discarded – undo
5580 6573
 	 */
5581 6574
 	function getMessageAttachments($_uid, $_partID=null, Horde_Mime_Part $_structure=null, $fetchEmbeddedImages=true, $fetchTextCalendar=false, $resolveTNEF=true, $_folder='')
5582 6575
 	{
5583
-		if (self::$debug) error_log( __METHOD__.":$_uid, $_partID");
5584
-		if (empty($_folder)) $_folder = ($this->sessionData['mailbox']? $this->sessionData['mailbox'] : $this->icServer->getCurrentMailbox());
6576
+		if (self::$debug)
6577
+		{
6578
+			error_log( __METHOD__.":$_uid, $_partID");
6579
+		}
6580
+		if (empty($_folder))
6581
+		{
6582
+			$_folder = ($this->sessionData['mailbox']? $this->sessionData['mailbox'] : $this->icServer->getCurrentMailbox());
6583
+		}
5585 6584
 		$attachments = array();
5586 6585
 		if (!isset($_structure))
5587 6586
 		{
5588 6587
 			$_structure = $this->getStructure($_uid, $_partID,$_folder,true);
5589 6588
 			//error_log(__METHOD__.' ('.__LINE__.') '.':'.print_r($_structure->contentTypeMap(),true));
5590 6589
 		}
5591
-		if (!$_structure || !$_structure->contentTypeMap()) return array();
5592
-		if (!empty($_partID)) $_structure = $_structure->getPart($_partID);
6590
+		if (!$_structure || !$_structure->contentTypeMap())
6591
+		{
6592
+			return array();
6593
+		}
6594
+		if (!empty($_partID))
6595
+		{
6596
+			$_structure = $_structure->getPart($_partID);
6597
+		}
5593 6598
 		$skipParts = array();
5594 6599
 		$tnefParts = array();
5595 6600
 		$skip = 0;
@@ -5618,7 +6623,13 @@  discard block
 block discarded – undo
5618 6623
 			if ($mime_type=='message/rfc822' && $_partID!=$mime_id)
5619 6624
 			{
5620 6625
 				//error_log(__METHOD__.' ('.__LINE__.') '.' Uid:'.$uid.'->'.$mime_id.':'.array2string($part->contentTypeMap()));
5621
-				foreach($part->contentTypeMap() as $sub_id => $sub_type) {if ($sub_id != $mime_id) $skipParts[$sub_id] = $sub_type;}
6626
+				foreach($part->contentTypeMap() as $sub_id => $sub_type)
6627
+				{
6628
+if ($sub_id != $mime_id)
6629
+				{
6630
+					$skipParts[$sub_id] = $sub_type;
6631
+				}
6632
+				}
5622 6633
 			}
5623 6634
 			if (empty($partDisposition) && $partPrimaryType != 'multipart' && $partPrimaryType != 'text')
5624 6635
 			{
@@ -5629,7 +6640,10 @@  discard block
 block discarded – undo
5629 6640
 				$partDisposition='attachment';
5630 6641
 			}
5631 6642
 			//error_log(__METHOD__.' ('.__LINE__.') '.' Uid:'.$uid.' Part:'.$_partID.'->'.$mime_id.':'.array2string($skipParts));
5632
-			if (array_key_exists($mime_id,$skipParts)) continue;
6643
+			if (array_key_exists($mime_id,$skipParts))
6644
+			{
6645
+				continue;
6646
+			}
5633 6647
 
5634 6648
 			if ($partDisposition == 'attachment' ||
5635 6649
 				(($partDisposition == 'inline' || empty($partDisposition)) && $partPrimaryType == 'image' && $part->getContentId()=='') ||
@@ -5640,23 +6654,41 @@  discard block
 block discarded – undo
5640 6654
 			{
5641 6655
 				// if type is message/rfc822 and _partID is given, and MimeID equals partID
5642 6656
 				// we attempt to fetch "ourselves"
5643
-				if ($_partID==$part->getMimeId() && $part->getPrimaryType()=='message') continue;
6657
+				if ($_partID==$part->getMimeId() && $part->getPrimaryType()=='message')
6658
+				{
6659
+					continue;
6660
+				}
5644 6661
 				$attachment = $part->getAllDispositionParameters();
5645 6662
 				$attachment['disposition'] = $part->getDisposition();
5646 6663
 				$attachment['mimeType'] = $mime_type;
5647 6664
 				$attachment['uid'] = $_uid;
5648 6665
 				$attachment['partID'] = $mime_id;
5649
-				if (!isset($attachment['name'])||empty($attachment['name'])) $attachment['name'] = $part->getName();
6666
+				if (!isset($attachment['name'])||empty($attachment['name']))
6667
+				{
6668
+					$attachment['name'] = $part->getName();
6669
+				}
5650 6670
 				if ($fetchTextCalendar)
5651 6671
 				{
5652 6672
 					//error_log(__METHOD__.' ('.__LINE__.') '.array2string($part->getAllContentTypeParameters()));
5653 6673
 					$method = $part->getContentTypeParameter('method');
5654
-					if ($method) $attachment['method'] = $method;
5655
-					if (!isset($attachment['name'])) $attachment['name'] = 'event.ics';
6674
+					if ($method)
6675
+					{
6676
+						$attachment['method'] = $method;
6677
+					}
6678
+					if (!isset($attachment['name']))
6679
+					{
6680
+						$attachment['name'] = 'event.ics';
6681
+					}
5656 6682
 				}
5657 6683
 				$attachment['size'] = $part->getBytes();
5658
-				if (($cid = $part->getContentId())) $attachment['cid'] = $cid;
5659
-				if (empty($attachment['name'])) $attachment['name'] = (isset($attachment['cid'])&&!empty($attachment['cid'])?$attachment['cid']:lang("unknown").'_Uid'.$_uid.'_Part'.$mime_id).'.'.MimeMagic::mime2ext($mime_type);
6684
+				if (($cid = $part->getContentId()))
6685
+				{
6686
+					$attachment['cid'] = $cid;
6687
+				}
6688
+				if (empty($attachment['name']))
6689
+				{
6690
+					$attachment['name'] = (isset($attachment['cid'])&&!empty($attachment['cid'])?$attachment['cid']:lang("unknown").'_Uid'.$_uid.'_Part'.$mime_id).'.'.MimeMagic::mime2ext($mime_type);
6691
+				}
5660 6692
 				//error_log(__METHOD__.' ('.__LINE__.') '.' Uid:'.$uid.' Part:'.$_partID.'->'.$mime_id.':'.array2string($attachment));
5661 6693
 				//typical winmail.dat attachment is
5662 6694
 				//Array([size] => 1462762[filename] => winmail.dat[mimeType] => application/ms-tnef[uid] => 100[partID] => 2[name] => winmail.dat)
@@ -5692,14 +6724,26 @@  discard block
 block discarded – undo
5692 6724
 						$attachment['uid'] = $tnp['uid'];
5693 6725
 						$attachment['partID'] = $tnp['partID'];
5694 6726
 						$attachment['is_winmail'] = $tnp['uid'].'@'.$tnp['partID'].'@'.$mime_id;
5695
-						if (!isset($attachment['name'])||empty($attachment['name'])) $attachment['name'] = $part->getName();
6727
+						if (!isset($attachment['name'])||empty($attachment['name']))
6728
+						{
6729
+							$attachment['name'] = $part->getName();
6730
+						}
5696 6731
 						$attachment['size'] = $part->getBytes();
5697
-						if (($cid = $part->getContentId())) $attachment['cid'] = $cid;
5698
-						if (empty($attachment['name'])) $attachment['name'] = (isset($attachment['cid'])&&!empty($attachment['cid'])?$attachment['cid']:lang("unknown").'_Uid'.$_uid.'_Part'.$mime_id).'.'.MimeMagic::mime2ext($attachment['mimeType']);
6732
+						if (($cid = $part->getContentId()))
6733
+						{
6734
+							$attachment['cid'] = $cid;
6735
+						}
6736
+						if (empty($attachment['name']))
6737
+						{
6738
+							$attachment['name'] = (isset($attachment['cid'])&&!empty($attachment['cid'])?$attachment['cid']:lang("unknown").'_Uid'.$_uid.'_Part'.$mime_id).'.'.MimeMagic::mime2ext($attachment['mimeType']);
6739
+						}
5699 6740
 						$attachments[] = $attachment;
5700 6741
 					}
5701 6742
 				}
5702
-				if ($tnefResolved===false) $attachments[]=$tnp;
6743
+				if ($tnefResolved===false)
6744
+				{
6745
+					$attachments[]=$tnp;
6746
+				}
5703 6747
 			}
5704 6748
 		}
5705 6749
 		//error_log(__METHOD__.__LINE__.array2string($attachments));
@@ -5803,8 +6847,14 @@  discard block
 block discarded – undo
5803 6847
 
5804 6848
 				$attachment = $part->getAllDispositionParameters();
5805 6849
 				$attachment['mimeType'] = $part->getType();
5806
-				if (!isset($attachment['filename'])||empty($attachment['filename'])) $attachment['filename'] = $part->getName();
5807
-				if (($cid = $part->getContentId())) $attachment['cid'] = $cid;
6850
+				if (!isset($attachment['filename'])||empty($attachment['filename']))
6851
+				{
6852
+					$attachment['filename'] = $part->getName();
6853
+				}
6854
+				if (($cid = $part->getContentId()))
6855
+				{
6856
+					$attachment['cid'] = $cid;
6857
+				}
5808 6858
 				if (empty($attachment['filename']))
5809 6859
 				{
5810 6860
 					$attachment['filename'] = (isset($attachment['cid'])&&!empty($attachment['cid'])?
@@ -5816,7 +6866,10 @@  discard block
 block discarded – undo
5816 6866
 				$attachments[$_uid.'@'.$_partID.'@'.$mime_id] = $attachment;
5817 6867
 			}
5818 6868
 		}
5819
-		if (!is_array($attachments)) return false;
6869
+		if (!is_array($attachments))
6870
+		{
6871
+			return false;
6872
+		}
5820 6873
 		return $attachments;
5821 6874
 	}
5822 6875
 
@@ -5835,10 +6888,16 @@  discard block
 block discarded – undo
5835 6888
 	function getAttachment($_uid, $_partID, $_winmail_nr=0, $_returnPart=true, $_stream=false, $_folder=null)
5836 6889
 	{
5837 6890
 		//error_log(__METHOD__.__LINE__."Uid:$_uid, PartId:$_partID, WinMailNr:$_winmail_nr, ReturnPart:$_returnPart, Stream:$_stream, Folder:$_folder".function_backtrace());
5838
-		if (!isset($_folder)) $_folder = ($this->sessionData['mailbox']? $this->sessionData['mailbox'] : $this->icServer->getCurrentMailbox());
6891
+		if (!isset($_folder))
6892
+		{
6893
+			$_folder = ($this->sessionData['mailbox']? $this->sessionData['mailbox'] : $this->icServer->getCurrentMailbox());
6894
+		}
5839 6895
 
5840 6896
 		$uidsToFetch = new Horde_Imap_Client_Ids();
5841
-		if (!(is_object($_uid) || is_array($_uid))) $_uid = (array)$_uid;
6897
+		if (!(is_object($_uid) || is_array($_uid)))
6898
+		{
6899
+			$_uid = (array)$_uid;
6900
+		}
5842 6901
 		$uidsToFetch->add($_uid);
5843 6902
 
5844 6903
 		$fquery = new Horde_Imap_Client_Fetch_Query();
@@ -5847,8 +6906,10 @@  discard block
 block discarded – undo
5847 6906
 		$headersNew = $this->icServer->fetch($_folder, $fquery, array(
5848 6907
 			'ids' => $uidsToFetch,
5849 6908
 		));
5850
-		if (is_object($headersNew)) {
5851
-			foreach($headersNew as $id=>$_headerObject) {
6909
+		if (is_object($headersNew))
6910
+		{
6911
+			foreach($headersNew as $id=>$_headerObject)
6912
+			{
5852 6913
 				$body = $_headerObject->getFullMsg();
5853 6914
 				if ($_partID != '')
5854 6915
 				{
@@ -5862,7 +6923,10 @@  discard block
 block discarded – undo
5862 6923
 					}
5863 6924
 					// if $partDisposition is empty, we assume attachment, and hope that the function
5864 6925
 					// itself is only triggered to fetch attachments
5865
-					if (empty($partDisposition)) $partDisposition='attachment';
6926
+					if (empty($partDisposition))
6927
+					{
6928
+						$partDisposition='attachment';
6929
+					}
5866 6930
 					if ($part && ($partDisposition=='attachment' || $partDisposition=='inline' || ($part->getPrimaryType() == 'text' && $part->getSubType() == 'calendar')))
5867 6931
 					{
5868 6932
 						//$headerObject=$part->getAllDispositionParameters();//not used anywhere around here
@@ -5871,13 +6935,19 @@  discard block
 block discarded – undo
5871 6935
 						$charset = $part->getContentTypeParameter('charset');
5872 6936
 						//$structure_bytes = $part->getBytes(); $structure_partID=$part->getMimeId(); error_log(__METHOD__.__LINE__." fetchPartContents(".array2string($_uid).", $structure_partID, $_stream, $_preserveSeen,$structure_mime)" );
5873 6937
 						$this->fetchPartContents($_uid, $part, $_stream, $_preserveSeen=true,$structure_mime);
5874
-						if ($_returnPart) return $part;
6938
+						if ($_returnPart)
6939
+						{
6940
+							return $part;
6941
+						}
5875 6942
 					}
5876 6943
 				}
5877 6944
 			}
5878 6945
 		}
5879 6946
 		$ext = MimeMagic::mime2ext($structure_mime);
5880
-		if ($ext && stripos($filename,'.')===false && stripos($filename,$ext)===false) $filename = trim($filename).'.'.$ext;
6947
+		if ($ext && stripos($filename,'.')===false && stripos($filename,$ext)===false)
6948
+		{
6949
+			$filename = trim($filename).'.'.$ext;
6950
+		}
5881 6951
 		if (!$part)
5882 6952
 		{
5883 6953
 			throw new Exception\WrongParameter("Error: Could not fetch attachment for Uid=".array2string($_uid).", PartId=$_partID, WinMailNr=$_winmail_nr, folder=$_folder");
@@ -5893,7 +6963,10 @@  discard block
 block discarded – undo
5893 6963
 		);
5894 6964
 
5895 6965
 		// try guessing the mimetype, if we get the application/octet-stream
5896
-		if (strtolower($attachmentData['type']) == 'application/octet-stream') $attachmentData['type'] = MimeMagic::filename2mime($attachmentData['filename']);
6966
+		if (strtolower($attachmentData['type']) == 'application/octet-stream')
6967
+		{
6968
+			$attachmentData['type'] = MimeMagic::filename2mime($attachmentData['filename']);
6969
+		}
5897 6970
 		# if the attachment holds a winmail number and is a winmail.dat then we have to handle that.
5898 6971
 		if ( $filename == 'winmail.dat' && $_winmail_nr)
5899 6972
 		{
@@ -5916,9 +6989,18 @@  discard block
 block discarded – undo
5916 6989
 					if ($_winmail_nr == $wantedPart.'@'.$mime_id)
5917 6990
 					{
5918 6991
 						//error_log(__METHOD__.__LINE__.'#'.$structure_mime.'#'.$filename.'#'.array2string($attachment));
5919
-						if (!isset($attachment['filename'])||empty($attachment['filename'])) $attachment['filename'] = $part->getName();
5920
-						if (($cid = $part->getContentId())) $attachment['cid'] = $cid;
5921
-						if (empty($attachment['filename'])) $attachment['filename'] = (isset($attachment['cid'])&&!empty($attachment['cid'])?$attachment['cid']:lang("unknown").'_Uid'.$_uid.'_Part'.$mime_id).'.'.MimeMagic::mime2ext($attachment['mimeType']);
6992
+						if (!isset($attachment['filename'])||empty($attachment['filename']))
6993
+						{
6994
+							$attachment['filename'] = $part->getName();
6995
+						}
6996
+						if (($cid = $part->getContentId()))
6997
+						{
6998
+							$attachment['cid'] = $cid;
6999
+						}
7000
+						if (empty($attachment['filename']))
7001
+						{
7002
+							$attachment['filename'] = (isset($attachment['cid'])&&!empty($attachment['cid'])?$attachment['cid']:lang("unknown").'_Uid'.$_uid.'_Part'.$mime_id).'.'.MimeMagic::mime2ext($attachment['mimeType']);
7003
+						}
5922 7004
 						$wmattach = $attachment;
5923 7005
 						$wmattach['attachment'] = $part->getContents(array('stream'=>$_stream));
5924 7006
 
@@ -5928,7 +7010,10 @@  discard block
 block discarded – undo
5928 7010
 			if ($tnefResolved)
5929 7011
 			{
5930 7012
 				$ext = MimeMagic::mime2ext($wmattach['mimeType']);
5931
-				if ($ext && stripos($wmattach['filename'],'.')===false && stripos($wmattach['filename'],$ext)===false) $wmattach['filename'] = trim($wmattach['filename']).'.'.$ext;
7013
+				if ($ext && stripos($wmattach['filename'],'.')===false && stripos($wmattach['filename'],$ext)===false)
7014
+				{
7015
+					$wmattach['filename'] = trim($wmattach['filename']).'.'.$ext;
7016
+				}
5932 7017
 				$attachmentData = array(
5933 7018
 					'type'       => $wmattach['mimeType'],
5934 7019
 					'filename'   => $wmattach['filename'],
@@ -5958,7 +7043,10 @@  discard block
 block discarded – undo
5958 7043
 		static $uid=null, $part=null, $structure=null;
5959 7044
 		//error_log(__METHOD__.' ('.__LINE__.') '.":$_uid, $_cid, $_part");
5960 7045
 
5961
-		if(empty($_cid)) return false;
7046
+		if(empty($_cid))
7047
+		{
7048
+			return false;
7049
+		}
5962 7050
 
5963 7051
 		if ($_uid != $uid || $_part != $part)
5964 7052
 		{
@@ -5983,13 +7071,19 @@  discard block
 block discarded – undo
5983 7071
 					$attachment = $part;
5984 7072
 				}
5985 7073
 				// everything else we only consider after we checked all
5986
-				if (!isset($attachment)) $attachment = $part;
7074
+				if (!isset($attachment))
7075
+				{
7076
+					$attachment = $part;
7077
+				}
5987 7078
 				// do we want content fetched, can be done later, if not needed
5988 7079
 				if (isset($_stream))
5989 7080
 				{
5990 7081
 					$this->fetchPartContents($_uid, $attachment, $_stream);
5991 7082
 				}
5992
-				if (isset($attachment)) break;
7083
+				if (isset($attachment))
7084
+				{
7085
+					break;
7086
+				}
5993 7087
 			}
5994 7088
 		}
5995 7089
 		// set name as filename, if not set
@@ -6020,10 +7114,17 @@  discard block
 block discarded – undo
6020 7114
 	 */
6021 7115
 	public function fetchPartContents($_uid, Horde_Mime_Part $part=null, $_stream=false, $_preserveSeen=false, $_mimetype=null)
6022 7116
 	{
6023
-		if (is_null($part)) return null;//new Horde_Mime_Part;
7117
+		if (is_null($part))
7118
+		{
7119
+			return null;
7120
+		}
7121
+		//new Horde_Mime_Part;
6024 7122
 		$encoding = null;
6025 7123
 		$fetchAsBinary = true;
6026
-		if ($_mimetype && strtolower($_mimetype)=='message/rfc822') $fetchAsBinary = false;
7124
+		if ($_mimetype && strtolower($_mimetype)=='message/rfc822')
7125
+		{
7126
+			$fetchAsBinary = false;
7127
+		}
6027 7128
 		// we need to set content on structure to decode transfer encoding
6028 7129
 		$part->setContents(
6029 7130
 			$this->getBodyPart($_uid, $part->getMimeId(), null, $_preserveSeen, $_stream, $encoding, $fetchAsBinary),
@@ -6060,7 +7161,10 @@  discard block
 block discarded – undo
6060 7161
 		// the recent flag is the default enforced here ; as we assume the _flags is always set,
6061 7162
 		// we default it to hordes default (Recent) (, other wise we should not pass the parameter
6062 7163
 		// for flags at all)
6063
-		if (empty($_flags)) $_flags = '\\Recent';
7164
+		if (empty($_flags))
7165
+		{
7166
+			$_flags = '\\Recent';
7167
+		}
6064 7168
 		//if (!is_array($_flags) && stripos($_flags,',')!==false) $_flags=explode(',',$_flags);
6065 7169
 		//if (!is_array($_flags)) $_flags = (array) $_flags;
6066 7170
 		try
@@ -6077,18 +7181,27 @@  discard block
 block discarded – undo
6077 7181
 		}
6078 7182
 		catch (\Exception $e)
6079 7183
 		{
6080
-			if (self::$debug) error_log("Could not append Message: ".$e->getMessage());
7184
+			if (self::$debug)
7185
+			{
7186
+				error_log("Could not append Message: ".$e->getMessage());
7187
+			}
6081 7188
 			throw new Exception\WrongUserinput(lang("Could not append Message:").' '.$e->getMessage().': '.$e->details);
6082 7189
 			//return false;
6083 7190
 		}
6084 7191
 		//error_log(__METHOD__.' ('.__LINE__.') '.' appended UID:'.$messageid);
6085 7192
 		//$messageid = true; // for debug reasons only
6086
-		if ($messageid === true || empty($messageid)) // try to figure out the message uid
7193
+		if ($messageid === true || empty($messageid))
7194
+		{
7195
+			// try to figure out the message uid
6087 7196
 		{
6088 7197
 			$list = $this->getHeaders($_folderName, $_startMessage=1, 1, 'INTERNALDATE', true, array(),null, false);
7198
+		}
6089 7199
 			if ($list)
6090 7200
 			{
6091
-				if (self::$debug) error_log(__METHOD__.' ('.__LINE__.') '.' MessageUid:'.$messageid.' but found:'.array2string($list));
7201
+				if (self::$debug)
7202
+				{
7203
+					error_log(__METHOD__.' ('.__LINE__.') '.' MessageUid:'.$messageid.' but found:'.array2string($list));
7204
+				}
6092 7205
 				$messageid = $list['header'][0]['uid'];
6093 7206
 			}
6094 7207
 		}
@@ -6129,7 +7242,10 @@  discard block
 block discarded – undo
6129 7242
 	{
6130 7243
 			//echo __METHOD__." called for $uid,$partid <br>";
6131 7244
 			$headers = $mailClass->getMessageHeader($uid,$partid,true,false,$mailbox);
6132
-			if (empty($headers)) return false;
7245
+			if (empty($headers))
7246
+			{
7247
+				return false;
7248
+			}
6133 7249
 			// dont force retrieval of the textpart, let mailClass preferences decide
6134 7250
 			$bodyParts = $mailClass->getMessageBody($uid,($preserveHTML?'always_display':'only_if_no_text'),$partid,null,false,$mailbox);
6135 7251
 			// if we do not want HTML but there is no TextRepresentation with the message itself, try converting
@@ -6147,15 +7263,30 @@  discard block
 block discarded – undo
6147 7263
 			//error_log(array2string($bodyParts));
6148 7264
 			$attachments = $includeAttachments?$mailClass->getMessageAttachments($uid,$partid,null,true,false,true,$mailbox):array();
6149 7265
 
6150
-			if ($mailClass->isSentFolder($mailbox)) $mailaddress = $headers['TO'];
6151
-			elseif (isset($headers['FROM'])) $mailaddress = $headers['FROM'];
6152
-			elseif (isset($headers['SENDER'])) $mailaddress = $headers['SENDER'];
6153
-			if (isset($headers['CC'])) $mailaddress .= ','.$headers['CC'];
7266
+			if ($mailClass->isSentFolder($mailbox))
7267
+			{
7268
+				$mailaddress = $headers['TO'];
7269
+			}
7270
+			elseif (isset($headers['FROM']))
7271
+			{
7272
+				$mailaddress = $headers['FROM'];
7273
+			}
7274
+			elseif (isset($headers['SENDER']))
7275
+			{
7276
+				$mailaddress = $headers['SENDER'];
7277
+			}
7278
+			if (isset($headers['CC']))
7279
+			{
7280
+				$mailaddress .= ','.$headers['CC'];
7281
+			}
6154 7282
 			//_debug_array(array($headers,$mailaddress));
6155 7283
 			$subject = $headers['SUBJECT'];
6156 7284
 
6157 7285
 			$message = self::getdisplayableBody($mailClass, $bodyParts, $preserveHTML);
6158
-			if ($preserveHTML && $mailClass->activeMimeType == 'text/plain') $message = '<pre>'.$message.'</pre>';
7286
+			if ($preserveHTML && $mailClass->activeMimeType == 'text/plain')
7287
+			{
7288
+				$message = '<pre>'.$message.'</pre>';
7289
+			}
6159 7290
 			$headdata = ($addHeaderSection ? self::createHeaderInfoSection($headers, '',$preserveHTML) : '');
6160 7291
 			$message = $headdata.$message;
6161 7292
 			//echo __METHOD__.'<br>';
@@ -6206,7 +7337,8 @@  discard block
 block discarded – undo
6206 7337
 							$attachments[$num]['attachment'] = $c->getContents();
6207 7338
 						}
6208 7339
 						// no attempt to convert, if we dont know about the charset
6209
-						if (isset($attachments[$num]['charset'])&&!empty($attachments[$num]['charset'])) {
7340
+						if (isset($attachments[$num]['charset'])&&!empty($attachments[$num]['charset']))
7341
+						{
6210 7342
 							// we do not try guessing the charset, if it is not set
6211 7343
 							//if ($attachments[$num]['charset']===false) $attachments[$num]['charset'] = Translation::detect_encoding($attachments[$num]['attachment']);
6212 7344
 							Translation::convert($attachments[$num]['attachment'],$attachments[$num]['charset']);
@@ -6227,7 +7359,10 @@  discard block
 block discarded – undo
6227 7359
 						unset($attachments[$num]['attachment']);
6228 7360
 					}
6229 7361
 				}
6230
-				if (is_array($attachedMessages)) $attachments = array_merge($attachments,$attachedMessages);
7362
+				if (is_array($attachedMessages))
7363
+				{
7364
+					$attachments = array_merge($attachments,$attachedMessages);
7365
+				}
6231 7366
 			}
6232 7367
 			return array(
6233 7368
 					'mailaddress'=>$mailaddress,
@@ -6249,10 +7384,17 @@  discard block
 block discarded – undo
6249 7384
 	{
6250 7385
 		$c = 0;
6251 7386
 		// use the standardIdentity
6252
-		foreach($_identities as $key => $acc) {
6253
-			if ($c==0) $identity = $acc;
7387
+		foreach($_identities as $key => $acc)
7388
+		{
7389
+			if ($c==0)
7390
+			{
7391
+				$identity = $acc;
7392
+			}
6254 7393
 			//error_log(__METHOD__.__LINE__." $key == $_profile_id ");
6255
-			if ($key==$_profile_id) $identity = $acc;
7394
+			if ($key==$_profile_id)
7395
+			{
7396
+				$identity = $acc;
7397
+			}
6256 7398
 			$c++;
6257 7399
 		}
6258 7400
 		return $identity;
@@ -6268,20 +7410,53 @@  discard block
 block discarded – undo
6268 7410
 	{
6269 7411
 		$headdata = null;
6270 7412
 		//error_log(__METHOD__.' ('.__LINE__.') '.array2string($header).function_backtrace());
6271
-		if ($header['SUBJECT']) $headdata = lang('subject').': '.$header['SUBJECT'].($createHTML?"<br />":"\n");
6272
-		if ($header['FROM']) $headdata .= lang('from').': '.self::convertAddressArrayToString($header['FROM'], $createHTML).($createHTML?"<br />":"\n");
6273
-		if ($header['SENDER']) $headdata .= lang('sender').': '.self::convertAddressArrayToString($header['SENDER'], $createHTML).($createHTML?"<br />":"\n");
6274
-		if ($header['TO']) $headdata .= lang('to').': '.self::convertAddressArrayToString($header['TO'], $createHTML).($createHTML?"<br />":"\n");
6275
-		if ($header['CC']) $headdata .= lang('cc').': '.self::convertAddressArrayToString($header['CC'], $createHTML).($createHTML?"<br />":"\n");
6276
-		if ($header['BCC']) $headdata .= lang('bcc').': '.self::convertAddressArrayToString($header['BCC'], $createHTML).($createHTML?"<br />":"\n");
6277
-		if ($header['DATE']) $headdata .= lang('date').': '.$header['DATE'].($createHTML?"<br />":"\n");
6278
-		if ($header['PRIORITY'] && $header['PRIORITY'] != 'normal') $headdata .= lang('priority').': '.$header['PRIORITY'].($createHTML?"<br />":"\n");
6279
-		if ($header['IMPORTANCE'] && $header['IMPORTANCE'] !='normal') $headdata .= lang('importance').': '.$header['IMPORTANCE'].($createHTML?"<br />":"\n");
7413
+		if ($header['SUBJECT'])
7414
+		{
7415
+			$headdata = lang('subject').': '.$header['SUBJECT'].($createHTML?"<br />":"\n");
7416
+		}
7417
+		if ($header['FROM'])
7418
+		{
7419
+			$headdata .= lang('from').': '.self::convertAddressArrayToString($header['FROM'], $createHTML).($createHTML?"<br />":"\n");
7420
+		}
7421
+		if ($header['SENDER'])
7422
+		{
7423
+			$headdata .= lang('sender').': '.self::convertAddressArrayToString($header['SENDER'], $createHTML).($createHTML?"<br />":"\n");
7424
+		}
7425
+		if ($header['TO'])
7426
+		{
7427
+			$headdata .= lang('to').': '.self::convertAddressArrayToString($header['TO'], $createHTML).($createHTML?"<br />":"\n");
7428
+		}
7429
+		if ($header['CC'])
7430
+		{
7431
+			$headdata .= lang('cc').': '.self::convertAddressArrayToString($header['CC'], $createHTML).($createHTML?"<br />":"\n");
7432
+		}
7433
+		if ($header['BCC'])
7434
+		{
7435
+			$headdata .= lang('bcc').': '.self::convertAddressArrayToString($header['BCC'], $createHTML).($createHTML?"<br />":"\n");
7436
+		}
7437
+		if ($header['DATE'])
7438
+		{
7439
+			$headdata .= lang('date').': '.$header['DATE'].($createHTML?"<br />":"\n");
7440
+		}
7441
+		if ($header['PRIORITY'] && $header['PRIORITY'] != 'normal')
7442
+		{
7443
+			$headdata .= lang('priority').': '.$header['PRIORITY'].($createHTML?"<br />":"\n");
7444
+		}
7445
+		if ($header['IMPORTANCE'] && $header['IMPORTANCE'] !='normal')
7446
+		{
7447
+			$headdata .= lang('importance').': '.$header['IMPORTANCE'].($createHTML?"<br />":"\n");
7448
+		}
6280 7449
 		//if ($mailcontent['headers']['ORGANIZATION']) $headdata .= lang('organization').': '.$mailcontent['headers']['ORGANIZATION']."\
6281 7450
 		if (!empty($headdata))
6282 7451
 		{
6283
-			if (!empty($headline) && $headline != 'SUPPRESS') $headdata = "---------------------------- $headline ----------------------------".($createHTML?"<br />":"\n").$headdata;
6284
-			if (empty($headline)) $headdata = ($headline != 'SUPPRESS'?"--------------------------------------------------------".($createHTML?"<br />":"\n"):'').$headdata;
7452
+			if (!empty($headline) && $headline != 'SUPPRESS')
7453
+			{
7454
+				$headdata = "---------------------------- $headline ----------------------------".($createHTML?"<br />":"\n").$headdata;
7455
+			}
7456
+			if (empty($headline))
7457
+			{
7458
+				$headdata = ($headline != 'SUPPRESS'?"--------------------------------------------------------".($createHTML?"<br />":"\n"):'').$headdata;
7459
+			}
6285 7460
 			$headdata .= ($headline != 'SUPPRESS'?"--------------------------------------------------------".($createHTML?"<br />":"\n"):'');
6286 7461
 		}
6287 7462
 		else
@@ -6315,12 +7490,15 @@  discard block
 block discarded – undo
6315 7490
 		$returnAddr ='';
6316 7491
 		if (is_array($rfcAddressArray))
6317 7492
 		{
6318
-			foreach((array)$rfcAddressArray as $addressData) {
7493
+			foreach((array)$rfcAddressArray as $addressData)
7494
+			{
6319 7495
 				//error_log(__METHOD__.' ('.__LINE__.') '.array2string($addressData));
6320
-				if($addressData['MAILBOX_NAME'] == 'NIL') {
7496
+				if($addressData['MAILBOX_NAME'] == 'NIL')
7497
+				{
6321 7498
 					continue;
6322 7499
 				}
6323
-				if(strtolower($addressData['MAILBOX_NAME']) == 'undisclosed-recipients') {
7500
+				if(strtolower($addressData['MAILBOX_NAME']) == 'undisclosed-recipients')
7501
+				{
6324 7502
 					continue;
6325 7503
 				}
6326 7504
 				if ($addressData['RFC822_EMAIL'])
@@ -6334,7 +7512,10 @@  discard block
 block discarded – undo
6334 7512
 				}
6335 7513
 				$addressObject = $addressObjectA[0];
6336 7514
 				//error_log(__METHOD__.' ('.__LINE__.') '.array2string($addressObject));
6337
-				if (!$addressObject->valid) continue;
7515
+				if (!$addressObject->valid)
7516
+				{
7517
+					continue;
7518
+				}
6338 7519
 				//$mb =(string)$addressObject->mailbox;
6339 7520
 				//$h = (string)$addressObject->host;
6340 7521
 				//$p = (string)$addressObject->personal;
@@ -6351,7 +7532,10 @@  discard block
 block discarded – undo
6351 7532
 			// do not mess with strings, return them untouched /* ToDo: validate string as Address */
6352 7533
 			$rfcAddressArray = self::decode_header($rfcAddressArray,true);
6353 7534
 			$rfcAddressArray = str_replace(array('<','>','"\'','\'"'),array('[',']','"','"'),$rfcAddressArray);
6354
-			if (is_string($rfcAddressArray)) return $rfcAddressArray;
7535
+			if (is_string($rfcAddressArray))
7536
+			{
7537
+				return $rfcAddressArray;
7538
+			}
6355 7539
 		}
6356 7540
 		return $returnAddr;
6357 7541
 	}
@@ -6368,10 +7552,19 @@  discard block
 block discarded – undo
6368 7552
 	{
6369 7553
 		$mergeobj = new Contacts\Merge();
6370 7554
 
6371
-		if (empty($mimetype)) $mimetype = (strlen(strip_tags($content)) == strlen($content) ?'text/plain':'text/html');
7555
+		if (empty($mimetype))
7556
+		{
7557
+			$mimetype = (strlen(strip_tags($content)) == strlen($content) ?'text/plain':'text/html');
7558
+		}
6372 7559
 		$rv = $mergeobj->merge_string($content,$ids,$err='',$mimetype, array(), self::$displayCharset);
6373
-		if (empty($rv) && !empty($content) && !empty($err)) $rv = $content;
6374
-		if (!empty($err) && !empty($content) && !empty($ids)) error_log(__METHOD__.' ('.__LINE__.') '.' Merge failed for Ids:'.array2string($ids).' ContentType:'.$mimetype.' Content:'.$content.' Reason:'.array2string($err));
7560
+		if (empty($rv) && !empty($content) && !empty($err))
7561
+		{
7562
+			$rv = $content;
7563
+		}
7564
+		if (!empty($err) && !empty($content) && !empty($ids))
7565
+		{
7566
+			error_log(__METHOD__.' ('.__LINE__.') '.' Merge failed for Ids:'.array2string($ids).' ContentType:'.$mimetype.' Content:'.$content.' Reason:'.array2string($err));
7567
+		}
6375 7568
 		return $rv;
6376 7569
 	}
6377 7570
 
@@ -6408,13 +7601,15 @@  discard block
 block discarded – undo
6408 7601
 			settype($bytes, 'integer');
6409 7602
 			$bytes /= 10;
6410 7603
 		}
6411
-		else
6412
-			settype($bytes, 'integer');
7604
+		else {
7605
+					settype($bytes, 'integer');
7606
+		}
6413 7607
 
6414 7608
 		return $bytes . ' ' . $type ;
6415 7609
 	}
6416 7610
 
6417
-	static function detect_qp(&$sting) {
7611
+	static function detect_qp(&$sting)
7612
+	{
6418 7613
 		$needle = '/(=[0-9][A-F])|(=[A-F][0-9])|(=[A-F][A-F])|(=[0-9][0-9])/';
6419 7614
 		return preg_match("$needle",$string);
6420 7615
 	}
@@ -6431,9 +7626,15 @@  discard block
 block discarded – undo
6431 7626
 	 */
6432 7627
 	static function logRunTimes($_starttime,$_endtime=null,$_message='',$_methodNline='')
6433 7628
 	{
6434
-		if (is_null($_endtime)) $_endtime = microtime(true);
7629
+		if (is_null($_endtime))
7630
+		{
7631
+			$_endtime = microtime(true);
7632
+		}
6435 7633
 		$usagetime = microtime(true) - $_starttime;
6436
-		if (self::$debugTimes) error_log($_methodNline.' took:'.number_format($usagetime,5).'(s) '.($_message?'Details:'.$_message:''));
7634
+		if (self::$debugTimes)
7635
+		{
7636
+			error_log($_methodNline.' took:'.number_format($usagetime,5).'(s) '.($_message?'Details:'.$_message:''));
7637
+		}
6437 7638
 	}
6438 7639
 
6439 7640
 	/**
@@ -6448,7 +7649,10 @@  discard block
 block discarded – undo
6448 7649
 	 */
6449 7650
 	static function checkFileBasics(&$_formData, $IDtoAddToFileName='', $reqMimeType='message/rfc822')
6450 7651
 	{
6451
-		if (parse_url($_formData['file'],PHP_URL_SCHEME) == 'egw-data') return $_formData['file'];
7652
+		if (parse_url($_formData['file'],PHP_URL_SCHEME) == 'egw-data')
7653
+		{
7654
+			return $_formData['file'];
7655
+		}
6452 7656
 
6453 7657
 		//error_log(__METHOD__.__FILE__.array2string($_formData).' Id:'.$IDtoAddToFileName.' ReqMimeType:'.$reqMimeType);
6454 7658
 		$importfailed = $tmpFileName = false;
@@ -6497,8 +7701,15 @@  discard block
 block discarded – undo
6497 7701
 			{
6498 7702
 				$buff = explode('.',$_formData['name']);
6499 7703
 				$suffix = '';
6500
-				if (is_array($buff)) $suffix = array_pop($buff); // take the last extension to check with ext2mime
6501
-				if (!empty($suffix)) $sfxMimeType = MimeMagic::ext2mime($suffix);
7704
+				if (is_array($buff))
7705
+				{
7706
+					$suffix = array_pop($buff);
7707
+				}
7708
+				// take the last extension to check with ext2mime
7709
+				if (!empty($suffix))
7710
+				{
7711
+					$sfxMimeType = MimeMagic::ext2mime($suffix);
7712
+				}
6502 7713
 				if (!empty($suffix) && !empty($sfxMimeType) &&
6503 7714
 					(strlen(trim($_formData['type']))==0 || (strtolower(trim($_formData['type'])) != $sfxMimeType)))
6504 7715
 				{
@@ -6546,7 +7757,9 @@  discard block
 block discarded – undo
6546 7757
 			{
6547 7758
 				rename($_formData['file'], $GLOBALS['egw_info']['server']['temp_dir'].'/'.$tmpFileName);
6548 7759
 			}
6549
-		} else {
7760
+		}
7761
+		else
7762
+		{
6550 7763
 			//error_log("Import of message ".$_formData['file']." failes to meet basic restrictions");
6551 7764
 			$importfailed = true;
6552 7765
 			$alert_msg .= lang("Processing of file %1 failed. Failed to meet basic restrictions.",$_formData['name']);
@@ -6592,21 +7805,32 @@  discard block
 block discarded – undo
6592 7805
 				if (substr($url, 0, 5) !== 'data:')
6593 7806
 				{
6594 7807
 					$filename = basename($url);
6595
-					if (($directory = dirname($url)) == '.') $directory = '';
7808
+					if (($directory = dirname($url)) == '.')
7809
+					{
7810
+						$directory = '';
7811
+					}
6596 7812
 					$ext = pathinfo($filename, PATHINFO_EXTENSION);
6597 7813
 					$mimeType  = MimeMagic::ext2mime($ext);
6598
-					if ( strlen($directory) > 1 && substr($directory,-1) != '/') { $directory .= '/'; }
7814
+					if ( strlen($directory) > 1 && substr($directory,-1) != '/')
7815
+					{
7816
+$directory .= '/'; }
6599 7817
 					$myUrl = $directory.$filename;
6600
-					if ($myUrl[0]=='/') // local path -> we only allow path's that are available via http/https (or vfs)
7818
+					if ($myUrl[0]=='/')
7819
+					{
7820
+						// local path -> we only allow path's that are available via http/https (or vfs)
6601 7821
 					{
6602 7822
 						$basedir = ($_SERVER['HTTPS']?'https://':'http://'.$_SERVER['HTTP_HOST']);
6603 7823
 					}
7824
+					}
6604 7825
 					// use vfs instead of url containing webdav.php
6605 7826
 					// ToDo: we should test if the webdav url is of our own scope, as we cannot handle foreign
6606 7827
 					// webdav.php urls as vfs
6607
-					if (strpos($myUrl,'/webdav.php') !== false) // we have a webdav link, so we build a vfs/sqlfs link of it.
7828
+					if (strpos($myUrl,'/webdav.php') !== false)
7829
+					{
7830
+						// we have a webdav link, so we build a vfs/sqlfs link of it.
6608 7831
 					{
6609 7832
 						Vfs::load_wrapper('vfs');
7833
+					}
6610 7834
 						list(,$myUrl) = explode('/webdav.php',$myUrl,2);
6611 7835
 						$basedir = 'vfs://default';
6612 7836
 						$needTempFile = false;
@@ -6635,8 +7859,13 @@  discard block
 block discarded – undo
6635 7859
 						}
6636 7860
 					}
6637 7861
 
6638
-					if ( strlen($basedir) > 1 && substr($basedir,-1) != '/' && $myUrl[0]!='/') { $basedir .= '/'; }
6639
-					if ($needTempFile && !$attachment && substr($myUrl,0,4) !== "http") $data = file_get_contents($basedir.urldecode($myUrl));
7862
+					if ( strlen($basedir) > 1 && substr($basedir,-1) != '/' && $myUrl[0]!='/')
7863
+					{
7864
+$basedir .= '/'; }
7865
+					if ($needTempFile && !$attachment && substr($myUrl,0,4) !== "http")
7866
+					{
7867
+						$data = file_get_contents($basedir.urldecode($myUrl));
7868
+					}
6640 7869
 				}
6641 7870
 				if (substr($url,0,strlen('data:'))=='data:')
6642 7871
 				{
@@ -6737,7 +7966,10 @@  discard block
 block discarded – undo
6737 7966
 				$_folder = $this->getSentFolder();
6738 7967
 			}
6739 7968
 			$delimiter = $this->getHierarchyDelimiter();
6740
-			if($_folder=='INBOX'.$delimiter) $_folder='INBOX';
7969
+			if($_folder=='INBOX'.$delimiter)
7970
+			{
7971
+				$_folder='INBOX';
7972
+			}
6741 7973
 			if ($importfailed === false)
6742 7974
 			{
6743 7975
 				$Subject = $mailObject->getHeader('Subject');
@@ -6766,7 +7998,9 @@  discard block
 block discarded – undo
6766 7998
 					//error_log(__METHOD__.' ('.__LINE__.') '.' Id To Merge:'.$val);
6767 7999
 					if (/*$GLOBALS['egw_info']['flags']['currentapp'] == 'addressbook' &&*/
6768 8000
 						count($SendAndMergeTocontacts) > 1 && $val &&
6769
-						(is_numeric($val) || $GLOBALS['egw']->accounts->name2id($val))) // do the merge
8001
+						(is_numeric($val) || $GLOBALS['egw']->accounts->name2id($val)))
8002
+					{
8003
+						// do the merge
6770 8004
 					{
6771 8005
 						//error_log(__METHOD__.' ('.__LINE__.') '.array2string($mailObject));
6772 8006
 
@@ -6775,6 +8009,7 @@  discard block
 block discarded – undo
6775 8009
 						{
6776 8010
 							//error_log('ID ' . $val . ' ' .$type . ': ' . $mailObject->getHeader(Mailer::$type2header[$type]) . ' -> ' .$bo_merge->merge_string($mailObject->getHeader(Mailer::$type2header[$type]),$val,$e,'text/plain',array(),self::$displayCharset));
6777 8011
 							$merged = $bo_merge->merge_string($mailObject->getHeader(Mailer::$type2header[$type]),$val,$e,'text/plain',array(),self::$displayCharset);
8012
+					}
6778 8013
 							$mailObject->addAddress($merged,'',$type);
6779 8014
 							if($type == 'to')
6780 8015
 							{
@@ -6806,9 +8041,15 @@  discard block
 block discarded – undo
6806 8041
 						$mailObject->clearCustomHeaders();
6807 8042
 						$mailObject->addHeader('Subject', $bo_merge->merge_string($Subject, $val, $e, 'text/plain', array(), self::$displayCharset));
6808 8043
 						//error_log(__METHOD__.' ('.__LINE__.') '.' ContentType:'.$mailObject->BodyContentType);
6809
-						if($text_body) $text_body->setContents($bo_merge->merge_string($Body, $val, $e, 'text/plain', array(), self::$displayCharset),array('encoding'=>Horde_Mime_Part::DEFAULT_ENCODING));
8044
+						if($text_body)
8045
+						{
8046
+							$text_body->setContents($bo_merge->merge_string($Body, $val, $e, 'text/plain', array(), self::$displayCharset),array('encoding'=>Horde_Mime_Part::DEFAULT_ENCODING));
8047
+						}
6810 8048
 						//error_log(__METHOD__.' ('.__LINE__.') '.' Result:'.$mailObject->Body.' error:'.array2string($e));
6811
-						if($html_body) $html_body->setContents($bo_merge->merge_string($AltBody, $val, $e, 'text/html', array(), self::$displayCharset),array('encoding'=>Horde_Mime_Part::DEFAULT_ENCODING));
8049
+						if($html_body)
8050
+						{
8051
+							$html_body->setContents($bo_merge->merge_string($AltBody, $val, $e, 'text/html', array(), self::$displayCharset),array('encoding'=>Horde_Mime_Part::DEFAULT_ENCODING));
8052
+						}
6812 8053
 
6813 8054
 						//error_log(__METHOD__.' ('.__LINE__.') '.array2string($mailObject));
6814 8055
 						// set a higher timeout for big messages
@@ -6823,9 +8064,12 @@  discard block
 block discarded – undo
6823 8064
 							//error_log(__METHOD__.' ('.__LINE__.') '.array2string($errorInfo));
6824 8065
 						}
6825 8066
 					}
6826
-					elseif (!$k)	// 1. entry, further entries will fail for apps other then addressbook
8067
+					elseif (!$k)
8068
+					{
8069
+						// 1. entry, further entries will fail for apps other then addressbook
6827 8070
 					{
6828 8071
 						$openAsDraft = true;
8072
+					}
6829 8073
 						$mailObject->removeHeader('Message-ID');
6830 8074
 						$mailObject->removeHeader('Date');
6831 8075
 						$mailObject->clearCustomHeaders();
@@ -6840,9 +8084,12 @@  discard block
 block discarded – undo
6840 8084
 
6841 8085
 						// No addresses from placeholders?  Treat it as just a contact ID
6842 8086
 						if (count($mailObject->getAddresses('to',true)) == 0 &&
6843
-							is_numeric($val) || $GLOBALS['egw']->accounts->name2id($val)) // do the merge
8087
+							is_numeric($val) || $GLOBALS['egw']->accounts->name2id($val))
8088
+						{
8089
+							// do the merge
6844 8090
 						{
6845 8091
 							$contact = $bo_merge->contacts->read($val);
8092
+						}
6846 8093
 							//error_log(__METHOD__.' ('.__LINE__.') '.array2string($contact));
6847 8094
 							$email = ($contact['email'] ? $contact['email'] : $contact['email_home']);
6848 8095
 							$nfn = ($contact['n_fn'] ? $contact['n_fn'] : $contact['n_given'].' '.$contact['n_family']);
@@ -6853,9 +8100,15 @@  discard block
 block discarded – undo
6853 8100
 						}
6854 8101
 						$mailObject->addHeader('Subject', $bo_merge->merge_string($Subject, $val, $e, 'text/plain', array(), self::$displayCharset));
6855 8102
 						//error_log(__METHOD__.' ('.__LINE__.') '.' ContentType:'.$mailObject->BodyContentType);
6856
-						if (!empty($Body)) $text_body->setContents($bo_merge->merge_string($Body, $val, $e, 'text/plain', array(), self::$displayCharset),array('encoding'=>Horde_Mime_Part::DEFAULT_ENCODING));
8103
+						if (!empty($Body))
8104
+						{
8105
+							$text_body->setContents($bo_merge->merge_string($Body, $val, $e, 'text/plain', array(), self::$displayCharset),array('encoding'=>Horde_Mime_Part::DEFAULT_ENCODING));
8106
+						}
6857 8107
 						//error_log(__METHOD__.' ('.__LINE__.') '.' Result:'.$mailObject->Body.' error:'.array2string($e));
6858
-						if (!empty($AltBody)) $html_body->setContents($bo_merge->merge_string($AltBody, $val, $e, 'text/html', array(), self::$displayCharset),array('encoding'=>Horde_Mime_Part::DEFAULT_ENCODING));
8108
+						if (!empty($AltBody))
8109
+						{
8110
+							$html_body->setContents($bo_merge->merge_string($AltBody, $val, $e, 'text/html', array(), self::$displayCharset),array('encoding'=>Horde_Mime_Part::DEFAULT_ENCODING));
8111
+						}
6859 8112
 						$_folder = $this->getDraftFolder();
6860 8113
 					}
6861 8114
 					if ($sendOK || $openAsDraft)
@@ -6863,11 +8116,15 @@  discard block
 block discarded – undo
6863 8116
 						if ($this->folderExists($_folder,true))
6864 8117
 						{
6865 8118
 						    if($this->isSentFolder($_folder))
6866
-							{
8119
+						    {
6867 8120
 						        $flags = '\\Seen';
6868
-						    } elseif($this->isDraftFolder($_folder)) {
8121
+						    }
8122
+						    elseif($this->isDraftFolder($_folder))
8123
+						    {
6869 8124
 						        $flags = '\\Draft';
6870
-						    } else {
8125
+						    }
8126
+						    else
8127
+						    {
6871 8128
 						        $flags = '';
6872 8129
 						    }
6873 8130
 							$savefailed = false;
@@ -6901,7 +8158,10 @@  discard block
 block discarded – undo
6901 8158
 						}
6902 8159
 						else
6903 8160
 						{
6904
-							if (!$openComposeWindow) $processStats['failed'][$val] = $errorInfo?$errorInfo:'Send failed to '.$nfn.'<'.$email.'> See error_log for details';
8161
+							if (!$openComposeWindow)
8162
+							{
8163
+								$processStats['failed'][$val] = $errorInfo?$errorInfo:'Send failed to '.$nfn.'<'.$email.'> See error_log for details';
8164
+							}
6905 8165
 						}
6906 8166
 					}
6907 8167
 					if (!is_null($sendOK) && $sendOK===false && is_null($openComposeWindow))
@@ -6949,7 +8209,10 @@  discard block
 block discarded – undo
6949 8209
 				$tmpFileName = $GLOBALS['egw_info']['server']['temp_dir'].'/'.basename($tmpFileName);
6950 8210
 				break;
6951 8211
 		}
6952
-		if (!isset($message)) $message = fopen($tmpFileName, 'r');
8212
+		if (!isset($message))
8213
+		{
8214
+			$message = fopen($tmpFileName, 'r');
8215
+		}
6953 8216
 
6954 8217
 		if (!$message)
6955 8218
 		{
@@ -6987,7 +8250,10 @@  discard block
 block discarded – undo
6987 8250
 				(fseek($message, 0, SEEK_SET) == -1 ? '' : fread($message, 8192));
6988 8251
 
6989 8252
 			$length = strpos($start, Horde_Mime_Part::RFC_EOL.Horde_Mime_Part::RFC_EOL);
6990
-			if ($length===false) $length = strlen($start);
8253
+			if ($length===false)
8254
+			{
8255
+				$length = strlen($start);
8256
+			}
6991 8257
 			$headers = Horde_Mime_Headers::parseHeaders(substr($start, 0,$length));
6992 8258
 
6993 8259
 			foreach($headers->toArray(array('nowrap' => true)) as $header => $value)
@@ -7016,7 +8282,10 @@  discard block
 block discarded – undo
7016 8282
 		}
7017 8283
 		else
7018 8284
 		{
7019
-			if (($type = gettype($message)) == 'object') $type = get_class ($message);
8285
+			if (($type = gettype($message)) == 'object')
8286
+			{
8287
+				$type = get_class ($message);
8288
+			}
7020 8289
 			throw new Exception\WrongParameter('Wrong parameter type for message: '.$type);
7021 8290
 		}
7022 8291
 	}
@@ -7040,7 +8309,9 @@  discard block
 block discarded – undo
7040 8309
 			$matches = array();
7041 8310
 			preg_match_all("/[\w\.,-.,_.,0-9.]+@[\w\.,-.,_.,0-9.]+/",$addresses,$matches);
7042 8311
 			//error_log(__METHOD__.__LINE__.array2string($matches));
7043
-			foreach ($matches[0] as &$match) {$match = trim($match,', ');}
8312
+			foreach ($matches[0] as &$match)
8313
+			{
8314
+$match = trim($match,', ');}
7044 8315
 			$addresses = implode(',',$matches[0]);
7045 8316
 			//error_log(__METHOD__.__LINE__.array2string($addresses));
7046 8317
 			$ret = $rfc822->parseAddressList($addresses, $default_domain ? array('default_domain' => $default_domain) : array());
@@ -7071,7 +8342,10 @@  discard block
 block discarded – undo
7071 8342
 			}
7072 8343
 			else
7073 8344
 			{
7074
-				if ($previousFailed && $remember) $adr->personal = $remember. ' ' . $adr->personal;
8345
+				if ($previousFailed && $remember)
8346
+				{
8347
+					$adr->personal = $remember. ' ' . $adr->personal;
8348
+				}
7075 8349
 				$remember = '';
7076 8350
 				$previousFailed=false;
7077 8351
 				//error_log(__METHOD__.__LINE__."('$addresses', $default_domain) parsed $i: mailbox=$adr->mailbox, host=$adr->host, personal=$adr->personal");
@@ -7093,7 +8367,10 @@  discard block
 block discarded – undo
7093 8367
 	{
7094 8368
 		$acc = Mail\Account::read($this->profileID);
7095 8369
 		$identity = Mail\Account::read_identity($acc['ident_id'], true, null, $acc);
7096
-		if (self::$debug) error_log(__METHOD__.__LINE__.array2string($identity));
8370
+		if (self::$debug)
8371
+		{
8372
+			error_log(__METHOD__.__LINE__.array2string($identity));
8373
+		}
7097 8374
 		$headers = $this->getMessageHeader($uid, '', 'object', true, $_folder);
7098 8375
 
7099 8376
 		$mdn = new Horde_Mime_Mdn($headers);
Please login to merge, or discard this patch.
api/src/Mail/Account.php 3 patches
Doc Comments   +6 added lines, -6 removed lines patch added patch discarded remove patch
@@ -486,7 +486,7 @@  discard block
 block discarded – undo
486 486
 	 * @param boolean $replace_placeholders =false should placeholders like {{n_fn}} be replaced
487 487
 	 * @param string $field ='name' what to return as value: "ident_(realname|org|email|signature)" or default "name"=result from identity_name
488 488
 	 * @param int $user =null account_id to use if not current user
489
-	 * @return Iterator ident_id => identity_name of identity
489
+	 * @return Api\Db\CallbackIterator ident_id => identity_name of identity
490 490
 	 */
491 491
 	public static function identities($account, $replace_placeholders=true, $field='name', $user=null)
492 492
 	{
@@ -795,7 +795,7 @@  discard block
 block discarded – undo
795 795
 	 *
796 796
 	 * To get $this->params you need to call getUserData before! It is never automatically loaded.
797 797
 	 *
798
-	 * @param type $name
798
+	 * @param string $name
799 799
 	 * @return mixed
800 800
 	 */
801 801
 	public function __get($name)
@@ -819,8 +819,8 @@  discard block
 block discarded – undo
819 819
 	/**
820 820
 	 * Give read access to protected parameters in $this->params
821 821
 	 *
822
-	 * @param type $name
823
-	 * @return mixed
822
+	 * @param string $name
823
+	 * @return boolean
824 824
 	 */
825 825
 	public function __isset($name)
826 826
 	{
@@ -1340,10 +1340,10 @@  discard block
 block discarded – undo
1340 1340
 	 * @param boolean|string $just_name =true true: return self::identity_name, false: return Account objects,
1341 1341
 	 *	string with attribute-name: return that attribute, eg. acc_imap_host or 'params' to return all attributes as array
1342 1342
 	 * @param string $order_by ='acc_name ASC'
1343
-	 * @param int|boolean $offset =false offset or false to return all
1343
+	 * @param boolean $offset =false offset or false to return all
1344 1344
 	 * @param int $num_rows =0 number of rows to return, 0=default from prefs (if $offset !== false)
1345 1345
 	 * @param boolean $replace_placeholders =true should placeholders like {{n_fn}} be replaced
1346
-	 * @return Iterator with acc_id => acc_name or Account objects
1346
+	 * @return Api\Db\CallbackIterator with acc_id => acc_name or Account objects
1347 1347
 	 */
1348 1348
 	public static function search($only_current_user=true, $just_name=true, $order_by=null, $offset=false, $num_rows=0, $replace_placeholders=true)
1349 1349
 	{
Please login to merge, or discard this patch.
Spacing   +66 added lines, -69 removed lines patch added patch discarded remove patch
@@ -197,7 +197,7 @@  discard block
 block discarded – undo
197 197
 	/**
198 198
 	 * Path to log smtp comunication to or null to not log
199 199
 	 */
200
-	const SMTP_DEBUG_LOG = null;//'/tmp/smtp.log';
200
+	const SMTP_DEBUG_LOG = null; //'/tmp/smtp.log';
201 201
 
202 202
 	/**
203 203
 	 * Instanciated account object by acc_id, read acts as singelton
@@ -245,7 +245,7 @@  discard block
 block discarded – undo
245 245
 	 * @param int $called_for=null if set access to given user (without smtp credentials!),
246 246
 	 *	default current user AND read username/password from current users session
247 247
 	 */
248
-	/*protected*/ function __construct(array $params, $called_for=null)
248
+	/*protected*/ function __construct(array $params, $called_for = null)
249 249
 	{
250 250
 		// read credentials from database
251 251
 		$params += Credentials::read($params['acc_id'], null, $called_for ? array(0, $called_for) : $called_for);
@@ -274,16 +274,16 @@  discard block
 block discarded – undo
274 274
 	public static function ssl2secure($ssl)
275 275
 	{
276 276
 		$secure = false;
277
-		switch($ssl & ~self::SSL_VERIFY)
277
+		switch ($ssl&~self::SSL_VERIFY)
278 278
 		{
279 279
 			case self::SSL_STARTTLS:
280
-				$secure = 'tls';	// Horde uses 'tls' for STARTTLS, not ssl connection with tls version >= 1 and no sslv2/3
280
+				$secure = 'tls'; // Horde uses 'tls' for STARTTLS, not ssl connection with tls version >= 1 and no sslv2/3
281 281
 				break;
282 282
 			case self::SSL_SSL:
283 283
 				$secure = 'ssl';
284 284
 				break;
285 285
 			case self::SSL_TLS:
286
-				$secure = 'tlsv1';	// since Horde_Imap_Client-1.16.0 requiring Horde_Socket_Client-1.1.0
286
+				$secure = 'tlsv1'; // since Horde_Imap_Client-1.16.0 requiring Horde_Socket_Client-1.1.0
287 287
 				break;
288 288
 		}
289 289
 		return $secure;
@@ -312,15 +312,15 @@  discard block
 block discarded – undo
312 312
 				$this->params = array_merge($this->params, $data);
313 313
 			}
314 314
 		}
315
-		catch(Horde_Imap_Client_Exception $e) {
315
+		catch (Horde_Imap_Client_Exception $e) {
316 316
 			unset($e);
317 317
 			// ignore eg. connection errors
318 318
 		}
319
-		catch(\InvalidArgumentException $e) {
319
+		catch (\InvalidArgumentException $e) {
320 320
 			unset($e);
321 321
 			// ignore eg. missing admin user
322 322
 		}
323
-		$this->params += array_fill_keys(self::$user_data, null);	// make sure all keys exist now
323
+		$this->params += array_fill_keys(self::$user_data, null); // make sure all keys exist now
324 324
 
325 325
 		return (array)$data + (array)$smtp_data;
326 326
 	}
@@ -354,7 +354,7 @@  discard block
 block discarded – undo
354 354
 	 * @param int $_timeout =null timeout in secs, if none given fmail pref or default of 20 is used
355 355
 	 * @return Imap
356 356
 	 */
357
-	public function imapServer($_adminConnection=false, $_timeout=null)
357
+	public function imapServer($_adminConnection = false, $_timeout = null)
358 358
 	{
359 359
 		if (!isset($this->imapServer) || $this->imapServer->isAdminConnection !== $_adminConnection)
360 360
 		{
@@ -378,11 +378,11 @@  discard block
 block discarded – undo
378 378
 	 *	(matters only for imap servers managed by EGroupware!)
379 379
 	 * @return boolean
380 380
 	 */
381
-	public function is_imap($try_connect=true)
381
+	public function is_imap($try_connect = true)
382 382
 	{
383 383
 		if (empty($this->acc_imap_host) || empty($this->acc_imap_username) || empty($this->acc_imap_password))
384 384
 		{
385
-			return false;	// no imap host or credentials
385
+			return false; // no imap host or credentials
386 386
 		}
387 387
 		// if we are not managing the mail-server, we do NOT need to check deliveryMode and accountStatus
388 388
 		if ($this->acc_smtp_type == __NAMESPACE__.'\\Smtp')
@@ -419,7 +419,7 @@  discard block
 block discarded – undo
419 419
 			$this->smtpServer->editForwardingAddress = false;
420 420
 			$this->smtpServer->host = $this->params['acc_smtp_host'];
421 421
 			$this->smtpServer->port = $this->params['acc_smtp_port'];
422
-			switch($this->params['acc_smtp_ssl'])
422
+			switch ($this->params['acc_smtp_ssl'])
423 423
 			{
424 424
 				case self::SSL_TLS:
425 425
 					$this->smtpServer->host = 'tlsv1://'.$this->smtpServer->host;
@@ -449,16 +449,16 @@  discard block
 block discarded – undo
449 449
 		if (!isset($this->smtpTransport))
450 450
 		{
451 451
 			$secure = false;
452
-			switch($this->acc_smtp_ssl & ~self::SSL_VERIFY)
452
+			switch ($this->acc_smtp_ssl&~self::SSL_VERIFY)
453 453
 			{
454 454
 				case self::SSL_STARTTLS:
455
-					$secure = 'tls';	// Horde uses 'tls' for STARTTLS, not ssl connection with tls version >= 1 and no sslv2/3
455
+					$secure = 'tls'; // Horde uses 'tls' for STARTTLS, not ssl connection with tls version >= 1 and no sslv2/3
456 456
 					break;
457 457
 				case self::SSL_SSL:
458 458
 					$secure = 'ssl';
459 459
 					break;
460 460
 				case self::SSL_TLS:
461
-					$secure = 'tlsv1';	// since Horde_Smtp-1.3.0 requiring Horde_Socket_Client-1.1.0
461
+					$secure = 'tlsv1'; // since Horde_Smtp-1.3.0 requiring Horde_Socket_Client-1.1.0
462 462
 					break;
463 463
 			}
464 464
 			// Horde use locale for translation of error messages
@@ -488,7 +488,7 @@  discard block
 block discarded – undo
488 488
 	 * @param int $user =null account_id to use if not current user
489 489
 	 * @return Iterator ident_id => identity_name of identity
490 490
 	 */
491
-	public static function identities($account, $replace_placeholders=true, $field='name', $user=null)
491
+	public static function identities($account, $replace_placeholders = true, $field = 'name', $user = null)
492 492
 	{
493 493
 		if (!isset($user)) $user = $GLOBALS['egw_info']['user']['account_id'];
494 494
 		$acc_id = is_scalar($account) ? $account : $account['acc_id'];
@@ -538,7 +538,7 @@  discard block
 block discarded – undo
538 538
 				}
539 539
 				return self::identity_name($row, $replace_placeholders);
540 540
 			}, array(),
541
-			function($row) { return $row['ident_id'];});
541
+			function($row) { return $row['ident_id']; });
542 542
 	}
543 543
 
544 544
 	/**
@@ -581,17 +581,17 @@  discard block
 block discarded – undo
581 581
 	 * @return array acc_id:ident_id:email => rfc822 address pairs, eg. '1:1:[email protected]' => 'Ralf Becker Stylite AG <[email protected]>'
582 582
 	 * @todo add aliases for manged mail servers
583 583
 	 */
584
-	public static function rfc822_addresses($formatter=null)
584
+	public static function rfc822_addresses($formatter = null)
585 585
 	{
586 586
 		if (!$formatter || !is_callable($formatter))
587 587
 		{
588 588
 			$formatter = 'self::rfc822';
589 589
 		}
590 590
 		$addresses = array();
591
-		foreach(self::search(true, false) as $acc_id => $account)
591
+		foreach (self::search(true, false) as $acc_id => $account)
592 592
 		{
593
-			$added = false;	// make sure each account get's at least added once, even if it uses an identical email address
594
-			foreach(self::identities($account, true, 'params') as $identity)
593
+			$added = false; // make sure each account get's at least added once, even if it uses an identical email address
594
+			foreach (self::identities($account, true, 'params') as $identity)
595 595
 			{
596 596
 				if (($address = call_user_func($formatter, $identity)) && (!$added || !in_array($address, $addresses)))
597 597
 				{
@@ -625,7 +625,7 @@  discard block
 block discarded – undo
625 625
 			}
626 626
 			return $cmp;
627 627
 		});
628
-		foreach($identities as &$identity)
628
+		foreach ($identities as &$identity)
629 629
 		{
630 630
 			$identity = self::identity_name($identity);
631 631
 		}
@@ -642,16 +642,16 @@  discard block
 block discarded – undo
642 642
 	 * @param int $account_id =null account_id of user, or current user
643 643
 	 * @return array with modified fields
644 644
 	 */
645
-	public static function replace_placeholders($identity, $account_id=null)
645
+	public static function replace_placeholders($identity, $account_id = null)
646 646
 	{
647
-		static $fields = array('ident_name','ident_realname','ident_org','ident_email','ident_signature');
647
+		static $fields = array('ident_name', 'ident_realname', 'ident_org', 'ident_email', 'ident_signature');
648 648
 
649 649
 		if (!is_array($identity) && !is_a($identity, 'Account'))
650 650
 		{
651 651
 			throw new Api\Exception\WrongParameter(__METHOD__."() requires an identity or account as first parameter!");
652 652
 		}
653 653
 		$to_replace = array();
654
-		foreach($fields as $name)
654
+		foreach ($fields as $name)
655 655
 		{
656 656
 			if (strpos($identity[$name], '{{') !== false || strpos($identity[$name], '$$') !== false)
657 657
 			{
@@ -660,10 +660,10 @@  discard block
 block discarded – undo
660 660
 		}
661 661
 		if ($to_replace)
662 662
 		{
663
-			static $merge=null;
663
+			static $merge = null;
664 664
 			if (!isset($merge)) $merge = new Api\Contacts\Merge();
665 665
 			if (!isset($account_id)) $account_id = $GLOBALS['egw_info']['user']['account_id'];
666
-			foreach($to_replace as $name => &$value)
666
+			foreach ($to_replace as $name => &$value)
667 667
 			{
668 668
 				$err = null;
669 669
 				$value = $merge->merge_string($value,
@@ -685,7 +685,7 @@  discard block
 block discarded – undo
685 685
 	 * @return array
686 686
 	 * @throws Api\Exception\NotFound
687 687
 	 */
688
-	public static function read_identity($ident_id, $replace_placeholders=false, $user=null, $account=null)
688
+	public static function read_identity($ident_id, $replace_placeholders = false, $user = null, $account = null)
689 689
 	{
690 690
 		if (($account && $account['ident_id'] == $ident_id))
691 691
 		{
@@ -755,8 +755,7 @@  discard block
 block discarded – undo
755 755
 			'ident_org' => $identity['ident_org'],
756 756
 			'ident_email' => $identity['ident_email'],
757 757
 			'ident_signature' => $identity['ident_signature'],
758
-			'account_id' => self::is_multiple($identity) ? 0 :
759
-				(is_array($identity['account_id']) ? $identity['account_id'][0] : $identity['account_id']),
758
+			'account_id' => self::is_multiple($identity) ? 0 : (is_array($identity['account_id']) ? $identity['account_id'][0] : $identity['account_id']),
760 759
 		);
761 760
 		if ($identity['ident_id'] > 0)
762 761
 		{
@@ -800,7 +799,7 @@  discard block
 block discarded – undo
800 799
 	 */
801 800
 	public function __get($name)
802 801
 	{
803
-		switch($name)
802
+		switch ($name)
804 803
 		{
805 804
 			case 'acc_imap_administration':	// no longer stored in database
806 805
 				return !empty($this->params['acc_imap_admin_username']);
@@ -824,7 +823,7 @@  discard block
 block discarded – undo
824 823
 	 */
825 824
 	public function __isset($name)
826 825
 	{
827
-		switch($name)
826
+		switch ($name)
828 827
 		{
829 828
 			case 'acc_imap_administration':	// no longer stored in database
830 829
 				return true;
@@ -914,11 +913,11 @@  discard block
 block discarded – undo
914 913
 		{
915 914
 			// check if account is for current user, if not deny access
916 915
 			$memberships = self::memberships();
917
-			$memberships[] = '';	// edit uses '' for everyone
916
+			$memberships[] = ''; // edit uses '' for everyone
918 917
 
919 918
 			if (array_intersect((array)$account['account_id'], $memberships))
920 919
 			{
921
-				switch($rights)
920
+				switch ($rights)
922 921
 				{
923 922
 					case Api\Acl::READ:
924 923
 						$access = true;
@@ -963,7 +962,7 @@  discard block
 block discarded – undo
963 962
 	 * @return email_account
964 963
 	 * @throws Api\Exception\NotFound if account was not found (or not valid for current user)
965 964
 	 */
966
-	public static function read($acc_id, $called_for=null)
965
+	public static function read($acc_id, $called_for = null)
967 966
 	{
968 967
 		//error_log(__METHOD__."($acc_id, ".array2string($called_for).")");
969 968
 		// some caching, but only for regular usage/users
@@ -981,7 +980,7 @@  discard block
 block discarded – undo
981 980
 				//error_log(__METHOD__."($acc_id) created instance from cached data");
982 981
 				return self::$instances[$acc_id] = new Account(self::$cache[$acc_id]);
983 982
 			}
984
-			$data =& self::$cache[$acc_id];
983
+			$data = & self::$cache[$acc_id];
985 984
 		}
986 985
 		$where = array(self::TABLE.'.acc_id='.(int)$acc_id);
987 986
 		if (!isset($called_for) || $called_for !== '0')
@@ -1005,7 +1004,7 @@  discard block
 block discarded – undo
1005 1004
 		if (!$valid_account_id_sql)
1006 1005
 		{
1007 1006
 			$data['account_id'] = array();
1008
-			foreach(self::$db->select(self::VALID_TABLE, 'account_id', array('acc_id' => $acc_id),
1007
+			foreach (self::$db->select(self::VALID_TABLE, 'account_id', array('acc_id' => $acc_id),
1009 1008
 				__LINE__, __FILE__, false, '', self::APP) as $row)
1010 1009
 			{
1011 1010
 				$data['account_id'][] = $row['account_id'];
@@ -1017,7 +1016,7 @@  discard block
 block discarded – undo
1017 1016
 		if (!isset($called_for))
1018 1017
 		{
1019 1018
 			//error_log(__METHOD__."($acc_id) creating instance and caching data read from db");
1020
-			$ret =& self::$instances[$acc_id];
1019
+			$ret = & self::$instances[$acc_id];
1021 1020
 		}
1022 1021
 		return $ret = new Account($data, $called_for);
1023 1022
 	}
@@ -1030,7 +1029,7 @@  discard block
 block discarded – undo
1030 1029
 	 */
1031 1030
 	protected static function db2data(array $data)
1032 1031
 	{
1033
-		foreach(array('acc_sieve_enabled','acc_further_identities','acc_user_editable','acc_smtp_auth_session','acc_user_forward') as $name)
1032
+		foreach (array('acc_sieve_enabled', 'acc_further_identities', 'acc_user_editable', 'acc_smtp_auth_session', 'acc_user_forward') as $name)
1034 1033
 		{
1035 1034
 			if (isset($data[$name]))
1036 1035
 			{
@@ -1129,16 +1128,16 @@  discard block
 block discarded – undo
1129 1128
 	 * @throws Api\Exception\WrongParameter if called static without data-array
1130 1129
 	 * @throws Api\Db\Exception
1131 1130
 	 */
1132
-	public static function write(array $data, $user=null)
1131
+	public static function write(array $data, $user = null)
1133 1132
 	{
1134 1133
 		//error_log(__METHOD__."(".array2string($data).")");
1135 1134
 		$data['acc_modifier'] = $GLOBALS['egw_info']['user']['account_id'];
1136 1135
 		$data['acc_modified'] = time();
1137 1136
 
1138 1137
 		// remove redundant namespace to fit into column
1139
-		$ns_len = strlen(__NAMESPACE__)+1;
1138
+		$ns_len = strlen(__NAMESPACE__) + 1;
1140 1139
 		$backup = array();
1141
-		foreach(array('acc_smtp_type', 'acc_imap_type') as $attr)
1140
+		foreach (array('acc_smtp_type', 'acc_imap_type') as $attr)
1142 1141
 		{
1143 1142
 			if (substr($data[$attr], 0, $ns_len) == __NAMESPACE__.'\\')
1144 1143
 			{
@@ -1152,7 +1151,7 @@  discard block
 block discarded – undo
1152 1151
 		{
1153 1152
 			// set not set values which, are NOT NULL and therefore would give an SQL error
1154 1153
 			$td = self::$db->get_table_definitions('api', self::TABLE);
1155
-			foreach($td['fd'] as $col => $def)
1154
+			foreach ($td['fd'] as $col => $def)
1156 1155
 			{
1157 1156
 				if (!isset($data[$col]) && $def['nullable'] === false && !isset($def['default']))
1158 1157
 				{
@@ -1189,19 +1188,19 @@  discard block
 block discarded – undo
1189 1188
 		$old_account_ids = array();
1190 1189
 		if ($where)
1191 1190
 		{
1192
-			foreach(self::$db->select(self::VALID_TABLE, 'account_id', $where,
1191
+			foreach (self::$db->select(self::VALID_TABLE, 'account_id', $where,
1193 1192
 				__LINE__, __FILE__, false, '', self::APP) as $row)
1194 1193
 			{
1195 1194
 				$old_account_ids[] = $row['account_id'];
1196 1195
 			}
1197 1196
 			if (($ids_to_remove = array_diff($old_account_ids, (array)$data['account_id'])))
1198 1197
 			{
1199
-				self::$db->delete(self::VALID_TABLE, $where+array(
1198
+				self::$db->delete(self::VALID_TABLE, $where + array(
1200 1199
 					'account_id' => $ids_to_remove,
1201 1200
 				), __LINE__, __FILE__, self::APP);
1202 1201
 			}
1203 1202
 		}
1204
-		foreach((array)$data['account_id'] as $account_id)
1203
+		foreach ((array)$data['account_id'] as $account_id)
1205 1204
 		{
1206 1205
 			if (!in_array($account_id, $old_account_ids))
1207 1206
 			{
@@ -1238,8 +1237,7 @@  discard block
 block discarded – undo
1238 1237
 		}
1239 1238
 
1240 1239
 		// store notification folders
1241
-		Notifications::write($data['acc_id'], $data['notify_save_default'] ? 0 :
1242
-			($data['called_for'] ? $data['called_for'] : $GLOBALS['egw_info']['user']['account_id']),
1240
+		Notifications::write($data['acc_id'], $data['notify_save_default'] ? 0 : ($data['called_for'] ? $data['called_for'] : $GLOBALS['egw_info']['user']['account_id']),
1243 1241
 			(array)$data['notify_folders']);
1244 1242
 
1245 1243
 		// store domain of an account for all user like before as "mail_suffix" config
@@ -1265,7 +1263,7 @@  discard block
 block discarded – undo
1265 1263
 	 * @param int $account_id =null
1266 1264
 	 * @return boolean
1267 1265
 	 */
1268
-	protected static function credentials_valid_for($account, $account_id=null)
1266
+	protected static function credentials_valid_for($account, $account_id = null)
1269 1267
 	{
1270 1268
 		if (!isset($account_id)) $account_id = $GLOBALS['egw_info']['user']['account_id'];
1271 1269
 
@@ -1291,7 +1289,7 @@  discard block
 block discarded – undo
1291 1289
 	 * @param int $account_id =null user or group
1292 1290
 	 * @return int number of deleted mail accounts or null if only user-data was deleted and no full mail accounts
1293 1291
 	 */
1294
-	public static function delete($acc_id, $account_id=null)
1292
+	public static function delete($acc_id, $account_id = null)
1295 1293
 	{
1296 1294
 		if (is_array($acc_id) || $acc_id > 0)
1297 1295
 		{
@@ -1302,7 +1300,7 @@  discard block
 block discarded – undo
1302 1300
 			self::$db->delete(self::TABLE, array('acc_id' => $acc_id), __LINE__, __FILE__, self::APP);
1303 1301
 
1304 1302
 			// invalidate caches
1305
-			foreach((array)$acc_id as $acc_id)
1303
+			foreach ((array)$acc_id as $acc_id)
1306 1304
 			{
1307 1305
 				self::cache_invalidate($acc_id);
1308 1306
 			}
@@ -1321,7 +1319,7 @@  discard block
 block discarded – undo
1321 1319
 		self::$db->delete(self::IDENTITIES_TABLE, array('account_id' => $account_id), __LINE__, __FILE__, self::APP);
1322 1320
 		// find profiles not belonging to anyone else and delete them
1323 1321
 		$acc_ids = array();
1324
-		foreach(self::$db->select(self::TABLE, self::TABLE.'.acc_id', 'account_id IS NULL', __LINE__, __FILE__,
1322
+		foreach (self::$db->select(self::TABLE, self::TABLE.'.acc_id', 'account_id IS NULL', __LINE__, __FILE__,
1325 1323
 			false, 'GROUP BY '.self::TABLE.'.acc_id', self::APP, 0, 'LEFT '.self::VALID_JOIN) as $row)
1326 1324
 		{
1327 1325
 			$acc_ids[] = $row['acc_id'];
@@ -1345,7 +1343,7 @@  discard block
 block discarded – undo
1345 1343
 	 * @param boolean $replace_placeholders =true should placeholders like {{n_fn}} be replaced
1346 1344
 	 * @return Iterator with acc_id => acc_name or Account objects
1347 1345
 	 */
1348
-	public static function search($only_current_user=true, $just_name=true, $order_by=null, $offset=false, $num_rows=0, $replace_placeholders=true)
1346
+	public static function search($only_current_user = true, $just_name = true, $order_by = null, $offset = false, $num_rows = 0, $replace_placeholders = true)
1349 1347
 	{
1350 1348
 		//error_log(__METHOD__."($only_current_user, $just_name, '$order_by', $offset, $num_rows)");
1351 1349
 		$where = array();
@@ -1391,19 +1389,19 @@  discard block
 block discarded – undo
1391 1389
 				$cols[] = self::ADMIN_COL;
1392 1390
 				$join .= ' '.self::ADMIN_JOIN;
1393 1391
 			}
1394
-			$rs = self::$db->select(self::TABLE, $cols,	$where, __LINE__, __FILE__,
1392
+			$rs = self::$db->select(self::TABLE, $cols, $where, __LINE__, __FILE__,
1395 1393
 				$offset, Api\Storage::fix_group_by_columns($group_by, $cols, self::TABLE, 'acc_id').' ORDER BY '.$order_by,
1396 1394
 				self::APP, $num_rows, $join);
1397 1395
 
1398 1396
 			$ids = array();
1399
-			foreach($rs as $row)
1397
+			foreach ($rs as $row)
1400 1398
 			{
1401 1399
 				$row = self::db2data($row);
1402 1400
 
1403 1401
 				if ($only_current_user === true)
1404 1402
 				{
1405 1403
 					//error_log(__METHOD__."(TRUE, $just_name) caching data for acc_id=$row[acc_id]");
1406
-					self::$search_cache[$cache_key][$row['acc_id']] =& self::$cache[$row['acc_id']];
1404
+					self::$search_cache[$cache_key][$row['acc_id']] = & self::$cache[$row['acc_id']];
1407 1405
 					self::$cache[$row['acc_id']] = $row;
1408 1406
 				}
1409 1407
 				else
@@ -1415,14 +1413,14 @@  discard block
 block discarded – undo
1415 1413
 			// fetch valid_id, if not yet fetched
1416 1414
 			if (!$valid_account_id_sql && $ids)
1417 1415
 			{
1418
-				foreach(self::$db->select(self::VALID_TABLE, 'account_id', array('acc_id' => $ids),
1416
+				foreach (self::$db->select(self::VALID_TABLE, 'account_id', array('acc_id' => $ids),
1419 1417
 					__LINE__, __FILE__, false, '', self::APP) as $row)
1420 1418
 				{
1421 1419
 					self::$cache[$row['acc_id']]['account_id'][] = $row['account_id'];
1422 1420
 				}
1423 1421
 			}
1424 1422
 		}
1425
-		if (is_null(self::$search_cache[$cache_key])) self::$search_cache[$cache_key]=array();
1423
+		if (is_null(self::$search_cache[$cache_key])) self::$search_cache[$cache_key] = array();
1426 1424
 		return new Api\Db\CallbackIterator(new \ArrayIterator(self::$search_cache[$cache_key]),
1427 1425
 			// process each row
1428 1426
 			function($row) use ($just_name, $replace_placeholders, $account_id)
@@ -1456,11 +1454,11 @@  discard block
 block discarded – undo
1456 1454
 	 * @param boolean $log_no_default =true true: error_log if no default found, false be silent
1457 1455
 	 * @return Account|null
1458 1456
 	 */
1459
-	static function get_default($smtp=false, $return_id=false, $log_no_default=true)
1457
+	static function get_default($smtp = false, $return_id = false, $log_no_default = true)
1460 1458
 	{
1461 1459
 		try
1462 1460
 		{
1463
-			foreach(self::search(true, 'params') as $acc_id => $params)
1461
+			foreach (self::search(true, 'params') as $acc_id => $params)
1464 1462
 			{
1465 1463
 				if ($smtp)
1466 1464
 				{
@@ -1507,7 +1505,7 @@  discard block
 block discarded – undo
1507 1505
 	 * @param boolean $smtp =false false: usable for IMAP, true: usable for SMTP
1508 1506
 	 * @return int
1509 1507
 	 */
1510
-	static function get_default_acc_id($smtp=false)
1508
+	static function get_default_acc_id($smtp = false)
1511 1509
 	{
1512 1510
 		return self::get_default($smtp, true);
1513 1511
 	}
@@ -1520,7 +1518,7 @@  discard block
 block discarded – undo
1520 1518
 	 * @param int $account_id =null account_id of user we are called for
1521 1519
 	 * @return string with htmlencoded angle brackets
1522 1520
 	 */
1523
-	public static function identity_name($account, $replace_placeholders=true, $account_id=null)
1521
+	public static function identity_name($account, $replace_placeholders = true, $account_id = null)
1524 1522
 	{
1525 1523
 		if ($replace_placeholders)
1526 1524
 		{
@@ -1547,7 +1545,7 @@  discard block
 block discarded – undo
1547 1545
 				{
1548 1546
 					if (!isset($account['acc_imap_username']))
1549 1547
 					{
1550
-						$account += Credentials::read($account['acc_id'], null, ($account_id?array($account_id, 0):null));
1548
+						$account += Credentials::read($account['acc_id'], null, ($account_id ? array($account_id, 0) : null));
1551 1549
 					}
1552 1550
 					if (empty($account['acc_imap_username']) && $account['acc_imap_logintype'] &&
1553 1551
 						(!isset($account_id) || $account_id == $GLOBALS['egw_info']['user']['account_id']))
@@ -1566,7 +1564,7 @@  discard block
 block discarded – undo
1566 1564
 					$account['ident_email'] = $account['acc_imap_username'];
1567 1565
 				}
1568 1566
 			}
1569
-			catch(\Exception $e) {
1567
+			catch (\Exception $e) {
1570 1568
 				_egw_log_exception($e);
1571 1569
 			}
1572 1570
 
@@ -1583,7 +1581,7 @@  discard block
 block discarded – undo
1583 1581
 		{
1584 1582
 			$name .= ' <'.$account['ident_email'].'>';
1585 1583
 		}
1586
-		elseif(strpos($account['acc_imap_username'], '@') !== false)
1584
+		elseif (strpos($account['acc_imap_username'], '@') !== false)
1587 1585
 		{
1588 1586
 			$name .= ' <'.$account['acc_imap_username'].'>';
1589 1587
 		}
@@ -1606,8 +1604,7 @@  discard block
 block discarded – undo
1606 1604
 	 */
1607 1605
 	public static function is_multiple($account)
1608 1606
 	{
1609
-		$is_multiple = !is_array($account['account_id']) ? $account['account_id'] <= 0 :
1610
-			(count($account['account_id']) > 1 || $account['account_id'][0] <= 0);
1607
+		$is_multiple = !is_array($account['account_id']) ? $account['account_id'] <= 0 : (count($account['account_id']) > 1 || $account['account_id'][0] <= 0);
1611 1608
 		//error_log(__METHOD__."(account_id=".array2string($account['account_id']).") returning ".array2string($is_multiple));
1612 1609
 		return $is_multiple;
1613 1610
 	}
@@ -1628,13 +1625,13 @@  discard block
 block discarded – undo
1628 1625
 	 * @param type $user
1629 1626
 	 * @return array
1630 1627
 	 */
1631
-	protected static function memberships($user=null)
1628
+	protected static function memberships($user = null)
1632 1629
 	{
1633 1630
 		if (!$user) $user = $GLOBALS['egw_info']['user']['account_id'];
1634 1631
 
1635 1632
 		$memberships = $GLOBALS['egw']->accounts->memberships($user, true);
1636 1633
 		$memberships[] = $user;
1637
-		$memberships[] = 0;	// marks accounts valid for everyone
1634
+		$memberships[] = 0; // marks accounts valid for everyone
1638 1635
 
1639 1636
 		return $memberships;
1640 1637
 	}
Please login to merge, or discard this patch.
Braces   +95 added lines, -24 removed lines patch added patch discarded remove patch
@@ -360,8 +360,14 @@  discard block
 block discarded – undo
360 360
 		{
361 361
 			// make sure mbstring.func_overload=0
362 362
 			static $func_overload = null;
363
-			if (is_null($func_overload)) $func_overload = extension_loaded('mbstring') ? ini_get('mbstring.func_overload') : 0;
364
-			if ($func_overload) throw new Api\Exception\AssertionFailed('Fatal Error: EGroupware requires mbstring.func_overload=0 set in your php.ini!');
363
+			if (is_null($func_overload))
364
+			{
365
+				$func_overload = extension_loaded('mbstring') ? ini_get('mbstring.func_overload') : 0;
366
+			}
367
+			if ($func_overload)
368
+			{
369
+				throw new Api\Exception\AssertionFailed('Fatal Error: EGroupware requires mbstring.func_overload=0 set in your php.ini!');
370
+			}
365 371
 
366 372
 			$class = $this->params['acc_imap_type'];
367 373
 			$this->imapServer = new $class($this->params, $_adminConnection, $_timeout);
@@ -490,7 +496,10 @@  discard block
 block discarded – undo
490 496
 	 */
491 497
 	public static function identities($account, $replace_placeholders=true, $field='name', $user=null)
492 498
 	{
493
-		if (!isset($user)) $user = $GLOBALS['egw_info']['user']['account_id'];
499
+		if (!isset($user))
500
+		{
501
+			$user = $GLOBALS['egw_info']['user']['account_id'];
502
+		}
494 503
 		$acc_id = is_scalar($account) ? $account : $account['acc_id'];
495 504
 
496 505
 		$cols = array('ident_id', 'ident_name', 'ident_realname', 'ident_org', 'ident_email', 'ident_signature', 'acc_id', 'acc_imap_username', 'acc_imap_logintype', 'acc_domain');
@@ -528,8 +537,14 @@  discard block
 block discarded – undo
528 537
 				// fill an empty ident_realname or ident_email of current user with data from user account
529 538
 				if ($replace_placeholders && (!isset($user) || $user == $GLOBALS['egw_info']['user']['acount_id']))
530 539
 				{
531
-					if (empty($row['ident_realname'])) $row['ident_realname'] = $GLOBALS['egw_info']['user']['account_fullname'];
532
-					if (empty($row['ident_email'])) $row['ident_email'] = $GLOBALS['egw_info']['user']['account_email'];
540
+					if (empty($row['ident_realname']))
541
+					{
542
+						$row['ident_realname'] = $GLOBALS['egw_info']['user']['account_fullname'];
543
+					}
544
+					if (empty($row['ident_email']))
545
+					{
546
+						$row['ident_email'] = $GLOBALS['egw_info']['user']['account_email'];
547
+					}
533 548
 				}
534 549
 				if ($field != 'name')
535 550
 				{
@@ -538,7 +553,9 @@  discard block
 block discarded – undo
538 553
 				}
539 554
 				return self::identity_name($row, $replace_placeholders);
540 555
 			}, array(),
541
-			function($row) { return $row['ident_id'];});
556
+			function($row)
557
+			{
558
+return $row['ident_id'];});
542 559
 	}
543 560
 
544 561
 	/**
@@ -554,10 +571,13 @@  discard block
 block discarded – undo
554 571
 		{
555 572
 			$address .= ($address && $identity['ident_org'] ? ' ' : '').$identity['ident_org'];
556 573
 		}
557
-		if (strpos($address, ',') !== false)	// need to quote comma
574
+		if (strpos($address, ',') !== false)
575
+		{
576
+			// need to quote comma
558 577
 		{
559 578
 			$address = '"'.str_replace('"', '\\"', $address).'"';
560 579
 		}
580
+		}
561 581
 		if (!strpos($identity['ident_email'], '@'))
562 582
 		{
563 583
 			$address = null;
@@ -661,8 +681,14 @@  discard block
 block discarded – undo
661 681
 		if ($to_replace)
662 682
 		{
663 683
 			static $merge=null;
664
-			if (!isset($merge)) $merge = new Api\Contacts\Merge();
665
-			if (!isset($account_id)) $account_id = $GLOBALS['egw_info']['user']['account_id'];
684
+			if (!isset($merge))
685
+			{
686
+				$merge = new Api\Contacts\Merge();
687
+			}
688
+			if (!isset($account_id))
689
+			{
690
+				$account_id = $GLOBALS['egw_info']['user']['account_id'];
691
+			}
666 692
 			foreach($to_replace as $name => &$value)
667 693
 			{
668 694
 				$err = null;
@@ -1083,7 +1109,10 @@  discard block
 block discarded – undo
1083 1109
 				}
1084 1110
 
1085 1111
 				// fetch the IMAP / incomming server data
1086
-				if (!class_exists($data['acc_smtp_type'])) $data['acc_smtp_type'] = __NAMESPACE__.'\\Smtp';
1112
+				if (!class_exists($data['acc_smtp_type']))
1113
+				{
1114
+					$data['acc_smtp_type'] = __NAMESPACE__.'\\Smtp';
1115
+				}
1087 1116
 			}
1088 1117
 		}
1089 1118
 		return $data;
@@ -1115,7 +1144,10 @@  discard block
 block discarded – undo
1115 1144
 		}
1116 1145
 
1117 1146
 		// fetch the IMAP / incomming server data
1118
-		if (!class_exists($imap_type)) $imap_type = __NAMESPACE__.'\\Imap';
1147
+		if (!class_exists($imap_type))
1148
+		{
1149
+			$imap_type = __NAMESPACE__.'\\Imap';
1150
+		}
1119 1151
 
1120 1152
 		return $imap_type;
1121 1153
 	}
@@ -1168,7 +1200,10 @@  discard block
 block discarded – undo
1168 1200
 			$data['acc_id'] = self::$db->get_last_insert_id(self::TABLE, 'acc_id');
1169 1201
 		}
1170 1202
 		// restore namespace in class-names
1171
-		if ($backup) $data = array_merge($data, $backup);
1203
+		if ($backup)
1204
+		{
1205
+			$data = array_merge($data, $backup);
1206
+		}
1172 1207
 
1173 1208
 		// store identity
1174 1209
 		$new_ident_id = self::save_identity($data);
@@ -1279,7 +1314,10 @@  discard block
 block discarded – undo
1279 1314
 	 */
1280 1315
 	protected static function credentials_valid_for($account, $account_id=null)
1281 1316
 	{
1282
-		if (!isset($account_id)) $account_id = $GLOBALS['egw_info']['user']['account_id'];
1317
+		if (!isset($account_id))
1318
+		{
1319
+			$account_id = $GLOBALS['egw_info']['user']['account_id'];
1320
+		}
1283 1321
 
1284 1322
 		// if account valid for multiple users
1285 1323
 		if (self::is_multiple($account))
@@ -1398,9 +1436,12 @@  discard block
 block discarded – undo
1398 1436
 				$cols[] = $valid_account_id_sql.' AS account_id';
1399 1437
 				$join .= ' '.self::ALL_VALID_JOIN;
1400 1438
 			}
1401
-			if ($just_name == 'params')	// join in acc_imap_admin_username
1439
+			if ($just_name == 'params')
1440
+			{
1441
+				// join in acc_imap_admin_username
1402 1442
 			{
1403 1443
 				$cols[] = self::ADMIN_COL;
1444
+			}
1404 1445
 				$join .= ' '.self::ADMIN_JOIN;
1405 1446
 			}
1406 1447
 			$rs = self::$db->select(self::TABLE, $cols,	$where, __LINE__, __FILE__,
@@ -1434,7 +1475,10 @@  discard block
 block discarded – undo
1434 1475
 				}
1435 1476
 			}
1436 1477
 		}
1437
-		if (is_null(self::$search_cache[$cache_key])) self::$search_cache[$cache_key]=array();
1478
+		if (is_null(self::$search_cache[$cache_key]))
1479
+		{
1480
+			self::$search_cache[$cache_key]=array();
1481
+		}
1438 1482
 		return new Api\Db\CallbackIterator(new \ArrayIterator(self::$search_cache[$cache_key]),
1439 1483
 			// process each row
1440 1484
 			function($row) use ($just_name, $replace_placeholders, $account_id)
@@ -1476,12 +1520,18 @@  discard block
 block discarded – undo
1476 1520
 			{
1477 1521
 				if ($smtp)
1478 1522
 				{
1479
-					if (!$params['acc_smtp_host'] || !$params['acc_smtp_port']) continue;
1523
+					if (!$params['acc_smtp_host'] || !$params['acc_smtp_port'])
1524
+					{
1525
+						continue;
1526
+					}
1480 1527
 					// check requirement of session, which is not available in async service!
1481 1528
 					if (isset($GLOBALS['egw_info']['flags']['async-service']) ||
1482
-						empty($GLOBALS['egw_info']['user']['account_id']))	// happens during login when notifying about blocked accounts
1529
+						empty($GLOBALS['egw_info']['user']['account_id']))
1530
+					{
1531
+						// happens during login when notifying about blocked accounts
1483 1532
 					{
1484 1533
 						if ($params['acc_smtp_auth_session']) continue;
1534
+					}
1485 1535
 						// may fail because of smtp only profile, or no session password, etc
1486 1536
 						try
1487 1537
 						{
@@ -1492,15 +1542,24 @@  discard block
 block discarded – undo
1492 1542
 							unset($x);
1493 1543
 							continue;
1494 1544
 						}
1495
-						if (Credentials::isUser($account->acc_smtp_pw_enc)) continue;
1545
+						if (Credentials::isUser($account->acc_smtp_pw_enc))
1546
+						{
1547
+							continue;
1548
+						}
1496 1549
 					}
1497 1550
 				}
1498 1551
 				else
1499 1552
 				{
1500
-					if (!$params['acc_imap_host'] || !$params['acc_imap_port']) continue;
1553
+					if (!$params['acc_imap_host'] || !$params['acc_imap_port'])
1554
+					{
1555
+						continue;
1556
+					}
1501 1557
 					$account = new Account($params);
1502 1558
 					// continue if we have either no imap username or password
1503
-					if (!$account->is_imap()) continue;
1559
+					if (!$account->is_imap())
1560
+					{
1561
+						continue;
1562
+					}
1504 1563
 				}
1505 1564
 				return $return_id ? $acc_id : (isset($account) && $account->acc_id == $acc_id ?
1506 1565
 					$account : new Account($params));
@@ -1508,7 +1567,10 @@  discard block
 block discarded – undo
1508 1567
 		}
1509 1568
 		catch (\Exception $e)
1510 1569
 		{
1511
-			if ($log_no_default) error_log(__METHOD__.__LINE__.' Error no Default available.'.$e->getMessage());
1570
+			if ($log_no_default)
1571
+			{
1572
+				error_log(__METHOD__.__LINE__.' Error no Default available.'.$e->getMessage());
1573
+			}
1512 1574
 		}
1513 1575
 		return null;
1514 1576
 	}
@@ -1570,8 +1632,14 @@  discard block
 block discarded – undo
1570 1632
 				// fill an empty ident_realname or ident_email of current user with data from user account
1571 1633
 				if ($replace_placeholders && (!isset($account_id) || $account_id == $GLOBALS['egw_info']['user']['acount_id']))
1572 1634
 				{
1573
-					if (empty($account['ident_realname'])) $account['ident_realname'] = $GLOBALS['egw_info']['user']['account_fullname'];
1574
-					if (empty($account['ident_email'])) $account['ident_email'] = $GLOBALS['egw_info']['user']['account_email'];
1635
+					if (empty($account['ident_realname']))
1636
+					{
1637
+						$account['ident_realname'] = $GLOBALS['egw_info']['user']['account_fullname'];
1638
+					}
1639
+					if (empty($account['ident_email']))
1640
+					{
1641
+						$account['ident_email'] = $GLOBALS['egw_info']['user']['account_email'];
1642
+					}
1575 1643
 				}
1576 1644
 				if (empty($account['ident_email']) && !empty($account['acc_imap_username']) && strpos($account['acc_imap_username'], '@') !== false)
1577 1645
 				{
@@ -1642,7 +1710,10 @@  discard block
 block discarded – undo
1642 1710
 	 */
1643 1711
 	protected static function memberships($user=null)
1644 1712
 	{
1645
-		if (!$user) $user = $GLOBALS['egw_info']['user']['account_id'];
1713
+		if (!$user)
1714
+		{
1715
+			$user = $GLOBALS['egw_info']['user']['account_id'];
1716
+		}
1646 1717
 
1647 1718
 		$memberships = $GLOBALS['egw']->accounts->memberships($user, true);
1648 1719
 		$memberships[] = $user;
Please login to merge, or discard this patch.
api/src/Mail/Hooks.php 4 patches
Doc Comments   -8 removed lines patch added patch discarded remove patch
@@ -36,9 +36,6 @@  discard block
 block discarded – undo
36 36
      * Hook called before an account get deleted
37 37
      *
38 38
      * @param array $data
39
-     * @param int $data['account_id'] numerical id
40
-     * @param string $data['account_lid'] account-name
41
-     * @param int $data['new_owner'] account-id of new owner, or false if data should get deleted
42 39
      */
43 40
 	static function deleteaccount(array $data)
44 41
 	{
@@ -52,8 +49,6 @@  discard block
 block discarded – undo
52 49
      * Hook called before a group get deleted
53 50
      *
54 51
      * @param array $data
55
-     * @param int $data['account_id'] numerical id
56
-     * @param string $data['account_name'] account-name
57 52
      */
58 53
 	static function deletegroup(array $data)
59 54
 	{
@@ -64,9 +59,6 @@  discard block
 block discarded – undo
64 59
      * Hook called when an account get added or edited
65 60
      *
66 61
      * @param array $data
67
-     * @param int $data['account_id'] numerical id
68
-     * @param string $data['account_lid'] account-name
69
-     * @param string $data['account_email'] email
70 62
 	 */
71 63
 	static function addaccount(array $data)
72 64
 	{
Please login to merge, or discard this patch.
Indentation   +21 added lines, -21 removed lines patch added patch discarded remove patch
@@ -32,14 +32,14 @@  discard block
 block discarded – undo
32 32
 		}
33 33
 	}
34 34
 
35
-    /**
36
-     * Hook called before an account get deleted
37
-     *
38
-     * @param array $data
39
-     * @param int $data['account_id'] numerical id
40
-     * @param string $data['account_lid'] account-name
41
-     * @param int $data['new_owner'] account-id of new owner, or false if data should get deleted
42
-     */
35
+	/**
36
+	 * Hook called before an account get deleted
37
+	 *
38
+	 * @param array $data
39
+	 * @param int $data['account_id'] numerical id
40
+	 * @param string $data['account_lid'] account-name
41
+	 * @param int $data['new_owner'] account-id of new owner, or false if data should get deleted
42
+	 */
43 43
 	static function deleteaccount(array $data)
44 44
 	{
45 45
 		self::run_plugin_hooks('deleteAccount', $data);
@@ -48,25 +48,25 @@  discard block
 block discarded – undo
48 48
 		Account::delete(0, $data['account_id']);
49 49
 	}
50 50
 
51
-    /**
52
-     * Hook called before a group get deleted
53
-     *
54
-     * @param array $data
55
-     * @param int $data['account_id'] numerical id
56
-     * @param string $data['account_name'] account-name
57
-     */
51
+	/**
52
+	 * Hook called before a group get deleted
53
+	 *
54
+	 * @param array $data
55
+	 * @param int $data['account_id'] numerical id
56
+	 * @param string $data['account_name'] account-name
57
+	 */
58 58
 	static function deletegroup(array $data)
59 59
 	{
60 60
 		Account::delete(0, $data['account_id']);
61 61
 	}
62 62
 
63 63
 	/**
64
-     * Hook called when an account get added or edited
65
-     *
66
-     * @param array $data
67
-     * @param int $data['account_id'] numerical id
68
-     * @param string $data['account_lid'] account-name
69
-     * @param string $data['account_email'] email
64
+	 * Hook called when an account get added or edited
65
+	 *
66
+	 * @param array $data
67
+	 * @param int $data['account_id'] numerical id
68
+	 * @param string $data['account_lid'] account-name
69
+	 * @param string $data['account_email'] email
70 70
 	 */
71 71
 	static function addaccount(array $data)
72 72
 	{
Please login to merge, or discard this patch.
Spacing   +3 added lines, -3 removed lines patch added patch discarded remove patch
@@ -82,9 +82,9 @@  discard block
 block discarded – undo
82 82
 	 */
83 83
 	protected static function run_plugin_hooks($method, array $data)
84 84
 	{
85
-		foreach(Account::search((int)$data['account_id'], 'params') as $params)
85
+		foreach (Account::search((int)$data['account_id'], 'params') as $params)
86 86
 		{
87
-			if (!Account::is_multiple($params)) continue;	// no need to waste time on personal accounts
87
+			if (!Account::is_multiple($params)) continue; // no need to waste time on personal accounts
88 88
 
89 89
 			try {
90 90
 				$account = new Account($params);
@@ -100,7 +100,7 @@  discard block
 block discarded – undo
100 100
 					$imap->$method($data);
101 101
 				}
102 102
 			}
103
-			catch(\Exception $e) {
103
+			catch (\Exception $e) {
104 104
 				_egw_log_exception($e);
105 105
 				// ignore exception, without stalling other hooks
106 106
 			}
Please login to merge, or discard this patch.
Braces   +5 added lines, -1 removed lines patch added patch discarded remove patch
@@ -84,7 +84,11 @@
 block discarded – undo
84 84
 	{
85 85
 		foreach(Account::search((int)$data['account_id'], 'params') as $params)
86 86
 		{
87
-			if (!Account::is_multiple($params)) continue;	// no need to waste time on personal accounts
87
+			if (!Account::is_multiple($params))
88
+			{
89
+				continue;
90
+			}
91
+			// no need to waste time on personal accounts
88 92
 
89 93
 			try {
90 94
 				$account = new Account($params);
Please login to merge, or discard this patch.
api/src/Mail/Html.php 3 patches
Doc Comments   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -227,7 +227,7 @@
 block discarded – undo
227 227
 	 * @param string $displayCharset : charset to use; should be a valid charset
228 228
 	 * @param bool $stripcrl :  flag to indicate for the removal of all crlf \r\n
229 229
 	 * @param bool $stripalltags : flag to indicate wether or not to strip $_html from all remaining tags
230
-	 * @return text $_html : the modified text.
230
+	 * @return string $_html : the modified text.
231 231
 	 */
232 232
 	static function convertHTMLToText($_html,$displayCharset=false,$stripcrl=false,$stripalltags=true)
233 233
 	{
Please login to merge, or discard this patch.
Spacing   +126 added lines, -126 removed lines patch added patch discarded remove patch
@@ -28,17 +28,17 @@  discard block
 block discarded – undo
28 28
 	 * @param integer $reclevel param to control recursive calls (to prevent endless recursion)
29 29
 	 * @return string
30 30
 	 */
31
-	static function decodeMailHeader($_string, $displayCharset='utf-8', $reclevel=0)
31
+	static function decodeMailHeader($_string, $displayCharset = 'utf-8', $reclevel = 0)
32 32
 	{
33
-		$maxreclevel=25;
33
+		$maxreclevel = 25;
34 34
 		if ($reclevel > $maxreclevel) {
35
-			error_log( __METHOD__.__LINE__." Recursion Level Exeeded ($reclevel) while decoding $_string ");
35
+			error_log(__METHOD__.__LINE__." Recursion Level Exeeded ($reclevel) while decoding $_string ");
36 36
 			return $_string;
37 37
 		}
38 38
 		$reclevel++;
39 39
 
40 40
 		//error_log(__FILE__.','.__METHOD__.':'."called with $_string and CHARSET $displayCharset");
41
-		if(function_exists('imap_mime_header_decode'))
41
+		if (function_exists('imap_mime_header_decode'))
42 42
 		{
43 43
 			// some characterreplacements, as they fail to translate
44 44
 			$sar = array(
@@ -60,23 +60,23 @@  discard block
 block discarded – undo
60 60
 
61 61
 			$string = preg_replace('/\?=\s+=\?/', '?= =?', $_string);
62 62
 
63
-			$elements=imap_mime_header_decode($string);
63
+			$elements = imap_mime_header_decode($string);
64 64
 
65 65
 			$convertAtEnd = false;
66
-			foreach((array)$elements as $element)
66
+			foreach ((array)$elements as $element)
67 67
 			{
68 68
 				if ($element->charset == 'default') $element->charset = Api\Translation::detect_encoding($element->text);
69 69
 				if ($element->charset != 'x-unknown')
70 70
 				{
71
-					if( strtoupper($element->charset) != 'UTF-8') $element->text = preg_replace($sar,$rar,$element->text);
71
+					if (strtoupper($element->charset) != 'UTF-8') $element->text = preg_replace($sar, $rar, $element->text);
72 72
 					// check if there is a possible nested encoding; make sure that the inputstring and the decoded result are different to avoid loops
73
-					$openTags = substr_count($element->text,'?=');
74
-					if(preg_match('/\?=.+=\?/', $element->text) && $openTags>0 && $openTags==substr_count($element->text,'=?') && $element->text != $_string)
73
+					$openTags = substr_count($element->text, '?=');
74
+					if (preg_match('/\?=.+=\?/', $element->text) && $openTags > 0 && $openTags == substr_count($element->text, '=?') && $element->text != $_string)
75 75
 					{
76 76
 						$element->text = self::decodeMailHeader($element->text, $element->charset, $reclevel);
77 77
 						$element->charset = $displayCharset;
78 78
 					}
79
-					$newString .= Api\Translation::convert($element->text,$element->charset);
79
+					$newString .= Api\Translation::convert($element->text, $element->charset);
80 80
 				}
81 81
 				else
82 82
 				{
@@ -84,34 +84,34 @@  discard block
 block discarded – undo
84 84
 					$convertAtEnd = true;
85 85
 				}
86 86
 			}
87
-			if ($convertAtEnd) $newString = self::decodeMailHeader($newString,$displayCharset,$reclevel);
88
-			return preg_replace('/([\000-\012\015\016\020-\037\075])/','',$newString);
87
+			if ($convertAtEnd) $newString = self::decodeMailHeader($newString, $displayCharset, $reclevel);
88
+			return preg_replace('/([\000-\012\015\016\020-\037\075])/', '', $newString);
89 89
 		}
90
-		elseif(function_exists(mb_decode_mimeheader))
90
+		elseif (function_exists(mb_decode_mimeheader))
91 91
 		{
92 92
 			$matches = null;
93
-			if(preg_match_all('/=\?.*\?Q\?.*\?=/iU', $string=$_string, $matches))
93
+			if (preg_match_all('/=\?.*\?Q\?.*\?=/iU', $string = $_string, $matches))
94 94
 			{
95
-				foreach($matches[0] as $match)
95
+				foreach ($matches[0] as $match)
96 96
 				{
97 97
 					$fixedMatch = str_replace('_', ' ', $match);
98 98
 					$string = str_replace($match, $fixedMatch, $string);
99 99
 				}
100
-				$string = str_replace('=?ISO8859-','=?ISO-8859-',
101
-					str_replace('=?windows-1258','=?ISO-8859-1',$string));
100
+				$string = str_replace('=?ISO8859-', '=?ISO-8859-',
101
+					str_replace('=?windows-1258', '=?ISO-8859-1', $string));
102 102
 			}
103 103
 			$string = mb_decode_mimeheader($string);
104
-			return preg_replace('/([\000-\012\015\016\020-\037\075])/','',$string);
104
+			return preg_replace('/([\000-\012\015\016\020-\037\075])/', '', $string);
105 105
 		}
106
-		elseif(function_exists(iconv_mime_decode))
106
+		elseif (function_exists(iconv_mime_decode))
107 107
 		{
108 108
 			// continue decoding also if an error occurs
109 109
 			$string = @iconv_mime_decode($_string, 2, $displayCharset);
110
-			return preg_replace('/([\000-\012\015\016\020-\037\075])/','',$string);
110
+			return preg_replace('/([\000-\012\015\016\020-\037\075])/', '', $string);
111 111
 		}
112 112
 
113 113
 		// no decoding function available
114
-		return preg_replace('/([\000-\012\015\016\020-\037\075])/','',$_string);
114
+		return preg_replace('/([\000-\012\015\016\020-\037\075])/', '', $_string);
115 115
 	}
116 116
 
117 117
 	/**
@@ -124,15 +124,15 @@  discard block
 block discarded – undo
124 124
 	{
125 125
 		//error_log($text);
126 126
 		//replace CRLF with something other to be preserved via preg_replace as CRLF seems to vanish
127
-		$text2 = str_replace("\r\n",'<#cr-lf#>',$text);
127
+		$text2 = str_replace("\r\n", '<#cr-lf#>', $text);
128 128
 			// replace emailaddresses eclosed in <> (eg.: <[email protected]>) with the emailaddress only (e.g: [email protected])
129
-		$text3 = preg_replace("/(<|&lt;a href=\")*(mailto:([\w\.,-.,_.,0-9.]+)(@)([\w\.,-.,_.,0-9.]+))(>|&gt;)*/i","$2 ", $text2);
129
+		$text3 = preg_replace("/(<|&lt;a href=\")*(mailto:([\w\.,-.,_.,0-9.]+)(@)([\w\.,-.,_.,0-9.]+))(>|&gt;)*/i", "$2 ", $text2);
130 130
 		//$text = preg_replace_callback("/(<|&lt;a href=\")*(mailto:([\w\.,-.,_.,0-9.]+)(@)([\w\.,-.,_.,0-9.]+))(>|&gt;)*/i",'self::transform_mailto2text',$text);
131 131
 		//$text = preg_replace('~<a[^>]+href=\"(mailto:)+([^"]+)\"[^>]*>~si','$2 ',$text);
132
-		$text4 = preg_replace_callback('~<a[^>]+href=\"(mailto:)+([^"]+)\"[^>]*>([ @\w\.,-.,_.,0-9.]+)<\/a>~si','self::transform_mailto2text',$text3);
133
-		$text5 = preg_replace("/(([\w\.,-.,_.,0-9.]+)(@)([\w\.,-.,_.,0-9.]+))( |\s)*(<\/a>)*( |\s)*(>|&gt;)*/i","$1 ", $text4);
134
-		$text6 = preg_replace("/(<|&lt;)*(([\w\.,-.,_.,0-9.]+)@([\w\.,-.,_.,0-9.]+))(>|&gt;)*/i","$2 ", $text5);
135
-		$text = str_replace('<#cr-lf#>',"\r\n",$text6);
132
+		$text4 = preg_replace_callback('~<a[^>]+href=\"(mailto:)+([^"]+)\"[^>]*>([ @\w\.,-.,_.,0-9.]+)<\/a>~si', 'self::transform_mailto2text', $text3);
133
+		$text5 = preg_replace("/(([\w\.,-.,_.,0-9.]+)(@)([\w\.,-.,_.,0-9.]+))( |\s)*(<\/a>)*( |\s)*(>|&gt;)*/i", "$1 ", $text4);
134
+		$text6 = preg_replace("/(<|&lt;)*(([\w\.,-.,_.,0-9.]+)@([\w\.,-.,_.,0-9.]+))(>|&gt;)*/i", "$2 ", $text5);
135
+		$text = str_replace('<#cr-lf#>', "\r\n", $text6);
136 136
 		return 1;
137 137
 	}
138 138
 
@@ -146,11 +146,11 @@  discard block
 block discarded – undo
146 146
 	 *				or if you want the string to be matched as is
147 147
 	 * @return void the modified text is passed via reference
148 148
 	 */
149
-	static function replaceTagsCompletley(&$_body,$tag,$endtag='',$addbracesforendtag=true)
149
+	static function replaceTagsCompletley(&$_body, $tag, $endtag = '', $addbracesforendtag = true)
150 150
 	{
151 151
 		if ($tag) $tag = strtolower($tag);
152 152
 		$singleton = false;
153
-		if ($endtag=='/>') $singleton =true;
153
+		if ($endtag == '/>') $singleton = true;
154 154
 		if ($endtag == '' || empty($endtag) || !isset($endtag))
155 155
 		{
156 156
 			$endtag = $tag;
@@ -163,31 +163,31 @@  discard block
 block discarded – undo
163 163
 			if ($singleton)
164 164
 			{
165 165
 				//$_body = preg_replace('~<'.$tag.'[^>].*? '.$endtag.'~simU','',$_body);
166
-				$_body = preg_replace('~<?'.$tag.'[^>].* '.$endtag.'~simU','',$_body); // we are in Ungreedy mode, so we expect * to be ungreedy without specifying ?
166
+				$_body = preg_replace('~<?'.$tag.'[^>].* '.$endtag.'~simU', '', $_body); // we are in Ungreedy mode, so we expect * to be ungreedy without specifying ?
167 167
 			}
168 168
 			else
169 169
 			{
170
-				$found=null;
171
-				if ($addbracesforendtag === true )
170
+				$found = null;
171
+				if ($addbracesforendtag === true)
172 172
 				{
173
-					if (stripos($_body,'<'.$tag)!==false)  $ct = preg_match_all('#<'.$tag.'(?:\s.*)?>(.+)</'.$endtag.'>#isU', $_body, $found);
174
-					if ($ct>0)
173
+					if (stripos($_body, '<'.$tag) !== false)  $ct = preg_match_all('#<'.$tag.'(?:\s.*)?>(.+)</'.$endtag.'>#isU', $_body, $found);
174
+					if ($ct > 0)
175 175
 					{
176 176
 						//error_log(__METHOD__.__LINE__.array2string($found[0]));
177 177
 						// only replace what we have found
178
-						$_body = str_ireplace($found[0],'',$_body);
178
+						$_body = str_ireplace($found[0], '', $_body);
179 179
 					}
180 180
 					// remove left over tags, unfinished ones, and so on
181
-					$_body = preg_replace('~<'.$tag.'[^>]*?>~si','',$_body);
181
+					$_body = preg_replace('~<'.$tag.'[^>]*?>~si', '', $_body);
182 182
 				}
183
-				if ($addbracesforendtag === false )
183
+				if ($addbracesforendtag === false)
184 184
 				{
185
-					if (stripos($_body,'<'.$tag)!==false)  $ct = preg_match_all('#<'.$tag.'(?:\s.*)?>(.+)'.$endtag.'#isU', $_body, $found);
186
-					if ($ct>0)
185
+					if (stripos($_body, '<'.$tag) !== false)  $ct = preg_match_all('#<'.$tag.'(?:\s.*)?>(.+)'.$endtag.'#isU', $_body, $found);
186
+					if ($ct > 0)
187 187
 					{
188 188
 						//error_log(__METHOD__.__LINE__.array2string($found[0]));
189 189
 						// only replace what we have found
190
-						$_body = str_ireplace($found[0],'',$_body);
190
+						$_body = str_ireplace($found[0], '', $_body);
191 191
 					}
192 192
 /*
193 193
 					$_body = preg_replace('~<'.$tag.'[^>]*?>(.*?)'.$endtag.'~simU','',$_body);
@@ -205,9 +205,9 @@  discard block
 block discarded – undo
205 205
 		// this is the actual url
206 206
 		$matches[2] = trim(strip_tags($matches[2]));
207 207
 		$matches[3] = trim(strip_tags($matches[3]));
208
-		$matches[2] = str_replace(array('%40','%20'),array('@',' '),$matches[2]);
209
-		$matches[3] = str_replace(array('%40','%20'),array('@',' '),$matches[3]);
210
-		return $matches[1].$matches[2].($matches[2]==$matches[3]?' ':' -> '.$matches[3].' ');
208
+		$matches[2] = str_replace(array('%40', '%20'), array('@', ' '), $matches[2]);
209
+		$matches[3] = str_replace(array('%40', '%20'), array('@', ' '), $matches[3]);
210
+		return $matches[1].$matches[2].($matches[2] == $matches[3] ? ' ' : ' -> '.$matches[3].' ');
211 211
 	}
212 212
 
213 213
 	static function transform_url2text($matches)
@@ -216,9 +216,9 @@  discard block
 block discarded – undo
216 216
 		$linkTextislink = false;
217 217
 		// this is the actual url
218 218
 		$matches[2] = trim(strip_tags($matches[2]));
219
-		if ($matches[2]==$matches[1]) $linkTextislink = true;
220
-		$matches[1] = str_replace(' ','%20',$matches[1]);
221
-		return ($linkTextislink?' ':'[ ').$matches[1].($linkTextislink?'':' -> '.$matches[2]).($linkTextislink?' ':' ]');
219
+		if ($matches[2] == $matches[1]) $linkTextislink = true;
220
+		$matches[1] = str_replace(' ', '%20', $matches[1]);
221
+		return ($linkTextislink ? ' ' : '[ ').$matches[1].($linkTextislink ? '' : ' -> '.$matches[2]).($linkTextislink ? ' ' : ' ]');
222 222
 	}
223 223
 
224 224
 	/**
@@ -229,7 +229,7 @@  discard block
 block discarded – undo
229 229
 	 * @param bool $stripalltags : flag to indicate wether or not to strip $_html from all remaining tags
230 230
 	 * @return text $_html : the modified text.
231 231
 	 */
232
-	static function convertHTMLToText($_html,$displayCharset=false,$stripcrl=false,$stripalltags=true)
232
+	static function convertHTMLToText($_html, $displayCharset = false, $stripcrl = false, $stripalltags = true)
233 233
 	{
234 234
 		// assume input isHTML, but test the input anyway, because,
235 235
 		// if it is not, we may not want to strip whitespace
@@ -245,27 +245,27 @@  discard block
 block discarded – undo
245 245
 		#print "<pre>"; print htmlspecialchars($_html);
246 246
 		#print "</pre>";
247 247
 		#print "<hr>";
248
-		if (stripos($_html,'style')!==false) self::replaceTagsCompletley($_html,'style'); // clean out empty or pagewide style definitions / left over tags
249
-		if (stripos($_html,'head')!==false) self::replaceTagsCompletley($_html,'head'); // Strip out stuff in head
250
-		if (stripos($_html,'![if')!==false && stripos($_html,'<![endif]>')!==false) self::replaceTagsCompletley($_html,'!\[if','<!\[endif\]>',false); // Strip out stuff in ifs
251
-		if (stripos($_html,'!--[if')!==false && stripos($_html,'<![endif]-->')!==false) self::replaceTagsCompletley($_html,'!--\[if','<!\[endif\]-->',false); // Strip out stuff in ifs
252
-		$Rules = array ('@<script[^>]*?>.*?</script>@siU', // Strip out javascript
253
-			'@&(quot|#34);@i',                // Replace HTML entities
254
-			'@&(amp|#38);@i',                 //   Ampersand &
255
-			'@&(lt|#60);@i',                  //   Less Than <
256
-			'@&(gt|#62);@i',                  //   Greater Than >
257
-			'@&(nbsp|#160);@i',               //   Non Breaking Space
258
-			'@&(iexcl|#161);@i',              //   Inverted Exclamation point
259
-			'@&(cent|#162);@i',               //   Cent
260
-			'@&(pound|#163);@i',              //   Pound
261
-			'@&(copy|#169);@i',               //   Copyright
262
-			'@&(reg|#174);@i',                //   Registered
263
-			'@&(trade|#8482);@i',             //   trade
264
-			'@&#39;@i',                       //   singleQuote
265
-			'@(\xc2\xa0)@',                   //   nbsp or tab (encoded windows-style)
266
-			'@(\xe2\x80\x8b)@',               //   ZERO WIDTH SPACE
248
+		if (stripos($_html, 'style') !== false) self::replaceTagsCompletley($_html, 'style'); // clean out empty or pagewide style definitions / left over tags
249
+		if (stripos($_html, 'head') !== false) self::replaceTagsCompletley($_html, 'head'); // Strip out stuff in head
250
+		if (stripos($_html, '![if') !== false && stripos($_html, '<![endif]>') !== false) self::replaceTagsCompletley($_html, '!\[if', '<!\[endif\]>', false); // Strip out stuff in ifs
251
+		if (stripos($_html, '!--[if') !== false && stripos($_html, '<![endif]-->') !== false) self::replaceTagsCompletley($_html, '!--\[if', '<!\[endif\]-->', false); // Strip out stuff in ifs
252
+		$Rules = array('@<script[^>]*?>.*?</script>@siU', // Strip out javascript
253
+			'@&(quot|#34);@i', // Replace HTML entities
254
+			'@&(amp|#38);@i', //   Ampersand &
255
+			'@&(lt|#60);@i', //   Less Than <
256
+			'@&(gt|#62);@i', //   Greater Than >
257
+			'@&(nbsp|#160);@i', //   Non Breaking Space
258
+			'@&(iexcl|#161);@i', //   Inverted Exclamation point
259
+			'@&(cent|#162);@i', //   Cent
260
+			'@&(pound|#163);@i', //   Pound
261
+			'@&(copy|#169);@i', //   Copyright
262
+			'@&(reg|#174);@i', //   Registered
263
+			'@&(trade|#8482);@i', //   trade
264
+			'@&#39;@i', //   singleQuote
265
+			'@(\xc2\xa0)@', //   nbsp or tab (encoded windows-style)
266
+			'@(\xe2\x80\x8b)@', //   ZERO WIDTH SPACE
267 267
 		);
268
-		$Replace = array ('',
268
+		$Replace = array('',
269 269
 			'"',
270 270
 			'#amper#sand#',
271 271
 			'<',
@@ -274,9 +274,9 @@  discard block
 block discarded – undo
274 274
 			chr(161),
275 275
 			chr(162),
276 276
 			chr(163),
277
-			'(C)',//chr(169),// copyrighgt
278
-			'(R)',//chr(174),// registered
279
-			'(TM)',// trade
277
+			'(C)', //chr(169),// copyrighgt
278
+			'(R)', //chr(174),// registered
279
+			'(TM)', // trade
280 280
 			"'",
281 281
 			' ',
282 282
 			'',
@@ -284,27 +284,27 @@  discard block
 block discarded – undo
284 284
 		$_html = preg_replace($Rules, $Replace, $_html);
285 285
 
286 286
 		//   removing carriage return linefeeds, preserve those enclosed in <pre> </pre> tags
287
-		if ($stripcrl === true )
287
+		if ($stripcrl === true)
288 288
 		{
289
-			if (stripos($_html,'<pre ')!==false || stripos($_html,'<pre>')!==false)
289
+			if (stripos($_html, '<pre ') !== false || stripos($_html, '<pre>') !== false)
290 290
 			{
291 291
 				$contentArr = self::splithtmlByPRE($_html);
292 292
 				foreach ($contentArr as $k =>&$elem)
293 293
 				{
294
-					if (stripos($elem,'<pre ')===false && stripos($elem,'<pre>')===false)
294
+					if (stripos($elem, '<pre ') === false && stripos($elem, '<pre>') === false)
295 295
 					{
296 296
 						//$elem = str_replace('@(\r\n)@i',' ',$elem);
297
-						$elem = str_replace(array("\r\n","\n"),($isHTML?'':' '),$elem);
297
+						$elem = str_replace(array("\r\n", "\n"), ($isHTML ? '' : ' '), $elem);
298 298
 					}
299 299
 				}
300
-				$_html = implode('',$contentArr);
300
+				$_html = implode('', $contentArr);
301 301
 			}
302 302
 			else
303 303
 			{
304
-				$_html = str_replace(array("\r\n","\n"),($isHTML?'':' '),$_html);
304
+				$_html = str_replace(array("\r\n", "\n"), ($isHTML ? '' : ' '), $_html);
305 305
 			}
306 306
 		}
307
-		$tags = array (
307
+		$tags = array(
308 308
 			0 => '~<h[123][^>]*>\r*\n*~si',
309 309
 			1 => '~<h[456][^>]*>\r*\n*~si',
310 310
 			2 => '~<table[^>]*>\r*\n*~si',
@@ -325,7 +325,7 @@  discard block
 block discarded – undo
325 325
 			17 => '/<([1234567890])/',
326 326
 			18 => '/>([1234567890])/',
327 327
 		);
328
-		$Replace = array (
328
+		$Replace = array(
329 329
 			0 => "\r\n",
330 330
 			1 => "\r\n",
331 331
 			2 => "\r\n",
@@ -346,112 +346,112 @@  discard block
 block discarded – undo
346 346
 			17 => '#lower#than#$1',
347 347
 			18 => '#greater#than#$1',
348 348
 		);
349
-		$_html = preg_replace($tags,$Replace,$_html);
350
-		$_html = preg_replace('~</t(d|h)>\s*<t(d|h)[^>]*>~si',' - ',$_html);
351
-		$_html = preg_replace('~<img[^>]+>~s','',$_html);
349
+		$_html = preg_replace($tags, $Replace, $_html);
350
+		$_html = preg_replace('~</t(d|h)>\s*<t(d|h)[^>]*>~si', ' - ', $_html);
351
+		$_html = preg_replace('~<img[^>]+>~s', '', $_html);
352 352
 		// replace emailaddresses eclosed in <> (eg.: <[email protected]>) with the emailaddress only (e.g: [email protected])
353 353
 		self::replaceEmailAdresses($_html);
354 354
 		//convert hrefs to description -> URL
355 355
 		//$_html = preg_replace('~<a[^>]+href=\"([^"]+)\"[^>]*>(.*)</a>~si','[$2 -> $1]',$_html);
356
-		$_html = preg_replace_callback('~<a[^>]+href=\"([^"]+)\"[^>]*>(.*?)</a>~si','self::transform_url2text',$_html);
356
+		$_html = preg_replace_callback('~<a[^>]+href=\"([^"]+)\"[^>]*>(.*?)</a>~si', 'self::transform_url2text', $_html);
357 357
 
358 358
 		// reducing double \r\n to single ones, dont mess with pre sections
359 359
 		if ($stripcrl === true && $isHTML)
360 360
 		{
361
-			if (stripos($_html,'<pre ')!==false || stripos($_html,'<pre>')!==false)
361
+			if (stripos($_html, '<pre ') !== false || stripos($_html, '<pre>') !== false)
362 362
 			{
363 363
 				$contentArr = self::splithtmlByPRE($_html);
364 364
 				foreach ($contentArr as $k =>&$elem)
365 365
 				{
366
-					if (stripos($elem,'<pre ')===false && stripos($elem,'<pre>')===false)
366
+					if (stripos($elem, '<pre ') === false && stripos($elem, '<pre>') === false)
367 367
 					{
368 368
 						//this is supposed to strip out all remaining stuff in tags, this is sometimes taking out whole sections off content
369
-						if ( $stripalltags ) {
370
-							$_html = preg_replace('~<[^>^@]+>~s','',$_html);
369
+						if ($stripalltags) {
370
+							$_html = preg_replace('~<[^>^@]+>~s', '', $_html);
371 371
 						}
372 372
 						// strip out whitespace inbetween CR/LF
373 373
 						$elem = preg_replace('~\r\n\s+\r\n~si', "\r\n\r\n", $elem);
374 374
 						// strip out / reduce exess CR/LF
375
-						$elem = preg_replace('~\r\n{3,}~si',"\r\n\r\n",$elem);
375
+						$elem = preg_replace('~\r\n{3,}~si', "\r\n\r\n", $elem);
376 376
 					}
377 377
 				}
378
-				$_html = implode('',$contentArr);
378
+				$_html = implode('', $contentArr);
379 379
 			}
380 380
 			else
381 381
 			{
382 382
 				//this is supposed to strip out all remaining stuff in tags, this is sometimes taking out whole sections off content
383
-				if ( $stripalltags ) {
384
-					$_html = preg_replace('~<[^>^@]+>~s','',$_html);
383
+				if ($stripalltags) {
384
+					$_html = preg_replace('~<[^>^@]+>~s', '', $_html);
385 385
 				}
386 386
 				// strip out whitespace inbetween CR/LF
387 387
 				$_html = preg_replace('~\r\n\s+\r\n~si', "\r\n\r\n", $_html);
388 388
 				// strip out / reduce exess CR/LF
389
-				$_html = preg_replace('~(\r\n){3,}~si',"\r\n\r\n",$_html);
389
+				$_html = preg_replace('~(\r\n){3,}~si', "\r\n\r\n", $_html);
390 390
 			}
391 391
 		}
392 392
 		//this is supposed to strip out all remaining stuff in tags, this is sometimes taking out whole sections off content
393
-		if ( $stripalltags ) {
394
-			$_html = preg_replace('~<[^>^@]+>~s','',$_html);
393
+		if ($stripalltags) {
394
+			$_html = preg_replace('~<[^>^@]+>~s', '', $_html);
395 395
 			//$_html = strip_tags($_html, '<a>');
396 396
 		}
397 397
 		// reducing spaces (not for input that was plain text from the beginning)
398
-		if ($isHTML) $_html = preg_replace('~ +~s',' ',$_html);
398
+		if ($isHTML) $_html = preg_replace('~ +~s', ' ', $_html);
399 399
 		// restoring ampersands
400
-		$_html = str_replace('#amper#sand#','&',$_html);
400
+		$_html = str_replace('#amper#sand#', '&', $_html);
401 401
 		// restoring lower|greater[or equal] than
402
-		$_html = str_replace('#lowerorequal#than#','<=',$_html);
403
-		$_html = str_replace('#greaterorequal#than#','>=',$_html);
404
-		$_html = str_replace('#lower#than#','<',$_html);
405
-		$_html = str_replace('#greater#than#','>',$_html);
402
+		$_html = str_replace('#lowerorequal#than#', '<=', $_html);
403
+		$_html = str_replace('#greaterorequal#than#', '>=', $_html);
404
+		$_html = str_replace('#lower#than#', '<', $_html);
405
+		$_html = str_replace('#greater#than#', '>', $_html);
406 406
 		//error_log(__METHOD__.__LINE__.' Charset:'.$displayCharset.' -> '.$_html);
407 407
 		$_html = html_entity_decode($_html, ENT_COMPAT, $displayCharset);
408 408
 		//error_log(__METHOD__.__LINE__.' Charset:'.$displayCharset.' After html_entity_decode: -> '.$_html);
409 409
 		//self::replaceEmailAdresses($_html);
410 410
 		$pos = strpos($_html, 'blockquote');
411 411
 		//error_log("convert HTML2Text: $_html");
412
-		if($pos === false) {
412
+		if ($pos === false) {
413 413
 			return $_html;
414 414
 		} else {
415 415
 			$indent = 0;
416 416
 			$indentString = '';
417 417
 
418 418
 			$quoteParts = preg_split('/#blockquote#type#cite#/', $_html, -1, PREG_SPLIT_OFFSET_CAPTURE);
419
-			foreach($quoteParts as $quotePart) {
420
-				if($quotePart[1] > 0) {
419
+			foreach ($quoteParts as $quotePart) {
420
+				if ($quotePart[1] > 0) {
421 421
 					$indent++;
422 422
 					$indentString .= '>';
423 423
 				}
424 424
 				$quoteParts2 = preg_split('/#blockquote#end#cite#/', $quotePart[0], -1, PREG_SPLIT_OFFSET_CAPTURE);
425 425
 
426
-				foreach($quoteParts2 as $quotePart2) {
427
-					if($quotePart2[1] > 0) {
426
+				foreach ($quoteParts2 as $quotePart2) {
427
+					if ($quotePart2[1] > 0) {
428 428
 						$indent--;
429 429
 						$indentString = substr($indentString, 0, $indent);
430 430
 					}
431 431
 
432 432
 					$quoteParts3 = explode("\r\n", $quotePart2[0]);
433 433
 
434
-					foreach($quoteParts3 as $quotePart3) {
434
+					foreach ($quoteParts3 as $quotePart3) {
435 435
 						//error_log(__METHOD__.__LINE__.'Line:'.$quotePart3);
436
-						$allowedLength = 76-strlen("\r\n$indentString");
436
+						$allowedLength = 76 - strlen("\r\n$indentString");
437 437
 						// only break lines, if not already indented
438
-						if (substr($quotePart3,0,strlen($indentString)) != $indentString)
438
+						if (substr($quotePart3, 0, strlen($indentString)) != $indentString)
439 439
 						{
440 440
 							if (strlen($quotePart3) > $allowedLength) {
441
-								$s=explode(" ", $quotePart3);
441
+								$s = explode(" ", $quotePart3);
442 442
 								$quotePart3 = "";
443 443
 								$linecnt = 0;
444 444
 								foreach ($s as $k=>$v) {
445 445
 									$cnt = strlen($v);
446 446
 									// only break long words within the wordboundaries,
447 447
 									// but it may destroy links, so we check for href and dont do it if we find it
448
-									if($cnt > $allowedLength && stripos($v,'href=')===false) {
448
+									if ($cnt > $allowedLength && stripos($v, 'href=') === false) {
449 449
 										//error_log(__METHOD__.__LINE__.'LongWordFound:'.$v);
450
-										$v=wordwrap($v, $allowedLength, "\r\n$indentString", true);
450
+										$v = wordwrap($v, $allowedLength, "\r\n$indentString", true);
451 451
 									}
452 452
 									// the rest should be broken at the start of the new word that exceeds the limit
453
-									if ($linecnt+$cnt > $allowedLength) {
454
-										$v="\r\n$indentString$v";
453
+									if ($linecnt + $cnt > $allowedLength) {
454
+										$v = "\r\n$indentString$v";
455 455
 										//error_log(__METHOD__.__LINE__.'breaking here:'.$v);
456 456
 										$linecnt = 0;
457 457
 									} else {
@@ -462,11 +462,11 @@  discard block
 block discarded – undo
462 462
 							}
463 463
 						}
464 464
 						//error_log(__METHOD__.__LINE__.'partString to return:'.$indentString . $quotePart3);
465
-						$asciiTextBuff[] = $indentString . $quotePart3 ;
465
+						$asciiTextBuff[] = $indentString.$quotePart3;
466 466
 					}
467 467
 				}
468 468
 			}
469
-			return implode("\r\n",$asciiTextBuff);
469
+			return implode("\r\n", $asciiTextBuff);
470 470
 		}
471 471
 	}
472 472
 
@@ -479,30 +479,30 @@  discard block
 block discarded – undo
479 479
 	static function splithtmlByPRE($html)
480 480
 	{
481 481
 		$searchFor = '<pre ';
482
-		$pos = stripos($html,$searchFor);
483
-		if ($pos===false)
482
+		$pos = stripos($html, $searchFor);
483
+		if ($pos === false)
484 484
 		{
485 485
 			$searchFor = '<pre>';
486
-			$pos = stripos($html,$searchFor);
486
+			$pos = stripos($html, $searchFor);
487 487
 		}
488 488
 		if ($pos === false)
489 489
 		{
490 490
 			return $html;
491 491
 		}
492
-		$html2ret[] = substr($html,0,$pos);
493
-		while ($pos!==false)
492
+		$html2ret[] = substr($html, 0, $pos);
493
+		while ($pos !== false)
494 494
 		{
495
-			$endofpre = stripos($html,'</pre>',$pos);
496
-			$length = $endofpre-$pos+6;
497
-			$html2ret[] = substr($html,$pos,$length);
495
+			$endofpre = stripos($html, '</pre>', $pos);
496
+			$length = $endofpre - $pos + 6;
497
+			$html2ret[] = substr($html, $pos, $length);
498 498
 			$searchFor = '<pre ';
499
-			$pos = stripos($html,$searchFor, $endofpre+6);
500
-			if ($pos===false)
499
+			$pos = stripos($html, $searchFor, $endofpre + 6);
500
+			if ($pos === false)
501 501
 			{
502 502
 				$searchFor = '<pre>';
503
-				$pos = stripos($html,$searchFor, $endofpre+6);
503
+				$pos = stripos($html, $searchFor, $endofpre + 6);
504 504
 			}
505
-			$html2ret[] = ($pos ? substr($html,$endofpre+6,$pos-($endofpre+6)): substr($html,$endofpre+6));
505
+			$html2ret[] = ($pos ? substr($html, $endofpre + 6, $pos - ($endofpre + 6)) : substr($html, $endofpre + 6));
506 506
 			//$pos=false;
507 507
 		}
508 508
 		//error_log(__METHOD__.__LINE__.array2string($html2ret));
Please login to merge, or discard this patch.
Braces   +103 added lines, -33 removed lines patch added patch discarded remove patch
@@ -31,7 +31,8 @@  discard block
 block discarded – undo
31 31
 	static function decodeMailHeader($_string, $displayCharset='utf-8', $reclevel=0)
32 32
 	{
33 33
 		$maxreclevel=25;
34
-		if ($reclevel > $maxreclevel) {
34
+		if ($reclevel > $maxreclevel)
35
+		{
35 36
 			error_log( __METHOD__.__LINE__." Recursion Level Exeeded ($reclevel) while decoding $_string ");
36 37
 			return $_string;
37 38
 		}
@@ -65,10 +66,16 @@  discard block
 block discarded – undo
65 66
 			$convertAtEnd = false;
66 67
 			foreach((array)$elements as $element)
67 68
 			{
68
-				if ($element->charset == 'default') $element->charset = Api\Translation::detect_encoding($element->text);
69
+				if ($element->charset == 'default')
70
+				{
71
+					$element->charset = Api\Translation::detect_encoding($element->text);
72
+				}
69 73
 				if ($element->charset != 'x-unknown')
70 74
 				{
71
-					if( strtoupper($element->charset) != 'UTF-8') $element->text = preg_replace($sar,$rar,$element->text);
75
+					if( strtoupper($element->charset) != 'UTF-8')
76
+					{
77
+						$element->text = preg_replace($sar,$rar,$element->text);
78
+					}
72 79
 					// check if there is a possible nested encoding; make sure that the inputstring and the decoded result are different to avoid loops
73 80
 					$openTags = substr_count($element->text,'?=');
74 81
 					if(preg_match('/\?=.+=\?/', $element->text) && $openTags>0 && $openTags==substr_count($element->text,'=?') && $element->text != $_string)
@@ -84,7 +91,10 @@  discard block
 block discarded – undo
84 91
 					$convertAtEnd = true;
85 92
 				}
86 93
 			}
87
-			if ($convertAtEnd) $newString = self::decodeMailHeader($newString,$displayCharset,$reclevel);
94
+			if ($convertAtEnd)
95
+			{
96
+				$newString = self::decodeMailHeader($newString,$displayCharset,$reclevel);
97
+			}
88 98
 			return preg_replace('/([\000-\012\015\016\020-\037\075])/','',$newString);
89 99
 		}
90 100
 		elseif(function_exists(mb_decode_mimeheader))
@@ -148,18 +158,27 @@  discard block
 block discarded – undo
148 158
 	 */
149 159
 	static function replaceTagsCompletley(&$_body,$tag,$endtag='',$addbracesforendtag=true)
150 160
 	{
151
-		if ($tag) $tag = strtolower($tag);
161
+		if ($tag)
162
+		{
163
+			$tag = strtolower($tag);
164
+		}
152 165
 		$singleton = false;
153
-		if ($endtag=='/>') $singleton =true;
166
+		if ($endtag=='/>')
167
+		{
168
+			$singleton =true;
169
+		}
154 170
 		if ($endtag == '' || empty($endtag) || !isset($endtag))
155 171
 		{
156 172
 			$endtag = $tag;
157
-		} else {
173
+		}
174
+		else
175
+		{
158 176
 			$endtag = strtolower($endtag);
159 177
 			//error_log(__METHOD__.' Using EndTag:'.$endtag);
160 178
 		}
161 179
 		// strip tags out of the message completely with their content
162
-		if ($_body) {
180
+		if ($_body)
181
+		{
163 182
 			if ($singleton)
164 183
 			{
165 184
 				//$_body = preg_replace('~<'.$tag.'[^>].*? '.$endtag.'~simU','',$_body);
@@ -170,7 +189,10 @@  discard block
 block discarded – undo
170 189
 				$found=null;
171 190
 				if ($addbracesforendtag === true )
172 191
 				{
173
-					if (stripos($_body,'<'.$tag)!==false)  $ct = preg_match_all('#<'.$tag.'(?:\s.*)?>(.+)</'.$endtag.'>#isU', $_body, $found);
192
+					if (stripos($_body,'<'.$tag)!==false)
193
+					{
194
+						$ct = preg_match_all('#<'.$tag.'(?:\s.*)?>(.+)</'.$endtag.'>#isU', $_body, $found);
195
+					}
174 196
 					if ($ct>0)
175 197
 					{
176 198
 						//error_log(__METHOD__.__LINE__.array2string($found[0]));
@@ -182,7 +204,10 @@  discard block
 block discarded – undo
182 204
 				}
183 205
 				if ($addbracesforendtag === false )
184 206
 				{
185
-					if (stripos($_body,'<'.$tag)!==false)  $ct = preg_match_all('#<'.$tag.'(?:\s.*)?>(.+)'.$endtag.'#isU', $_body, $found);
207
+					if (stripos($_body,'<'.$tag)!==false)
208
+					{
209
+						$ct = preg_match_all('#<'.$tag.'(?:\s.*)?>(.+)'.$endtag.'#isU', $_body, $found);
210
+					}
186 211
 					if ($ct>0)
187 212
 					{
188 213
 						//error_log(__METHOD__.__LINE__.array2string($found[0]));
@@ -216,7 +241,10 @@  discard block
 block discarded – undo
216 241
 		$linkTextislink = false;
217 242
 		// this is the actual url
218 243
 		$matches[2] = trim(strip_tags($matches[2]));
219
-		if ($matches[2]==$matches[1]) $linkTextislink = true;
244
+		if ($matches[2]==$matches[1])
245
+		{
246
+			$linkTextislink = true;
247
+		}
220 248
 		$matches[1] = str_replace(' ','%20',$matches[1]);
221 249
 		return ($linkTextislink?' ':'[ ').$matches[1].($linkTextislink?'':' -> '.$matches[2]).($linkTextislink?' ':' ]');
222 250
 	}
@@ -239,16 +267,35 @@  discard block
 block discarded – undo
239 267
 			$isHTML = false;
240 268
 			// return $_html; // maybe we should not proceed at all
241 269
 		}
242
-		if ($displayCharset === false) $displayCharset = Api\Translation::charset();
270
+		if ($displayCharset === false)
271
+		{
272
+			$displayCharset = Api\Translation::charset();
273
+		}
243 274
 		//error_log(__METHOD__.$_html);
244 275
 		#print '<hr>';
245 276
 		#print "<pre>"; print htmlspecialchars($_html);
246 277
 		#print "</pre>";
247 278
 		#print "<hr>";
248
-		if (stripos($_html,'style')!==false) self::replaceTagsCompletley($_html,'style'); // clean out empty or pagewide style definitions / left over tags
249
-		if (stripos($_html,'head')!==false) self::replaceTagsCompletley($_html,'head'); // Strip out stuff in head
250
-		if (stripos($_html,'![if')!==false && stripos($_html,'<![endif]>')!==false) self::replaceTagsCompletley($_html,'!\[if','<!\[endif\]>',false); // Strip out stuff in ifs
251
-		if (stripos($_html,'!--[if')!==false && stripos($_html,'<![endif]-->')!==false) self::replaceTagsCompletley($_html,'!--\[if','<!\[endif\]-->',false); // Strip out stuff in ifs
279
+		if (stripos($_html,'style')!==false)
280
+		{
281
+			self::replaceTagsCompletley($_html,'style');
282
+		}
283
+		// clean out empty or pagewide style definitions / left over tags
284
+		if (stripos($_html,'head')!==false)
285
+		{
286
+			self::replaceTagsCompletley($_html,'head');
287
+		}
288
+		// Strip out stuff in head
289
+		if (stripos($_html,'![if')!==false && stripos($_html,'<![endif]>')!==false)
290
+		{
291
+			self::replaceTagsCompletley($_html,'!\[if','<!\[endif\]>',false);
292
+		}
293
+		// Strip out stuff in ifs
294
+		if (stripos($_html,'!--[if')!==false && stripos($_html,'<![endif]-->')!==false)
295
+		{
296
+			self::replaceTagsCompletley($_html,'!--\[if','<!\[endif\]-->',false);
297
+		}
298
+		// Strip out stuff in ifs
252 299
 		$Rules = array ('@<script[^>]*?>.*?</script>@siU', // Strip out javascript
253 300
 			'@&(quot|#34);@i',                // Replace HTML entities
254 301
 			'@&(amp|#38);@i',                 //   Ampersand &
@@ -366,7 +413,8 @@  discard block
 block discarded – undo
366 413
 					if (stripos($elem,'<pre ')===false && stripos($elem,'<pre>')===false)
367 414
 					{
368 415
 						//this is supposed to strip out all remaining stuff in tags, this is sometimes taking out whole sections off content
369
-						if ( $stripalltags ) {
416
+						if ( $stripalltags )
417
+						{
370 418
 							$_html = preg_replace('~<[^>^@]+>~s','',$_html);
371 419
 						}
372 420
 						// strip out whitespace inbetween CR/LF
@@ -380,7 +428,8 @@  discard block
 block discarded – undo
380 428
 			else
381 429
 			{
382 430
 				//this is supposed to strip out all remaining stuff in tags, this is sometimes taking out whole sections off content
383
-				if ( $stripalltags ) {
431
+				if ( $stripalltags )
432
+				{
384 433
 					$_html = preg_replace('~<[^>^@]+>~s','',$_html);
385 434
 				}
386 435
 				// strip out whitespace inbetween CR/LF
@@ -390,12 +439,16 @@  discard block
 block discarded – undo
390 439
 			}
391 440
 		}
392 441
 		//this is supposed to strip out all remaining stuff in tags, this is sometimes taking out whole sections off content
393
-		if ( $stripalltags ) {
442
+		if ( $stripalltags )
443
+		{
394 444
 			$_html = preg_replace('~<[^>^@]+>~s','',$_html);
395 445
 			//$_html = strip_tags($_html, '<a>');
396 446
 		}
397 447
 		// reducing spaces (not for input that was plain text from the beginning)
398
-		if ($isHTML) $_html = preg_replace('~ +~s',' ',$_html);
448
+		if ($isHTML)
449
+		{
450
+			$_html = preg_replace('~ +~s',' ',$_html);
451
+		}
399 452
 		// restoring ampersands
400 453
 		$_html = str_replace('#amper#sand#','&',$_html);
401 454
 		// restoring lower|greater[or equal] than
@@ -409,55 +462,72 @@  discard block
 block discarded – undo
409 462
 		//self::replaceEmailAdresses($_html);
410 463
 		$pos = strpos($_html, 'blockquote');
411 464
 		//error_log("convert HTML2Text: $_html");
412
-		if($pos === false) {
465
+		if($pos === false)
466
+		{
413 467
 			return $_html;
414
-		} else {
468
+		}
469
+		else
470
+		{
415 471
 			$indent = 0;
416 472
 			$indentString = '';
417 473
 
418 474
 			$quoteParts = preg_split('/#blockquote#type#cite#/', $_html, -1, PREG_SPLIT_OFFSET_CAPTURE);
419
-			foreach($quoteParts as $quotePart) {
420
-				if($quotePart[1] > 0) {
475
+			foreach($quoteParts as $quotePart)
476
+			{
477
+				if($quotePart[1] > 0)
478
+				{
421 479
 					$indent++;
422 480
 					$indentString .= '>';
423 481
 				}
424 482
 				$quoteParts2 = preg_split('/#blockquote#end#cite#/', $quotePart[0], -1, PREG_SPLIT_OFFSET_CAPTURE);
425 483
 
426
-				foreach($quoteParts2 as $quotePart2) {
427
-					if($quotePart2[1] > 0) {
484
+				foreach($quoteParts2 as $quotePart2)
485
+				{
486
+					if($quotePart2[1] > 0)
487
+					{
428 488
 						$indent--;
429 489
 						$indentString = substr($indentString, 0, $indent);
430 490
 					}
431 491
 
432 492
 					$quoteParts3 = explode("\r\n", $quotePart2[0]);
433 493
 
434
-					foreach($quoteParts3 as $quotePart3) {
494
+					foreach($quoteParts3 as $quotePart3)
495
+					{
435 496
 						//error_log(__METHOD__.__LINE__.'Line:'.$quotePart3);
436 497
 						$allowedLength = 76-strlen("\r\n$indentString");
437 498
 						// only break lines, if not already indented
438 499
 						if (substr($quotePart3,0,strlen($indentString)) != $indentString)
439 500
 						{
440
-							if (strlen($quotePart3) > $allowedLength) {
501
+							if (strlen($quotePart3) > $allowedLength)
502
+							{
441 503
 								$s=explode(" ", $quotePart3);
442 504
 								$quotePart3 = "";
443 505
 								$linecnt = 0;
444
-								foreach ($s as $k=>$v) {
506
+								foreach ($s as $k=>$v)
507
+								{
445 508
 									$cnt = strlen($v);
446 509
 									// only break long words within the wordboundaries,
447 510
 									// but it may destroy links, so we check for href and dont do it if we find it
448
-									if($cnt > $allowedLength && stripos($v,'href=')===false) {
511
+									if($cnt > $allowedLength && stripos($v,'href=')===false)
512
+									{
449 513
 										//error_log(__METHOD__.__LINE__.'LongWordFound:'.$v);
450 514
 										$v=wordwrap($v, $allowedLength, "\r\n$indentString", true);
451 515
 									}
452 516
 									// the rest should be broken at the start of the new word that exceeds the limit
453
-									if ($linecnt+$cnt > $allowedLength) {
517
+									if ($linecnt+$cnt > $allowedLength)
518
+									{
454 519
 										$v="\r\n$indentString$v";
455 520
 										//error_log(__METHOD__.__LINE__.'breaking here:'.$v);
456 521
 										$linecnt = 0;
457
-									} else {
522
+									}
523
+									else
524
+									{
458 525
 										$linecnt += $cnt;
459 526
 									}
460
-									if (strlen($v))  $quotePart3 .= (strlen($quotePart3) ? " " : "").$v;
527
+									if (strlen($v))
528
+									{
529
+										$quotePart3 .= (strlen($quotePart3) ? " " : "").$v;
530
+									}
461 531
 								}
462 532
 							}
463 533
 						}
Please login to merge, or discard this patch.
api/src/Mail/Imap.php 4 patches
Doc Comments   +7 added lines, -6 removed lines patch added patch discarded remove patch
@@ -140,7 +140,7 @@  discard block
 block discarded – undo
140 140
 	 * Construtor
141 141
 	 *
142 142
 	 * @param array
143
-	 * @param bool|int|string $_adminConnection create admin connection if true or account_id or imap username
143
+	 * @param boolean|string $_adminConnection create admin connection if true or account_id or imap username
144 144
 	 * @param int $_timeout =null timeout in secs, if none given fmail pref or default of 20 is used
145 145
 	 * @return void
146 146
 	 */
@@ -564,7 +564,7 @@  discard block
 block discarded – undo
564 564
 	 * Returns an array containing the names of the selected mailboxes
565 565
 	 *
566 566
 	 * @param   string  $reference          base mailbox to start the search (default is current mailbox)
567
-	 * @param   string  $restriction_search false or 0 means return all mailboxes
567
+	 * @param   integer  $restriction_search false or 0 means return all mailboxes
568 568
 	 *                                      true or 1 return only the mailbox that contains that exact name
569 569
 	 *                                      2 return all mailboxes in that hierarchy level
570 570
 	 * @param   string  $returnAttributes   true means return an assoc array containing mailbox names and mailbox attributes
@@ -648,7 +648,7 @@  discard block
 block discarded – undo
648 648
 	 * Returns an array containing the names of the subscribed selected mailboxes
649 649
 	 *
650 650
 	 * @param   string  $reference          base mailbox to start the search
651
-	 * @param   string  $restriction_search false or 0 means return all mailboxes
651
+	 * @param   integer  $restriction_search false or 0 means return all mailboxes
652 652
 	 *                                      true or 1 return only the mailbox that contains that exact name
653 653
 	 *                                      2 return all mailboxes in that hierarchy level
654 654
 	 * @param   string  $returnAttributes   true means return an assoc array containing mailbox names and mailbox attributes
@@ -716,7 +716,7 @@  discard block
 block discarded – undo
716 716
 	 * Returns an array containing the names of the selected unsubscribed mailboxes
717 717
 	 *
718 718
 	 * @param   string  $reference          base mailbox to start the search
719
-	 * @param   string  $restriction_search false or 0 means return all mailboxes
719
+	 * @param   integer  $restriction_search false or 0 means return all mailboxes
720 720
 	 *                                      true or 1 return only the mailbox that contains that exact name
721 721
 	 *                                      2 return all mailboxes in that hierarchy level
722 722
 	 *
@@ -894,6 +894,7 @@  discard block
 block discarded – undo
894 894
 	 *
895 895
 	 * @var array $_nameSpace
896 896
 	 * @var string $_folderName
897
+	 * @param string $_folderName
897 898
 	 * @return string the prefix (may be an empty string)
898 899
 	 */
899 900
 	static function getFolderPrefixFromNamespace($_nameSpace, $_folderName)
@@ -912,7 +913,7 @@  discard block
 block discarded – undo
912 913
 	 * @param string $_mailbox
913 914
 	 * @param string $delimiter
914 915
 	 * @param string $prefix
915
-	 * @param string $reclevel = 0, counter to keep track of the current recursionlevel
916
+	 * @param integer $reclevel = 0, counter to keep track of the current recursionlevel
916 917
 	 * @return array of mailboxes
917 918
 	 */
918 919
 	function getMailBoxesRecursive($_mailbox, $delimiter, $prefix, $reclevel=0)
@@ -1344,7 +1345,7 @@  discard block
 block discarded – undo
1344 1345
 	/**
1345 1346
 	 * Get vacation message for given user
1346 1347
 	 *
1347
-	 * @param int|string $_euser nummeric account_id or imap username
1348
+	 * @param string|null $_euser nummeric account_id or imap username
1348 1349
 	 * @param string $_scriptName =null
1349 1350
 	 * @throws Exception on connection error or authentication failure
1350 1351
 	 * @return array
Please login to merge, or discard this patch.
Switch Indentation   +30 added lines, -30 removed lines patch added patch discarded remove patch
@@ -580,16 +580,16 @@  discard block
 block discarded – undo
580 580
 		$mailbox = '';
581 581
 		if ( is_int( $restriction_search ) ){
582 582
 			switch ( $restriction_search ) {
583
-			case 0:
584
-				$searchstring = $reference."*";
585
-				break;
586
-			case 1:
587
-				$mailbox = $searchstring = $reference;
588
-				//$reference = '%';
589
-				break;
590
-			case 2:
591
-				$searchstring = $reference."%";
592
-				break;
583
+				case 0:
584
+					$searchstring = $reference."*";
585
+					break;
586
+				case 1:
587
+					$mailbox = $searchstring = $reference;
588
+					//$reference = '%';
589
+					break;
590
+				case 2:
591
+					$searchstring = $reference."%";
592
+					break;
593 593
 			}
594 594
 		}else{
595 595
 			if ( is_string( $restriction_search ) ){
@@ -664,16 +664,16 @@  discard block
 block discarded – undo
664 664
 		$mailbox = '';
665 665
 		if ( is_int( $restriction_search ) ){
666 666
 			switch ( $restriction_search ) {
667
-			case 0:
668
-				$searchstring = $reference."*";
669
-				break;
670
-			case 1:
671
-				$mailbox = $searchstring = $reference;
672
-				//$reference = '%';
673
-				break;
674
-			case 2:
675
-				$searchstring = $reference."%";
676
-				break;
667
+				case 0:
668
+					$searchstring = $reference."*";
669
+					break;
670
+				case 1:
671
+					$mailbox = $searchstring = $reference;
672
+					//$reference = '%';
673
+					break;
674
+				case 2:
675
+					$searchstring = $reference."%";
676
+					break;
677 677
 			}
678 678
 		}else{
679 679
 			if ( is_string( $restriction_search ) ){
@@ -730,16 +730,16 @@  discard block
 block discarded – undo
730 730
 
731 731
 		if ( is_int( $restriction_search ) ){
732 732
 			switch ( $restriction_search ) {
733
-			case 0:
734
-				$mailbox = $reference."*";
735
-				break;
736
-			case 1:
737
-				$mailbox = $reference;
738
-				$reference = '%';
739
-				break;
740
-			case 2:
741
-				$mailbox = "%";
742
-				break;
733
+				case 0:
734
+					$mailbox = $reference."*";
735
+					break;
736
+				case 1:
737
+					$mailbox = $reference;
738
+					$reference = '%';
739
+					break;
740
+				case 2:
741
+					$mailbox = "%";
742
+					break;
743 743
 			}
744 744
 		}else{
745 745
 			if ( is_string( $restriction_search ) ){
Please login to merge, or discard this patch.
Braces   +130 added lines, -42 removed lines patch added patch discarded remove patch
@@ -156,7 +156,10 @@  discard block
 block discarded – undo
156 156
 		$this->loginType = $this->params['acc_imap_logintype'];
157 157
 		$this->domainName = $this->params['acc_domain'];
158 158
 
159
-		if (is_null($_timeout)) $_timeout = $this->params['acc_imap_timeout']?$this->params['acc_imap_timeout']:self::getTimeOut ();
159
+		if (is_null($_timeout))
160
+		{
161
+			$_timeout = $this->params['acc_imap_timeout']?$this->params['acc_imap_timeout']:self::getTimeOut ();
162
+		}
160 163
 
161 164
 		// Horde use locale for translation of error messages
162 165
 		Api\Preferences::setlocale(LC_MESSAGES);
@@ -167,7 +170,10 @@  discard block
 block discarded – undo
167 170
 		{
168 171
 			$username = $this->getMailBoxUserName($username);
169 172
 		}
170
-		if ($_adminConnection) $this->adminConnection($username);
173
+		if ($_adminConnection)
174
+		{
175
+			$this->adminConnection($username);
176
+		}
171 177
 		$parent_params = array(
172 178
 			'username' => $this->params[$_adminConnection ? 'acc_imap_admin_username' : 'acc_imap_username'],
173 179
 			'password' => $this->params[$_adminConnection ? 'acc_imap_admin_password' : 'acc_imap_password'],
@@ -303,7 +309,11 @@  discard block
 block discarded – undo
303 309
 	static function getTimeOut($_use='IMAP')
304 310
 	{
305 311
 		$timeout = $GLOBALS['egw_info']['user']['preferences']['mail']['connectionTimeout'];
306
-		if (empty($timeout) || !($timeout > 0)) $timeout = $_use == 'SIEVE' ? 10 : 20; // this is the default value
312
+		if (empty($timeout) || !($timeout > 0))
313
+		{
314
+			$timeout = $_use == 'SIEVE' ? 10 : 20;
315
+		}
316
+		// this is the default value
307 317
 		return $timeout;
308 318
 	}
309 319
 
@@ -366,7 +376,8 @@  discard block
 block discarded – undo
366 376
 	 */
367 377
 	function encodeFolderName($_folderName)
368 378
 	{
369
-		if($this->mbAvailable) {
379
+		if($this->mbAvailable)
380
+		{
370 381
 			return mb_convert_encoding($_folderName, "UTF7-IMAP", Api\Translation::charset());
371 382
 		}
372 383
 
@@ -384,14 +395,21 @@  discard block
 block discarded – undo
384 395
 	function getMailbox($mailbox)
385 396
 	{
386 397
 		$mailboxes = $this->listMailboxes($mailbox,Horde_Imap_Client::MBOX_ALL);
387
-		if (empty($mailboxes)) $mailboxes = $this->listMailboxes($mailbox,Horde_Imap_Client::MBOX_UNSUBSCRIBED);
398
+		if (empty($mailboxes))
399
+		{
400
+			$mailboxes = $this->listMailboxes($mailbox,Horde_Imap_Client::MBOX_UNSUBSCRIBED);
401
+		}
388 402
 		//error_log(__METHOD__.__LINE__.'->'.$mailbox.'/'.array2string($mailboxes));
389 403
 		$mboxes = new Horde_Imap_Client_Mailbox_List($mailboxes);
390 404
 		//_debug_array($mboxes->count());
391 405
 		foreach ($mboxes->getIterator() as $k =>$box)
392 406
 		{
393 407
 			//error_log(__METHOD__.__LINE__.'->'.$k);
394
-			if ($k!='user' && $k != '' && $k==$mailbox) return $box['mailbox']; //_debug_array(array($k => $client->status($k)));
408
+			if ($k!='user' && $k != '' && $k==$mailbox)
409
+			{
410
+				return $box['mailbox'];
411
+			}
412
+			//_debug_array(array($k => $client->status($k)));
395 413
 		}
396 414
 		return ($this->mailboxExist($mailbox)?$mailbox:false);
397 415
 	}
@@ -460,8 +478,14 @@  discard block
 block discarded – undo
460 478
 			//throw new egw_exception(__METHOD__.' ('.__LINE__.") failed to ".__METHOD__." :".$e->getMessage());
461 479
 			unset($e);
462 480
 		}
463
-		if (!empty($mailbox)) return $mailbox['mailbox'];
464
-		if (empty($mailbox) && $this->mailboxExist('INBOX')) return 'INBOX';
481
+		if (!empty($mailbox))
482
+		{
483
+			return $mailbox['mailbox'];
484
+		}
485
+		if (empty($mailbox) && $this->mailboxExist('INBOX'))
486
+		{
487
+			return 'INBOX';
488
+		}
465 489
 		return null;
466 490
 	}
467 491
 
@@ -531,7 +555,10 @@  discard block
 block discarded – undo
531 555
 			));
532 556
 
533 557
 		$flags = Horde_Imap_Client::STATUS_ALL;
534
-		if ($ignoreStatusCache) $flags |= Horde_Imap_Client::STATUS_FORCE_REFRESH;
558
+		if ($ignoreStatusCache)
559
+		{
560
+			$flags |= Horde_Imap_Client::STATUS_FORCE_REFRESH;
561
+		}
535 562
 
536 563
 		$mboxes = new Horde_Imap_Client_Mailbox_List($mailboxes);
537 564
 		//error_log(__METHOD__.__LINE__.array2string($mboxes->count()));
@@ -574,12 +601,15 @@  discard block
 block discarded – undo
574 601
 	 */
575 602
 	function getMailboxes($reference = ''  , $restriction_search = 0, $returnAttributes = false)
576 603
 	{
577
-		if ( is_bool($restriction_search) ){
604
+		if ( is_bool($restriction_search) )
605
+		{
578 606
 			$restriction_search = (int) $restriction_search;
579 607
 		}
580 608
 		$mailbox = '';
581
-		if ( is_int( $restriction_search ) ){
582
-			switch ( $restriction_search ) {
609
+		if ( is_int( $restriction_search ) )
610
+		{
611
+			switch ( $restriction_search )
612
+			{
583 613
 			case 0:
584 614
 				$searchstring = $reference."*";
585 615
 				break;
@@ -591,8 +621,11 @@  discard block
 block discarded – undo
591 621
 				$searchstring = $reference."%";
592 622
 				break;
593 623
 			}
594
-		}else{
595
-			if ( is_string( $restriction_search ) ){
624
+		}
625
+		else
626
+		{
627
+			if ( is_string( $restriction_search ) )
628
+			{
596 629
 				$mailbox = $searchstring = $restriction_search;
597 630
 			}
598 631
 		}
@@ -658,12 +691,15 @@  discard block
 block discarded – undo
658 691
 	 */
659 692
 	function listSubscribedMailboxes($reference = ''  , $restriction_search = 0, $returnAttributes = false)
660 693
 	{
661
-		if ( is_bool($restriction_search) ){
694
+		if ( is_bool($restriction_search) )
695
+		{
662 696
 			$restriction_search = (int) $restriction_search;
663 697
 		}
664 698
 		$mailbox = '';
665
-		if ( is_int( $restriction_search ) ){
666
-			switch ( $restriction_search ) {
699
+		if ( is_int( $restriction_search ) )
700
+		{
701
+			switch ( $restriction_search )
702
+			{
667 703
 			case 0:
668 704
 				$searchstring = $reference."*";
669 705
 				break;
@@ -675,8 +711,11 @@  discard block
 block discarded – undo
675 711
 				$searchstring = $reference."%";
676 712
 				break;
677 713
 			}
678
-		}else{
679
-			if ( is_string( $restriction_search ) ){
714
+		}
715
+		else
716
+		{
717
+			if ( is_string( $restriction_search ) )
718
+			{
680 719
 				$mailbox = $searchstring = $restriction_search;
681 720
 			}
682 721
 		}
@@ -724,12 +763,15 @@  discard block
 block discarded – undo
724 763
 	 */
725 764
 	function listUnSubscribedMailboxes($reference = ''  , $restriction_search = 0)
726 765
 	{
727
-		if ( is_bool($restriction_search) ){
766
+		if ( is_bool($restriction_search) )
767
+		{
728 768
 			$restriction_search = (int) $restriction_search;
729 769
 		}
730 770
 
731
-		if ( is_int( $restriction_search ) ){
732
-			switch ( $restriction_search ) {
771
+		if ( is_int( $restriction_search ) )
772
+		{
773
+			switch ( $restriction_search )
774
+			{
733 775
 			case 0:
734 776
 				$mailbox = $reference."*";
735 777
 				break;
@@ -741,8 +783,11 @@  discard block
 block discarded – undo
741 783
 				$mailbox = "%";
742 784
 				break;
743 785
 			}
744
-		}else{
745
-			if ( is_string( $restriction_search ) ){
786
+		}
787
+		else
788
+		{
789
+			if ( is_string( $restriction_search ) )
790
+			{
746 791
 				$mailbox = $restriction_search;
747 792
 			}
748 793
 		}
@@ -761,7 +806,10 @@  discard block
 block discarded – undo
761 806
 		foreach ($unsubscribed as $box)
762 807
 		{
763 808
 			//error_log(__METHOD__.__LINE__.' Box:'.$k.'->'.array2string($box['mailbox']->utf8));
764
-			if (!in_array($box['mailbox']->utf8,$sret) && $box['mailbox']->utf8!='INBOX') $ret[]=$box['mailbox']->utf8;
809
+			if (!in_array($box['mailbox']->utf8,$sret) && $box['mailbox']->utf8!='INBOX')
810
+			{
811
+				$ret[]=$box['mailbox']->utf8;
812
+			}
765 813
 		}
766 814
 		return $ret;
767 815
 	}
@@ -775,10 +823,16 @@  discard block
 block discarded – undo
775 823
 	 */
776 824
 	function examineMailbox($mailbox, $flags=null)
777 825
 	{
778
-		if ($mailbox=='') return false;
826
+		if ($mailbox=='')
827
+		{
828
+			return false;
829
+		}
779 830
 		$mailboxes = $this->listMailboxes($mailbox);
780 831
 
781
-		if (is_null($flags)) $flags = Horde_Imap_Client::STATUS_ALL | Horde_Imap_Client::STATUS_FLAGS | Horde_Imap_Client::STATUS_PERMFLAGS;
832
+		if (is_null($flags))
833
+		{
834
+			$flags = Horde_Imap_Client::STATUS_ALL | Horde_Imap_Client::STATUS_FLAGS | Horde_Imap_Client::STATUS_PERMFLAGS;
835
+		}
782 836
 
783 837
 		$mboxes = new Horde_Imap_Client_Mailbox_List($mailboxes);
784 838
 		//_debug_array($mboxes->count());
@@ -860,7 +914,10 @@  discard block
 block discarded – undo
860 914
 		}
861 915
 		catch (\Exception $e)
862 916
 		{
863
-			if ($this->debug) error_log(__METHOD__.__LINE__.' error querying for capability:'.$capability.' ->'.$e->getMessage());
917
+			if ($this->debug)
918
+			{
919
+				error_log(__METHOD__.__LINE__.' error querying for capability:'.$capability.' ->'.$e->getMessage());
920
+			}
864 921
 			return false;
865 922
 		}
866 923
 		if (!is_array($cap))
@@ -900,7 +957,10 @@  discard block
 block discarded – undo
900 957
 	{
901 958
 		foreach($_nameSpace as &$singleNameSpace)
902 959
 		{
903
-			if (substr($_folderName,0,strlen($singleNameSpace['prefix'])) == $singleNameSpace['prefix']) return $singleNameSpace['prefix'];
960
+			if (substr($_folderName,0,strlen($singleNameSpace['prefix'])) == $singleNameSpace['prefix'])
961
+			{
962
+				return $singleNameSpace['prefix'];
963
+			}
904 964
 		}
905 965
 		return "";
906 966
 	}
@@ -917,7 +977,8 @@  discard block
 block discarded – undo
917 977
 	 */
918 978
 	function getMailBoxesRecursive($_mailbox, $delimiter, $prefix, $reclevel=0)
919 979
 	{
920
-		if ($reclevel > 25) {
980
+		if ($reclevel > 25)
981
+		{
921 982
 			error_log( __METHOD__." Recursion Level Exeeded ($reclevel) while looking up $_mailbox$delimiter ");
922 983
 			return array();
923 984
 		}
@@ -933,7 +994,8 @@  discard block
 block discarded – undo
933 994
 		{
934 995
 			$buff = $this->getMailboxes($mbx[$mbxkeys[0]]['MAILBOX'].($mbx[$mbxkeys[0]]['MAILBOX'] == $prefix ? '':$delimiter),2,false);
935 996
 			$allMailboxes = array();
936
-			foreach ($buff as $mbxname) {
997
+			foreach ($buff as $mbxname)
998
+			{
937 999
 				$mbxname = preg_replace('~'.($delimiter == '.' ? "\\".$delimiter:$delimiter).'+~s',$delimiter,$mbxname['MAILBOX']);
938 1000
 				#echo "About to recur in level $reclevel:".$mbxname."<br>";
939 1001
 				if ( $mbxname != $mbx[$mbxkeys[0]]['MAILBOX'] && $mbxname != $prefix  && $mbxname != $mbx[$mbxkeys[0]]['MAILBOX'].$delimiter)
@@ -941,7 +1003,10 @@  discard block
 block discarded – undo
941 1003
 					$allMailboxes = array_merge($allMailboxes, self::getMailBoxesRecursive($mbxname, $delimiter, $prefix, $reclevel));
942 1004
 				}
943 1005
 			}
944
-			if (!(in_array('\NoSelect',$mbx[$mbxkeys[0]]["ATTRIBUTES"]) || in_array('\Noselect',$mbx[$mbxkeys[0]]["ATTRIBUTES"]) || in_array('\noselect',$mbx[$mbxkeys[0]]["ATTRIBUTES"]))) $allMailboxes[] = $mbx[$mbxkeys[0]]['MAILBOX'];
1006
+			if (!(in_array('\NoSelect',$mbx[$mbxkeys[0]]["ATTRIBUTES"]) || in_array('\Noselect',$mbx[$mbxkeys[0]]["ATTRIBUTES"]) || in_array('\noselect',$mbx[$mbxkeys[0]]["ATTRIBUTES"])))
1007
+			{
1008
+				$allMailboxes[] = $mbx[$mbxkeys[0]]['MAILBOX'];
1009
+			}
945 1010
 			return $allMailboxes;
946 1011
 		}
947 1012
 		else
@@ -963,9 +1028,16 @@  discard block
 block discarded – undo
963 1028
 		static $nameSpace=null;
964 1029
 		$foldersNameSpace = array();
965 1030
 		$delimiter = $this->getDelimiter();
966
-		if (empty($delimiter)) $delimiter='/';
967
-		if (is_null($nameSpace)) $nameSpace = $this->getNameSpaceArray();
968
-		if (is_array($nameSpace)) {
1031
+		if (empty($delimiter))
1032
+		{
1033
+			$delimiter='/';
1034
+		}
1035
+		if (is_null($nameSpace))
1036
+		{
1037
+			$nameSpace = $this->getNameSpaceArray();
1038
+		}
1039
+		if (is_array($nameSpace))
1040
+		{
969 1041
 			foreach($nameSpace as $type => $singleNameSpaceArray)
970 1042
 			{
971 1043
 				foreach ($singleNameSpaceArray as $singleNameSpace)
@@ -982,7 +1054,9 @@  discard block
 block discarded – undo
982 1054
 						$_foldersNameSpace['prefix_present'] = 'forced';
983 1055
 						// uw-imap server with mailbox prefix or dovecot maybe
984 1056
 						$_foldersNameSpace['prefix'] = 'mail';
985
-					} else {
1057
+					}
1058
+					else
1059
+					{
986 1060
 						$_foldersNameSpace['prefix_present'] = !empty($singleNameSpace['name']);
987 1061
 						$_foldersNameSpace['prefix'] = $singleNameSpace['name'];
988 1062
 					}
@@ -1022,7 +1096,10 @@  discard block
 block discarded – undo
1022 1096
 		$namespaces = $this->getNamespaces();
1023 1097
 		foreach ($namespaces as $nsp)
1024 1098
 		{
1025
-			if ($nsp['type']==$type && $nsp['delimiter']) return $nsp['delimiter'];
1099
+			if ($nsp['type']==$type && $nsp['delimiter'])
1100
+			{
1101
+				return $nsp['delimiter'];
1102
+			}
1026 1103
 		}
1027 1104
 		return "/";
1028 1105
 	}
@@ -1131,12 +1208,14 @@  discard block
 block discarded – undo
1131 1208
 	{
1132 1209
 		$nameSpaces = $this->getNameSpaceArray();
1133 1210
 
1134
-		if(!isset($nameSpaces['others'])) {
1211
+		if(!isset($nameSpaces['others']))
1212
+		{
1135 1213
 			return false;
1136 1214
 		}
1137 1215
 
1138 1216
 		$username = $this->getMailBoxUserName($_username);
1139
-		if($this->loginType == 'vmailmgr' || $this->loginType == 'email' || $this->loginType == 'uidNumber') {
1217
+		if($this->loginType == 'vmailmgr' || $this->loginType == 'email' || $this->loginType == 'uidNumber')
1218
+		{
1140 1219
 			$username .= '@'. $this->domainName;
1141 1220
 		}
1142 1221
 
@@ -1288,7 +1367,10 @@  discard block
 block discarded – undo
1288 1367
 	 */
1289 1368
 	public function __call($name,array $params=null)
1290 1369
 	{
1291
-		if ($this->debug) error_log(__METHOD__.'->'.$name.' with params:'.array2string($params));
1370
+		if ($this->debug)
1371
+		{
1372
+			error_log(__METHOD__.'->'.$name.' with params:'.array2string($params));
1373
+		}
1292 1374
 		switch($name)
1293 1375
 		{
1294 1376
 			case 'installScript':
@@ -1323,7 +1405,10 @@  discard block
 block discarded – undo
1323 1405
 	 */
1324 1406
 	public function setVacationUser($_euser, array $_vacation, $_scriptName=null)
1325 1407
 	{
1326
-		if ($this->debug) error_log(__METHOD__.' User:'.array2string($_euser).' Scriptname:'.array2string($_scriptName).' VacationMessage:'.array2string($_vacation));
1408
+		if ($this->debug)
1409
+		{
1410
+			error_log(__METHOD__.' User:'.array2string($_euser).' Scriptname:'.array2string($_scriptName).' VacationMessage:'.array2string($_vacation));
1411
+		}
1327 1412
 
1328 1413
 		if (is_numeric($_euser))
1329 1414
 		{
@@ -1351,7 +1436,10 @@  discard block
 block discarded – undo
1351 1436
 	 */
1352 1437
 	public function getVacationUser($_euser, $_scriptName=null)
1353 1438
 	{
1354
-		if ($this->debug) error_log(__METHOD__.' User:'.array2string($_euser));
1439
+		if ($this->debug)
1440
+		{
1441
+			error_log(__METHOD__.' User:'.array2string($_euser));
1442
+		}
1355 1443
 
1356 1444
 		if (is_numeric($_euser))
1357 1445
 		{
Please login to merge, or discard this patch.
Spacing   +135 added lines, -135 removed lines patch added patch discarded remove patch
@@ -66,7 +66,7 @@  discard block
 block discarded – undo
66 66
 	static public $default_params = array(
67 67
 		//'debug' => '/tmp/imap.log', // uncomment to log communitcation with IMAP server
68 68
 		//'debug_literal' => true,    // uncomment to log mail contents returned by IMAP server
69
-		'cache' => true,              // default caching via Cache / Api\Cache
69
+		'cache' => true, // default caching via Cache / Api\Cache
70 70
 	);
71 71
 
72 72
 	/**
@@ -144,7 +144,7 @@  discard block
 block discarded – undo
144 144
 	 * @param int $_timeout =null timeout in secs, if none given fmail pref or default of 20 is used
145 145
 	 * @return void
146 146
 	 */
147
-	function __construct(array $params, $_adminConnection=false, $_timeout=null)
147
+	function __construct(array $params, $_adminConnection = false, $_timeout = null)
148 148
 	{
149 149
 		if (function_exists('mb_convert_encoding'))
150 150
 		{
@@ -156,7 +156,7 @@  discard block
 block discarded – undo
156 156
 		$this->loginType = $this->params['acc_imap_logintype'];
157 157
 		$this->domainName = $this->params['acc_domain'];
158 158
 
159
-		if (is_null($_timeout)) $_timeout = $this->params['acc_imap_timeout']?$this->params['acc_imap_timeout']:self::getTimeOut ();
159
+		if (is_null($_timeout)) $_timeout = $this->params['acc_imap_timeout'] ? $this->params['acc_imap_timeout'] : self::getTimeOut();
160 160
 
161 161
 		// Horde use locale for translation of error messages
162 162
 		Api\Preferences::setlocale(LC_MESSAGES);
@@ -175,7 +175,7 @@  discard block
 block discarded – undo
175 175
 			'port' => $this->params['acc_imap_port'],
176 176
 			'secure' => Account::ssl2secure($this->params['acc_imap_ssl']),
177 177
 			'timeout' => $_timeout,
178
-		)+self::$default_params;
178
+		) + self::$default_params;
179 179
 
180 180
 		if ($parent_params['cache'] === true)
181 181
 		{
@@ -199,7 +199,7 @@  discard block
 block discarded – undo
199 199
 				// as we have no way to tell this apart we ignore BINARY this affects
200 200
 				// Horde_Imap_Client_Fetch_Query::bodyPart for its fetch parameter decode=true is ignored
201 201
 				// (other functionality depending on BINARY is, of cause, affected too)
202
-				$parent_params['capability_ignore']= array_merge((array)$parent_params['capability_ignore'],array('BINARY'));
202
+				$parent_params['capability_ignore'] = array_merge((array)$parent_params['capability_ignore'], array('BINARY'));
203 203
 				break;
204 204
 		}
205 205
 		parent::__construct($parent_params);
@@ -212,7 +212,7 @@  discard block
 block discarded – undo
212 212
 	 *
213 213
 	 * @param string $_username =true create an admin connection for given user or $this->acc_imap_username
214 214
 	 */
215
-	function adminConnection($_username=true)
215
+	function adminConnection($_username = true)
216 216
 	{
217 217
 		if ($this->isAdminConnection !== $_username)
218 218
 		{
@@ -229,7 +229,7 @@  discard block
 block discarded – undo
229 229
 	 * @param string $_username =null create an admin connection for given user or $this->acc_imap_username
230 230
 	 * @throws Horde_IMAP_Client_Exception
231 231
 	 */
232
-	public function checkAdminConnection($_username=true)
232
+	public function checkAdminConnection($_username = true)
233 233
 	{
234 234
 		if ($this->acc_imap_administration)
235 235
 		{
@@ -246,7 +246,7 @@  discard block
 block discarded – undo
246 246
 	 */
247 247
 	public function __get($name)
248 248
 	{
249
-		switch($name)
249
+		switch ($name)
250 250
 		{
251 251
 			case 'acc_imap_administration':
252 252
 				return !empty($this->params['acc_imap_admin_username']);
@@ -264,7 +264,7 @@  discard block
 block discarded – undo
264 264
 				{
265 265
 					return $this->$name;
266 266
 				}
267
-				if (array_key_exists($name,$this->params))
267
+				if (array_key_exists($name, $this->params))
268 268
 				{
269 269
 					return $this->params[$name];
270 270
 				}
@@ -285,9 +285,9 @@  discard block
 block discarded – undo
285 285
 	 * @deprecated allready called by constructor automatic, parameters must be passed to constructor!
286 286
 	 * @throws Api\Exception\WrongParameter
287 287
 	 */
288
-	function openConnection($_adminConnection=false, $_timeout=null)
288
+	function openConnection($_adminConnection = false, $_timeout = null)
289 289
 	{
290
-		unset($_timeout);	// not used
290
+		unset($_timeout); // not used
291 291
 		if ($_adminConnection !== $this->params['adminConnection'])
292 292
 		{
293 293
 			throw new Api\Exception\WrongParameter('need to set parameters on calling Account->imapServer()!');
@@ -300,7 +300,7 @@  discard block
 block discarded – undo
300 300
 	 * @param string _use decide if the use is for IMAP or SIEVE, by now only the default differs
301 301
 	 * @return int - timeout (either set or default 20/10)
302 302
 	 */
303
-	static function getTimeOut($_use='IMAP')
303
+	static function getTimeOut($_use = 'IMAP')
304 304
 	{
305 305
 		$timeout = $GLOBALS['egw_info']['user']['preferences']['mail']['connectionTimeout'];
306 306
 		if (empty($timeout) || !($timeout > 0)) $timeout = $_use == 'SIEVE' ? 10 : 20; // this is the default value
@@ -325,7 +325,7 @@  discard block
 block discarded – undo
325 325
 	 */
326 326
 	function addAccount($_hookValues)
327 327
 	{
328
-		unset($_hookValues);	// not used
328
+		unset($_hookValues); // not used
329 329
 		return true;
330 330
 	}
331 331
 
@@ -337,7 +337,7 @@  discard block
 block discarded – undo
337 337
 	 */
338 338
 	function updateAccount($_hookValues)
339 339
 	{
340
-		unset($_hookValues);	// not used
340
+		unset($_hookValues); // not used
341 341
 		return true;
342 342
 	}
343 343
 
@@ -349,7 +349,7 @@  discard block
 block discarded – undo
349 349
 	 */
350 350
 	function deleteAccount($_hookValues)
351 351
 	{
352
-		unset($_hookValues);	// not used
352
+		unset($_hookValues); // not used
353 353
 		return true;
354 354
 	}
355 355
 
@@ -366,7 +366,7 @@  discard block
 block discarded – undo
366 366
 	 */
367 367
 	function encodeFolderName($_folderName)
368 368
 	{
369
-		if($this->mbAvailable) {
369
+		if ($this->mbAvailable) {
370 370
 			return mb_convert_encoding($_folderName, "UTF7-IMAP", Api\Translation::charset());
371 371
 		}
372 372
 
@@ -383,17 +383,17 @@  discard block
 block discarded – undo
383 383
 	 */
384 384
 	function getMailbox($mailbox)
385 385
 	{
386
-		$mailboxes = $this->listMailboxes($mailbox,Horde_Imap_Client::MBOX_ALL);
387
-		if (empty($mailboxes)) $mailboxes = $this->listMailboxes($mailbox,Horde_Imap_Client::MBOX_UNSUBSCRIBED);
386
+		$mailboxes = $this->listMailboxes($mailbox, Horde_Imap_Client::MBOX_ALL);
387
+		if (empty($mailboxes)) $mailboxes = $this->listMailboxes($mailbox, Horde_Imap_Client::MBOX_UNSUBSCRIBED);
388 388
 		//error_log(__METHOD__.__LINE__.'->'.$mailbox.'/'.array2string($mailboxes));
389 389
 		$mboxes = new Horde_Imap_Client_Mailbox_List($mailboxes);
390 390
 		//_debug_array($mboxes->count());
391 391
 		foreach ($mboxes->getIterator() as $k =>$box)
392 392
 		{
393 393
 			//error_log(__METHOD__.__LINE__.'->'.$k);
394
-			if ($k!='user' && $k != '' && $k==$mailbox) return $box['mailbox']; //_debug_array(array($k => $client->status($k)));
394
+			if ($k != 'user' && $k != '' && $k == $mailbox) return $box['mailbox']; //_debug_array(array($k => $client->status($k)));
395 395
 		}
396
-		return ($this->mailboxExist($mailbox)?$mailbox:false);
396
+		return ($this->mailboxExist($mailbox) ? $mailbox : false);
397 397
 	}
398 398
 
399 399
 	/**
@@ -409,23 +409,23 @@  discard block
 block discarded – undo
409 409
 			//error_log(__METHOD__.__LINE__.':'.$mailbox);
410 410
 			$currentMailbox = $this->currentMailbox();
411 411
 		}
412
-		catch(\Exception $e)
412
+		catch (\Exception $e)
413 413
 		{
414 414
 			//error_log(__METHOD__.__LINE__.' failed detecting currentMailbox:'.$currentMailbox.':'.$e->getMessage());
415
-			$currentMailbox=null;
415
+			$currentMailbox = null;
416 416
 			unset($e);
417 417
 		}
418 418
 		try
419 419
 		{
420 420
 			//error_log(__METHOD__.__LINE__.':'.$mailbox);
421 421
 			$this->openMailbox($mailbox);
422
-			$returnvalue=true;
422
+			$returnvalue = true;
423 423
 		}
424
-		catch(\Exception $e)
424
+		catch (\Exception $e)
425 425
 		{
426 426
 			//error_log(__METHOD__.__LINE__.' failed opening:'.$mailbox.':'.$e->getMessage().' Called by:'.function_backtrace());
427 427
 			unset($e);
428
-			$returnvalue=false;
428
+			$returnvalue = false;
429 429
 		}
430 430
 		if (!empty($currentMailbox) && $currentMailbox['mailbox'] != $mailbox)
431 431
 		{
@@ -434,7 +434,7 @@  discard block
 block discarded – undo
434 434
 				//error_log(__METHOD__.__LINE__.':'.$currentMailbox .'<->'.$mailbox);
435 435
 				$this->openMailbox($currentMailbox['mailbox']);
436 436
 			}
437
-			catch(\Exception $e)
437
+			catch (\Exception $e)
438 438
 			{
439 439
 				//error_log(__METHOD__.__LINE__.' failed reopening:'.$currentMailbox.':'.$e->getMessage());
440 440
 				unset($e);
@@ -454,7 +454,7 @@  discard block
 block discarded – undo
454 454
 		{
455 455
 			$mailbox = $this->currentMailbox();
456 456
 		}
457
-		catch(\Exception $e)
457
+		catch (\Exception $e)
458 458
 		{
459 459
 			error_log(__METHOD__.' ('.__LINE__.') failed fetching currentMailbox:'.$e->getMessage());
460 460
 			//throw new egw_exception(__METHOD__.' ('.__LINE__.") failed to ".__METHOD__." :".$e->getMessage());
@@ -472,16 +472,16 @@  discard block
 block discarded – undo
472 472
 	 */
473 473
 	function getSpecialUseFolders()
474 474
 	{
475
-		$mailboxes = $this->getMailboxes('',0,true);
475
+		$mailboxes = $this->getMailboxes('', 0, true);
476 476
 		$suF = array();
477 477
 		foreach ($mailboxes as $box)
478 478
 		{
479
-			if ($box['MAILBOX']!='user' && $box['MAILBOX'] != '')
479
+			if ($box['MAILBOX'] != 'user' && $box['MAILBOX'] != '')
480 480
 			{
481 481
 				//error_log(__METHOD__.__LINE__.$k.'->'.array2string($box));
482
-				if (isset($box['ATTRIBUTES'])&&!empty($box['ATTRIBUTES'])&&
483
-					stripos(strtolower(array2string($box['ATTRIBUTES'])),'\noselect')=== false&&
484
-					stripos(strtolower(array2string($box['ATTRIBUTES'])),'\nonexistent')=== false)
482
+				if (isset($box['ATTRIBUTES']) && !empty($box['ATTRIBUTES']) &&
483
+					stripos(strtolower(array2string($box['ATTRIBUTES'])), '\noselect') === false &&
484
+					stripos(strtolower(array2string($box['ATTRIBUTES'])), '\nonexistent') === false)
485 485
 				{
486 486
 					$suF[$box['MAILBOX']] = $box;
487 487
 				}
@@ -503,7 +503,7 @@  discard block
 block discarded – undo
503 503
 			$status = $this->status($mailbox);
504 504
 			foreach ($status as $key => $v)
505 505
 			{
506
-				$_status[strtoupper($key)]=$v;
506
+				$_status[strtoupper($key)] = $v;
507 507
 			}
508 508
 			return $_status;
509 509
 		}
@@ -521,9 +521,9 @@  discard block
 block discarded – undo
521 521
 	 * @param ignoreStatusCache bool ignore the cache used for counters
522 522
 	 * @return array with counters
523 523
 	 */
524
-	function getStatus($mailbox, $ignoreStatusCache=false)
524
+	function getStatus($mailbox, $ignoreStatusCache = false)
525 525
 	{
526
-		$mailboxes = $this->listMailboxes($mailbox,Horde_Imap_Client::MBOX_ALL,array(
526
+		$mailboxes = $this->listMailboxes($mailbox, Horde_Imap_Client::MBOX_ALL, array(
527 527
 				'attributes'=>true,
528 528
 				'children'=>true, //child info
529 529
 				'delimiter'=>true,
@@ -537,16 +537,16 @@  discard block
 block discarded – undo
537 537
 		//error_log(__METHOD__.__LINE__.array2string($mboxes->count()));
538 538
 		foreach ($mboxes->getIterator() as $k =>$box)
539 539
 		{
540
-			if ($k!='user' && $k != '' && $k==$mailbox)
540
+			if ($k != 'user' && $k != '' && $k == $mailbox)
541 541
 			{
542
-				if (stripos(array2string($box['attributes']),'\noselect')=== false)
542
+				if (stripos(array2string($box['attributes']), '\noselect') === false)
543 543
 				{
544 544
 					$status = $this->status($k, $flags);
545 545
 					foreach ($status as $key => $v)
546 546
 					{
547
-						$_status[strtoupper($key)]=$v;
547
+						$_status[strtoupper($key)] = $v;
548 548
 					}
549
-					$_status['HIERACHY_DELIMITER'] = $_status['delimiter'] = ($box['delimiter']?$box['delimiter']:$this->getDelimiter('personal'));
549
+					$_status['HIERACHY_DELIMITER'] = $_status['delimiter'] = ($box['delimiter'] ? $box['delimiter'] : $this->getDelimiter('personal'));
550 550
 					$_status['ATTRIBUTES'] = $box['attributes'];
551 551
 					//error_log(__METHOD__.__LINE__.$k.'->'.array2string($_status));
552 552
 					return $_status;
@@ -572,14 +572,14 @@  discard block
 block discarded – undo
572 572
 	 *
573 573
 	 * @return  mixed   array of mailboxes
574 574
 	 */
575
-	function getMailboxes($reference = ''  , $restriction_search = 0, $returnAttributes = false)
575
+	function getMailboxes($reference = '', $restriction_search = 0, $returnAttributes = false)
576 576
 	{
577
-		if ( is_bool($restriction_search) ){
578
-			$restriction_search = (int) $restriction_search;
577
+		if (is_bool($restriction_search)) {
578
+			$restriction_search = (int)$restriction_search;
579 579
 		}
580 580
 		$mailbox = '';
581
-		if ( is_int( $restriction_search ) ){
582
-			switch ( $restriction_search ) {
581
+		if (is_int($restriction_search)) {
582
+			switch ($restriction_search) {
583 583
 			case 0:
584 584
 				$searchstring = $reference."*";
585 585
 				break;
@@ -591,8 +591,8 @@  discard block
 block discarded – undo
591 591
 				$searchstring = $reference."%";
592 592
 				break;
593 593
 			}
594
-		}else{
595
-			if ( is_string( $restriction_search ) ){
594
+		} else {
595
+			if (is_string($restriction_search)) {
596 596
 				$mailbox = $searchstring = $restriction_search;
597 597
 			}
598 598
 		}
@@ -605,35 +605,35 @@  discard block
 block discarded – undo
605 605
 				'special_use'=>true,
606 606
 				'sort'=>true,
607 607
 			);
608
-		if ($returnAttributes==false)
608
+		if ($returnAttributes == false)
609 609
 		{
610 610
 			unset($options['attributes']);
611 611
 			unset($options['children']);
612 612
 			unset($options['special_use']);
613 613
 		}
614
-		$mailboxes = $this->listMailboxes($searchstring,Horde_Imap_Client::MBOX_ALL, $options);
614
+		$mailboxes = $this->listMailboxes($searchstring, Horde_Imap_Client::MBOX_ALL, $options);
615 615
 		//$mboxes = new Horde_Imap_Client_Mailbox_List($mailboxes);
616 616
 		//_debug_array($mboxes->count());
617 617
 		foreach ((array)$mailboxes as $k =>$box)
618 618
 		{
619 619
 			//error_log(__METHOD__.__LINE__.' Box:'.$k.'->'.array2string($box));
620
-			$ret[$k]=array('MAILBOX'=>$k,'ATTRIBUTES'=>$box['attributes'],'delimiter'=>($box['delimiter']?$box['delimiter']:$this->getDelimiter('personal')),'SUBSCRIBED'=>true);
620
+			$ret[$k] = array('MAILBOX'=>$k, 'ATTRIBUTES'=>$box['attributes'], 'delimiter'=>($box['delimiter'] ? $box['delimiter'] : $this->getDelimiter('personal')), 'SUBSCRIBED'=>true);
621 621
 		}
622 622
 		// for unknown reasons on ALL, UNSUBSCRIBED are not returned
623 623
 		//always fetch unsubscribed, think about only fetching it when $options['attributes'] is set
624 624
 		//but then allMailboxes are not all, ....
625 625
 		//if (!empty($mailbox) && !isset($ret[$mailbox]))
626 626
 		{
627
-			$unsub_mailboxes = $this->listMailboxes($searchstring,Horde_Imap_Client::MBOX_UNSUBSCRIBED, $options);
627
+			$unsub_mailboxes = $this->listMailboxes($searchstring, Horde_Imap_Client::MBOX_UNSUBSCRIBED, $options);
628 628
 			//$mboxes = new Horde_Imap_Client_Mailbox_List($mailboxes);
629 629
 			//_debug_array($mboxes->count());
630 630
 			//error_log(__METHOD__.__LINE__.' '.$mailbox.':'.count((array)$mailboxes).'->'.function_backtrace());
631 631
 			foreach ((array)$unsub_mailboxes as $k =>$box)
632 632
 			{
633 633
 				//error_log(__METHOD__.__LINE__.' Box:'.$k.' already In?'.array_key_exists($k,$boxexists).'->'.array2string($box));
634
-				if(!array_key_exists($k,$ret))
634
+				if (!array_key_exists($k, $ret))
635 635
 				{
636
-					$ret[$k]=array('MAILBOX'=>$k,'ATTRIBUTES'=>$box['attributes'],'delimiter'=>($box['delimiter']?$box['delimiter']:$this->getDelimiter('personal')),'SUBSCRIBED'=>false);
636
+					$ret[$k] = array('MAILBOX'=>$k, 'ATTRIBUTES'=>$box['attributes'], 'delimiter'=>($box['delimiter'] ? $box['delimiter'] : $this->getDelimiter('personal')), 'SUBSCRIBED'=>false);
637 637
 				}
638 638
 				else
639 639
 				{
@@ -656,14 +656,14 @@  discard block
 block discarded – undo
656 656
 	 *
657 657
 	 * @return  mixed   array of mailboxes
658 658
 	 */
659
-	function listSubscribedMailboxes($reference = ''  , $restriction_search = 0, $returnAttributes = false)
659
+	function listSubscribedMailboxes($reference = '', $restriction_search = 0, $returnAttributes = false)
660 660
 	{
661
-		if ( is_bool($restriction_search) ){
662
-			$restriction_search = (int) $restriction_search;
661
+		if (is_bool($restriction_search)) {
662
+			$restriction_search = (int)$restriction_search;
663 663
 		}
664 664
 		$mailbox = '';
665
-		if ( is_int( $restriction_search ) ){
666
-			switch ( $restriction_search ) {
665
+		if (is_int($restriction_search)) {
666
+			switch ($restriction_search) {
667 667
 			case 0:
668 668
 				$searchstring = $reference."*";
669 669
 				break;
@@ -675,8 +675,8 @@  discard block
 block discarded – undo
675 675
 				$searchstring = $reference."%";
676 676
 				break;
677 677
 			}
678
-		}else{
679
-			if ( is_string( $restriction_search ) ){
678
+		} else {
679
+			if (is_string($restriction_search)) {
680 680
 				$mailbox = $searchstring = $restriction_search;
681 681
 			}
682 682
 		}
@@ -688,25 +688,25 @@  discard block
 block discarded – undo
688 688
 				'special_use'=>true,
689 689
 				'sort'=>true,
690 690
 			);
691
-		if ($returnAttributes==false)
691
+		if ($returnAttributes == false)
692 692
 		{
693 693
 			unset($options['attributes']);
694 694
 			unset($options['children']);
695 695
 			unset($options['special_use']);
696 696
 		}
697
-		$mailboxes = $this->listMailboxes($searchstring,Horde_Imap_Client::MBOX_SUBSCRIBED_EXISTS, $options);
697
+		$mailboxes = $this->listMailboxes($searchstring, Horde_Imap_Client::MBOX_SUBSCRIBED_EXISTS, $options);
698 698
 		//$mboxes = new Horde_Imap_Client_Mailbox_List($mailboxes);
699 699
 		//_debug_array($mboxes->count());
700 700
 		foreach ((array)$mailboxes as $k =>$box)
701 701
 		{
702 702
 			//error_log(__METHOD__.__LINE__.' Searched for:'.$mailbox.' got Box:'.$k.'->'.array2string($box).function_backtrace());
703
-			if ($returnAttributes==false)
703
+			if ($returnAttributes == false)
704 704
 			{
705
-				$ret[]=$k;
705
+				$ret[] = $k;
706 706
 			}
707 707
 			else
708 708
 			{
709
-				$ret[$k]=array('MAILBOX'=>$k,'ATTRIBUTES'=>$box['attributes'],'delimiter'=>($box['delimiter']?$box['delimiter']:$this->getDelimiter('personal')),'SUBSCRIBED'=>true);
709
+				$ret[$k] = array('MAILBOX'=>$k, 'ATTRIBUTES'=>$box['attributes'], 'delimiter'=>($box['delimiter'] ? $box['delimiter'] : $this->getDelimiter('personal')), 'SUBSCRIBED'=>true);
710 710
 			}
711 711
 		}
712 712
 		return $ret;
@@ -722,14 +722,14 @@  discard block
 block discarded – undo
722 722
 	 *
723 723
 	 * @return  mixed   array of mailboxes
724 724
 	 */
725
-	function listUnSubscribedMailboxes($reference = ''  , $restriction_search = 0)
725
+	function listUnSubscribedMailboxes($reference = '', $restriction_search = 0)
726 726
 	{
727
-		if ( is_bool($restriction_search) ){
728
-			$restriction_search = (int) $restriction_search;
727
+		if (is_bool($restriction_search)) {
728
+			$restriction_search = (int)$restriction_search;
729 729
 		}
730 730
 
731
-		if ( is_int( $restriction_search ) ){
732
-			switch ( $restriction_search ) {
731
+		if (is_int($restriction_search)) {
732
+			switch ($restriction_search) {
733 733
 			case 0:
734 734
 				$mailbox = $reference."*";
735 735
 				break;
@@ -741,8 +741,8 @@  discard block
 block discarded – undo
741 741
 				$mailbox = "%";
742 742
 				break;
743 743
 			}
744
-		}else{
745
-			if ( is_string( $restriction_search ) ){
744
+		} else {
745
+			if (is_string($restriction_search)) {
746 746
 				$mailbox = $restriction_search;
747 747
 			}
748 748
 		}
@@ -751,17 +751,17 @@  discard block
 block discarded – undo
751 751
 			'sort'=>true,
752 752
 			//'flat'=>true,
753 753
 		);
754
-		$mailboxes = $this->listMailboxes($mailbox,Horde_Imap_Client::MBOX_SUBSCRIBED_EXISTS, $options);
754
+		$mailboxes = $this->listMailboxes($mailbox, Horde_Imap_Client::MBOX_SUBSCRIBED_EXISTS, $options);
755 755
 		foreach ($mailboxes as $box)
756 756
 		{
757 757
 			//error_log(__METHOD__.__LINE__.' Box:'.$k.'->'.array2string($box['mailbox']->utf8));
758
-			$sret[]=$box['mailbox']->utf8;
758
+			$sret[] = $box['mailbox']->utf8;
759 759
 		}
760
-		$unsubscribed = $this->listMailboxes($mailbox,Horde_Imap_Client::MBOX_UNSUBSCRIBED, $options);
760
+		$unsubscribed = $this->listMailboxes($mailbox, Horde_Imap_Client::MBOX_UNSUBSCRIBED, $options);
761 761
 		foreach ($unsubscribed as $box)
762 762
 		{
763 763
 			//error_log(__METHOD__.__LINE__.' Box:'.$k.'->'.array2string($box['mailbox']->utf8));
764
-			if (!in_array($box['mailbox']->utf8,$sret) && $box['mailbox']->utf8!='INBOX') $ret[]=$box['mailbox']->utf8;
764
+			if (!in_array($box['mailbox']->utf8, $sret) && $box['mailbox']->utf8 != 'INBOX') $ret[] = $box['mailbox']->utf8;
765 765
 		}
766 766
 		return $ret;
767 767
 	}
@@ -773,12 +773,12 @@  discard block
 block discarded – undo
773 773
 	 * @param int $flags =null default Horde_Imap_Client::STATUS_ALL | Horde_Imap_Client::STATUS_FLAGS | Horde_Imap_Client::STATUS_PERMFLAGS
774 774
 	 * @return array of counters for mailbox
775 775
 	 */
776
-	function examineMailbox($mailbox, $flags=null)
776
+	function examineMailbox($mailbox, $flags = null)
777 777
 	{
778
-		if ($mailbox=='') return false;
778
+		if ($mailbox == '') return false;
779 779
 		$mailboxes = $this->listMailboxes($mailbox);
780 780
 
781
-		if (is_null($flags)) $flags = Horde_Imap_Client::STATUS_ALL | Horde_Imap_Client::STATUS_FLAGS | Horde_Imap_Client::STATUS_PERMFLAGS;
781
+		if (is_null($flags)) $flags = Horde_Imap_Client::STATUS_ALL|Horde_Imap_Client::STATUS_FLAGS|Horde_Imap_Client::STATUS_PERMFLAGS;
782 782
 
783 783
 		$mboxes = new Horde_Imap_Client_Mailbox_List($mailboxes);
784 784
 		//_debug_array($mboxes->count());
@@ -786,18 +786,18 @@  discard block
 block discarded – undo
786 786
 		{
787 787
 			//error_log(__METHOD__.__LINE__.array2string($box));
788 788
 			unset($box);
789
-			if ($k!='user' && $k != '' && $k==$mailbox)
789
+			if ($k != 'user' && $k != '' && $k == $mailbox)
790 790
 			{
791 791
 				$status = $this->status($k, $flags);
792 792
 				//error_log(__METHOD__.__LINE__.array2string($status));
793 793
 				foreach ($status as $key => $v)
794 794
 				{
795
-					$_status[strtoupper($key)]=$v;
795
+					$_status[strtoupper($key)] = $v;
796 796
 				}
797
-				if ($flags & (Horde_Imap_Client::STATUS_FLAGS|Horde_Imap_Client::STATUS_PERMFLAGS))
797
+				if ($flags&(Horde_Imap_Client::STATUS_FLAGS|Horde_Imap_Client::STATUS_PERMFLAGS))
798 798
 				{
799 799
 					self::$supports_keywords[$this->ImapServerId] = stripos(implode('', $status['flags']), '$label') !== false ||
800
-						in_array('\\*', $status['permflags']);	// arbitrary keyswords also allow keywords
800
+						in_array('\\*', $status['permflags']); // arbitrary keyswords also allow keywords
801 801
 				}
802 802
 				return $_status;
803 803
 			}
@@ -836,7 +836,7 @@  discard block
 block discarded – undo
836 836
 	 */
837 837
 	function hasCapability($capability)
838 838
 	{
839
-		if ($capability=='SUPPORTS_KEYWORDS')
839
+		if ($capability == 'SUPPORTS_KEYWORDS')
840 840
 		{
841 841
 			// if pseudo-flag is not set, call examineMailbox now to set it (no STATUS_ALL = counters necessary)
842 842
 			if (!isset(self::$supports_keywords[$this->ImapServerId]))
@@ -848,7 +848,7 @@  discard block
 block discarded – undo
848 848
 				catch (\Exception $e)
849 849
 				{
850 850
 					error_log(__METHOD__.__LINE__.' (examineServer for detection) '.$capability.'->'.array2string(self::$supports_keywords).' failed '.function_backtrace());
851
-					self::$supports_keywords[$this->ImapServerId]=false;
851
+					self::$supports_keywords[$this->ImapServerId] = false;
852 852
 				}
853 853
 			}
854 854
 			//error_log(__METHOD__.__LINE__.' '.$capability.'->'.array2string(self::$supports_keywords).' '.function_backtrace());
@@ -898,9 +898,9 @@  discard block
 block discarded – undo
898 898
 	 */
899 899
 	static function getFolderPrefixFromNamespace($_nameSpace, $_folderName)
900 900
 	{
901
-		foreach($_nameSpace as &$singleNameSpace)
901
+		foreach ($_nameSpace as &$singleNameSpace)
902 902
 		{
903
-			if (substr($_folderName,0,strlen($singleNameSpace['prefix'])) == $singleNameSpace['prefix']) return $singleNameSpace['prefix'];
903
+			if (substr($_folderName, 0, strlen($singleNameSpace['prefix'])) == $singleNameSpace['prefix']) return $singleNameSpace['prefix'];
904 904
 		}
905 905
 		return "";
906 906
 	}
@@ -915,33 +915,33 @@  discard block
 block discarded – undo
915 915
 	 * @param string $reclevel = 0, counter to keep track of the current recursionlevel
916 916
 	 * @return array of mailboxes
917 917
 	 */
918
-	function getMailBoxesRecursive($_mailbox, $delimiter, $prefix, $reclevel=0)
918
+	function getMailBoxesRecursive($_mailbox, $delimiter, $prefix, $reclevel = 0)
919 919
 	{
920 920
 		if ($reclevel > 25) {
921
-			error_log( __METHOD__." Recursion Level Exeeded ($reclevel) while looking up $_mailbox$delimiter ");
921
+			error_log(__METHOD__." Recursion Level Exeeded ($reclevel) while looking up $_mailbox$delimiter ");
922 922
 			return array();
923 923
 		}
924 924
 		$reclevel++;
925 925
 		// clean up double delimiters
926
-		$mailbox = preg_replace('~'.($delimiter == '.' ? "\\".$delimiter:$delimiter).'+~s',$delimiter,$_mailbox);
926
+		$mailbox = preg_replace('~'.($delimiter == '.' ? "\\".$delimiter : $delimiter).'+~s', $delimiter, $_mailbox);
927 927
 		//get that mailbox in question
928
-		$mbx = $this->getMailboxes($mailbox,1,true);
928
+		$mbx = $this->getMailboxes($mailbox, 1, true);
929 929
 		$mbxkeys = array_keys($mbx);
930 930
 
931 931
 		// Example: Array([INBOX/GaGa] => Array([MAILBOX] => INBOX/GaGa[ATTRIBUTES] => Array([0] => \\unmarked)[delimiter] => /))
932
-		if (is_array($mbx[$mbxkeys[0]]["ATTRIBUTES"]) && (in_array('\HasChildren',$mbx[$mbxkeys[0]]["ATTRIBUTES"]) || in_array('\Haschildren',$mbx[$mbxkeys[0]]["ATTRIBUTES"]) || in_array('\haschildren',$mbx[$mbxkeys[0]]["ATTRIBUTES"])))
932
+		if (is_array($mbx[$mbxkeys[0]]["ATTRIBUTES"]) && (in_array('\HasChildren', $mbx[$mbxkeys[0]]["ATTRIBUTES"]) || in_array('\Haschildren', $mbx[$mbxkeys[0]]["ATTRIBUTES"]) || in_array('\haschildren', $mbx[$mbxkeys[0]]["ATTRIBUTES"])))
933 933
 		{
934
-			$buff = $this->getMailboxes($mbx[$mbxkeys[0]]['MAILBOX'].($mbx[$mbxkeys[0]]['MAILBOX'] == $prefix ? '':$delimiter),2,false);
934
+			$buff = $this->getMailboxes($mbx[$mbxkeys[0]]['MAILBOX'].($mbx[$mbxkeys[0]]['MAILBOX'] == $prefix ? '' : $delimiter), 2, false);
935 935
 			$allMailboxes = array();
936 936
 			foreach ($buff as $mbxname) {
937
-				$mbxname = preg_replace('~'.($delimiter == '.' ? "\\".$delimiter:$delimiter).'+~s',$delimiter,$mbxname['MAILBOX']);
937
+				$mbxname = preg_replace('~'.($delimiter == '.' ? "\\".$delimiter : $delimiter).'+~s', $delimiter, $mbxname['MAILBOX']);
938 938
 				#echo "About to recur in level $reclevel:".$mbxname."<br>";
939
-				if ( $mbxname != $mbx[$mbxkeys[0]]['MAILBOX'] && $mbxname != $prefix  && $mbxname != $mbx[$mbxkeys[0]]['MAILBOX'].$delimiter)
939
+				if ($mbxname != $mbx[$mbxkeys[0]]['MAILBOX'] && $mbxname != $prefix && $mbxname != $mbx[$mbxkeys[0]]['MAILBOX'].$delimiter)
940 940
 				{
941 941
 					$allMailboxes = array_merge($allMailboxes, self::getMailBoxesRecursive($mbxname, $delimiter, $prefix, $reclevel));
942 942
 				}
943 943
 			}
944
-			if (!(in_array('\NoSelect',$mbx[$mbxkeys[0]]["ATTRIBUTES"]) || in_array('\Noselect',$mbx[$mbxkeys[0]]["ATTRIBUTES"]) || in_array('\noselect',$mbx[$mbxkeys[0]]["ATTRIBUTES"]))) $allMailboxes[] = $mbx[$mbxkeys[0]]['MAILBOX'];
944
+			if (!(in_array('\NoSelect', $mbx[$mbxkeys[0]]["ATTRIBUTES"]) || in_array('\Noselect', $mbx[$mbxkeys[0]]["ATTRIBUTES"]) || in_array('\noselect', $mbx[$mbxkeys[0]]["ATTRIBUTES"]))) $allMailboxes[] = $mbx[$mbxkeys[0]]['MAILBOX'];
945 945
 			return $allMailboxes;
946 946
 		}
947 947
 		else
@@ -960,24 +960,24 @@  discard block
 block discarded – undo
960 960
 	 */
961 961
 	function getNameSpace()
962 962
 	{
963
-		static $nameSpace=null;
963
+		static $nameSpace = null;
964 964
 		$foldersNameSpace = array();
965 965
 		$delimiter = $this->getDelimiter();
966
-		if (empty($delimiter)) $delimiter='/';
966
+		if (empty($delimiter)) $delimiter = '/';
967 967
 		if (is_null($nameSpace)) $nameSpace = $this->getNameSpaceArray();
968 968
 		if (is_array($nameSpace)) {
969
-			foreach($nameSpace as $type => $singleNameSpaceArray)
969
+			foreach ($nameSpace as $type => $singleNameSpaceArray)
970 970
 			{
971 971
 				foreach ($singleNameSpaceArray as $singleNameSpace)
972 972
 				{
973 973
 					$_foldersNameSpace = array();
974
-					if($type == 'personal' && $singleNameSpace['name'] == '#mh/' && ($this->folderExists('Mail')||$this->folderExists('INBOX')))
974
+					if ($type == 'personal' && $singleNameSpace['name'] == '#mh/' && ($this->folderExists('Mail') || $this->folderExists('INBOX')))
975 975
 					{
976 976
 						$_foldersNameSpace['prefix_present'] = 'forced';
977 977
 						// uw-imap server with mailbox prefix or dovecot maybe
978
-						$_foldersNameSpace['prefix'] = ($this->folderExists('Mail')?'Mail':(!empty($singleNameSpace['name'])?$singleNameSpace['name']:''));
978
+						$_foldersNameSpace['prefix'] = ($this->folderExists('Mail') ? 'Mail' : (!empty($singleNameSpace['name']) ? $singleNameSpace['name'] : ''));
979 979
 					}
980
-					elseif($type == 'personal' && ($singleNameSpace['name'] == '#mh/') && $this->folderExists('mail'))
980
+					elseif ($type == 'personal' && ($singleNameSpace['name'] == '#mh/') && $this->folderExists('mail'))
981 981
 					{
982 982
 						$_foldersNameSpace['prefix_present'] = 'forced';
983 983
 						// uw-imap server with mailbox prefix or dovecot maybe
@@ -986,9 +986,9 @@  discard block
 block discarded – undo
986 986
 						$_foldersNameSpace['prefix_present'] = !empty($singleNameSpace['name']);
987 987
 						$_foldersNameSpace['prefix'] = $singleNameSpace['name'];
988 988
 					}
989
-					$_foldersNameSpace['delimiter'] = ($singleNameSpace['delimiter']?$singleNameSpace['delimiter']:$delimiter);
989
+					$_foldersNameSpace['delimiter'] = ($singleNameSpace['delimiter'] ? $singleNameSpace['delimiter'] : $delimiter);
990 990
 					$_foldersNameSpace['type'] = $type;
991
-					$foldersNameSpace[] =$_foldersNameSpace;
991
+					$foldersNameSpace[] = $_foldersNameSpace;
992 992
 				}
993 993
 			}
994 994
 		}
@@ -1000,29 +1000,29 @@  discard block
 block discarded – undo
1000 1000
 	 * @param mixed _type (1=personal, 2=user/other, 3=shared)
1001 1001
 	 * @return string the delimimiter
1002 1002
 	 */
1003
-	function getDelimiter($_type=1)
1003
+	function getDelimiter($_type = 1)
1004 1004
 	{
1005 1005
 		switch ($_type)
1006 1006
 		{
1007 1007
 			case 'user':
1008 1008
 			case 'other':
1009 1009
 			case 2:
1010
-				$type=2;
1010
+				$type = 2;
1011 1011
 				break;
1012 1012
 			case 'shared':
1013 1013
 			case '':
1014 1014
 			case 3:
1015
-				$type=3;
1015
+				$type = 3;
1016 1016
 				break;
1017 1017
 			case 'personal':
1018 1018
 			case 1:
1019 1019
 			default:
1020
-				$type=1;
1020
+				$type = 1;
1021 1021
 		}
1022 1022
 		$namespaces = $this->getNamespaces();
1023 1023
 		foreach ($namespaces as $nsp)
1024 1024
 		{
1025
-			if ($nsp['type']==$type && $nsp['delimiter']) return $nsp['delimiter'];
1025
+			if ($nsp['type'] == $type && $nsp['delimiter']) return $nsp['delimiter'];
1026 1026
 		}
1027 1027
 		return "/";
1028 1028
 	}
@@ -1050,7 +1050,7 @@  discard block
 block discarded – undo
1050 1050
 	{
1051 1051
 		if (is_numeric($_username))
1052 1052
 		{
1053
-			$_username = $GLOBALS['egw']->accounts->id2name($accountID=$_username);
1053
+			$_username = $GLOBALS['egw']->accounts->id2name($accountID = $_username);
1054 1054
 		}
1055 1055
 		else
1056 1056
 		{
@@ -1059,7 +1059,7 @@  discard block
 block discarded – undo
1059 1059
 		switch ($this->loginType)
1060 1060
 		{
1061 1061
 			case 'email':
1062
-				$_username = $GLOBALS['egw']->accounts->id2name($accountID,'account_email');
1062
+				$_username = $GLOBALS['egw']->accounts->id2name($accountID, 'account_email');
1063 1063
 				break;
1064 1064
 
1065 1065
 			case 'vmailmgr':
@@ -1074,8 +1074,8 @@  discard block
 block discarded – undo
1074 1074
 				if (empty($this->loginType))
1075 1075
 				{
1076 1076
 					// try to figure out by params['acc_imap_username']
1077
-					list($lusername,$domain) = explode('@',$this->params['acc_imap_username'],2);
1078
-					if (strpos($_username,'@')===false && !empty($domain) && !empty($lusername))
1077
+					list($lusername, $domain) = explode('@', $this->params['acc_imap_username'], 2);
1078
+					if (strpos($_username, '@') === false && !empty($domain) && !empty($lusername))
1079 1079
 					{
1080 1080
 						$_username = $_username.'@'.$domain;
1081 1081
 					}
@@ -1114,20 +1114,20 @@  discard block
 block discarded – undo
1114 1114
 	 * @param string $_folderName=''
1115 1115
 	 * @return string utf-7 encoded (done in getMailboxName)
1116 1116
 	 */
1117
-	function getUserMailboxString($_username, $_folderName='')
1117
+	function getUserMailboxString($_username, $_folderName = '')
1118 1118
 	{
1119 1119
 		$nameSpaces = $this->getNameSpaceArray();
1120 1120
 
1121
-		if(!isset($nameSpaces['others'])) {
1121
+		if (!isset($nameSpaces['others'])) {
1122 1122
 			return false;
1123 1123
 		}
1124 1124
 
1125 1125
 		$username = $this->getMailBoxUserName($_username);
1126
-		if($this->loginType == 'vmailmgr' || $this->loginType == 'email' || $this->loginType == 'uidNumber') {
1127
-			$username .= '@'. $this->domainName;
1126
+		if ($this->loginType == 'vmailmgr' || $this->loginType == 'email' || $this->loginType == 'uidNumber') {
1127
+			$username .= '@'.$this->domainName;
1128 1128
 		}
1129 1129
 
1130
-		$mailboxString = $nameSpaces['others'][0]['name'] . $username . (!empty($_folderName) ? ($nameSpaces['others'][0]['delimiter']?$nameSpaces['others'][0]['delimiter']:'/') . $_folderName : '');
1130
+		$mailboxString = $nameSpaces['others'][0]['name'].$username.(!empty($_folderName) ? ($nameSpaces['others'][0]['delimiter'] ? $nameSpaces['others'][0]['delimiter'] : '/').$_folderName : '');
1131 1131
 
1132 1132
 		return $mailboxString;
1133 1133
 	}
@@ -1146,7 +1146,7 @@  discard block
 block discarded – undo
1146 1146
 		);
1147 1147
 		//error_log(__METHOD__.__LINE__.array2string($types));
1148 1148
 		$result = array();
1149
-		foreach($this->getNamespaces() as $data)
1149
+		foreach ($this->getNamespaces() as $data)
1150 1150
 		{
1151 1151
 			//error_log(__METHOD__.__LINE__.array2string($data));
1152 1152
 			if (isset($types[$data['type']]))
@@ -1156,7 +1156,7 @@  discard block
 block discarded – undo
1156 1156
 					'name' => $data['name'],
1157 1157
 					'prefix' => $data['name'],
1158 1158
 					'prefix_present' => !empty($data['name']),
1159
-					'delimiter' => ($data['delimiter']?$data['delimiter']:'/'),
1159
+					'delimiter' => ($data['delimiter'] ? $data['delimiter'] : '/'),
1160 1160
 				);
1161 1161
 			}
1162 1162
 		}
@@ -1177,7 +1177,7 @@  discard block
 block discarded – undo
1177 1177
 		{
1178 1178
 			if ($qInfo['storage'])
1179 1179
 			{
1180
-				return array('USED'=>$qInfo['storage']['usage'],'QMAX'=>$qInfo['storage']['limit']);
1180
+				return array('USED'=>$qInfo['storage']['usage'], 'QMAX'=>$qInfo['storage']['limit']);
1181 1181
 			}
1182 1182
 		}
1183 1183
 		return false;
@@ -1191,7 +1191,7 @@  discard block
 block discarded – undo
1191 1191
 	 * @param string $_what - what to retrieve either limit/QMAX, usage/USED or ALL is supported
1192 1192
 	 * @return int|array|boolean the quota for specified user (by what) or array with values for "limit" and "usage", or false
1193 1193
 	 */
1194
-	function getQuotaByUser($_username, $_what='QMAX')
1194
+	function getQuotaByUser($_username, $_what = 'QMAX')
1195 1195
 	{
1196 1196
 		$mailboxName = $this->getUserMailboxString($_username);
1197 1197
 		$storageQuota = $this->getQuotaRoot($mailboxName);
@@ -1200,7 +1200,7 @@  discard block
 block discarded – undo
1200 1200
 		if (is_array($storageQuota) && isset($storageQuota[$mailboxName]) && is_array($storageQuota[$mailboxName]) &&
1201 1201
 			isset($storageQuota[$mailboxName]['storage']) && is_array($storageQuota[$mailboxName]['storage']))
1202 1202
 		{
1203
-			switch($_what)
1203
+			switch ($_what)
1204 1204
 			{
1205 1205
 				case 'QMAX':
1206 1206
 					$_what = 'limit';
@@ -1226,7 +1226,7 @@  discard block
 block discarded – undo
1226 1226
 	 */
1227 1227
 	function getUserData($_username)
1228 1228
 	{
1229
-		unset($_username);	// not used
1229
+		unset($_username); // not used
1230 1230
 		return array();
1231 1231
 	}
1232 1232
 
@@ -1239,7 +1239,7 @@  discard block
 block discarded – undo
1239 1239
 	 */
1240 1240
 	function setUserData($_username, $_quota)
1241 1241
 	{
1242
-		unset($_username, $_quota);	// not used
1242
+		unset($_username, $_quota); // not used
1243 1243
 		return true;
1244 1244
 	}
1245 1245
 
@@ -1273,10 +1273,10 @@  discard block
 block discarded – undo
1273 1273
 	 * @param array $params
1274 1274
 	 * @throws Api\Exception\WrongParameter
1275 1275
 	 */
1276
-	public function __call($name,array $params=null)
1276
+	public function __call($name, array $params = null)
1277 1277
 	{
1278 1278
 		if ($this->debug) error_log(__METHOD__.'->'.$name.' with params:'.array2string($params));
1279
-		switch($name)
1279
+		switch ($name)
1280 1280
 		{
1281 1281
 			case 'installScript':
1282 1282
 			case 'getScript':
@@ -1291,9 +1291,9 @@  discard block
 block discarded – undo
1291 1291
 				if (is_null($this->sieve))
1292 1292
 				{
1293 1293
 					$this->sieve = new Sieve($this);
1294
-					$this->error =& $this->sieve->error;
1294
+					$this->error = & $this->sieve->error;
1295 1295
 				}
1296
-				$ret = call_user_func_array(array($this->sieve,$name),$params);
1296
+				$ret = call_user_func_array(array($this->sieve, $name), $params);
1297 1297
 				//error_log(__CLASS__.'->'.$name.'('.array2string($params).') returns '.array2string($ret));
1298 1298
 				return $ret;
1299 1299
 		}
@@ -1308,7 +1308,7 @@  discard block
 block discarded – undo
1308 1308
 	 * @param string $_scriptName =null
1309 1309
 	 * @return boolean
1310 1310
 	 */
1311
-	public function setVacationUser($_euser, array $_vacation, $_scriptName=null)
1311
+	public function setVacationUser($_euser, array $_vacation, $_scriptName = null)
1312 1312
 	{
1313 1313
 		if ($this->debug) error_log(__METHOD__.' User:'.array2string($_euser).' Scriptname:'.array2string($_scriptName).' VacationMessage:'.array2string($_vacation));
1314 1314
 
@@ -1320,8 +1320,8 @@  discard block
 block discarded – undo
1320 1320
 		{
1321 1321
 			$this->adminConnection($_euser);
1322 1322
 			$this->sieve = new Sieve($this, $_euser, $_scriptName);
1323
-			$this->scriptName =& $this->sieve->scriptName;
1324
-			$this->error =& $this->sieve->error;
1323
+			$this->scriptName = & $this->sieve->scriptName;
1324
+			$this->error = & $this->sieve->error;
1325 1325
 		}
1326 1326
 		$ret = $this->setVacation($_vacation, $_scriptName);
1327 1327
 
@@ -1336,7 +1336,7 @@  discard block
 block discarded – undo
1336 1336
 	 * @throws Exception on connection error or authentication failure
1337 1337
 	 * @return array
1338 1338
 	 */
1339
-	public function getVacationUser($_euser, $_scriptName=null)
1339
+	public function getVacationUser($_euser, $_scriptName = null)
1340 1340
 	{
1341 1341
 		if ($this->debug) error_log(__METHOD__.' User:'.array2string($_euser));
1342 1342
 
@@ -1348,8 +1348,8 @@  discard block
 block discarded – undo
1348 1348
 		{
1349 1349
 			$this->adminConnection($_euser);
1350 1350
 			$this->sieve = new Sieve($this, $_euser, $_scriptName);
1351
-			$this->error =& $this->sieve->error;
1352
-			$this->scriptName =& $this->sieve->scriptName;
1351
+			$this->error = & $this->sieve->error;
1352
+			$this->scriptName = & $this->sieve->scriptName;
1353 1353
 		}
1354 1354
 		return $this->sieve->getVacation();
1355 1355
 	}
@@ -1369,7 +1369,7 @@  discard block
 block discarded – undo
1369 1369
 	 */
1370 1370
 	public static function init_static()
1371 1371
 	{
1372
-		self::$supports_keywords =& Api\Cache::getSession (__CLASS__, 'supports_keywords');
1372
+		self::$supports_keywords = & Api\Cache::getSession(__CLASS__, 'supports_keywords');
1373 1373
 	}
1374 1374
 }
1375 1375
 Imap::init_static();
Please login to merge, or discard this patch.