$app->get('/', function () use($app, $view) { $permissions = g::findPermissions(); $data = ['permissions' => $permissions->toArray(true)]; $view->render('permissions/index.php', $data); }); $app->get('/edit/:permId', function ($permId) use($app, $view) { $permission = g::findPermissionById($permId); $data = ['permission' => $permission->toArray()]; $view->render('permissions/edit.php', $data); }); $app->post('/edit/:permId', function ($permId) use($app, $view) { $permission = g::findPermissionById($permId); $data = ['success' => true]; $post = $app->request->post(); $ds = g::getDatasource(); $permission->name = $post['name']; $permission->description = $post['description']; try { $ds->save($permission); } catch (\Exception $e) { $data['success'] = false; } $data['permission'] = $permission->toArray(); $view->render('permissions/edit.php', $data); }); $app->get('/view/:name', function ($perm) use($app, $view) { $permission = is_numeric($perm) ? g::findPermissionById($perm) : g::findPermissionByName($perm); $data = ['permission' => $permission->toArray(), 'groups' => $permission->groups->toArray(true)]; $view->render('permissions/view.php', $data); }); });