summaryrefslogtreecommitdiff
path: root/src/net/tmwserv/loginhandler.cpp
diff options
context:
space:
mode:
authorJared Adams <jaxad0127@gmail.com>2009-04-07 15:10:13 -0600
committerJared Adams <jaxad0127@gmail.com>2009-04-07 15:10:13 -0600
commit3e8ed12a530426b3c649922452f42d9a2b2a8d89 (patch)
treeb8a36133854f772438144529d68dfb657e06fa4f /src/net/tmwserv/loginhandler.cpp
parent9eebc7ddac10c6c7f483bfd1003db79e61438bff (diff)
downloadmana-client-3e8ed12a530426b3c649922452f42d9a2b2a8d89.tar.gz
mana-client-3e8ed12a530426b3c649922452f42d9a2b2a8d89.tar.bz2
mana-client-3e8ed12a530426b3c649922452f42d9a2b2a8d89.tar.xz
mana-client-3e8ed12a530426b3c649922452f42d9a2b2a8d89.zip
Make GeneralHandlers for both networks
Also make Net::LogoutHandler
Diffstat (limited to 'src/net/tmwserv/loginhandler.cpp')
-rw-r--r--src/net/tmwserv/loginhandler.cpp59
1 files changed, 54 insertions, 5 deletions
diff --git a/src/net/tmwserv/loginhandler.cpp b/src/net/tmwserv/loginhandler.cpp
index ccba06ed..ef23546a 100644
--- a/src/net/tmwserv/loginhandler.cpp
+++ b/src/net/tmwserv/loginhandler.cpp
@@ -21,13 +21,23 @@
#include "net/tmwserv/loginhandler.h"
+#include "net/tmwserv/connection.h"
#include "net/tmwserv/protocol.h"
+#include "net/tmwserv/accountserver/account.h"
+#include "net/tmwserv/accountserver/accountserver.h"
+
#include "net/messagein.h"
#include "logindata.h"
#include "main.h"
+Net::LoginHandler *loginHandler;
+
+extern Net::Connection *accountServerConnection;
+
+namespace TmwServ {
+
LoginHandler::LoginHandler()
{
static const Uint16 _messages[] = {
@@ -39,11 +49,7 @@ LoginHandler::LoginHandler()
0
};
handledMessages = _messages;
-}
-
-void LoginHandler::setLoginData(LoginData *loginData)
-{
- mLoginData = loginData;
+ loginHandler = this;
}
void LoginHandler::handleMessage(MessageIn &msg)
@@ -224,3 +230,46 @@ void LoginHandler::readUpdateHost(MessageIn &msg)
mLoginData->updateHost = msg.readString();
}
}
+
+void LoginHandler::loginAccount(LoginData *loginData)
+{
+ mLoginData = loginData;
+ Net::AccountServer::login(accountServerConnection,
+ 0, // client version
+ loginData->username,
+ loginData->password);
+}
+
+void LoginHandler::changeEmail(const std::string &email)
+{
+ Net::AccountServer::Account::changeEmail(email);
+}
+
+void LoginHandler::changePassword(const std::string &username,
+ const std::string &oldPassword,
+ const std::string &newPassword)
+{
+ Net::AccountServer::Account::changePassword(username, oldPassword,
+ newPassword);
+}
+
+void LoginHandler::chooseServer(int server)
+{
+ // TODO
+}
+
+void LoginHandler::registerAccount(const std::string &username,
+ const std::string &password, const std::string &email)
+{
+ Net::AccountServer::registerAccount(accountServerConnection,
+ 0, // client version
+ username, password, email);
+}
+
+void LoginHandler::unregisterAccount(const std::string &username,
+ const std::string &password)
+{
+ Net::AccountServer::Account::unregister(username, password);
+}
+
+} // namespace TmwServ