modifié : SRC/app/Http/Controllers/LoginController.php

modifié :         SRC/app/Http/routes.php
	modifié :         SRC/config/auth.php
	modifié :         SRC/resources/views/auth/reset.blade.php
	modifié :         SRC/resources/views/emails/password.blade.php
This commit is contained in:
sidya82 2015-02-18 23:23:12 +01:00
parent d8604edfb0
commit 919a470528
5 changed files with 47 additions and 18 deletions

View File

@ -3,8 +3,9 @@ use Auth;
use Input;
use Validator;
use Password;
use DB;
use View;
use Redirect;
use Hash;
class LoginController extends Controller {
/**
@ -68,7 +69,7 @@ class LoginController extends Controller {
public function initPassword()
{
switch ($response = Password::sendResetLink(Input::only('email')))
switch ($response = Password:: sendResetLink(Input::only('email')))
{
case Password::INVALID_USER:
return redirect('forgotten')->withErrors("Mail Invalide !")->withInput();
@ -77,4 +78,30 @@ class LoginController extends Controller {
}
}
public function reset($token)
{
return View::make('auth.reset')->with('token', $token);
}
public function update($token)
{
$credentials = array('token' => Input::get('token'), 'password' => Input::get('password'), 'password_confirmation' => Input::get('password_confirmation'));
$response = Password::reset($credentials, function($user, $password)
{
$user->password = Hash::make($password);
$user->save();
});
switch ($response)
{
case Password::INVALID_PASSWORD:
return Redirect::back()->withErrors("Mot de passe non valide")->withInput();
case Password::INVALID_TOKEN:
return Redirect::back()->withErrors("Clé invalide")->withInput();
case Password::INVALID_USER:
return Redirect::back()->withErrors("Utilsateur invalide")->withInput();
case Password::PASSWORD_RESET:
return Redirect::to('/login');
}
}

View File

@ -14,6 +14,14 @@
Route::get('/', 'GameController@index');
Route::get('referents/{id}/games', 'GameController@showReferentGames')->where('id', '^((?!login|referent|admin).)*$');
Route::get('referents/{id}/games/{idGame}', 'GameController@showOneReferentGame');
Route::get('password/reset/{token}', array(
'uses' => 'LoginController@reset',
'as' => 'password.reset'
));
Route::post('password/reset/{token}', array(
'uses' => 'LoginController@update',
'as' => 'password.update'
));
Route::group(['middleware' => 'guest'], function ()
{

View File

@ -61,7 +61,7 @@ return [
'password' => [
'email' => 'emails.password',
'table' => 'password_resets',
'expire' => 60,
'expire' => 1440,
],
];

View File

@ -1,15 +1,15 @@
@extends('app')
@section('content')
<div class="container-fluid">
<div style="margin-top: 70px" class="container-fluid">
<div class="row">
<div class="col-md-8 col-md-offset-2">
<div class="panel panel-default">
<div class="panel-heading">Reset Password</div>
<div class="panel-heading">Réinitialiser Mot de Passe</div>
<div class="panel-body">
@if (count($errors) > 0)
<div class="alert alert-danger">
<strong>Whoops!</strong> There were some problems with your input.<br><br>
<strong>Oouups!</strong> Il y a un problème.<br><br>
<ul>
@foreach ($errors->all() as $error)
<li>{{ $error }}</li>
@ -18,26 +18,20 @@
</div>
@endif
<form class="form-horizontal" role="form" method="POST" action="/password/reset">
<form class="form-horizontal" role="form" method="POST" action="/password/reset/{{ $token }}">
<input type="hidden" name="_token" value="{{ csrf_token() }}">
<input type="hidden" name="token" value="{{ $token }}">
<div class="form-group">
<label class="col-md-4 control-label">E-Mail Address</label>
<div class="col-md-6">
<input type="email" class="form-control" name="email" value="{{ old('email') }}">
</div>
</div>
<div class="form-group">
<label class="col-md-4 control-label">Password</label>
<label class="col-md-4 control-label">Mot de passe</label>
<div class="col-md-6">
<input type="password" class="form-control" name="password">
</div>
</div>
<div class="form-group">
<label class="col-md-4 control-label">Confirm Password</label>
<label class="col-md-4 control-label">Confirmer mot de passe</label>
<div class="col-md-6">
<input type="password" class="form-control" name="password_confirmation">
</div>
@ -46,7 +40,7 @@
<div class="form-group">
<div class="col-md-6 col-md-offset-4">
<button type="submit" class="btn btn-primary">
Reset Password
Réinitialiser Password
</button>
</div>
</div>

View File

@ -1 +1 @@
Click here to reset your password: {{ url('password/reset/'.$token) }}
Cliquer ici pour réinitialiser votre mot de passe : {{ url('password/reset/'.$token) }}