1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83
   | #define LOGIN_URL "http://center.application.net/members/login.php"
#define CREATE_ACCOUNT_URL "http://center.application.net/secure/createaccount.php"
#define CHECK_LICENSE_KEY_URL "http://center.application.net/secure/checklicensekey.php"
#define CONFIM_MAIL_URL "http://center.application.net/members/confirmmail.php"
#define REMINDER_URL "http://center.application.net/reminder.php"
#define CHANGE_PERSONAL_INFOS_URL "http://center.application.net/members/changepersonalinfos.php"
#define CHANGE_PASSWORD_URL "http://center.application.net/members/changepassword.php"
#define STOLEN_PASSWORD_URL "http://center.application.net/secure/stolenpassword.php"
#define ACTIVATE_KEY_URL "http://center.application.net/secure/activatekey.php"
 
 
#include "xmldom.h"
#include "HttpPostRequest.h"
 
enum LoginAction;
 
// CGameSession command target
 
class CGameSession 
{
public:
	CGameSession();
	virtual ~CGameSession();
 
	virtual void SetMainWindow(CWnd *msgWin);
	virtual bool Login();
	//virtual bool LoginPassClear(const CString &login,const CString &pass);
	//virtual bool LoginPassCrypted(const CString &login,const CString &passCrypted);
	virtual void Logoff();
	virtual bool IsLogged();
	virtual void SetLogPass(const CString &login,const CString &passDigest);
 
	virtual CString GetLogin();
 
	//virtual bool HTTPRequest(const CString &URL,XMLDom &xml);
	virtual bool HTTPPostRequest(CString url,  const CMapStringToString& args, CStringArray & result);
	virtual bool HTTPAuthRequest(const CString &URL,XMLDOM &xml);
	virtual bool HTTPAuthRequest(const CString &urlStr,const CMapStringToString ¶ms,XMLDOM &xml);
 
	virtual void LogCenter(const CString& module,const CString &subModule,
							 const CString &logName,const CString& arg1,
							 const CString& arg2,const CString& arg3,
							 const CString& comment);
 
	virtual bool IsUpToDate(bool &upToDate);
	virtual bool CreateAccount(const CString &nickname,const CString &pass,
		const CString &firstName,const CString &lastName,const CString &old,
		const CString &mail,const CString &key,const CString &language,bool newsLetter,const CString &slId,CString& result);
 
	virtual bool PasswordReminder(const CString &mail,const CString &language);
	virtual bool CheckLicenseKey(const CString &key,const CString &language,CString &result,CString &location,CString &product,CString &mail,bool &canCreateAccount);
	virtual bool ChangePersonalInfos(const CString &firstName,const CString &lastName,const CString &old,
		const CString &mail,bool newsletter,const CString &language);
	virtual bool StolenPassword(const CString &user,const CString &key,const CString &pass,CString &result);
	virtual bool ChangePassword(const CString &oldPass,const CString &newPass,bool &badOldPass);
	virtual bool ActivateKey(const CString &key,const CString &login,const CString &pass,const CString &slId,CString &result);
 
 
private:
	CInternetSession session;
	CHttpPostRequest httpPost;
	bool logged;
	CString login,pass;
	CWnd *msgWin;
 
	CString urlStrTh;
	DWORD msgTh;
 
 
	/*bool InitAuth(CString &sessionID);*/
 
	LoginAction LogGUI(const CString &message,const CString &initLogin,
				   CString &login,CString &pass);
	/*bool FileAuthRequest(XMLDOM &xml,const CString &url,const CString ¤tLogin,
		const CString ¤tPassDigest,bool &authOk,bool &confirmAccountOk,
        CString &confirmMail);*/
 
 
	//void ExtractObject(CString & szUrl, CString &szObject);
	void ConfirmAccountDialog(const CString &login,const CString &pass,const CString &mail,const CString &language);
	bool ReadLoginAndPassword(const CString &lastLogin,CString &login,CString &pass);
	//bool HTTPAuthRequestPrivate(const CString &urlStr,const CMapStringToString ¶ms,XMLDOM &xml);
}; |