2024-10-31 19:40:29 +08:00
|
|
|
#ifndef __SESSION_H__
|
|
|
|
#define __SESSION_H__
|
|
|
|
|
2024-11-01 19:05:20 +08:00
|
|
|
#include "model/User.h"
|
2024-10-31 19:40:29 +08:00
|
|
|
#include <Wt/Auth/Login.h>
|
|
|
|
#include <Wt/Dbo/Session.h>
|
|
|
|
|
2024-11-01 19:05:20 +08:00
|
|
|
using AuthInfo = Wt::Auth::Dbo::AuthInfo<User>;
|
2024-10-31 19:40:29 +08:00
|
|
|
using UserDatabase = Wt::Auth::Dbo::UserDatabase<AuthInfo>;
|
|
|
|
|
|
|
|
class Session : public Wt::Dbo::Session {
|
|
|
|
public:
|
|
|
|
Session(const std::string &sqliteDb);
|
|
|
|
~Session();
|
|
|
|
Wt::Auth::AbstractUserDatabase &users();
|
|
|
|
Wt::Auth::Login &login();
|
|
|
|
static void configureAuth();
|
|
|
|
static const Wt::Auth::AuthService &auth();
|
|
|
|
static const Wt::Auth::PasswordService &passwordAuth();
|
|
|
|
|
|
|
|
private:
|
|
|
|
std::unique_ptr<UserDatabase> m_users;
|
|
|
|
Wt::Auth::Login m_login;
|
|
|
|
};
|
|
|
|
|
|
|
|
#endif // __SESSION_H__
|