Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- namespace Modules\Core\Http\Controllers;
- use Illuminate\Http\Request;
- use Illuminate\Http\Response;
- use Illuminate\Routing\Controller;
- use App\Models\User;
- use App\Models\Role;
- use App\Models\Position;
- use App\Services\ImageUploader;
- use Modules\Core\Http\Requests\UserRequest;
- use Modules\Core\Http\Requests\UserCreateRequest;
- class UsersController extends Controller
- {
- protected $uploader;
- public function __construct(ImageUploader $uploader)
- {
- $this->uploader = $uploader;
- }
- /**
- * Display a listing of the resource.
- * @return Response
- */
- public function index(UserRequest $request)
- {
- $users = User::paginate();
- $positions = Position::all();
- $roles = Role::all();
- return view('core::users.index', compact('users', 'positions', 'roles'));
- }
- /**
- * Show the form for creating a new resource.
- * @return Response
- */
- public function create(UserRequest $request)
- {
- $positions = Position::all();
- $roles = Role::all();
- return view('core::users.create', compact('positions', 'roles'));
- }
- /**
- * Store a newly created resource in storage.
- * @param Request $request
- * @return Response
- */
- public function store(Request $request, User $user)
- {
- $user = new User;
- $path = $this->uploader->upload($request->file('avatar'));
- $user->fill($request->all());
- $user->password = bcrypt($request->password);
- $user->avatar = $path;
- $user->save();
- flash()->success('User Saved');
- return back();
- }
- /**
- * Show the specified resource.
- * @return Response
- */
- public function show(UserRequest $request, User $user)
- {
- return view('core::users.show', compact('user'));
- }
- /**
- * Show the form for editing the specified resource.
- * @return Response
- */
- public function edit(UserRequest $request, User $user)
- {
- $positions = Position::all();
- $roles = Role::all();
- return view('core::users.edit', compact('user', 'positions', 'roles'));
- }
- /**
- * Update the specified resource in storage.
- * @param Request $request
- * @return Response
- */
- public function update(UserRequest $request, User $user)
- {
- $user->fill($request->all());
- if ($request->file('avatar')) {
- $path = $this->uploader->upload($request->file('avatar'));
- $user->avatar = $path;
- }
- $user->save();
- flash()->success('User Updated');
- return redirect(route('users.index'));
- }
- /**
- * Remove the specified resource from storage.
- * @return Response
- */
- public function destroy(UserRequest $request, User $user)
- {
- $user->delete();
- flash()->success('User deleted');
- return back();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement