Clean up handling default parameters
authorMichael M Slusarz <slusarz@curecanti.org>
Tue, 7 Sep 2010 06:10:10 +0000 (00:10 -0600)
committerMichael M Slusarz <slusarz@curecanti.org>
Tue, 7 Sep 2010 06:49:03 +0000 (00:49 -0600)
framework/Imap_Client/lib/Horde/Imap/Client/Base.php
framework/Imap_Client/lib/Horde/Imap/Client/Cache.php

index da2d2da..a94b276 100644 (file)
@@ -125,17 +125,12 @@ abstract class Horde_Imap_Client_Base implements Serializable
         }
 
         // Default values.
-        if (empty($params['hostspec'])) {
-            $params['hostspec'] = 'localhost';
-        }
-
-        if (empty($params['port'])) {
-            $params['port'] = (isset($params['secure']) && ($params['secure'] == 'ssl')) ? 993 : 143;
-        }
-
-        if (empty($params['timeout'])) {
-            $params['timeout'] = 30;
-        }
+        $params = array_merge(array(
+            'hostspec' => 'localhost',
+            'port' => ((isset($params['secure']) && ($params['secure'] == 'ssl')) ? 993 : 143),
+            'secure' => false,
+            'timeout' => 30
+        ), array_filter($params));
 
         if (empty($params['cache'])) {
             $params['cache'] = array('fields' => array());
index afa4eef..a9c46da 100644 (file)
@@ -124,6 +124,13 @@ class Horde_Imap_Client_Cache
             throw new InvalidArgumentException('Missing required parameters to Horde_Imap_Client_Cache.');
         }
 
+        // Default parameters.
+        $params = array_merge(array(
+            'debug' => false,
+            'lifetime' => 604800,
+            'slicesize' => 50
+        ), array_filter($params));
+
         $compress = null;
         if (!empty($params['compress'])) {
             switch ($params['compress']) {
@@ -149,11 +156,11 @@ class Horde_Imap_Client_Cache
 
         $this->_params = array(
             'compress' => $compress,
-            'debug' => empty($params['debug']) ? false : $params['debug'],
+            'debug' => $params['debug'],
             'hostspec' => $params['hostspec'],
-            'lifetime' => empty($params['lifetime']) ? 604800 : intval($params['lifetime']),
+            'lifetime' => intval($params['lifetime']),
             'port' => $params['port'],
-            'slicesize' => empty($params['slicesize']) ? 50 : intval($params['slicesize']),
+            'slicesize' => intval($params['slicesize']),
             'username' => $params['username']
         );
     }