Changeset 14490

Show
Ignore:
Timestamp:
01/17/08 21:52:56 (11 months ago)
Author:
rambo
Message:

forward port r14489

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/midcom/midcom.helper.reflector/reflector.php

    r14484 r14490  
    343343    function get_create_icon($type) 
    344344    { 
    345         static $config_icon_map = false
    346         if (!$config_icon_map
     345        static $config_icon_map = array()
     346        if (empty($config_icon_map)
    347347        { 
    348348            $icons2classes = $this->_config->get('create_type_magic'); 
    349             if (is_array($icons2classes)) 
     349            //sanity 
     350            if (!is_array($icons2classes)) 
     351            { 
     352                debug_push_class(__CLASS__, __FUNCTION__); 
     353                debug_add('Config key "create_type_magic" is not an array', MIDCOM_LOG_ERROR); 
     354                debug_print_r("\$this->_config->get('create_type_magic')", $icons2classes, MIDCOM_LOG_INFO); 
     355                debug_pop(); 
     356                unset($icons2classes); 
     357            } 
     358            else 
    350359            { 
    351360                foreach ($icons2classes as $icon => $classes) 
     
    356365                    } 
    357366                } 
    358             } 
    359             unset($icons2classes, $classes, $class, $icon); 
     367                unset($icons2classes, $classes, $class, $icon); 
     368            } 
    360369        } 
    361370 
     
    398407    function get_object_icon(&$obj) 
    399408    { 
    400         $properties = get_object_vars($obj); 
    401         if (empty($properties)) 
    402         { 
    403             debug_push_class(__CLASS__, __FUNCTION__); 
    404             debug_add("Could not list object properties, aborting", MIDCOM_LOG_ERROR); 
    405             debug_pop(); 
    406             return false; 
    407         } 
    408          
    409         static $config_icon_map = false; 
    410         if (!$config_icon_map) 
     409        static $config_icon_map = array(); 
     410        if (empty($config_icon_map)) 
    411411        { 
    412412            $icons2classes = $this->_config->get('object_icon_magic'); 
    413             foreach ($icons2classes as $icon => $classes) 
    414             { 
    415                 foreach ($classes as $class) 
    416                 { 
    417                     $config_icon_map[$class] = $icon; 
    418                 } 
    419             } 
    420             unset($icons2classes, $classes, $class, $icon); 
     413            //sanity 
     414            if (!is_array($icons2classes)) 
     415            { 
     416                debug_push_class(__CLASS__, __FUNCTION__); 
     417                debug_add('Config key "object_icon_magic" is not an array', MIDCOM_LOG_ERROR); 
     418                debug_print_r("\$this->_config->get('object_icon_magic')", $icons2classes, MIDCOM_LOG_INFO); 
     419                debug_pop(); 
     420                unset($icons2classes); 
     421            } 
     422            else 
     423            { 
     424                foreach ($icons2classes as $icon => $classes) 
     425                { 
     426                    foreach ($classes as $class) 
     427                    { 
     428                        $config_icon_map[$class] = $icon; 
     429                    } 
     430                } 
     431                unset($icons2classes, $classes, $class, $icon); 
     432            } 
    421433        } 
    422434