Rapport-Laravel/app/Http/Controllers/RolesController.php

65 lines
3.3 KiB
PHP

<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Http\Requests\LambdaRequest;
use DB;
class RolesController extends Controller
{
public function __construct()
{
$this->middleware('auth');
$this->_service = 'ums';
$this->_module = 'roles';
$this->_viewname = 'roles';
$this->_title = 'Roles';
$this->_base_url = '/role';
}
protected function get_list_fields(){
return [
'actions' => ['title' => 'Actions', 'buttons' => [ 'edit', 'delete' ] ],
'name' => ['title' => 'Role Name', 'type' => 'text'],
'code' => ['title' => 'Role Code ', 'type' => 'text'],
//'channel' => ['title' => 'Channels', 'type' => 'select'],
'status' => ['title' => 'Status', 'type' => 'select'],
];
}
protected function get_form_fields($type, $values){
$response = LambdaRequest::signedrequest('get', $this->_service, $this->_module.'/masterlist');
$permissions = $response->data->permissions;
// $permissions = [
// "domain_create","domain_update","domain_get_one",
// "users_create","users_update","users_get_all","users_get_one","users_delete","users_dropdown",
// "roles_create","roles_update","roles_get_all","roles_get_one","roles_delete","roles_dropdown",
// "group_create","group_update","group_get_all","group_get_one","group_delete","group_dropdown",
// "channel_create","channel_update","channel_get_all","channel_get_one","channel_delete","channel_dropdown",
// "hierarchy_create","hierarchy_update","hierarchy_get_all","hierarchy_get_one","hierarchy_delete",
// "magazine_create","magazine_update","magazine_get_all","magazine_get_one","magazine_delete","magazine_dropdown",
// "mag_media_create","mag_media_update","mag_media_get_all","mag_media_get_one","mag_media_delete",
// "mag_media_views_create","mag_media_views_update","mag_media_views_get_all","mag_media_views_get_one","mag_media_views_delete","mag_media_like","mag_media_likes","mag_media_comment","mag_media_comments",
// "wallmessage_create","wallmessage_update","wallmessage_get_all","wallmessage_get_one","wallmessage_delete","wallmessage_like","wallmessage_likes","wallmessage_comment","wallmessage_comments",
// ];
$permissions_dd = [];
foreach($permissions as $permission) {
$permissions_dd[$permission] = $permission;
}
$hierarchies = $this->getlambda('get', 'ums', 'hierarchy', 'dropdown');
$hierarchies_dd = [];
foreach($hierarchies->data->items as $hierarchy){
$hierarchies_dd[$hierarchy->id] = $hierarchy->name . ' (' . $hierarchy->code . ')';
}
//echo '<pre>'; print_r($hierarchies_dd); exit;
return [
'name' => ['title' => 'Role Name', 'type' => 'text', 'required' => true],
'code' => ['title' => 'Role Code', 'type' => 'text', 'required' => true],
'mimik_position' => ['title' => 'Mimik Position (Applicable to HO)', 'type' => 'select', 'values' => $hierarchies_dd],
'permissions' => ['title' => 'permissions', 'type' => 'bigmultiselect', 'required' => true, 'values' => $permissions_dd, 'fullwidth' => true ],
];
}
}