Changes to logout prosess and login state storing, logout bug fix
[situare] / src / situareservice / situareservice.cpp
index 517758f..5bbb36e 100644 (file)
@@ -19,7 +19,7 @@
    USA.
 */
 
-#include "parser.h"
+#include <qjson/parser.h>
 
 #include <QDebug>
 #include <QNetworkReply>
@@ -80,10 +80,7 @@ void SituareService::appendAccessToken(QString &requestUrl)
 {
     qWarning() << __PRETTY_FUNCTION__;
 
-//    requestUrl.append("access_token=");
     requestUrl.append(m_session);
-
-//    qWarning() << __PRETTY_FUNCTION__ << "request url with parameters and access token:" << requestUrl;
 }
 
 void SituareService::buildRequest(const QString &script, const QHash<QString, QString> &parameters)
@@ -98,8 +95,8 @@ void SituareService::buildRequest(const QString &script, const QHash<QString, QS
     url.append("?");
 
     // append default api version parameter if not yet specified
-    if (!parameters.contains(PARAMETER_KEY_API))
-        url.append(PARAMETER_KEY_API + "=" + PARAMETER_VALUE_API + "&");
+//    if (!parameters.contains(PARAMETER_KEY_API))
+//        url.append(PARAMETER_KEY_API + "=" + PARAMETER_VALUE_API + "&");
 
     // append parameters
     if (!parameters.isEmpty()) {
@@ -238,20 +235,15 @@ QString SituareService::formUrlParameters(const GeoCoordinate &coordinates, QStr
 {
     qDebug() << __PRETTY_FUNCTION__;
 
-    // one scene pixel is about 5.4e-6 degrees, the integer part is max three digits and one
-    // additional digit is added for maximum precision
-    const int COORDINATE_PRECISION = 10;
-
     QString parameters;
-
     parameters.append(QUESTION_MARK);
     parameters.append(LATITUDE);
     parameters.append(EQUAL_MARK);
-    parameters.append(QString::number(coordinates.latitude(), 'f', COORDINATE_PRECISION));
+    parameters.append(degreesToString(coordinates.latitude()));
     parameters.append(AMBERSAND_MARK);
     parameters.append(LONGTITUDE);
     parameters.append(EQUAL_MARK);
-    parameters.append(QString::number(coordinates.longitude(), 'f', COORDINATE_PRECISION));
+    parameters.append(degreesToString(coordinates.longitude()));
 
     parameters.append(AMBERSAND_MARK);
     parameters.append(PUBLISH);
@@ -308,8 +300,6 @@ void SituareService::parseUserData(const QByteArray &jsonReply)
 {
     qDebug() << __PRETTY_FUNCTION__;
 
-    qWarning() << __PRETTY_FUNCTION__ << "Server reply:" << jsonReply;
-
     m_defaultImage = false;
 
     QJson::Parser parser;
@@ -555,9 +545,14 @@ void SituareService::updateSession(const QString &session)
 
     m_session = session;
 
-    foreach (QString request, m_requestsWaitingAccessToken) {
-        appendAccessToken(request);
-        sendRequest(request);
+    if (!m_session.isEmpty()) {
+        foreach (QString request, m_requestsWaitingAccessToken) {
+            appendAccessToken(request);
+            sendRequest(request);
+        }
+    }
+    else {
+        clearUserData();
     }
 
     m_requestsWaitingAccessToken.clear();