PHP 5 style for static vars.
authorMichael M Slusarz <slusarz@curecanti.org>
Tue, 31 Mar 2009 00:19:22 +0000 (18:19 -0600)
committerMichael M Slusarz <slusarz@curecanti.org>
Wed, 1 Apr 2009 19:12:34 +0000 (13:12 -0600)
imp/lib/Search.php

index 4363296..97a871e 100644 (file)
@@ -67,6 +67,13 @@ class IMP_Search
     protected $_saveVFolder = true;
 
     /**
+     * The list of Virtual Folders obtained from the prefs.
+     *
+     * @var array
+     */
+    static protected $_vfolder;
+
+    /**
      * Constructor.
      *
      * @param array $params  Available parameters:
@@ -275,25 +282,23 @@ class IMP_Search
      */
     protected function _getVFolderList()
     {
-        static $vfolder;
-
-        if (isset($vfolder)) {
-            return $vfolder;
+        if (isset(self::$_vfolder)) {
+            return self::$_vfolder;
         }
 
         $vfolder = $GLOBALS['prefs']->getValue('vfolder');
-        if (empty($vfolder)) {
-            return array();
+        if (!empty($vfolder)) {
+            $old_error = error_reporting(0);
+            $vfolder = unserialize($vfolder);
+            error_reporting($old_error);
         }
 
-        $old_error = error_reporting(0);
-        $vfolder = unserialize($vfolder);
-        error_reporting($old_error);
-
-        if (!is_array($vfolder)) {
+        if (empty($vfolder) || !is_array($vfolder)) {
             $vfolder = array();
         }
 
+        self::$_vfolder = $vfolder;
+
         return $vfolder;
     }