diff options
Diffstat (limited to 'src/plugins/geoservices/nokia/qplacemanagerengine_nokiav2.cpp')
-rw-r--r-- | src/plugins/geoservices/nokia/qplacemanagerengine_nokiav2.cpp | 92 |
1 files changed, 40 insertions, 52 deletions
diff --git a/src/plugins/geoservices/nokia/qplacemanagerengine_nokiav2.cpp b/src/plugins/geoservices/nokia/qplacemanagerengine_nokiav2.cpp index c0b265d2..5543d001 100644 --- a/src/plugins/geoservices/nokia/qplacemanagerengine_nokiav2.cpp +++ b/src/plugins/geoservices/nokia/qplacemanagerengine_nokiav2.cpp @@ -261,75 +261,63 @@ QPlaceDetailsReply *QPlaceManagerEngineNokiaV2::getPlaceDetails(const QString &p return reply; } -QPlaceContentReply *QPlaceManagerEngineNokiaV2::getPlaceContent(const QString &placeId, - const QPlaceContentRequest &request) +QPlaceContentReply *QPlaceManagerEngineNokiaV2::getPlaceContent(const QPlaceContentRequest &request) { - QUrl requestUrl(QString::fromLatin1("http://") + m_uriProvider->getCurrentHost() + - QLatin1String("/places/v1/places/") + placeId + QLatin1String("/media/")); - QNetworkReply *networkReply = 0; - QUrlQuery queryItems; + if (request.contentContext().userType() == qMetaTypeId<QUrl>()) { + QUrl u = request.contentContext().value<QUrl>(); - switch (request.contentType()) { - case QPlaceContent::ImageType: - requestUrl.setPath(requestUrl.path() + QLatin1String("images")); + networkReply = sendRequest(u); + } else { + QUrl requestUrl(QString::fromLatin1("http://") + m_uriProvider->getCurrentHost() + + QLatin1String("/places/v1/places/") + request.placeId() + + QLatin1String("/media/")); - queryItems.addQueryItem(QLatin1String("tf"), QLatin1String("html")); + QUrlQuery queryItems; - if (request.limit() > 0) { - queryItems.addQueryItem(QLatin1String("size"), - QString::number(request.limit())); - } - if (request.offset() > -1) { - queryItems.addQueryItem(QLatin1String("offset"), - QString::number(request.offset())); - } + switch (request.contentType()) { + case QPlaceContent::ImageType: + requestUrl.setPath(requestUrl.path() + QLatin1String("images")); - //queryItems.append(qMakePair<QString, QString>(QLatin1String("image_dimensions"), QLatin1String("w64-h64,w100"))); + queryItems.addQueryItem(QLatin1String("tf"), QLatin1String("html")); - requestUrl.setQuery(queryItems); + if (request.limit() > 0) + queryItems.addQueryItem(QLatin1String("size"), QString::number(request.limit())); - networkReply = sendRequest(requestUrl); - break; - case QPlaceContent::ReviewType: - requestUrl.setPath(requestUrl.path() + QLatin1String("reviews")); + //queryItems.append(qMakePair<QString, QString>(QLatin1String("image_dimensions"), QLatin1String("w64-h64,w100"))); - queryItems.addQueryItem(QLatin1String("tf"), QLatin1String("html")); + requestUrl.setQuery(queryItems); - if (request.limit() > 0) { - queryItems.addQueryItem(QLatin1String("size"), - QString::number(request.limit())); - } - if (request.offset() > -1) { - queryItems.addQueryItem(QLatin1String("offset"), - QString::number(request.offset())); - } + networkReply = sendRequest(requestUrl); + break; + case QPlaceContent::ReviewType: + requestUrl.setPath(requestUrl.path() + QLatin1String("reviews")); - requestUrl.setQuery(queryItems); + queryItems.addQueryItem(QLatin1String("tf"), QLatin1String("html")); - networkReply = sendRequest(requestUrl); - break; - case QPlaceContent::EditorialType: - requestUrl.setPath(requestUrl.path() + QLatin1String("editorials")); + if (request.limit() > 0) + queryItems.addQueryItem(QLatin1String("size"), QString::number(request.limit())); - queryItems.addQueryItem(QLatin1String("tf"), QLatin1String("html")); + requestUrl.setQuery(queryItems); - if (request.limit() > 0) { - queryItems.addQueryItem(QLatin1String("size"), - QString::number(request.limit())); - } - if (request.offset() > -1) { - queryItems.addQueryItem(QLatin1String("offset"), - QString::number(request.offset())); - } + networkReply = sendRequest(requestUrl); + break; + case QPlaceContent::EditorialType: + requestUrl.setPath(requestUrl.path() + QLatin1String("editorials")); - requestUrl.setQuery(queryItems); + queryItems.addQueryItem(QLatin1String("tf"), QLatin1String("html")); - networkReply = sendRequest(requestUrl); - break; - case QPlaceContent::NoType: - ; + if (request.limit() > 0) + queryItems.addQueryItem(QLatin1String("size"), QString::number(request.limit())); + + requestUrl.setQuery(queryItems); + + networkReply = sendRequest(requestUrl); + break; + case QPlaceContent::NoType: + ; + } } QPlaceContentReply *reply = new QPlaceContentReplyImpl(request, networkReply, this); |