<?php namespace App\Http\Controllers; use Illuminate\Support\Facades\Input; //use Illuminate\Support\Facades\Flash; use InvalidConfirmationCodeException; use Flash; //use Mail; use App\User; use Illuminate\Http\Request; use Illuminate\Support\Facades\Auth; use Illuminate\Support\Facades\Mail; class UserController extends Controller { public function getmyplace() { return view('myplace'); } public function getverify() { return view('verify'); } public function postSignUp(Request $request) { $this->validate($request,[ 'firstname' => 'required', 'lastname' => 'required', 'rollno' => 'required|digits:10|unique:users', 'username'=> 'required|unique:users|min:5' , 'email' => 'required|email|unique:users' , 'password' => 'required|min:8', 'gender' => 'required', 'birthday' => 'required' , 'tnc' => 'required' ]); $firstname=$request['firstname']; $lastname=$request['lastname']; $rollno=$request['rollno']; $email=$request['email']; $username=$request['username']; $password=bcrypt($request['password']); $gender=$request['gender']; $birthday=$request['birthday']; $tnc=$request['tnc']; $confirmation_code = str_random(30); $user=new User(); $user->firstname=$firstname; $user->lastname=$lastname; $user->email=$email; $user->username=$username; $user->password=$password; $user->rollno=$rollno; $user->gender=$gender; $user->birthday=$birthday; $user->tnc=$tnc; $user->confirmation_code= $confirmation_code; $user->save(); Auth::login($user); Mail::send('emails.email', ['confirmation_code' => $confirmation_code], function($message) { $message->to(Input::get('email'), Input::get('username')) ->subject('Verify your email address'); }); // Flash::message('Thanks for signing up! Please check your email.'); return redirect()->route('verify'); } public function postSignIn(Request $request) { $this->validate($request,[ 'email'=> 'required' , 'password' => 'required' ]); if(Auth::attempt(['email'=>$request['email'], 'password' => $request['password']])) { //return redirect()->route('myplace'); return redirect()->route('myplace') ; } return redirect()->back(); } public function confirm($confirmation_code) { if( ! $confirmation_code) { Flash::message('wrong'); // throw new InvalidConfirmationCodeException; } $user = User::whereConfirmationCode($confirmation_code)->first(); if ( ! $user) { Flash::message('login please'); // throw new InvalidConfirmationCodeException; } $user->confirmed = 1; $user->confirmation_code = null; $user->save(); Flash::message('You have successfully verified your account.'); return redirect()->route('home'); } } ?>