name}_block"; if (method_exists($class_name, "get_list")) { foreach (call_user_func(array($class_name, "get_list")) as $id => $title) { $blocks["{$module->name}:$id"] = $title; } } } return $blocks; } static function get_html($location) { $active = self::get_active($location); foreach ($active as $id => $desc) { if (method_exists("$desc[0]_block", "get")) { $block = call_user_func(array("$desc[0]_block", "get"), $desc[1]); $block->id = $id; $result .= $block; } } return $result; } }