0% found this document useful (0 votes)
50 views26 pages

'Username', 'Email', 'Password','nama - Petugas','id - Level')

The document provides instructions to modify the authentication system in a Laravel application to use a username instead of an email for login. This involves changing the User model, LoginController, and login view to reference username instead of email. It also adds an admin middleware to restrict access to admin routes based on a user's level attribute.

Uploaded by

Mas Wahjoe
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
50 views26 pages

'Username', 'Email', 'Password','nama - Petugas','id - Level')

The document provides instructions to modify the authentication system in a Laravel application to use a username instead of an email for login. This involves changing the User model, LoginController, and login view to reference username instead of email. It also adds an admin middleware to restrict access to admin routes based on a user's level attribute.

Uploaded by

Mas Wahjoe
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 26

- Buka file app/user.

php

Rubahlah menjadi seperti berikut :

<?php

namespace App;

use Illuminate\Notifications\Notifiable;
use Illuminate\Foundation\Auth\User as Authenticatable;

class User extends Authenticatable


{
use Notifiable;

/**
* The attributes that are mass assignable.
*
* @var array
*/
protected $fillable = [
'username', 'email', 'password','nama_petugas','id_level'
];

/**
* The attributes that should be hidden for arrays.
*
* @var array
*/
protected $hidden = [
'password','remember_token',
];

public function level()


{
return $this->belongsTo('App\level','id_level');
}
}

- Buka file app/Http/Controller/Auth/LoginController.php


Tambahkan perintah menjadi seperti dibawah ini :

<?php
namespace App\Http\Controllers\Auth;

use App\Http\Controllers\Controller;
use Illuminate\Foundation\Auth\AuthenticatesUsers;

class LoginController extends Controller


{
/*
|--------------------------------------------------------------------------
| Login Controller
|--------------------------------------------------------------------------
|
| This controller handles authenticating users for the application and
| redirecting them to your home screen. The controller uses a trait
| to conveniently provide its functionality to your applications.
|
*/
use AuthenticatesUsers;

/**
* Where to redirect users after login.
*
* @var string
*/
protected $redirectTo = '/home';

/**
* Create a new controller instance.
*
* @return void
*/
public function __construct()
{
$this->middleware('guest')->except('logout');
}

public function username()


{
return 'username';
}
}
- Buka file resources/views/auth/login.blades.php
Ubah input email menjadi username , seperti berikut :

@extends('layouts.app')

@section('content')
<div class="container">
<div class="row">
<div class="col-md-8 col-md-offset-2">
<div class="panel panel-default">
<div class="panel-heading">Login</div>

<div class="panel-body">
<form class="form-horizontal" method="POST" action="{{ route('login') }}">
{{ csrf_field() }}

<div class="form-group{{ $errors->has('username') ? ' has-error' : '' }}">


<label for="username" class="col-md-4 control-label">Username</label>

<div class="col-md-6">
<input id="username" type="text" class="form-control"
name="username" value="{{ old('username') }}" required autofocus>

@if ($errors->has('username'))
<span class="help-block">
<strong>{{ $errors->first('username') }}</strong>
</span>
@endif
</div>
</div>

<div class="form-group{{ $errors->has('password') ? ' has-error' : '' }}">


<label for="password" class="col-md-4 control-label">Password</label>

<div class="col-md-6">
<input id="password" type="password" class="form-control" name="password"
required>

@if ($errors->has('password'))
<span class="help-block">
<strong>{{ $errors->first('password') }}</strong>
</span>
@endif
</div>
</div>

<div class="form-group">
<div class="col-md-6 col-md-offset-4">
<div class="checkbox">
<label>
<input type="checkbox" name="remember" {{ old('remember') ? 'checked'
: '' }}> Remember Me
</label>
</div>
</div>
</div>

<div class="form-group">
<div class="col-md-8 col-md-offset-4">
<button type="submit" class="btn btn-primary">
Login
</button>

<a class="btn btn-link" href="{{ route('password.request') }}">


Forgot Your Password?
</a>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
@endsection

- Jika sudah coba login menggunakan username, jika berhasil lanjut .

