public function actionLogout(User $user, CSRF $CSRF) { $valid = $CSRF->check(Request::get($CSRF->csrfParam)); if ($valid) { $user->logout(true); } $this->redirect(Url::set()->removeAllArgs()->getAbsolute())->send(true); }
protected function prepareBody(SignupForm $model, Users $users) { $placeholders = $users->toArray(); $placeholders['password'] = $model->password; if ($model->generateToken) { $placeholders['url'] = Url::set($this->activateUrl)->addArgs(['token' => $placeholders['token']])->getAbsolute(); } return $this->template->getChunk($this->emailBodyTpl, $placeholders); }
public function actionIndex(User $user, Session $session) { $placeholders = []; if ($session->hasFlash($this->keySessionFlash)) { $placeholders['content'] = i18n::t('successActivate'); return $this->render('success', $placeholders); } elseif ($user->isGuest() && ($users = Users::activate(Request::get('token')))) { // auto-login $user->addMulti($users->toArray(['id', 'username', 'url'])); $user->login(); $session->setFlash($this->keySessionFlash); $this->response->redirect(Url::set()->removeAllArgs()->getAbsoluteUrl(true))->send(true); return null; } return $this->notPage('@frontend.views/layouts/notPage'); }
protected function getMessageLogout(CSRF $CSRF, $key, $layout = '@common.views/elements/alert-info') { $args = [$CSRF->csrfParam => $CSRF->get(), 'service' => 'logout']; $content = i18n::t($key, ['url' => Url::set()->addArgs($args)->getRelative()]); return $this->template->getChunk($layout, ['output' => $content]); }