session()->put('oauth_invite_id', $request->string('invite')->toString()); } private function retrieveInvite(): ?string { return session()->pull('oauth_invite_id'); } /** * Mirrors the registration.enabled middleware: self-hosted requires a * real invite to register. */ private function resolveInviteForRegistration(): ?Invite { $invite = Invite::fromId($this->retrieveInvite()); if ((bool) config('trypost.self_hosted') && ! $invite) { throw new NotFoundHttpException; } return $invite; } private function inviteEmailMismatchRedirect(?Invite $invite, ?string $oauthEmail): ?RedirectResponse { if ($invite && $invite->email !== $oauthEmail) { return redirect()->route('login')->withErrors([ 'email' => __('settings.members.flash.wrong_email'), ]); } return null; } }