/**
  * Update the specified resource in storage.
  *
  * @param  \Mage2\User\Requests\RoleRequest  $request
  * @param  int  $id
  * @return \Illuminate\Http\Response
  */
 public function update(RoleRequest $request, $id)
 {
     $role = Role::findorfail($id);
     $role->update($request->all());
     if (count($request->get('permissions')) > 0) {
         $permissionIds = Collection::make([]);
         foreach ($request->get('permissions') as $key => $value) {
             //save it into db
             if ($value != 1) {
                 continue;
             }
             $permissions = explode(',', $key);
             foreach ($permissions as $permissionName) {
                 if (null === ($permissionModel = Permission::getPermissionByName($permissionName))) {
                     $permissionModel = Permission::create(['name' => $permissionName]);
                 }
                 if (!$permissionIds->contains($permissionModel->id)) {
                     $permissionIds->push($permissionModel->id);
                 }
             }
         }
     }
     $role->permissions()->sync($permissionIds->toArray());
     return redirect()->route('role.index');
 }
 /**
  * Update the specified resource in storage.
  *
  * @param \Mage2\User\Requests\Admin\RoleRequst $request
  * @param int $id
  *
  * @return \Illuminate\Http\Response
  */
 public function update(RoleRequst $request, $id)
 {
     try {
         $role = Role::findorfail($id);
         $role->update($request->all());
         $this->_saveRolePermissions($request, $role);
     } catch (\Exception $e) {
         echo 'Caught exception: ', $e->getMessage(), "\n";
     }
     return redirect()->route('admin.role.index')->with('notificationText', " Role Updates Successfully!");
 }