dev-master
9999999-dev https://github.com/MihailDev/yii2-moderator-panelYii2 Moderator Panel
BSD-3-Clause
The Requires
by Mihail
yii panel moderator
Yii2 Moderator Panel
Простая и удобная панель для интеграции с расширениями для более удобного доступа к настройкам сайта или конкретной страницы, (*1)
Удобнее всего установить это расширение через composer., (*2)
Либо запустить, (*3)
php composer.phar require --prefer-dist mihaildev/yii2-moderator-panel "*"
или добавить, (*4)
"mihaildev/yii2-moderator-panel": "*"
в разделе require
вашего composer.json файла., (*5)
'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 но если есть необходимость можно перенастроить или вообше им не пользоваться но для централизации я это шаблон добавил и дал возможность создать свой, (*6)
Привязать данный шаблон можно разными способами Предать мпциальный парамтр как это показанно ниже или же вы создадите отдельный экшин для такого запроса это вам решать!, (*7)
public function actionOptions($page_id, $is_frame=0) { . . . if(!empty($is_frame)) $this->layout = ModeratorPanel::getFrameLayout(); . . . }
Yii2 Moderator Panel
BSD-3-Clause
yii panel moderator