2020-06-13 07:49:24 +00:00
|
|
|
/**
|
|
|
|
* Login helper
|
|
|
|
*
|
|
|
|
* @author Pierre Hubert
|
|
|
|
*/
|
|
|
|
|
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include <functional>
|
|
|
|
|
|
|
|
#include <QObject>
|
|
|
|
|
|
|
|
enum LoginResult {
|
|
|
|
SUCCESS,
|
|
|
|
BAD_PASSWORD,
|
|
|
|
TOO_MANY_REQUEST,
|
|
|
|
ERROR
|
|
|
|
};
|
|
|
|
|
|
|
|
typedef std::function<void (LoginResult)> vLoginCallback;
|
|
|
|
|
|
|
|
class AccountHelper
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
/**
|
|
|
|
* Attempt to login user
|
|
|
|
*
|
|
|
|
* @param email User email address
|
|
|
|
* @param password User password
|
|
|
|
*/
|
|
|
|
static void LoginUser(const QString &email, const QString &password, const vLoginCallback cb);
|
2020-06-13 08:19:49 +00:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Check out whether a user is currently signed in or not
|
|
|
|
*/
|
|
|
|
static bool SignedIn();
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Retrieve user login token
|
|
|
|
*/
|
|
|
|
static QString GetLoginToken();
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Destroy the login token of a user
|
|
|
|
*/
|
|
|
|
static void RemoveLoginToken();
|
2020-06-13 07:49:24 +00:00
|
|
|
};
|
|
|
|
|