/**
  * get all permissions with rolewise access
  * @return array
  */
 public function get_all_permisssions()
 {
     $all_permissions = Permissions::all();
     $all_roles = Roles::all();
     $permission_matrix = array();
     foreach ($all_permissions as $permission) {
         $permission_matrix[$permission->group][$permission->pid]['permission'] = $permission;
         foreach ($all_roles as $role) {
             $permission_matrix[$permission->group][$permission->pid]['roles'][$role->rid]['role'] = $role;
             $role_permission_access = $role->role_permissions()->where('pid', '=', $permission->pid)->get();
             if (count($role_permission_access) > 0) {
                 $permission_matrix[$permission->group][$permission->pid]['roles'][$role->rid]['access'] = 1;
             } else {
                 $permission_matrix[$permission->group][$permission->pid]['roles'][$role->rid]['access'] = 0;
             }
         }
     }
     return $permission_matrix;
 }
 /**
  * This function gives list of all roles
  *
  */
 public function role_listing()
 {
     access_check('manage_roles');
     $roles = Roles::all();
     return view('users::admin.role_listing')->with('roles', $roles)->with('layout', $this->layout);
 }