diff options
| author | Philipp Andreas <github@smurfy.de> | 2015-04-19 19:16:57 +0200 |
|---|---|---|
| committer | Philipp Andreas <github@smurfy.de> | 2015-04-19 19:16:57 +0200 |
| commit | 5249184f2d4ec960f6bed6d3ff900e29916afc88 (patch) | |
| tree | 53e0e91284db198dcf2111573084f1be8c450e00 | |
| parent | 8bb7a35eedd431f707ca6fb9134c35bace8e4b24 (diff) | |
- Started locker support
- Download also adds app/face to locker
| -rw-r--r-- | app/pebblestoreview.cpp | 57 | ||||
| -rw-r--r-- | app/pebblestoreview.h | 3 |
2 files changed, 55 insertions, 5 deletions
diff --git a/app/pebblestoreview.cpp b/app/pebblestoreview.cpp index 0ea5c14..bd906a7 100644 --- a/app/pebblestoreview.cpp +++ b/app/pebblestoreview.cpp @@ -65,9 +65,44 @@ void PebbleStoreView::fetchData(QUrl url) this->m_networkManager->get(request); } +void PebbleStoreView::addToLocker(QJsonObject data) +{ + QUrl url(data.value("links").toObject().value("add").toString()); + QString token("Bearer " + this->accessToken()); + QNetworkRequest request; + request.setUrl(url); + request.setRawHeader("Cache-Control", "no-cache"); + request.setRawHeader("Authorization", token.toUtf8()); + this->m_networkManager->post(request, ""); +} + +void PebbleStoreView::removeFromLocker(QJsonObject data) +{ + QUrl url(data.value("links").toObject().value("remove").toString()); + QString token("Bearer " + this->accessToken()); + QNetworkRequest request; + request.setUrl(url); + request.setRawHeader("Cache-Control", "no-cache"); + request.setRawHeader("Authorization", token.toUtf8()); + this->m_networkManager->post(request, ""); +} + +void PebbleStoreView::showLocker() +{ + QUrl url(this->storeConfigObject.value("links").toObject().value("users/app_locker").toString()); + QString token("Bearer " + this->accessToken()); + QNetworkRequest request; + request.setUrl(url); + request.setRawHeader("Cache-Control", "no-cache"); + request.setRawHeader("Authorization", token.toUtf8()); + this->m_networkManager->get(request); +} + void PebbleStoreView::onNetworkReplyFinished(QNetworkReply* reply) { - qDebug()<<"Download finished"; + qDebug()<<"Download finished"<<reply->request().url(); + + //Config url if (reply->request().url() == this->m_configUrl) { QJsonDocument jsonResponse = QJsonDocument::fromJson(reply->readAll()); QJsonObject jsonObject = jsonResponse.object(); @@ -78,7 +113,16 @@ void PebbleStoreView::onNetworkReplyFinished(QNetworkReply* reply) } else { setUrl(prepareUrl(this->storeConfigObject.value("webviews").toObject().value("onboarding/get_some_apps").toString())); } - } else { + //Add download to locker + } else if (!this->downloadObject.isEmpty() && reply->request().url() == this->downloadObject.value("links").toObject().value("add").toString()) { + qDebug()<<reply->readAll(); + this->m_downloadInProgress = false; + emit downloadInProgressChanged(); + //Remove from locker + } else if (!this->downloadObject.isEmpty() && reply->request().url() == this->downloadObject.value("links").toObject().value("remove").toString()) { + qDebug()<<reply->readAll(); + //PBW file + } else if (!this->downloadObject.isEmpty() && reply->request().url() == this->downloadObject.value("pbw_file").toString()) { QDir dataDir(QStandardPaths::writableLocation(QStandardPaths::DataLocation)); QFile file(dataDir.absoluteFilePath("apps") + "/" + this->downloadObject.value("uuid").toString() + ".pbw"); file.open(QIODevice::WriteOnly); @@ -86,9 +130,12 @@ void PebbleStoreView::onNetworkReplyFinished(QNetworkReply* reply) file.close(); qDebug()<<this->downloadObject; - - this->m_downloadInProgress = false; - emit downloadInProgressChanged(); + this->addToLocker(this->downloadObject); + //Locker + } else if (reply->request().url() == this->storeConfigObject.value("links").toObject().value("users/app_locker").toString()) { + qDebug()<<reply->readAll(); + } else { + qDebug()<<"Unknown download finished!"; } } diff --git a/app/pebblestoreview.h b/app/pebblestoreview.h index a19b43d..3f186dc 100644 --- a/app/pebblestoreview.h +++ b/app/pebblestoreview.h @@ -47,6 +47,9 @@ private: QUrl prepareUrl(QString baseUrl); void fetchData(QUrl url); + void addToLocker(QJsonObject data); + void removeFromLocker(QJsonObject data); + void showLocker(); }; #endif // PEBBLESTOREVIEW_H |
