/** * @param IPresentationSpeaker $speaker * @param string $email * @return ISpeakerRegistrationRequest */ public function build(IPresentationSpeaker $speaker, $email) { $request = new SpeakerRegistrationRequest(); $request->Email = $email; $request->IsConfirmed = false; $request->SpeakerID = $speaker->getIdentifier(); $request->ProposerID = Member::currentUserID(); $request->generateConfirmationToken(); return $request; }
/** * @param IPresentationSpeaker $speaker * @param string $email * @return ISpeakerRegistrationRequest */ public function build(IPresentationSpeaker $speaker, $email) { $request = new SpeakerRegistrationRequest(); $request->Email = $email; $request->IsConfirmed = false; $request->SpeakerID = $speaker->getIdentifier(); $request->ProposerID = Member::currentUserID(); $already_exists = false; do { $token = $request->generateConfirmationToken(); $already_exists = $this->repository->existsConfirmationToken($token); } while ($already_exists); return $request; }