public function rebuildAction()
{
$permissionBuilder = new PermissionBuilder();
foreach ($this->application->getModules() as $module) {
foreach ($permissionBuilder->getModulePermissions($module) as $p) {
$permission = RbacPermission::findFirst(['module' => $p['module'], 'controller' => $p['controller'], 'action' => $p['action']]);
if ($permission === false) {
$permission = new RbacPermission();
$permission->module = $p['module'];
$permission->controller = $p['controller'];
$permission->action = $p['action'];
$permission->description = $p['description'];
$permission->created_time = time();
$permission->permission_type = RbacPermission::TYPE_PENDING;
$permission->create();
}
}
}
return $this->response->redirect('/admin/rbac_permission');
}