class NetworkAccessManager;
class QNetworkReply;
class QNetworkRequest;
-class QPointF;
+class GeoCoordinate;
class QUrl;
/**
*
* @param coordinates coordinates to be translated
*/
- void reverseGeo(const QPointF &coordinates);
+ void reverseGeo(const GeoCoordinate &coordinates);
/**
* @brief Updates location to the Situare server
*
* @param coordinates current cordinates
* @param status message
- * @param publish publish location on Facebook wall (true/false)
+ * @param publish publish location on Facebook wall
*/
- void updateLocation(const QPointF &coordinates, const QString &status, const bool &publish);
+ void updateLocation(const GeoCoordinate &coordinates, const QString &status, const bool &publish);
public slots:
*/
void requestFinished(QNetworkReply *reply);
+ void updateAccessToken(const QString &accessToken);
+
private:
/**
* @brief Requests ImageFetcher if user/friend has a profile image
* uses members: m_user and m_friendsList
*
+ * @param imageUrlList list of image urls
*/
- void addProfileImages();
+ void addProfileImages(const QList<QUrl> &imageUrlList);
+
+ void appendAccessToken(QString &requestUrl);
/**
* @brief Forms a http cookie
*
* @param coordinates current coordinates
* @param status optional status message
- * @param publish optional publish location on Facebook wall (true/false)
+ * @param publish optional publish location on Facebook wall
* @return QString
*/
- QString formUrlParameters(const QPointF &coordinates, QString status = QString(),
- QString publish = QString());
+ QString formUrlParameters(const GeoCoordinate &coordinates, QString status = QString(),
+ bool publish = false);
/**
* @brief Parses user and friend data from JSON string
*/
void sendRequest(const QUrl &url, const QString &cookieType, const QString &cookie);
+
+ void buildRequest(const QString &script, const QHash<QString,QString> ¶meters);
+
+ void sendRequest(const QString &requestUrl);
+
private slots:
/**
*/
void fetchImage(const QUrl &url);
+ /**
+ * @brief Signals when user's/friend's image is downloaded
+ *
+ * @param user Instance of user/friend
+ */
void imageReady(User *user);
/**
bool m_defaultImage; ///< Indicates if some of the friends/user doesn't have a image
QList<QNetworkReply *> m_currentRequests; ///< List of current http requests
+ QList<QString> m_requestsWaitingAccessToken;
QList<User *> m_friendsList; ///< List of friends(User)
+ QString m_accessToken;
+
NetworkAccessManager *m_networkManager; ///< Pointer to QNetworkAccessManager
FacebookCredentials m_credentials; ///< handle for FacebookCredentials