Skip to content

Commit

Permalink
section user finished, need design
Browse files Browse the repository at this point in the history
  • Loading branch information
pilpod committed Jan 24, 2021
1 parent a2f571b commit 6f1fb99
Show file tree
Hide file tree
Showing 7 changed files with 82 additions and 6 deletions.
18 changes: 18 additions & 0 deletions app/Http/Controllers/AdminController.php
Original file line number Diff line number Diff line change
Expand Up @@ -25,4 +25,22 @@ public function edit($id)
return view('edit-user', ['user' => $user]);
}

public function show($id)
{
$user = User::find($id);
return view('show-user', ['user' => $user]);
}

public function update(Request $request, $id)
{
$user = User::find($id);

$user->name = $request->name;
$user->isAdmin = $request->isAdmin;

$user->save();

return view('show-user', ['user' => $user]);
}

}
10 changes: 9 additions & 1 deletion app/Http/Controllers/UserController.php
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,17 @@

namespace App\Http\Controllers;

use App\Models\User;
use Illuminate\Http\Request;

class UserController extends Controller
{

public function index()
{
$user = User::find(auth()->id);
$works = $user->WorkExperiences()->get();

return view('home', ['works' => $works]);

}
}
2 changes: 1 addition & 1 deletion resources/views/admin-dashboard.blade.php
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@
@foreach ($users as $user)
@if($user->isAdmin == false)
<li>
<span>{{ $user->name }}</span>
<a href="{{ route('admin.show', $user->id) }}">{{ $user->name }}</a>
<a href="{{ route('admin.edit', $user->id) }} " class="btn btn-primary" type="submit">Edit</a>
</li>
@endif
Expand Down
12 changes: 11 additions & 1 deletion resources/views/edit-user.blade.php
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,17 @@

<div>
<ul>
<li>{{ $user->name }}</li>

<form action="{{ route('admin.update', $user->id) }}" method="POST">
@csrf
@method('put')
<input type="text" name="name" value="{{ $user->name }}">
<select name="isAdmin" id="isAdmin">
<option value="0">Simple User</option>
<option value="1">Administrador</option>
</select>
<button class="btn btn-primary" type="submit">Update</button>
</form>
</ul>
</div>
</div>
Expand Down
32 changes: 32 additions & 0 deletions resources/views/show-user.blade.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
@extends('layouts.app')

@section('content')
<div class="container">
<div class="row justify-content-center">
<div class="col-md-8">
<div class="card">
<div class="card-header">{{ __('Dashboard') }}</div>

<div class="card-body">
@if (session('status'))
<div class="alert alert-success" role="alert">
{{ session('status') }}
</div>
@endif

{{ __('You are logged in admin dashboard!') }}
</div>
</div>

<div>
<ul>
<li>
<span>{{ $user->name }}</span>
<a href="{{ route('admin.edit', $user->id) }} " class="btn btn-primary" type="submit">Edit</a>
</li>
</ul>
</div>
</div>
</div>
</div>
@endsection
2 changes: 2 additions & 0 deletions routes/web.php
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
<?php

use App\Http\Controllers\AdminController;
use App\Http\Controllers\UserController;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Route;

Expand All @@ -22,4 +23,5 @@
Auth::routes();
Route::get('/home', [App\Http\Controllers\HomeController::class, 'index'])->name('home');

Route::resource('user', UserController::class)->middleware('auth');
Route::resource('admin', AdminController::class)->middleware('admin');
12 changes: 9 additions & 3 deletions tests/Feature/AdminTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -52,10 +52,16 @@ public function test_admin_can_go_view_form_to_edit_user()
}

/** @test */
public function test_admin_can_edit_user_profile()
public function test_admin_can_update_user_profile()
{
// assertions
$userAdmin = User::factory()->create(['isAdmin' => true]);
$user = User::factory()->create(['isAdmin' => false]);
$user->name = 'helena';

$this->actingAs($userAdmin)
->put(route('admin.update', $user->id), $user->toArray());

$this->assertDatabaseHas('users', ['id' => $user->id, 'name' => 'helena']);
}


}

0 comments on commit 6f1fb99

Please sign in to comment.