comunicwatcher/accounthelper.h
2020-06-13 10:19:49 +02:00

49 lines
803 B
C++

/**
* 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);
/**
* 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();
};