]> _ Git - fluidbook-toolbox.git/commitdiff
wip #6727 @0.5
authorVincent Vanwaelscappel <vincent@cubedesigners.com>
Wed, 14 Feb 2024 15:06:58 +0000 (16:06 +0100)
committerVincent Vanwaelscappel <vincent@cubedesigners.com>
Wed, 14 Feb 2024 15:06:58 +0000 (16:06 +0100)
app/Http/Controllers/Admin/Operations/ChangeownerOperation.php
resources/views/columns/owner.blade.php

index 6b5889edc7232623dc8bd7c142507f2605719584..4fc89be47daf4d08b8275aa56fc9752deee9be76 100644 (file)
@@ -2,7 +2,8 @@
 
 namespace App\Http\Controllers\Admin\Operations;
 
-use Cubist\Backpack\Magic\Controllers\CubistMagicController;
+use App\Models\Base\ToolboxModel;
+use Cubedesigners\UserDatabase\Models\User;
 use Illuminate\Support\Facades\Route;
 use Prologue\Alerts\Facades\Alert;
 
@@ -15,10 +16,14 @@ trait ChangeownerOperation
 
     protected function changeOwner($id, $owner)
     {
-        /** @var $this CubistMagicController */
+        /** @var $this ToolboxModel */
         $class = $this->getModelInstance();
-        if (!$this->getModelInstance()->canAdmin(backpack_user())) {
-            abort(401);
+
+        if (!$class::hasPermission($id, 'read')) {
+            abort(401, __('Vous n\'ête pas autorisé à modifier le propriétaire'));
+        }
+        if (null === User::find($owner)) {
+            abort(401, __('Impossible d\'attribuer la propriété à cet utilisateur'));
         }
         $instance = $class::find($id);
         $instance->setOwner($owner);
index c51c51585b7bd9ef0b3183ddcc72919f1720e636..38cfdb0d43d8259d54b1e2d7e0b80a9202d2528c 100644 (file)
 <span data-{{$entry->getOption('name')}}-{{$column['name']}}="{{$values}}">
     <div class="owners_list_container" style="display: none;">
         <select
-            style="width: 100%;"
-            name="owners_list"
-            data-ajax="{{$crud->ajaxOwnerList}}"
+                style="width: 100%;"
+                name="owners_list"
+                data-ajax="{{$crud->ajaxOwnerList}}"
         >
             <option value="{{$values}}" selected>{!! $v !!}</option>
         </select>
     </div>
     <a href="#" class="changeowner" data-entry-id="{{$entry->id}}"
        title="{{__('Modifier le propriétaire')}}">{!! $v !!}</a>
-    @if(backpack_user()->isOwner($entry->owner))
+    @if($entry->owner!=backpack_user()->id && backpack_user()->isOwner($entry->owner))
         <a href="{{backpack_url('users/'.$entry->owner.'/loginas')}}" class="la la-key"
            title="{{__('Se connecter comme')}}"></a>
     @endif