<context>
<name>FriendListPanel</name>
<message>
-- <location filename="../../src/ui/friendlistpanel.cpp" line="44"/>
++ <location filename="../../src/ui/friendlistpanel.cpp" line="45"/>
<source>Show all</source>
<translation>Näytä kaikki</translation>
</message>
<message>
-- <location filename="../../src/ui/friendlistpanel.cpp" line="108"/>
++ <location filename="../../src/ui/friendlistpanel.cpp" line="110"/>
<source>Selected: %1</source>
<translation>Valittu: %1</translation>
</message>
<context>
<name>MainWindow</name>
<message>
-- <location filename="../../src/ui/mainwindow.cpp" line="87"/>
++ <location filename="../../src/ui/mainwindow.cpp" line="838"/>
<source>Automatic location update</source>
<translation>Automaattinen paikan päivitys</translation>
</message>
<message>
-- <location filename="../../src/ui/mainwindow.cpp" line="94"/>
++ <location filename="../../src/ui/mainwindow.cpp" line="84"/>
<source>Situare</source>
<translation>Situare</translation>
</message>
<message>
-- <location filename="../../src/ui/mainwindow.cpp" line="406"/>
-- <location filename="../../src/ui/mainwindow.cpp" line="665"/>
++ <location filename="../../src/ui/mainwindow.cpp" line="402"/>
++ <location filename="../../src/ui/mainwindow.cpp" line="666"/>
<source>Login</source>
<translation>Kirjaudu</translation>
</message>
<message>
-- <location filename="../../src/ui/mainwindow.cpp" line="411"/>
++ <location filename="../../src/ui/mainwindow.cpp" line="407"/>
<source>Settings</source>
<translation>Asetukset</translation>
</message>
<message>
-- <location filename="../../src/ui/mainwindow.cpp" line="416"/>
++ <location filename="../../src/ui/mainwindow.cpp" line="412"/>
<source>GPS</source>
<translation>GPS</translation>
</message>
<message>
-- <location filename="../../src/ui/mainwindow.cpp" line="423"/>
++ <location filename="../../src/ui/mainwindow.cpp" line="419"/>
<source>Auto centering</source>
<translation>Automaattinen keskitys</translation>
</message>
<message>
-- <location filename="../../src/ui/mainwindow.cpp" line="429"/>
++ <location filename="../../src/ui/mainwindow.cpp" line="425"/>
<source>Main</source>
<translation>Päävalikko</translation>
</message>
<message>
-- <location filename="../../src/ui/mainwindow.cpp" line="434"/>
++ <location filename="../../src/ui/mainwindow.cpp" line="430"/>
<source>Menu</source>
<translation>Valikko</translation>
</message>
<message>
-- <location filename="../../src/ui/mainwindow.cpp" line="537"/>
++ <location filename="../../src/ui/mainwindow.cpp" line="538"/>
<source>GPS timeout</source>
<translation>GPS pyyntö aikakatkaistiin</translation>
</message>
<message>
-- <location filename="../../src/ui/mainwindow.cpp" line="659"/>
++ <location filename="../../src/ui/mainwindow.cpp" line="660"/>
<source>Logout</source>
<translation>Kirjaudu ulos</translation>
</message>
<translation>Asetukset</translation>
</message>
<message>
-- <location filename="../../src/ui/settingsdialog.cpp" line="47"/>
++ <location filename="../../src/ui/settingsdialog.cpp" line="48"/>
<source>Use automatic location update</source>
<translation>Sijainnin automaattinen päivitys</translation>
</message>
<message>
-- <location filename="../../src/ui/settingsdialog.cpp" line="54"/>
-- <location filename="../../src/ui/settingsdialog.cpp" line="86"/>
++ <location filename="../../src/ui/settingsdialog.cpp" line="55"/>
++ <location filename="../../src/ui/settingsdialog.cpp" line="87"/>
<source>Update interval</source>
<translation>Päivitysväli</translation>
</message>
<message>
-- <location filename="../../src/ui/settingsdialog.cpp" line="131"/>
++ <location filename="../../src/ui/settingsdialog.cpp" line="120"/>
<source>%1 min</source>
<translation>%1 min</translation>
</message>
<context>
<name>SituareEngine</name>
<message>
-- <location filename="../../src/engine/engine.cpp" line="140"/>
++ <location filename="../../src/engine/engine.cpp" line="133"/>
<source>Auto centering disabled</source>
<translation>Automaattinen keskitys pois päältä</translation>
</message>
<message>
-- <location filename="../../src/engine/engine.cpp" line="180"/>
++ <location filename="../../src/engine/engine.cpp" line="183"/>
<source>Unable to start GPS</source>
<translation>GPS käynnistys epäonnistui</translation>
</message>
<message>
-- <location filename="../../src/engine/engine.cpp" line="195"/>
++ <location filename="../../src/engine/engine.cpp" line="196"/>
<source>Do you want to enable automatic location update with %1 min update interval?</source>
<translation>Asetetaanko automaattinen paikan päivitys %1 minuutin välein päälle?</translation>
</message>
<message>
-- <location filename="../../src/engine/engine.cpp" line="200"/>
++ <location filename="../../src/engine/engine.cpp" line="201"/>
<source>Automatic location update enabled</source>
<translation>Automaattinen paikan päivitys päällä</translation>
</message>
<message>
-- <location filename="../../src/engine/engine.cpp" line="221"/>
++ <location filename="../../src/engine/engine.cpp" line="230"/>
++ <source>Unknown server error</source>
++ <translation type="unfinished"></translation>
++ </message>
++ <message>
++ <location filename="../../src/engine/engine.cpp" line="236"/>
++ <source>Missing argument from request</source>
++ <translation type="unfinished"></translation>
++ </message>
++ <message>
++ <location filename="../../src/engine/engine.cpp" line="238"/>
<source>Connection refused by the server</source>
<translation>Palvelin ei vastaa pyyntöihin</translation>
</message>
<message>
-- <location filename="../../src/engine/engine.cpp" line="224"/>
++ <location filename="../../src/engine/engine.cpp" line="244"/>
<source>Connection closed by the server</source>
<translation>Palvelin sulki yhteyden</translation>
</message>
<message>
-- <location filename="../../src/engine/engine.cpp" line="227"/>
++ <location filename="../../src/engine/engine.cpp" line="250"/>
<source>Remote server not found</source>
<translation>Palvelinta ei löydy</translation>
</message>
<message>
-- <location filename="../../src/engine/engine.cpp" line="230"/>
++ <location filename="../../src/engine/engine.cpp" line="256"/>
<source>Connection timed out</source>
<translation>Yhteys aikakatkaistiin</translation>
</message>
<message>
-- <location filename="../../src/engine/engine.cpp" line="233"/>
++ <location filename="../../src/engine/engine.cpp" line="262"/>
++ <source>No network connection</source>
++ <translation>Ei verkkoyhteyttä</translation>
++ </message>
++ <message>
++ <location filename="../../src/engine/engine.cpp" line="266"/>
<source>Session expired. Please login again</source>
<translation>Istunto vanhentunut. Kirjaudu uudelleen</translation>
</message>
<message>
-- <location filename="../../src/engine/engine.cpp" line="241"/>
++ <location filename="../../src/engine/engine.cpp" line="274"/>
<source>Invalid E-mail address or password</source>
<translation>Virheellinen sähköpostiosoite tai salasana</translation>
</message>
<message>
-- <location filename="../../src/engine/engine.cpp" line="244"/>
++ <location filename="../../src/engine/engine.cpp" line="279"/>
<source>Update failed, please try again</source>
<translation>Päivitys epäonnistui. Yritä uudelleen</translation>
</message>
<message>
-- <location filename="../../src/engine/engine.cpp" line="247"/>
++ <location filename="../../src/engine/engine.cpp" line="283"/>
<source>Data retrieval failed, please try again</source>
<translation>Tiedon haku epäonnistui. Yritä uudelleen</translation>
</message>
<message>
-- <location filename="../../src/engine/engine.cpp" line="250"/>
++ <location filename="../../src/engine/engine.cpp" line="286"/>
<source>Address retrieval failed</source>
<translation>Osoitteen haku epäonnistui</translation>
</message>
<message>
-- <location filename="../../src/engine/engine.cpp" line="266"/>
++ <location filename="../../src/engine/engine.cpp" line="299"/>
<source>Malformatted reply from server</source>
<translation>Viallisesti muotoiltu serverin vastaus</translation>
</message>
<message>
++ <location filename="../../src/engine/engine.cpp" line="305"/>
++ <source>Geolocation server not responding</source>
++ <translation type="unfinished"></translation>
++ </message>
++ <message>
++ <location filename="../../src/engine/engine.cpp" line="309"/>
++ <source>Geolocation request failed, please try again</source>
++ <translation type="unfinished"></translation>
++ </message>
++ <message>
++ <location filename="../../src/engine/engine.cpp" line="313"/>
++ <source>Invalid lat/lon value, please try again</source>
++ <translation type="unfinished"></translation>
++ </message>
++ <message>
++ <location filename="../../src/engine/engine.cpp" line="462"/>
++ <source>Automatic location update.</source>
++ <translation type="unfinished"></translation>
++ </message>
++ <message>
<source>Address retrieval failed, please try again</source>
<translation type="obsolete">Osoitteen haku epäonnistui. Yritä uudelleen</translation>
</message>
<message>
-- <location filename="../../src/engine/engine.cpp" line="253"/>
++ <location filename="../../src/engine/engine.cpp" line="289"/>
<source>Image download failed</source>
<translation>Kuvan haku epäonnistui</translation>
</message>
<message>
-- <location filename="../../src/engine/engine.cpp" line="256"/>
++ <location filename="../../src/engine/engine.cpp" line="292"/>
<source>Map image download failed</source>
<translation>Karttakuvan lataaminen epäonnistui</translation>
</message>
<message>
-- <location filename="../../src/engine/engine.cpp" line="260"/>
++ <location filename="../../src/engine/engine.cpp" line="296"/>
<source>GPS initialization failed</source>
<translation>GPS alustus epäonnistui</translation>
</message>
<message>
-- <location filename="../../src/engine/engine.cpp" line="263"/>
<source>Unknown server response</source>
-- <translation>Tuntematon vastaus palvelimelta</translation>
++ <translation type="obsolete">Tuntematon vastaus palvelimelta</translation>
</message>
<message>
<source>JSON parsing failed, invalid JSON string</source>
<translation type="obsolete">Virheellinen JSON, parsiminen epäonnistui</translation>
</message>
<message>
-- <location filename="../../src/engine/engine.cpp" line="302"/>
-- <location filename="../../src/engine/engine.cpp" line="310"/>
++ <location filename="../../src/engine/engine.cpp" line="351"/>
++ <location filename="../../src/engine/engine.cpp" line="359"/>
<source>GPS enabled</source>
<translation>GPS päällä</translation>
</message>
<message>
-- <location filename="../../src/engine/engine.cpp" line="303"/>
-- <location filename="../../src/engine/engine.cpp" line="313"/>
++ <location filename="../../src/engine/engine.cpp" line="352"/>
++ <location filename="../../src/engine/engine.cpp" line="362"/>
<source>Auto centering enabled</source>
<translation>Automaattinen keskitys päällä</translation>
</message>
<translation>Päivitä sijainti</translation>
</message>
<message>
-- <location filename="../../src/ui/updatelocation/updatelocationdialog.cpp" line="71"/>
++ <location filename="../../src/ui/updatelocation/updatelocationdialog.cpp" line="74"/>
<source>Publish on Facebook</source>
<translation>Julkaise Facebookissa</translation>
</message>
<message>
-- <location filename="../../src/ui/updatelocation/updatelocationdialog.cpp" line="77"/>
++ <location filename="../../src/ui/updatelocation/updatelocationdialog.cpp" line="80"/>
<source>Send</source>
<translation>Lähetä</translation>
</message>
<translation>Sijainti:</translation>
</message>
<message>
-- <location filename="../../src/ui/updatelocation/updatelocationdialog.cpp" line="42"/>
++ <location filename="../../src/ui/updatelocation/updatelocationdialog.cpp" line="43"/>
<source>Message:</source>
<translation>Viesti:</translation>
</message>
<translation type="obsolete">Sijainnin päivitys epäonnistui\n\nVistisi on tallennettu kunnes pävitys on onnistunut</translation>
</message>
<message>
-- <location filename="../../src/ui/userinfo.cpp" line="338"/>
++ <location filename="../../src/ui/userinfo.cpp" line="357"/>
<source>Location update failed, please try again</source>
<translation>Paikkatiedon päivitys epäonnistui, yritä uudelleen</translation>
</message>
#include "map/mapengine.h"
#include "situareservice/situareservice.h"
#include "ui/mainwindow.h"
++#include "network/networkaccessmanager.h"
+ #include "mce.h"
#include <cmath>
#include "engine.h"
m_ui = new MainWindow;
m_ui->updateItemVisibility();
++ m_networkAccessManager = NetworkAccessManager::instance();
++
// build MapEngine
m_mapEngine = new MapEngine(this);
m_ui->setMapViewScene(m_mapEngine->scene());
switch(error)
{
- case QNetworkReply::ConnectionRefusedError:
- m_ui->buildInformationBox(tr("Connection refused by the server"), true);
+ case SituareError::ERROR_GENERAL:
+ if(context == ErrorContext::SITUARE) {
+ m_ui->toggleProgressIndicator(false);
+ m_ui->buildInformationBox(tr("Unknown server error"), true);
+ }
+ break;
+ case SituareError::ERROR_MISSING_ARGUMENT | QNetworkReply::ConnectionRefusedError :
+ m_ui->toggleProgressIndicator(false);
+ if(context == ErrorContext::SITUARE) {
+ m_ui->buildInformationBox(tr("Missing argument from request"), true);
+ } else if(context == ErrorContext::NETWORK) {
+ m_ui->buildInformationBox(tr("Connection refused by the server"), true);
+ }
break;
case QNetworkReply::RemoteHostClosedError:
- m_ui->buildInformationBox(tr("Connection closed by the server"), true);
+ if(context == ErrorContext::NETWORK) {
+ m_ui->toggleProgressIndicator(false);
+ m_ui->buildInformationBox(tr("Connection closed by the server"), true);
+ }
break;
case QNetworkReply::HostNotFoundError:
- m_ui->buildInformationBox(tr("Remote server not found"), true);
+ if(context == ErrorContext::NETWORK) {
+ m_ui->toggleProgressIndicator(false);
+ m_ui->buildInformationBox(tr("Remote server not found"), true);
+ }
break;
case QNetworkReply::TimeoutError:
- m_ui->buildInformationBox(tr("Connection timed out"), true);
+ if(context == ErrorContext::NETWORK) {
+ m_ui->toggleProgressIndicator(false);
+ m_ui->buildInformationBox(tr("Connection timed out"), true);
+ }
break;
+ case QNetworkReply::UnknownNetworkError:
- m_ui->buildInformationBox(tr("Network error. Please connect to network"), true);
- m_ui->toggleProgressIndicator(false);
++ 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::saveGPSPosition(QPointF position)
+ void SituareEngine::requestAutomaticUpdateIfMoved(QPointF position)
{
qDebug() << __PRETTY_FUNCTION__;
{
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)