/** * Store a newly created resource in storage. * * @param \App\Http\Requests\user\StoreUserRequest $request * @return \Illuminate\Http\Response */ public function store(StoreUserRequest $request) { // getting all the inputs from input field $name = $request->input('name'); $email = $request->input('email'); $password = $request->input('password'); // generating 60 characters activation code $activation_code = str_random(60); // creating the user $user = User::create(array('name' => $name, 'email' => $email, 'password' => Hash::make($password), 'activation_code' => $activation_code, 'activated' => 0)); $data = array('link' => url('user/activate', [$activation_code]), 'name' => $name); // sending mail to the user whose account has been created Mail::send('emails.activation_code', $data, function ($message) use($user) { $message->to($user->email, $user->name)->subject('Activate Your Account !'); }); session()->flash('flash_message', 'Your Account Has Been Created ! We have sent you an activation code via mail.'); // showing the message regarding account activation return redirect()->route('user.create'); }