installato laravel-permission e rimosso junge/laravel-acl

This commit is contained in:
2023-06-01 16:57:39 +02:00
parent 8fc2b6ae83
commit ce5527ecde
17 changed files with 486 additions and 523 deletions

View File

@@ -23,4 +23,6 @@ class CondominioController extends Controller
{
abort(403);
}
}

View File

@@ -4,23 +4,25 @@ namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
use Junges\ACL\Models\Group;
use Junges\ACL\Models\Permission;
// use Junges\ACL\Models\Group;
// use Junges\ACL\Models\Permission;
use Spatie\Permission\Models\Role;
use Spatie\Permission\Models\Permission;
class Utenti extends Controller
{
//
public function nuovoGruppo()
/* public function nuovoGruppo()
{
return view('vendor.junges.form_addGroup',['gruppi'=>Utenti::getGruppi()]);
return view('vendor.junges.form_addGroup',['gruppi'=>Utenti::getGruppi()]);
}
public function saveNuovoGruppo(Request $request)
{
$group=Group::create(['name' => $request['gruppo'],'description'=>$request['descrizione']]);
return view('vendor.junges.form_addGroup',['gruppi'=>Utenti::getGruppi()]);
}
public function nuovoPermesso()
{
return view('vendor.junges.form_addPermission',['permessi'=>Utenti::getPermessi()]);
@@ -30,17 +32,17 @@ class Utenti extends Controller
$group=Permission::create(['name' => $request['permesso'],'description'=>$request['descrizione']]);
return view('vendor.junges.form_addPermission',['permessi'=>Utenti::getPermessi()]);
}
public function getPermessi()
{
return DB::table('permissions')->orderBy('name')->get();
}
public function getGruppi()
{
return DB::table('groups')->orderBy('name')->get();
}
public function vw_assignToGroup()
{
return view('vendor.junges.assignPermissionToGroup',[
@@ -48,7 +50,7 @@ class Utenti extends Controller
'gruppi'=>Utenti::getGruppi(),
]);
}
public function assignPermissionToGroup(Request $request)
{
$group=Group::findByName($request['gruppo']);
@@ -57,5 +59,16 @@ class Utenti extends Controller
'permessi'=>Utenti::getPermessi(),
'gruppi'=>Utenti::getGruppi(),
]);
}*/
public function createRole($ruolo)
{
$role=Role::create(['name'=>$ruolo]);
return json_encode(Role::all()->pluck('name'));
}
function createPermission($permesso){
$permission=Permission::create(['name'=>$permesso]);
return json_encode(Permission::all()->pluck('name'));
}
}

View File

@@ -4,19 +4,20 @@ namespace App\Models;
use Illuminate\Contracts\Auth\MustVerifyEmail;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\SoftDeletes;
// use Illuminate\Database\Eloquent\SoftDeletes;
use Illuminate\Foundation\Auth\User as Authenticatable;
use Illuminate\Notifications\Notifiable;
use Illuminate\Support\Facades\DB;
use Laravel\Sanctum\HasApiTokens;
//use LdapRecord\Laravel\Auth\Authenticatable;
use LdapRecord\Laravel\Auth\AuthenticatesWithLdap;
use Junges\ACL\Concerns\HasGroups;
use Illuminate\Contracts\Auth\Access\Authorizable ;
use Spatie\Permission\Traits\HasRole;
class User extends Authenticatable
{
use HasApiTokens, HasFactory, Notifiable, AuthenticateswithLdap, HasGroups, SoftDeletes;
use HasApiTokens, HasFactory, Notifiable, AuthenticateswithLdap, HasRoles;
/**
* The attributes that are mass assignable.
@@ -27,6 +28,7 @@ class User extends Authenticatable
'name',
'email',
'password',
'user_role',
];
/**
@@ -73,6 +75,6 @@ class User extends Authenticatable
return DB::table('users')->orderBy('name')->get();
}
}

View File

@@ -26,5 +26,10 @@ class AuthServiceProvider extends ServiceProvider
$this->registerPolicies();
//
Gate::define('admin', function(User $user ){
return $user->isAdmin
? Response::allow()
: Response::deny('E\'necessario essere amministratori per accedere a questa risorsa');
});
}
}