- Buka command promt


Ketikan perintah = php artisan make:middleware Admin

- Buka file app/Middleware/Admin.php


edit script menjadi

<?php

namespace App\Http\Middleware;

use Closure;

class Admin
{
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @return mixed
*/

public function handle($request, Closure $next)


{
if (auth()->user()->level->nama_level == 'Administrator') /* disesuaikan dengan level di
tabel level */
{
return $next($request);
}else{
return redirect()->guest('/login');
}
}
}

- Buka file app/Http/kernel.php


Edit menjadi seperti dibawah ini

<?php

namespace App\Http;

use Illuminate\Foundation\Http\Kernel as HttpKernel;

class Kernel extends HttpKernel


{
/**
* The application's global HTTP middleware stack.
*
* These middleware are run during every request to your application.
*
* @var array
*/
protected $middleware = [
\Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode::class,
\Illuminate\Foundation\Http\Middleware\ValidatePostSize::class,
\App\Http\Middleware\TrimStrings::class,
\Illuminate\Foundation\Http\Middleware\ConvertEmptyStringsToNull::class,
];

/**
* The application's route middleware groups.
*
* @var array
*/
protected $middlewareGroups = [
'web' => [
\App\Http\Middleware\EncryptCookies::class,
\Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
\Illuminate\Session\Middleware\StartSession::class,
// \Illuminate\Session\Middleware\AuthenticateSession::class,
\Illuminate\View\Middleware\ShareErrorsFromSession::class,
\App\Http\Middleware\VerifyCsrfToken::class,
\Illuminate\Routing\Middleware\SubstituteBindings::class,

],

'api' => [
'throttle:60,1',
'bindings',
],
];

/**
* The application's route middleware.
*
* These middleware may be assigned to groups or used individually.
*
* @var array
*/
protected $routeMiddleware = [
'auth' => \Illuminate\Auth\Middleware\Authenticate::class,
'auth.basic' => \Illuminate\Auth\Middleware\AuthenticateWithBasicAuth::class,
'bindings' => \Illuminate\Routing\Middleware\SubstituteBindings::class,
'can' => \Illuminate\Auth\Middleware\Authorize::class,
'guest' => \App\Http\Middleware\RedirectIfAuthenticated::class,
'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class,
'admin' => \App\Http\middleware\Admin::class,
];
}
- Buka file resources/layout/app.blade.php
Edit menjadi seperti :

<!DOCTYPE html>
<html lang="{{ app()->getLocale() }}">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">

<!-- CSRF Token -->


<meta name="csrf-token" content="{{ csrf_token() }}">

<title>{{ config('app.name', 'Aplikasi UKK') }}</title>

<!-- Styles -->


<link href="{{ asset('css/app.css') }}" rel="stylesheet">
</head>
<body>
<div id="app" >
<nav class="navbar navbar-default navbar-static-top ">
<div class="container ">
<div class="navbar-header ">

<!-- Collapsed Hamburger -->


<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-
target="#app-navbar-collapse">
<span class="sr-only">Toggle Navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>

<!-- Branding Image -->


<a class="navbar-brand" href="{{ url('/') }}">
{{ config('app.name', 'Laravel') }}
</a>
</div>

<div class="collapse navbar-collapse" id="app-navbar-collapse">


<!-- Left Side Of Navbar -->
<ul class="nav navbar-nav">
@if (Auth::guest())

@elseif(Auth::user()->level->nama_level =='Administrator') /* level


disesuaikandengan tabel level */
<li><a href="{{ url('user') }}">User</a></li>
@else

@endif
</ul>
<!-- Right Side Of Navbar -->
<ul class="nav navbar-nav navbar-right">
<!-- Authentication Links -->
@if (Auth::guest())
<li><a href="{{ route('login') }}">Login</a></li>
@else
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown"
role="button" aria-expanded="false">
{{ Auth::user()->username }} <span class="caret"></span>
</a>

<ul class="dropdown-menu" role="menu">


<li>
<a href="{{ route('logout') }}"
onclick="event.preventDefault();
document.getElementById('logout-form').submit();">
Logout
</a>

