<commit_before><?php
class MenuWidget extends YWidget
{
    public $name;
    public $parent_id = 0;

    public $id;
    public $params = array();
    public $htmlOptions = array();

    public function init()
    {
        parent::init();
        $this->parent_id = (int) $this->parent_id;
    }

    public function run()
    {
        echo CHtml::openTag('div', (array('id' => $this->id) + $this->htmlOptions));

        $this->widget('zii.widgets.CMenu', ($this->params + array('items' => Menu::model()->getItems($this->name, $this->parent_id))));

        echo CHtml::closeTag('div');
    }
}<commit_msg>Небольшая документация к виджету меню<commit_after><?php

/**
 * Класс MenuWidget - виджет вывода меню на страницы сайта
 *
 * @package menu.widgets
 * @author yupe team
 * @link http://yupe.ru
 */

/**
 * Данный плагин реализует вывод меню модуля Menu.
 * 
 * Подключение виджета:
 * <?php
 * $this->widget('application.modules.menu.widgets.MenuWidget', array(
 *     'name' => 'top-menu',
 *     'id' => 'myslidemenu',
 *     'params' => array('hideEmptyItems' => true),
 *     'htmlOptions' => array('class' => 'jqueryslidemenu'),
 * ));
 * ?>
 */
 
class MenuWidget extends YWidget
{
    /**
     * @var string данный парамметр указывает уникальный код выводимого меню.
     */
    public $name;
    /**
     * @var string данный парамметр указывает начиная с id какого родителя начинать вывод меню, по умолчанию 0, корень меню.
     */
    public $parent_id = 0;

    /**
     * @var array парамметры виджета zii.widgets.CMenu.
     */
    public $params = array();
    /**
     * @var integer данная переменная задает id блока div оборачивающего меню.
     */
    public $id;
    /**
     * @var array htmlOptions тега div.
     */
    public $htmlOptions = array();

    public function init()
    {
        parent::init();
        $this->parent_id = (int) $this->parent_id;
    }

    public function run()
    {
        echo CHtml::openTag('div', (array('id' => $this->id) + $this->htmlOptions));

        $this->widget('zii.widgets.CMenu', ($this->params + array('items' => Menu::model()->getItems($this->name, $this->parent_id))));

        echo CHtml::closeTag('div');
    }
}
{'fraction_non_alphanumeric': 0.16787989080982713, 'fraction_numerical': 0.001364877161055505, 'mean_word_length': 2.784853700516351, 'pattern_counts': {'":': 0, '<': 6, '<?xml version=': 0, '>': 33, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1681874', 'n_tokens_mistral': 787, 'n_tokens_neox': 798, 'n_words': 168}