Example #1
0
/**
 * Returns all views below a partial view.
 *
 * Settings $view_root = 'profile' will show all available views under
 * the "profile" namespace.
 *
 * @param string $view_root The root view
 * @param string $viewtype  Optionally specify a view type
 *                          other than the current one.
 *
 * @return array A list of view names underneath that root view
 * @todo This is used once in the deprecated get_activity_stream_data() function.
 * @access private
 * @deprecated 1.9
 */
function elgg_view_tree($view_root, $viewtype = "")
{
    global $CONFIG;
    static $treecache = array();
    // Get viewtype
    if (!$viewtype) {
        $viewtype = elgg_get_viewtype();
    }
    // A little light internal caching
    if (!empty($treecache[$view_root])) {
        return $treecache[$view_root];
    }
    // Examine $CONFIG->views->locations
    if (isset($CONFIG->views->locations[$viewtype])) {
        foreach ($CONFIG->views->locations[$viewtype] as $view => $path) {
            $pos = strpos($view, $view_root);
            if ($pos === 0) {
                $treecache[$view_root][] = $view;
            }
        }
    }
    // Now examine core
    $location = $CONFIG->viewpath;
    $viewtype = elgg_get_viewtype();
    $root = $location . $viewtype . '/' . $view_root;
    if (file_exists($root) && is_dir($root)) {
        $val = elgg_get_views($root, $view_root);
        if (!is_array($treecache[$view_root])) {
            $treecache[$view_root] = array();
        }
        $treecache[$view_root] = array_merge($treecache[$view_root], $val);
    }
    return $treecache[$view_root];
}
/**
 * Get views in a dir
 *
 * @deprecated 1.7.  Use elgg_get_views().
 *
 * @param string $dir  Dir
 * @param string $base Base view
 *
 * @return array
 */
function get_views($dir, $base)
{
    elgg_deprecated_notice('get_views() was deprecated by elgg_get_views()!', 1.7);
    elgg_get_views($dir, $base);
}