mihaildev/yii2-moderator-panel Yii2 Moderator Panel

panelmoderator

Yii 2 Панель модератора

Простая и удобная панель для интеграции с расширениями для более удобного доступа к настройкам сайта или конкретной страницы

Установка

Удобнее всего установить это расширение через composer.

Либо запустить

php composer.phar require --prefer-dist mihaildev/yii2-moderator-panel "*"

или добавить

"mihaildev/yii2-moderator-panel": "*"

в разделе require вашего composer.json файла.

Настройка

'moderatorPanel' => [
        'class' => 'mihaildev\moderatorpanel\Component',
        /*'enabled'=> true, //данное значение установленно по умолчанию если над вообше отключить панель поставте значение false*/
        /*'access' => 'Moderator', //минимальны права доступа для отображения панели - по умолчанию равен null что значит что праверка на минимальный доступ проводится не будет*/
        /*'frameLayout' => '@mihaildev/moderator/panel/frameLayout'*/
    ],

Использование

//Открытие настроек во фрэйме на странице:

\mihaildev\moderator\panel\ModeratorPanel::registerFrame('pnaelId', ['/module/admin/options', 'page_id'=>$id, 'is_frame' => '1'], 'Настройки страницы', 'module.moderator', [], 800, 600);

/*
первый параметр: 'pnaelId' - идентификатор ссылки чтобы исключить дублирование
второй параметр: ссылка на страницу с настройками
третий параметр: заголовок
четвёртый параметр: настройки доступа
пятый параметр: параметры передаваемые для проверки доступа
шестой параметр: длина фрэйма
седмой параметр: ширина фрэйма
*/

//Открытие настроек спомошь открытия их в новом окне(допустим переход в админ часть):

\mihaildev\moderator\panel\ModeratorPanel::registerLink('pnaelId', ['/module/admin/options', 'page_id'=>$id], 'Настройки страницы', 'module.moderator', []);
/*
первый параметр: 'pnaelId' - идентификатор ссылки чтобы исключить дублирование
второй параметр: ссылка на страницу с настройками
третий параметр: заголовок
четвёртый параметр: настройки доступа
пятый параметр: параметры передаваемые для проверки доступа
*/

Использование в контроллере при работе с фреймом

Главной проблемой тут становится отобразить форму без всего лишнего. Для этого есть стандартный шаблон @mihaildev/moderator/panel/frameLayout под Bootstrap но если есть необходимость можно перенастроить или вообше им не пользоваться но для централизации я это шаблон добавил и дал возможность создать свой

Привязать данный шаблон можно разными способами Предать мпциальный парамтр как это показанно ниже или же вы создадите отдельный экшин для такого запроса это вам решать!

    public function actionOptions($page_id, $is_frame=0)
    {
        . . .

        if(!empty($is_frame))
            $this->layout = ModeratorPanel::getFrameLayout();

        . . .
    }

Statistics

Downloads
GitHub Stars
GitHub Forks

Releases

No stable releases.

Comments



No stable releases.



BSD-3-Clause license
Stats
1 github stars & 1 github forks
0 downloads in the last day
0 downloads in the last 30 days
17 total downloads