#include "map/mapengine.h"
#include "situareservice/situareservice.h"
#include "ui/mainwindow.h"
+#include "network/networkaccessmanager.h"
#include "mce.h"
#include <cmath>
m_ui = new MainWindow;
m_ui->updateItemVisibility();
+ m_networkAccessManager = NetworkAccessManager::instance();
+
// build MapEngine
m_mapEngine = new MapEngine(this);
m_ui->setMapViewScene(m_mapEngine->scene());
m_ui->buildInformationBox(tr("Connection timed out"), true);
}
break;
+ case QNetworkReply::UnknownNetworkError:
+ if(context == ErrorContext::NETWORK) {
+ m_ui->toggleProgressIndicator(false);
+ m_ui->buildInformationBox(tr("No network connection"), true);
+ }
+ break;
case SituareError::SESSION_EXPIRED:
m_ui->buildInformationBox(tr("Session expired. Please login again"), true);
m_facebookAuthenticator->clearAccountInformation(true); // keep username = true
{
qDebug() << __PRETTY_FUNCTION__;
- if(m_ui->loginState()) {
- logout();
- m_situareService->clearUserData();
- } else {
- m_facebookAuthenticator->start();
+ if (m_networkAccessManager->isConnected()) {
+ if(m_ui->loginState()) {
+ logout();
+ m_situareService->clearUserData();
+ } else {
+ m_facebookAuthenticator->start();
+ }
+ }
+ else {
+ error(ErrorContext::NETWORK, QNetworkReply::UnknownNetworkError);
}
}
{
qDebug() << __PRETTY_FUNCTION__;
- m_ui->toggleProgressIndicator(true);
-
- m_situareService->fetchLocations();
+ if (m_networkAccessManager->isConnected()) {
+ m_ui->toggleProgressIndicator(true);
+ m_situareService->fetchLocations();
+ }
+ else {
+ error(ErrorContext::NETWORK, QNetworkReply::UnknownNetworkError);
+ }
}
void SituareEngine::requestAddress()
{
qDebug() << __PRETTY_FUNCTION__;
- if (m_gps->isRunning())
- m_situareService->reverseGeo(m_gps->lastPosition());
- else
- m_situareService->reverseGeo(m_mapEngine->centerGeoCoordinate());
+ if (m_networkAccessManager->isConnected()) {
+ if (m_gps->isRunning())
+ m_situareService->reverseGeo(m_gps->lastPosition());
+ else
+ m_situareService->reverseGeo(m_mapEngine->centerGeoCoordinate());
+ }
+ else {
+ error(ErrorContext::NETWORK, QNetworkReply::UnknownNetworkError);
+ }
}
void SituareEngine::requestUpdateLocation(const QString &status, bool publish)
{
qDebug() << __PRETTY_FUNCTION__;
- m_ui->toggleProgressIndicator(true);
+ if (m_networkAccessManager->isConnected()) {
+ m_ui->toggleProgressIndicator(true);
- if (m_gps->isRunning())
- m_situareService->updateLocation(m_gps->lastPosition(), status, publish);
- else
- m_situareService->updateLocation(m_mapEngine->centerGeoCoordinate(), status, publish);
+ if (m_gps->isRunning())
+ m_situareService->updateLocation(m_gps->lastPosition(), status, publish);
+ else
+ m_situareService->updateLocation(m_mapEngine->centerGeoCoordinate(), status, publish);
+ }
+ else {
+ error(ErrorContext::NETWORK, QNetworkReply::UnknownNetworkError);
+ }
}
void SituareEngine::requestAutomaticUpdateIfMoved(QPointF position)
{
qDebug() << __PRETTY_FUNCTION__;
- m_situareService->fetchLocations();
+ if (m_networkAccessManager->isConnected())
+ m_situareService->fetchLocations();
+ else
+ error(ErrorContext::NETWORK, QNetworkReply::UnknownNetworkError);
}
void SituareEngine::userDataChanged(User *user, QList<User *> &friendsList)