userRepo = $userRepo; } public function index() { $data = [ 'GOOGLE_ReCAPTCHA_KEY' => $this->GOOGLE_ReCAPTCHA_KEY, 'user_shop' => Util::getUserShop(), ]; return view('web.templates.registrierung', $data); } public function member($member_id = false) { if(!$member_id){ return redirect('/registrierung'); } $user_id = (int) str_replace('m', '', $member_id) - config('mivita.add_number_id'); $user = User::find($user_id); if(!$user || !$user->isActive() || !$user->isActiveAccount()){ return redirect('/registrierung'); } $data = [ 'GOOGLE_ReCAPTCHA_KEY' => $this->GOOGLE_ReCAPTCHA_KEY, 'user_shop' => Util::getUserShop(), 'from_member_id' => $member_id ]; return view('web.templates.registrierung', $data); } public function register(){ $rules = array( 'salutation' => 'required', 'first_name'=>'required', 'last_name'=>'required', 'email' => 'required|string|email|max:255|unique:users', 'email-confirm' => 'required|same:email', 'password' => 'required|string|min:6|confirmed', 'password_confirmation' => 'required|string|min:6', // 'g-recaptcha-response'=>'required|recaptcha', 'accepted_data_protection' => 'required', ); /*Validator::extend('recaptcha', function($attribute, $value, $parameters, $validator) { return $this->reCaptcha_validate($attribute, $value, $parameters, $validator); });*/ $validator = Validator::make(Request::all(), $rules); if ($validator->fails()) { return back()->withErrors($validator)->withInput(Request::all()); } $user_shop = Util::getUserShop(); $data = Request::all(); $user = $this->userRepo->create($data); $confirmation_code = UserService::createConfirmationCode(); $m_sponsor_id = 1; if($user_shop){ $m_sponsor_id = $user_shop->user->id; } if(isset($data['from_member_id'])){ $m_sponsor_id = (int) str_replace('m', '', $data['from_member_id']) - config('mivita.add_number_id'); } $user->lang = !empty(\App::getLocale()) ? \App::getLocale() : "de"; $user->confirmation_code = $confirmation_code; $user->confirmation_code_to = date('Y-m-d H:i:s', strtotime('+1 week')); $user->confirmation_code_remider = 0; $user->m_sponsor = $m_sponsor_id; $user->m_level = 1; $user->save(); $user->account->data_protection = now(); $user->account->save(); Mail::to($user->email)->send(new MailVerifyAccount($confirmation_code, $user)); return redirect('/registrierung/finish'); } public function finish() { $data = [ 'user_shop' => Util::getUserShop(), ]; return view('web.templates.registrierung_finish', $data); } /* private function reCaptcha_validate($attribute, $value, $parameters, $validator) { $client = new Client(); $response = $client->post( 'https://www.google.com/recaptcha/api/siteverify', ['form_params' => [ 'secret' => $this->GOOGLE_ReCAPTCHA_SECRET, 'response' => $value ] ] ); $body = json_decode((string)$response->getBody()); return $body->success; } */ }