dev-master
9999999-dev https://github.com/MihailDev/yii2-moderator-panelYii2 Moderator Panel
BSD-3-Clause
The Requires
by Mihail
yii panel moderator
Wallogit.com
2017 © Pedro Peláez
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