<form id="logout-form" action="{{ route('logout') }}"


method="POST" style="display: none;">
{{ csrf_field() }}
</form>
</li>
</ul>
</li>
@endif
</ul>
</div>
</div>
</nav>

@yield('content')
</div>
<div>
ini footer
</div>

<!-- Scripts -->


<script src="{{ asset('js/app.js') }}"></script>
</body>
</html>
- Buka file routes/web.php
Tambahkan script menjadi :

Route::get('/', function () {
return view('welcome');
});

Route::get('tes',function(){
return view('tes');
});
Auth::routes();

Route::get('/home', 'HomeController@index')->name('home');

Route::middleware(['auth','admin'])->group(function(){
Route::get('/user', 'userController@index')->name('user');
});

- Coba login lagi menggunakan user admin dan operator , lihat bedanya
- Ketikan perintah di command prompt
php artisan make:controller UserController --resource

- Buka file app/Http/Controller/UserController.php


Edit file menjadi seperti :

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use Illuminate\Foundation\Auth\AuthenticatesAndRegistersUsers;
use Illuminate\Database\Eloquent\ModelNotFoundException;
use Illuminate\Database\Eloquent\Collection;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Contracts\Auth\Guard;
use Illuminate\Support\Facades;
use Validator;
use Input;
use App\User;
use App\level;

class Usercontroller extends Controller


