Merge branch 'authentication' into dev

This commit is contained in:
Michal Kváček
2016-01-22 14:05:55 +01:00
4 changed files with 91 additions and 17 deletions
+43 -5
View File
@@ -4,8 +4,10 @@ namespace App\Http\Controllers\Admin;
use App\Http\Controllers\Controller;
use App\Http\Requests;
use Illuminate\Http\Request;
use App\Http\Requests\LoginRequest;
use App\Models\User;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Hash;
/**
* Class Login
@@ -16,6 +18,13 @@ use Illuminate\Support\Facades\Auth;
*/
class Login extends Controller
{
/**
* Display login form
*
* This method displays login form, or in case that user is logged in, redirects him to admin dashboard panel.
*
* @return \Illuminate\Contracts\View\Factory|\Illuminate\Http\RedirectResponse|\Illuminate\View\View
*/
public function getLoginForm()
{
if (Auth::check()) {
@@ -26,16 +35,45 @@ class Login extends Controller
}
/**
* @param Request $request
* Login handler
*
* @param LoginRequest $request
*
* @return \Illuminate\Http\RedirectResponse
*/
public function postLogin(Request $request)
public function postLogin(LoginRequest $request)
{
if (Auth::attempt($request->only('email', 'password'))) {
$email = $request->email;
// try to find user
$user = User::where('email', $email)
->where('role', '!=', User::ROLE_VISITOR)
->where('status', User::STATE_ACTIVE)
->first();
if (!$user) {
return $this->loginFailed();
}
// try to log in user
if (Hash::check($request->password, $user->password)) {
Auth::login($user);
return redirect()->route('admin.dashboard');
}
echo "neplatne prihlaseni";
// if (Auth::attempt($request->only('email', 'password'))) {
// return redirect()->route('admin.dashboard');
// }
// login invalid, redirect and inform the user
return $this->loginFailed();
}
private function loginFailed()
{
return redirect()
->route('login')
->with('error', trans('auth.failed'));
}
}