2017-06-20 08:43:36 +02:00
|
|
|
<?php
|
|
|
|
|
|
|
|
|
|
namespace App\Http\Controllers;
|
|
|
|
|
|
|
|
|
|
use Illuminate\Http\Request;
|
|
|
|
|
|
|
|
|
|
use App\User;
|
2017-11-21 10:03:17 +01:00
|
|
|
use App\Season;
|
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() {
|
|
|
|
|
|
2017-11-21 10:03:17 +01:00
|
|
|
$season=Season::getCurrent();
|
|
|
|
|
if ($season) {
|
|
|
|
|
if ( Season::hasStandardLeague() || Season::hasQualifications() ) {
|
|
|
|
|
// Redirect to the home page
|
|
|
|
|
return redirect()->home();
|
|
|
|
|
}
|
|
|
|
|
}
|
2017-06-20 08:43:36 +02:00
|
|
|
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(), [
|
2017-08-01 14:33:22 +02:00
|
|
|
'firstname' => 'required',
|
|
|
|
|
'lastname' => 'required',
|
2017-06-20 08:43:36 +02:00
|
|
|
'email' => 'required|email',
|
|
|
|
|
'password' => 'required|confirmed'
|
|
|
|
|
]);
|
|
|
|
|
|
2017-08-01 14:33:22 +02:00
|
|
|
$name =request('firstname')." ".request('lastname');
|
2017-06-27 08:57:56 +02:00
|
|
|
|
2017-08-01 14:33:22 +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([
|
2017-08-01 14:33:22 +02:00
|
|
|
'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);
|
2017-09-08 16:22:40 +02:00
|
|
|
\App\Tipp::createAllTips();
|
2017-06-20 08:43:36 +02:00
|
|
|
|
|
|
|
|
// Redirect to the home page
|
|
|
|
|
return redirect()->home();
|
|
|
|
|
}
|
|
|
|
|
}
|