| Server IP : 139.59.63.204 / Your IP : 216.73.216.39 Web Server : Apache/2.4.58 (Ubuntu) System : Linux ubuntu-s-1vcpu-1gb-blr1-01 6.8.0-110-generic #110-Ubuntu SMP PREEMPT_DYNAMIC Thu Mar 19 15:09:20 UTC 2026 x86_64 User : root ( 0) PHP Version : 8.3.6 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /var/www/html/app/Http/Controllers/Admin/ |
Upload File : |
<?php
namespace App\Http\Controllers\Admin;
use App\Http\Controllers\Controller;
use App\Http\Requests\MassDestroyUserRequest;
use App\Http\Requests\StoreUserRequest;
use App\Http\Requests\UpdateUserRequest;
use App\Models\Role;
use App\Models\User;
use App\Models\Subscription;
use Gate;
use Illuminate\Http\Request;
use Symfony\Component\HttpFoundation\Response;
class UsersController extends Controller
{
public function index()
{
abort_if(Gate::denies('user_access'), Response::HTTP_FORBIDDEN, '403 Forbidden');
$users = User::all();
return view('admin.users.index', compact('users'));
}
public function create()
{
abort_if(Gate::denies('user_create'), Response::HTTP_FORBIDDEN, '403 Forbidden');
$roles = Role::all()->pluck('title', 'id');
return view('admin.users.create', compact('roles'));
}
public function store(StoreUserRequest $request)
{
$data = $request->only(['name', 'email', 'password','roles']);
//$user = User::create($request->all());
$user = User::create($data);
// $date = $request->only(['date']);
if (!empty($request->date)) {
$brokenDate = explode(' - ', $request->date);
$startDate = $brokenDate[0];
$endDate = $brokenDate[1];
Subscription::create(['user_id'=>$user->id,'start_date'=>$startDate,'end_date'=>$endDate]);
}
$user->roles()->sync($request->input('roles', []));
return redirect()->route('admin.users.index');
}
public function edit(User $user)
{
abort_if(Gate::denies('user_edit'), Response::HTTP_FORBIDDEN, '403 Forbidden');
$roles = Role::all()->pluck('title', 'id');
$user->load('roles');
$sub_date = Subscription::where('user_id',$user->id)->first(['start_date','end_date']);
return view('admin.users.edit', compact('roles', 'user','sub_date'));
}
public function update(UpdateUserRequest $request, User $user)
{
$data = $request->only(['name', 'email', 'password','roles']);
if (!empty($request->date)) {
$brokenDate = explode(' - ', $request->date);
$startDate = $brokenDate[0];
$endDate = $brokenDate[1];
Subscription::where(['user_id'=>$user->id])->update(['start_date'=>$startDate,'end_date'=>$endDate]);
}
//$user->update($request->all());
$user->update($data);
$user->roles()->sync($request->input('roles', []));
return redirect()->route('admin.users.index');
}
public function show(User $user)
{
abort_if(Gate::denies('user_show'), Response::HTTP_FORBIDDEN, '403 Forbidden');
$user->load('roles');
$sub_date = Subscription::where('user_id',$user->id)->first(['start_date','end_date']);
return view('admin.users.show', compact('user','sub_date'));
}
public function destroy(User $user)
{
abort_if(Gate::denies('user_delete'), Response::HTTP_FORBIDDEN, '403 Forbidden');
$user->delete();
return back();
}
public function massDestroy(MassDestroyUserRequest $request)
{
User::whereIn('id', request('ids'))->delete();
return response(null, Response::HTTP_NO_CONTENT);
}
}