{
/**
* Display a listing of the resource.
*
* @return \Illuminate\Http\Response
*/
public function index()
{
$user = user::all();
return view('user.index')->withusers($user);
}

/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
*/
public function create()
{
//
}

/**
* Store a newly created resource in storage.
*
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
*/
public function store(Request $request)
{
//
}

/**
* Display the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function show($id)
{
//
}

/**
* Show the form for editing the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function edit($id)
{
//
}

/**
* Update the specified resource in storage.
*
* @param \Illuminate\Http\Request $request
* @param int $id
* @return \Illuminate\Http\Response
*/
public function update(Request $request, $id)
{
//
}

/**
* Remove the specified resource from storage.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function destroy($id)
{
//
}
}

- Buat folder user di dalam folder resources/views


Sehingga strukturnya resources/views/user
- Buat file index.blade.php di folder resources/views/user
Tulisakan script berikut :

@extends('layouts.app')

@section('content')
<div class="container">
<div class="box box-warning color-palette-box">
<div class="box-header with-border">
<h3 class="box-title"><i class="fa fa-user"></i> User</h3>
</div>
<div class="box-body">
@if (session('status'))
<div class="alert alert-success">
<a href="#" class="close" data-dismiss="alert" aria-
label="close">&times;</a>
{{ session('status') }}
</div>
@endif

@if (count($errors) > 0)


<div class="alert alert-danger">
<a href="#" class="close" data-dismiss="alert" aria-
label="close">&times;</a>
<div class="form-group">
<strong>Aduh!</strong> terjadi kesalahan<br /><br />
<ul>
@foreach ($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div>
</div>
@endif

<a href="{{ URL::to('user/create') }}" class="btn btn-info margin"><i class='fa fa-


plus'></i> Tambah Pengawai </a>
<br/><br/>
<table id="user_table" class="table table-striped table-hover table-condensed">
<thead>
<tr class="bg-success">
<th>No</th>
<th>Username</th>
<th>Email</th>
<th>Nama Petugas</th>
<th>Level</th>
<th class="text-center" width="70">Aksi</th>
</tr>
</thead>
<tbody>
@foreach ($users as $user)
<tr>
<td>{{$loop->iteration}}</td>
<td>{{$user->username}}</td>
<td>{{$user->email}}</td>
<td>{{$user->nama_petugas}}</td>
<td>{{$user->level->nama_level}}</td>
<td><a href="" class="btn btn-small btn-info "><i class='glyphicon
glyphicon-pencil'></i></a></td>
</tr>
@endforeach

</tbody>
</table>
</div>
</div>
@endsection

- Jika sudah coba login menggunakan akun admin dan operator


- Buka kembali file Routes/web.php
Tambah route menjadi :

Route::middleware(['auth','admin'])->group(function(){
Route::get('user', 'userController@index')->name('user.index');
Route::get('user/create','userController@create')->name('user.create');
Route::post('user/store','userController@store')->name('user.store');
Route::get('user/edit/{id}', [
'as' => '{id}',
'uses' => 'userController@edit'])->name('user.edit');

Route::put('user/update/{id}', [
'as' => '{id}',
'uses' => 'userController@update'])->name('user.update');

Route::delete('user/hapus/{id}', [
'as' => '{id}',
'uses' => 'userController@destroy'])->name('user.hapus');

Route::get('password/{id}', [
'as' => '{id}',
'uses' => 'userController@password'])->name('password');

Route::put('password/{id}', [
'as' => '{id}',
'uses' => 'userController@passwordsave'])->name('password.save');
});

- Buka kembali file user/index.blade.php


Edit menjai seperti di bawah ini

@extends('layouts.app')

@section('content')
<div class="container">
<div class="panel panel-warning ">
<div class="panel-heading with-border">
<h3 class="panel-title"><i class="fa fa-user"></i> User</h3>
</div>
<div class="panel-body">

@if (session('status'))
<div class="alert alert-success">
<a href="#" class="close" data-dismiss="alert" aria-label="close">
&times;</a>
{{ session('status') }}
</div>
@endif

@if (count($errors) > 0)


<div class="alert alert-danger">
<a href="#" class="close" data-dismiss="alert" aria-label="close">
&times;</a>
div class="form-group">
<strong>Aduh!</strong> terjadi kesalahan<br /><br />
<ul>
@foreach ($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div>
</div>
@endif

<a href="{{ URL::to('user/create') }}" class="btn btn-info margin"><i class='fa


fa-plus'></i> Tambah Pengawai </a>
<br/><br/>
<table id="user_table" class="table table-striped table-hover table-condensed">
<thead>
<tr class="bg-success">
<th>No</th>
<th>Username</th>
<th>Email</th>
<th>Nama Petugas</th>
<th>Level</th>
<th class="text-center" width="300">Aksi</th>
</tr>
</thead>
<tbody>
@foreach ($users as $user)
<tr>
<td>{{$loop->iteration}}</td>
<td>{{$user->username}}</td>
<td>{{$user->email}}</td>
<td>{{$user->nama_petugas}}</td>
<td>{{$user->level->nama_level}}</td>

<td><a href="{{ url('user/edit/'.$user->id) }}" class="btn btn-small btn-info


"><i class='glyphicon glyphicon-pencil'></i>Edit</a>
<a href="{{ url('password/'.$user->id) }}" class="btn btn-small btn-
success "><i class='glyphicon glyphicon-key'>Reset Password</i></a>
<form action="{{url('user/hapus/'.$user->id)}}" method="post">
{{ csrf_field() }}
<input type="hidden" name="_method" value="DELETE" >
<input type="submit" value="Hapus " class="btn btn-small btn-danger" >
</form>
</td>
</tr>

@endforeach
</tbody>
</table>
</div>
</div>
</div>
</div>
@endsection

- Buka kembali file app/Http/Controller/UserController.php


Ubah menjadi :

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use Illuminate\Foundation\Auth\AuthenticatesAndRegistersUsers;
use Illuminate\Database\Eloquent\ModelNotFoundException;
use Illuminate\Database\Eloquent\Collection;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Contracts\Auth\Guard;
use Illuminate\Support\Facades;
use Validator;
use Input;
use App\User;
use App\level;

class Usercontroller extends Controller


{
/**
* Display a listing of the resource.
*
* @return \Illuminate\Http\Response
*/
public function validator(array $data)
{
return Validator::make($data, [
'username' => 'required|string|max:255|unique:users',
'email' => 'required|string|email|max:255|unique:users',
'password' => 'required|string|min:6',
'nama_petugas' => 'required|string|max:255',
'level' => 'required',
]);
}
public function index()
{
$user = user::all();
return view('user.index')->withusers($user);
}

/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
*/
public function create()
{
$level = level::all();
return view('user.create')->withlevel($level);
}

/**
* Store a newly created resource in storage.
*
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
*/
public function store(Request $request)
{
$validator = $this->validator($request->all());

if ($validator->fails()) {
$this->throwValidationException(
$request, $validator
);
}
else
{

$user = new User;


$user->username = $request->input('username');
$user->email = $request->input('email');
$user->password = bcrypt($request->input('password'));
$user->nama_petugas = $request->input('nama_petugas');
$user->id_level = $request->input('level');

// SAVE THE USER


try{
$user->save();
}
catch (ModelNotFoundException $e) {
return redirect('user')->withErrors('Ada kesalahan pada input data');
}

// THE SUCCESSFUL RETURN


return redirect('user')->with('status', 'Pengguna baru berhasil ditambahkan!');

}
}

/**
* Display the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function show($id)
{
//
}

/**
* Show the form for editing the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/

public function edit($id)


{
$users = User::find($id);
$level = level::all();
return view('user.edit')->withusers($users)->withlevel($level);
}

/**
* Update the specified resource in storage.
*
* @param \Illuminate\Http\Request $request
* @param int $id
* @return \Illuminate\Http\Response
*/
public function validatoredit(array $data)
{
return Validator::make($data, [
'username' => 'required|string|max:255',
'email' => 'required|string|email|max:255',
'nama_petugas' => 'required|string|max:255',
'level' => 'required',
]);
}
public function update(Request $request, $id)
{
$rules = array(
'username' => 'required',
'email' => 'required',
'nama_petugas' => 'required',
'level' => 'required',

);

$validatoredit = $this->validatoredit($request->all(), $rules);

if ($validatoredit->fails()) {
$this->throwValidationException(
$request, $validatoredit
);

} else {
$user = user::find($id);

if($user->username != $request->input('email')){
$user->email = $request->input('email');
}

$user->nama_petugas = $request->input('nama_petugas');
$user->id_level = $request->input('level');

try{
$user->save();
}
catch(\Exception $e){
return back()->withErrors('Data pengguna gagal diperbarui');
}

return redirect('user')->with('status', 'Data pengguna berhasil dipebarui!');

}
}

/**
* Remove the specified resource from storage.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function destroy($id)
{
$user= User::find($id);
try{
$user->delete();
}
catch(\Exception $e){
return back()->withErrors('Data pengguna gagal dihapus');
}

return redirect('user')->with('status', 'Data pengguna berhasil dihapus!');


}

public function password($id)


{
$user= User::find($id);
return view('user.password')->withuser($user);
}

public function passwordsave(Request $request, $id)


{
// custom validator
Validator::extend('password', function ($attribute, $value, $parameters, $validator) {
return Hash::check($value, \Auth::user()->password);
});

// validate form
$validator = Validator::make(request()->all(), [

'password' => 'required|min:6|confirmed',


'password_confirmation' => 'required',

]);

// if validation fails
if ($validator->fails()) {
return redirect()
->back()
->withErrors($validator->errors());
}

// update password
$user = User::find($id);

$user->password = bcrypt(request('password'));
try{
$user->save();
}
catch(\Exception $e){
return back()->withErrors('Password pengguna gagal direset');
}
return redirect('user')->with('status', 'Password pengguna berhasil direset!');
}

- Buat file create.blade.php di folder resources/views


Masukan script berikut :

@extends('layouts.app')

@section('content')
<div class="container">
<div class="panel panel-success ">
<div class="panel-heading with-border ">
<h3 class="panel-title"><i class="fa fa-user-plus"></i>Tambah Pengguna
Aplikasi</h3>
</div>
<div class="panel-body">
<br/><br/>
<form class="form-horizontal" method="POST" action="{{ url('user/store') }}">

{{ csrf_field() }}
<div class="form-group{{ $errors->has('username') ? ' has-error' : '' }}">
<label for="username" class="col-md-4 control-label">Username</label>

<div class="col-md-6">
<div class="input-group">
<input id="username" type="text" class="form-control" name="username"
value="{{ old('username') }}" placeholder="Masukkan username" required>
<span class="input-group-addon"><i class="fa fa-envelope"></i></span>
</div>
@if ($errors->has('username'))
<span class="help-block">
<strong>{{ $errors->first('username') }}</strong>
</span>
@endif
</div>
</div>

<div class="form-group{{ $errors->has('email') ? ' has-error' : '' }}">


<label for="email" class="col-md-4 control-label">E-Mail </label>

<div class="col-md-6">
<div class="input-group">
<input id="email" type="email" class="form-control" name="email"
value="{{ old('email') }}" placeholder="Masukkan email" required>
<span class="input-group-addon"><i class="fa fa-envelope"></i></span>
</div>
@if ($errors->has('email'))
<span class="help-block">
<strong>{{ $errors->first('email') }}</strong>
</span>
@endif
</div>
</div>

<div class="form-group{{ $errors->has('password') ? ' has-error' : '' }}">


<label for="password" class="col-md-4 control-label">Password</label>

<div class="col-md-6">
<div class="input-group">
<input id="password" type="password" class="form-control"
name="password" placeholder="Masukkan password"required>
<span class="input-group-addon"><i class="fa fa-lock"></i></span>
</div>
@if ($errors->has('password'))
<span class="help-block">
<strong>{{ $errors->first('password') }}</strong>
</span>
@endif
</div>
</div>

<div class="form-group{{ $errors->has('nama_petugas') ? ' has-error' : '' }}">


<label for="nama_petugas" class="col-md-4 control-label">Nama
Petugas</label>

<div class="col-md-6">
<div class="input-group">
<input id="nama_petugas" type="text" class="form-control"
name="nama_petugas" placeholder="Masukkan nama petugas " value="{{
old('nama_petugas')}}"required>
<span class="input-group-addon"><i class="fa fa-user"></i></span>
</div>
@if ($errors->has('nama_petugas'))
<span class="help-block">
<strong>{{ $errors->first('nama_petugas') }}</strong>
</span>
@endif
</div>
</div>

<div class="form-group{{ $errors->has('level') ? ' has-error' : '' }}">


<label for="level" class="col-md-4 control-label">Level Petugas</label>

<div class="col-md-6">
<div class="input-group">
<select id="level" name="level" class="form-control">
<option value="">--- Pilih level ---</option>
@foreach ($level as $value)
<option value="{{ $value->id }}" {{ old('level') == $value->id ? 'selected'
: ''}}>{{ $value->nama_level }}</option>
@endforeach
</select>
<span class="input-group-addon"><i class="fa fa-level"></i></span>
</div>
@if ($errors->has('level'))
<span class="help-block">
<strong>{{ $errors->first('level') }}</strong>
</span>
@endif
</div>
</div>

<div class="form-group">
<div class="col-md-6 col-md-offset-4">
<button type="submit" class="btn btn-primary">
Register
</button>

</div>
<br/>
</div>
</div>
</form>
</div>
</div>

@endsection

- Buat file edit.blade.php di folder resorce/views


Masukkan script berikut :

@extends('layouts.app')

@section('content')
<div class="container">
<div class="panel panel-success ">
<div class="panel-heading with-border ">
<h3 class="panel-title"><i class="fa fa-user-plus"></i>Edit Pengguna Aplikasi</h3>
</div>
<div class="panel-body">
@if (session('status'))
<div class="alert alert-success">
<a href="#" class="close" data-dismiss="alert" aria-
label="close">&times;</a>
{{ session('status') }}
</div>
@endif

@if (count($errors) > 0)


<div class="alert alert-danger">
<a href="#" class="close" data-dismiss="alert" aria-
label="close">&times;</a>
<div class="form-group">
<strong>Aduh!</strong> terjadi kesalahan<br /><br />
<ul>
@foreach ($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div>
</div>
@endif
<br/><br/>
<form class="form-horizontal" method="post" action="{{ url('user/update/'.$users-
>id) }}">

<input type="hidden" name="_method" value="PUT">


{{ csrf_field() }}
<div class="form-group{{ $errors->has('username') ? ' has-error' : '' }}">
<label for="username" class="col-md-4 control-label">Username</label>

<div class="col-md-6">
<div class="input-group">
<input id="username" type="text" class="form-control" name="username"
value="{{ $users->username }}" placeholder="Masukkan username" required>
<span class="input-group-addon"><i class="fa fa-envelope"></i></span>
</div>
@if ($errors->has('username'))
<span class="help-block">
<strong>{{ $errors->first('username') }}</strong>
</span>
@endif
</div>
</div>

<div class="form-group{{ $errors->has('email') ? ' has-error' : '' }}">


<label for="email" class="col-md-4 control-label">E-Mail </label>

<div class="col-md-6">
<div class="input-group">
<input id="email" type="email" class="form-control" name="email"
value="{{ $users->email }}" placeholder="Masukkan email" required>
<span class="input-group-addon"><i class="fa fa-envelope"></i></span>
</div>
@if ($errors->has('email'))
<span class="help-block">
<strong>{{ $errors->first('email') }}</strong>
</span>
@endif
</div>
</div>

<div class="form-group{{ $errors->has('nama_petugas') ? ' has-error' : '' }}">


<label for="nama_petugas" class="col-md-4 control-label">Nama
Petugas</label>

<div class="col-md-6">
<div class="input-group">
<input id="nama_petugas" type="text" class="form-control"
name="nama_petugas" placeholder="Masukkan nama petugas " value="{{ $users-
>nama_petugas }}"required>
<span class="input-group-addon"><i class="fa fa-user"></i></span>
</div>
@if ($errors->has('nama_petugas'))
<span class="help-block">
<strong>{{ $errors->first('nama_petugas') }}</strong>
</span>
@endif
</div>
</div>

<div class="form-group{{ $errors->has('level') ? ' has-error' : '' }}">


<label for="level" class="col-md-4 control-label">Level Petugas</label>

<div class="col-md-6">
<div class="input-group">
<select id="level" name="level" class="form-control">
<option value="{{$users->id_level}}">{{$users->level-
>nama_level}}</option>
@foreach ($level as $value)
<option value="{{ $value->id }}" {{ old('level') == $value->id ? 'selected'
: ''}}>{{ $value->nama_level }}</option>
@endforeach
</select>
<span class="input-group-addon"><i class="fa fa-level"></i></span>
</div>
@if ($errors->has('level'))
<span class="help-block">
<strong>{{ $errors->first('level') }}</strong>
</span>
@endif
</div>
</div>

<div class="form-group">
<div class="col-md-6 col-md-offset-4">
<button type="submit" class="btn btn-primary">
Ubah Data
</button>

</div>
<br/>
</div>
</div>
</form>
</div>
</div>

@endsection

- Buat file password.blade.php di folder resources/views


Masukkan script berikut :

@extends('layouts.app')

@section('content')
<div class="container">
<div class="panel panel-info ">
<div class="panel-heading with-border ">
<h3 class="panel-title"><i class="fa fa-lock"></i> Reset Password {{$user-
>username}}</h3>
</button>
</div>
<div class="panel-body">

<form class="form-horizontal" role="form" method="POST" action="{{


url('password/'.$user->id) }}">
{{ csrf_field() }}
{{ method_field('put') }}

<div class="form-group{{ $errors->has('password') ? ' has-error' : '' }}">


<label for="password" class="col-md-4 control-label">Password</label>

<div class="col-md-6">
<input id="password" type="password" class="form-control"
name="password" required>

@if ($errors->has('password'))
<span class="help-block">
<strong>{{ $errors->first('password') }}</strong>
</span>
@endif
</div>
</div>

<div class="form-group">
<label for="password-confirm" class="col-md-4 control-label">Confirm
Password</label>

<div class="col-md-6">
<input id="password-confirm" type="password" class="form-control"
name="password_confirmation" required>
</div>
</div>
<div class="form-group">
<div class="col-md-6 col-md-offset-4">
<button type="submit" class="btn btn-primary">
Reset Password
</button>
</div>
</div>
</form>
</div>
</div>

@endsection

- Jalankan aplikasi dan semua fungsi yang sudah ada

You might also like