#include <Session.h>
|
static void | configureAuth () |
|
static const Wt::Auth::AuthService & | auth () |
|
static const Wt::Auth::AbstractPasswordService & | passwordAuth () |
|
static const std::vector< const Wt::Auth::OAuthService * > & | oAuth () |
|
Definition at line 23 of file Session.h.
§ Session()
Definition at line 95 of file Session.C.
96 :
sqlite3_(WApplication::instance()->appRoot() +
"hangman.db")
99 sqlite3_.setProperty(
"show-queries",
"true");
103 session_.mapClass<AuthInfo::AuthIdentityType>(
"auth_identity");
104 session_.mapClass<AuthInfo::AuthTokenType>(
"auth_token");
108 dbo::Transaction transaction(
session_);
115 Auth::User guestUser = users_->registerNew();
116 guestUser.addIdentity(Auth::Identity::LoginName,
"guest");
117 myPasswordService.updatePassword(guestUser,
"guest");
119 Wt::log(
"info") <<
"Database created";
121 Wt::log(
"info") <<
"Using existing database";
124 transaction.commit();
Wt::Auth::Dbo::UserDatabase< AuthInfo > UserDatabase
Wt::Dbo::Session session_
Wt::Dbo::backend::Sqlite3 sqlite3_
Wt::Auth::Dbo::AuthInfo< User > AuthInfo
§ ~Session()
§ addToScore()
void Session::addToScore |
( |
int |
s | ) |
|
Definition at line 156 of file Session.C.
158 dbo::Transaction transaction(
session_);
160 dbo::ptr<User> u =
user();
162 u.modify()->score += s;
163 ++u.modify()->gamesPlayed;
164 u.modify()->lastGame = WDateTime::currentDateTime();
167 transaction.commit();
Wt::Dbo::Session session_
Wt::Dbo::ptr< User > user() const
§ auth()
const Auth::AuthService & Session::auth |
( |
| ) |
|
|
static |
Definition at line 213 of file Session.C.
215 return myAuthService;
§ configureAuth()
void Session::configureAuth |
( |
| ) |
|
|
static |
Definition at line 73 of file Session.C.
75 myAuthService.setAuthTokensEnabled(
true,
"hangmancookie");
76 myAuthService.setEmailVerificationEnabled(
true);
78 Auth::PasswordVerifier *verifier =
new Auth::PasswordVerifier();
79 verifier->addHashFunction(
new Auth::BCryptHashFunction(7));
84 verifier->addHashFunction(
new UnixCryptHashFunction());
87 myPasswordService.setVerifier(verifier);
88 myPasswordService.setStrengthValidator(
new Auth::PasswordStrengthValidator());
89 myPasswordService.setAttemptThrottlingEnabled(
true);
91 if (Auth::GoogleService::configured())
92 myOAuthServices.push_back(
new Auth::GoogleService(myAuthService));
§ findRanking()
int Session::findRanking |
( |
| ) |
|
Definition at line 192 of file Session.C.
194 dbo::Transaction transaction(
session_);
196 dbo::ptr<User> u =
user();
200 ranking =
session_.query<
int>(
"select distinct count(score) from user")
201 .where(
"score > ?").bind(u->score);
203 transaction.commit();
Wt::Dbo::Session session_
Wt::Dbo::ptr< User > user() const
§ login()
Wt::Auth::Login& Session::login |
( |
| ) |
|
|
inline |
§ oAuth()
const std::vector< const Auth::OAuthService * > & Session::oAuth |
( |
| ) |
|
|
static |
Definition at line 223 of file Session.C.
225 return myOAuthServices;
§ passwordAuth()
const Auth::AbstractPasswordService & Session::passwordAuth |
( |
| ) |
|
|
static |
Definition at line 218 of file Session.C.
220 return myPasswordService;
§ topUsers()
std::vector< User > Session::topUsers |
( |
int |
limit | ) |
|
Definition at line 170 of file Session.C.
172 dbo::Transaction transaction(
session_);
176 std::vector<User> result;
177 for (Users::const_iterator i = top.begin(); i != top.end(); ++i) {
178 dbo::ptr<User>
user = *i;
179 result.push_back(*user);
181 dbo::ptr<AuthInfo>
auth = *user->authInfos.begin();
182 std::string name = auth->identity(Auth::Identity::LoginName).toUTF8();
184 result.back().name = name;
187 transaction.commit();
static const Wt::Auth::AuthService & auth()
Wt::Dbo::Session session_
Wt::Dbo::ptr< User > user() const
Wt::Dbo::collection< Wt::Dbo::ptr< User > > Users
§ user()
dbo::ptr< User > Session::user |
( |
| ) |
const |
|
private |
Definition at line 132 of file Session.C.
135 dbo::ptr<AuthInfo> authInfo =
users_->find(
login_.user());
136 dbo::ptr<User>
user = authInfo->user();
140 authInfo.modify()->setUser(user);
145 return dbo::ptr<User>();
Wt::Dbo::Session session_
Wt::Dbo::ptr< User > user() const
§ userName()
std::string Session::userName |
( |
| ) |
const |
Definition at line 148 of file Session.C.
151 return login_.user().identity(Auth::Identity::LoginName).toUTF8();
153 return std::string();
§ users()
Auth::AbstractUserDatabase & Session::users |
( |
| ) |
|
§ login_
Wt::Auth::Login Session::login_ |
|
private |
§ session_
Wt::Dbo::Session Session::session_ |
|
mutableprivate |
§ sqlite3_
Wt::Dbo::backend::Sqlite3 Session::sqlite3_ |
|
private |
§ users_
The documentation for this class was generated from the following files:
- /build/witty-8LS0oe/witty-3.3.6+dfsg/examples/hangman/Session.h
- /build/witty-8LS0oe/witty-3.3.6+dfsg/examples/hangman/Session.C