Sets the reminders repository.
public setReminderRepository ( Cartalyst\Sentinel\Reminders\ReminderRepositoryInterface $reminders ) : void | ||
$reminders | Cartalyst\Sentinel\Reminders\ReminderRepositoryInterface | |
return | void |
/** * @param string $context * @param SecurityContextConfiguration $configuration * @return Security */ public function create($context, SecurityContextConfiguration $configuration) { $persistences = $this->repositories->createPersistenceRepository($context); $roles = $this->repositories->createRoleRepository($context); $users = $this->repositories->createUserRepository($context, $persistences, $roles); $sentinel = new Sentinel($persistences, $users, $roles, $this->repositories->createActivationRepository($context), $this->container->make(Dispatcher::class)); foreach ($configuration->listCheckpoints() as $key => $checkpoint) { $sentinel->addCheckpoint($key, $this->makeCheckpoint($checkpoint, $configuration)); } $sentinel->setReminderRepository($this->repositories->createReminderRepository($context, $users)); $sentinel->setRequestCredentials(function () { $request = $this->container->make('request'); $login = $request->getUser(); $password = $request->getPassword(); if ($login === null && $password === null) { return; } return compact('login', 'password'); }); $sentinel->creatingBasicResponse(function () { $headers = ['WWW-Authenticate' => 'Basic']; return new Response('Invalid credentials.', 401, $headers); }); $security = new Security($sentinel, $this->repositories->createPermissionRepository($context)); $this->bindUrlGenerator($security); $security->setLoginRoute($configuration->getLoginRoute()); return $security; }
/** * Creates a sentinel instance. * * @return \Cartalyst\Sentinel\Sentinel */ public function createSentinel() { $persistence = $this->createPersistence(); $users = $this->createUsers(); $roles = $this->createRoles(); $activations = $this->createActivations(); $dispatcher = $this->getEventDispatcher(); $sentinel = new Sentinel($persistence, $users, $roles, $activations, $dispatcher); $ipAddress = $this->getIpAddress(); $checkpoints = $this->createCheckpoints($activations, $ipAddress); foreach ($checkpoints as $key => $checkpoint) { $sentinel->addCheckpoint($key, $checkpoint); } $reminders = $this->createReminders($users); $sentinel->setActivationRepository($activations); $sentinel->setReminderRepository($reminders); return $sentinel; }
/** * Sets the reminders repository. * * @param \Cartalyst\Sentinel\Reminders\ReminderRepositoryInterface $reminders * @return void * @static */ public static function setReminderRepository($reminders) { \Cartalyst\Sentinel\Sentinel::setReminderRepository($reminders); }
/** * Registers sentinel. * * @return void */ protected function registerSentinel() { $this->app->singleton('sentinel', function ($app) { $sentinel = new Sentinel($app['sentinel.persistence'], $app['sentinel.users'], $app['sentinel.roles'], $app['sentinel.activations'], $app['events']); if (isset($app['sentinel.checkpoints'])) { foreach ($app['sentinel.checkpoints'] as $key => $checkpoint) { $sentinel->addCheckpoint($key, $checkpoint); } } $sentinel->setActivationRepository($app['sentinel.activations']); $sentinel->setReminderRepository($app['sentinel.reminders']); $sentinel->setRequestCredentials(function () use($app) { $request = $app['request']; $login = $request->getUser(); $password = $request->getPassword(); if ($login === null && $password === null) { return; } return compact('login', 'password'); }); $sentinel->creatingBasicResponse(function () { $headers = ['WWW-Authenticate' => 'Basic']; return new Response('Invalid credentials.', 401, $headers); }); return $sentinel; }); $this->app->alias('sentinel', 'Cartalyst\\Sentinel\\Sentinel'); }