joomla-platform / libraries / joomla / html / parameter / element / menu.php

<?php
/**
 * @package     Joomla.Platform
 * @subpackage  HTML
 *
 * @copyright   Copyright (C) 2005 - 2011 Open Source Matters, Inc. All rights reserved.
 * @license     GNU General Public License version 2 or later; see LICENSE
 */

defined('JPATH_PLATFORM') or die;

/**
 * Renders a menu element
 *
 * @package     Joomla.Platform
 * @subpackage      Parameter
 * @since       11.1
 */

class JElementMenu extends JElement
{
    /**
    * Element name
    *
    * @var      string
    */
    protected $_name = 'Menu';

    public function fetchElement($name, $value, &$node, $control_name)
    {
        require_once JPATH_ADMINISTRATOR.DS.'components'.DS.'com_menus'.DS.'helpers'.DS.'menus.php';
        $menuTypes  = MenusHelper::getMenuTypes();

        foreach ($menuTypes as $menutype) {
            $options[] = JHtml::_('select.option', $menutype, $menutype);
        }
        array_unshift($options, JHtml::_('select.option', '', JText::_('JOPTION_SELECT_MENU')));

        return JHtml::_('select.genericlist',  $options, $control_name.'['.$name.']',
            array(
                'id' => $control_name.$name,
                'list.attr' => 'class="inputbox"',
                'list.select' => $value
            )
        );
    }
}
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.