fix policies

This commit is contained in:
mahdi purHosseini
2024-01-03 14:24:19 +03:30
parent 7068eeb561
commit e345034978
5 changed files with 12 additions and 25 deletions
-2
View File
@@ -151,9 +151,7 @@ class ItemController extends Controller
'user_id' => auth( 'api' )->user()->id , 'user_id' => auth( 'api' )->user()->id ,
'creator_id' => auth( 'api' )->user()->id 'creator_id' => auth( 'api' )->user()->id
] ); ] );
MediaHelper::moveMediaTo( $Item ); MediaHelper::moveMediaTo( $Item );
return MessageResponse::success( trans( 'messages.success' ) ); return MessageResponse::success( trans( 'messages.success' ) );
} }
+1 -4
View File
@@ -2,16 +2,13 @@
namespace App\Http\Requests; namespace App\Http\Requests;
use App\Item;
use Illuminate\Foundation\Http\FormRequest; use Illuminate\Foundation\Http\FormRequest;
class StoreItemRequest extends FormRequest class StoreItemRequest extends FormRequest
{ {
public function authorize() public function authorize()
{ {
if ($this->method() == 'POST') { if ($this->method() != 'POST') {
return auth('api')->check() && auth('api')->user()->can('store', Item::class);
} else {
$Item = $this->route('Item'); $Item = $this->route('Item');
return auth('api')->check() && $Item && auth('api')->user()->can('update', $Item); return auth('api')->check() && $Item && auth('api')->user()->can('update', $Item);
} }
+1 -5
View File
@@ -2,16 +2,13 @@
namespace App\Http\Requests; namespace App\Http\Requests;
use App\Package;
use Illuminate\Foundation\Http\FormRequest; use Illuminate\Foundation\Http\FormRequest;
class StorePackageRequest extends FormRequest class StorePackageRequest extends FormRequest
{ {
public function authorize() public function authorize()
{ {
if ($this->method() == 'POST') { if ($this->method() != 'POST') {
return auth('api')->check() && auth('api')->user()->can('store', Package::class);
} else {
$Package = $this->route('Package'); $Package = $this->route('Package');
return auth('api')->check() && $Package && auth('api')->user()->can('update', $Package); return auth('api')->check() && $Package && auth('api')->user()->can('update', $Package);
} }
@@ -37,7 +34,6 @@ class StorePackageRequest extends FormRequest
'items' => 'required', 'items' => 'required',
]; ];
break; break;
} }
default: default:
break; break;
+5 -7
View File
@@ -26,13 +26,11 @@ class ItemPolicy
public function update( User $User , Item $Item ) public function update( User $User , Item $Item )
{ {
if ( $User->hasRole( 'Admin' ) || ( $User->hasRole( 'Supervisor' ) && $Item->user->medical_center_id == $User->medical_center_id ) ) if (
return true; $User->hasRole( 'Admin' ) ||
} ( $User->hasRole( 'Supervisor' ) && $Item->user->medical_center_id == $User->medical_center_id ) ||
$Item->user_id == $User->id
public function store( User $User ) )
{
if ( $User->hasRole( 'Admin' ) || $User->hasRole( 'Supervisor' ) )
return true; return true;
} }
+5 -7
View File
@@ -4,7 +4,6 @@ namespace App\Policies;
use App\User; use App\User;
use App\Package; use App\Package;
use Doctrine\Tests\Common\Inflector\InflectorTest;
class PackagePolicy class PackagePolicy
{ {
@@ -22,15 +21,14 @@ class PackagePolicy
public function update(User $User, Package $Package) public function update(User $User, Package $Package)
{ {
if($User->hasRole('Admin') || ($User->hasRole('Supervisor') && $Package->user->medical_center_id == $User->medical_center_id)) if(
$User->hasRole('Admin') ||
($User->hasRole('Supervisor') && $Package->user->medical_center_id == $User->medical_center_id ) ||
$Package->user_id == $User->id
)
return true; return true;
} }
public function store(User $User)
{
if($User->hasRole('Admin') || $User->hasRole('Supervisor'))
return true;
}
public function verifyPackage(User $User, Package $Package) public function verifyPackage(User $User, Package $Package)
{ {
if($User->hasRole('Admin') || ($User->hasRole('Supervisor') && $Package->user->medical_center_id == $User->medical_center_id)) if($User->hasRole('Admin') || ($User->hasRole('Supervisor') && $Package->user->medical_center_id == $User->medical_center_id))