Aggiunto assegnazione permessi diretti ad utente

This commit is contained in:
2023-06-20 08:27:20 +02:00
parent 30cf03bd7d
commit b82ec0adc0
7 changed files with 133 additions and 19 deletions

View File

@@ -19,28 +19,28 @@ class ProgettiController extends Controller
'progetti'=>Progetti::getProgetti()
]);
}
public function nuovoProgetto()
{
return view('progetti.new',['coordinatori'=>User::getUsers()]);
}
public function getCoordinatori()
{
return json_encode(User::getUsers());
}
public function salvaProgetto(Request $request)
{
Progetti::saveProgetto($request);
return redirect(Route('progetti'));
}
public function deleteProgetto(Request $param) {
Progetti::delProgetto($param['id']);
return redirect(Route('progetti'));
}
public function dettaglioProgetto($id)
{
@@ -51,5 +51,22 @@ class ProgettiController extends Controller
return view('progetti.dettaglio',['dettaglio'=>$progetto, 'righe'=>$righe, 'tot'=>$costo_tot]);
//dd($righe);
}
public function chiudiProgetto(Request $id)
{
Progetti::chiudiProgetto($id['id']);
return redirect(Route('progetti'));
}
public function riapriProgetto(Request $id)
{
Progetti::riapriProgetto($id['id']);
return redirect(Route('progetti'));
}
public function stampaPDF(Request $id)
{
}
}

View File

@@ -12,7 +12,7 @@ use App\Models\User;
class Utenti extends Controller
{
public function createRole($ruolo)
{
$role=Role::create(['name'=>$ruolo]);
@@ -23,40 +23,68 @@ class Utenti extends Controller
$permission=Permission::create(['name'=>$permesso]);
return json_encode(Permission::all()->pluck('name'));
}
function userClass() {
$user=new User();
return get_class_methods($user);
}
// post del create user
function createUser(Request $params){
User::addUser($params);
return redirect('/admin/users/new');
}
// mostra il form della creazione dell'utente
function addUser(){
$roles = Role::all();
$users = User::all();
return view('users.create',['ruoli'=>$roles,'users'=>$users]);
}
function listUser(){
$users = User::all();
return view('users.list',['users'=>$users]);
return view('users.list',['users'=>$users]);
}
function listRoles(){
$roles = Role::all();
return $roles;
}
function deleteUser($id) {
User::destroy($id);
return redirect('/admin/users/new');
}
function givePermissionToUser()
{
$users=User::all();
$permissions=Permission::all();
return view('users.assignperm',['users'=>$users,'permissions'=>$permissions]);
}
function assignPermission(Request $request)
{
//$user=User::getUserbyId($request['user']);
$user=User::findOrFail($request['user']);
foreach($request['permesso'] as $key => $value){
if($value=='true')
{
$key=str_replace('\'','',$key);
$user->givePermissionTo($key);
// $permission['allowed'][]=$key;
}
else
{
$key=str_replace('\'','',$key);
$user->revokePermissionTo($key);
// $permission['denied'][]=$key;
}
}
return redirect('/admin/users/givepermission');
}
}

View File

@@ -66,4 +66,15 @@ class Progetti extends Model
]);
}
public static function riapriProgetto($progetto_id)
{
DB::table('progettis')
->where('id','=', $progetto_id)
->update([
'stato'=>'aperto',
'data_fine'=>null,
]);
}
}