API16

JMenu/getInstance

From Joomla! Documentation

< API16:JMenu

The "API16" namespace is an archived namespace. This page contains information for a Joomla! version which is no longer supported. It exists only as a historical reference, it will not be improved and its content may be incomplete and/or contain broken links.

Description[edit]

Returns a JMenu object



Syntax[edit]

static getInstance($client, $options=array())
Parameter Name Default Value Description
$client The name of the client
$options array() An associative array of options

Returns[edit]

A menu object. 

Defined in[edit]

libraries/joomla/application/menu.php

Importing[edit]

jimport( 'joomla.application.menu' );

Source Body[edit]

public static function getInstance($client, $options = array())
{
        static $instances;

        if (!isset($instances)) {
                $instances = array();
        }

        if (empty($instances[$client])) {
                //Load the router object
                $info = &JApplicationHelper::getClientInfo($client, true);

                $path = $info->path.'/includes/menu.php';
                if (file_exists($path)) {
                        require_once $path;

                        // Create a JPathway object
                        $classname = 'JMenu'.ucfirst($client);
                        $instance = new $classname($options);
                } else {
                        //$error = JError::raiseError(500, 'Unable to load menu: '.$client);
                        $error = null; //Jinx : need to fix this
                        return $error;
                }

                $instances[$client] = & $instance;
        }

        return $instances[$client];
}



Examples[edit]

Code Examples[edit]