diff options
| author | Simon Robertshaw <simon@hardwired.org.uk> | 2012-01-24 20:19:19 (GMT) |
|---|---|---|
| committer | Simon Robertshaw <simon@hardwired.org.uk> | 2012-01-24 20:19:19 (GMT) |
| commit | 97b35bc47059315d4138c8e0827842d2c03de152 (patch) | |
| tree | feaf7a8c018982ba9d7ca1b8e6e15294abfdfc84 /src/client/Client.cpp | |
| parent | 04488081d3fa0cd3dfb2939e5d902bc894df150d (diff) | |
| download | powder-97b35bc47059315d4138c8e0827842d2c03de152.zip powder-97b35bc47059315d4138c8e0827842d2c03de152.tar.gz | |
Various
Diffstat (limited to 'src/client/Client.cpp')
| -rw-r--r-- | src/client/Client.cpp | 37 |
1 files changed, 36 insertions, 1 deletions
diff --git a/src/client/Client.cpp b/src/client/Client.cpp index c2e82ea..94c3dbc 100644 --- a/src/client/Client.cpp +++ b/src/client/Client.cpp @@ -20,7 +20,7 @@ Client::Client() { int i = 0; - http_init(NULL); + http_init("wwwcache.lancs.ac.uk:8080"); for(i = 0; i < THUMB_CACHE_SIZE; i++) { thumbnailCache[i] = NULL; @@ -39,6 +39,41 @@ Client::~Client() http_done(); } +LoginStatus Client::Login(string username, string password) +{ + std::stringstream urlStream; + char * data; + int dataStatus, dataLength; + data = http_auth_get("http://" SERVER "/Login.json", (char*)username.c_str(), (char*)password.c_str(), NULL, &dataStatus, &dataLength); + std::cout << data << std::endl; + if(dataStatus == 200 && data) + { + std::istringstream dataStream(data); + json::Object objDocument; + json::Reader::Read(objDocument, dataStream); + json::Number tempStatus = objDocument["Status"]; + + free(data); + if(tempStatus.Value() == 1) + { + return LoginOkay; + } + else if(tempStatus.Value() == 0) + { + return LoginPasswordInvalid; + } + else + { + return LoginError; + } + } + if(data) + { + free(data); + } + return LoginError; +} + Save * Client::GetSave(int saveID, int saveDate) { lastError = ""; |
