tippspiel/pfosten/app/Http/Controllers/RegistrationController.php

63 lines
1.7 KiB
PHP
Raw Normal View History

2017-06-20 08:43:36 +02:00
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\User;
2017-06-26 17:21:30 +02:00
use Log;
2017-06-20 08:43:36 +02:00
class RegistrationController extends Controller
{
public function create() {
return view('registration.create');
}
2017-06-27 08:57:56 +02:00
public function store()
{
2017-06-20 08:43:36 +02:00
// Validate form
$this->validate(request(), [
'firstname' => 'required',
'lastname' => 'required',
2017-06-20 08:43:36 +02:00
'email' => 'required|email',
'password' => 'required|confirmed'
]);
$name =request('firstname')." ".request('lastname');
2017-06-27 08:57:56 +02:00
if (User::where('name', '=', $name)->first() != null) {
\Session::flash('message', 'Name existiert bereits');
2017-06-27 08:57:56 +02:00
return redirect("/register");
}
if (User::where('email', '=', request('email'))->first() != null) {
\Session::flash('message', 'Email-Adresse wird bereits von einem anderen Spieler verwendet');
return redirect("/register");
}
2017-06-20 08:43:36 +02:00
// Create and save the user
//$user = User::create(request(['name','email','password']));
$user = User::create([
'name' => $name,
'firstname' => request('firstname'),
'lastname' => request('lastname'),
2017-06-20 08:43:36 +02:00
'email'=> request('email'),
'password' => bcrypt(request('password'))]);
// Sign them in
2017-06-26 17:21:30 +02:00
// First user is made admin automatically
Log::info("User count:" . User::all()->count());
if (User::all()->count()==1) {
$user->admin = true;
}
$user->save();
2017-06-20 08:43:36 +02:00
auth()->login($user);
// Redirect to the home page
return redirect()->home();
}
}