Aggiunto assegnazione permessi diretti ad utente
This commit is contained in:
parent
30cf03bd7d
commit
b82ec0adc0
@ -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)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -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');
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -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,
|
||||
]);
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -58,7 +58,7 @@
|
||||
<li><a class="active" href="/admin/users/newRole">Gruppi</a></li>
|
||||
<li><a class="active" href="/admin/users/newPermission">Permessi</a></li>
|
||||
-->
|
||||
<li><a class="active" href="/admin/users/assignRole">Assegna Ruoli</a></li>
|
||||
<li><a class="active" href="/admin/users/givepermission">Assegna Permessi</a></li>
|
||||
<!--
|
||||
<li><a href="/login">Login Page</a></li>
|
||||
-->
|
||||
|
@ -43,7 +43,12 @@
|
||||
<td>{{ $progetto->name; }}</td>
|
||||
<td>{{ $progetto->budget; }}</td>
|
||||
<td>@if($progetto->stato != 'chiuso')<a href="progetti/delete?id={{ $progetto->progetto }}"
|
||||
class="btn btn-danger">Cancella</a>@endif</td>
|
||||
class="btn btn-danger">Cancella</a> <a href="progetti/close?id={{ $progetto->progetto }}"
|
||||
class="btn btn-danger">Chiudi</a>@endif
|
||||
@if($progetto->stato == 'chiuso')<a href="progetti/reopen?id={{ $progetto->progetto }}"
|
||||
class="btn btn-danger">Riapri</a>@endif
|
||||
<a href="progetti/print?id={{ $progetto->progetto }}"
|
||||
class="btn btn-primary">Stampa PDF</a></td>
|
||||
</tr>
|
||||
@endforeach
|
||||
</tbody>
|
||||
|
47
resources/views/users/assignperm.blade.php
Normal file
47
resources/views/users/assignperm.blade.php
Normal file
@ -0,0 +1,47 @@
|
||||
@extends('admin')
|
||||
@section('content')
|
||||
<div class="row">
|
||||
<div class="col-lg-12">
|
||||
<h1 class="page-header">Assegnazione permessi</h1>
|
||||
</div>
|
||||
</div>
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
<div class="col-lg-12">
|
||||
<div class="panel panel-default">
|
||||
<div class="panel-heading">
|
||||
Nuova assegnazione permessi
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
<!-- Form -->
|
||||
<form action="" method="POST">
|
||||
<select name="user" class="form-control">
|
||||
@foreach($users as $user)
|
||||
<option value="{{$user->id}}"> {{$user->name}}</option>
|
||||
@endforeach
|
||||
</select>
|
||||
<table>
|
||||
<tr>
|
||||
<th>Permesso</th>
|
||||
<th>Azione</th>
|
||||
</tr>
|
||||
@foreach($permissions as $perm)
|
||||
<tr>
|
||||
<td>{{$perm->name}}</td>
|
||||
<td>
|
||||
Attiva<input type="radio" name="permesso['{{$perm->name}}']" value="true">
|
||||
|
||||
Disattiva <input type="radio" name="permesso['{{$perm->name}}']" value="false">
|
||||
</td>
|
||||
</tr>
|
||||
@endforeach
|
||||
</table>
|
||||
@csrf
|
||||
<input type="Submit" name="submit" value="associa">
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@endsection
|
@ -128,6 +128,8 @@ Route::group(['middleware'=>['permission:amministrazione']], function(){
|
||||
Route::post('users/new',[Utenti::class,'createUser']);
|
||||
Route::get('users/roles',[Utenti::class,'listRoles']);
|
||||
Route::get('users/delete/{id}',[Utenti::class,'deleteUser']);
|
||||
Route::get('users/givepermission',[Utenti::class,'givePermissionToUser']);
|
||||
Route::post('users/givepermission',[Utenti::class,'assignPermission']);
|
||||
});
|
||||
// PROGETTI
|
||||
Route::group(['middleware'=>['permission:progetti']], function(){
|
||||
@ -141,6 +143,10 @@ Route::group(['middleware'=>['permission:progetti']], function(){
|
||||
Route::get('progetti/detail/edit/{id}', [RigaProgettoController::class, 'editRiga']);
|
||||
Route::post('progetti/rigaupdate', [RigaProgettoController::class, 'updateRiga']);
|
||||
Route::get('progetti/coordinatori', [ProgettiController::class, 'getCoordinatori']);
|
||||
Route::get('progetti/close',[ProgettiController::class, 'chiudiProgetto']);
|
||||
Route::get('progetti/reopen',[ProgettiController::class, 'riapriProgetto']);
|
||||
|
||||
|
||||
});
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user