#include <QtGui/QMainWindow>
#include <QUrl>
+#include "network/networkcookiejar.h"
#include "panelsidebar.h"
class QGraphicsScene;
class FacebookAuthentication;
class FriendListPanel;
-class LoginDialog;
class MapScene;
class MapView;
class SituareService;
/*******************************************************************************
* MEMBER FUNCTIONS AND SLOTS
******************************************************************************/
-public:
+public:
+ /**
+ * @brief Clears cookie jar
+ *
+ */
+ void clearCookieJar();
+
/**
* @brief
*
/**
* @brief Show Maemo information box with message.
*
- * @brief message information message
+ * @param message Information message
+ * @param modal Modal = true, non-modal false
*/
- void showMaemoInformationBox(const QString &message);
+ void showMaemoInformationBox(const QString &message, bool modal=false);
/**
* @brief Gets the username from member variable for saving purposes
const QString username();
public slots:
+
/**
- * @brief Slot to intercept signal when user has pressed connect button from loginDialog
+ * @brief Slot to intercept signal when login has failed (loginFailure signal)
*
- * @param email E-mail
- * @param password Password
*/
- void loginDialogDone(const QString &email, const QString &password);
+ void loginFailed();
/**
- * @brief Slot to intercept signal when login has failed (loginFailure signal)
+ * @brief Slot to intercept signal when login with cookies is requested
*
*/
- void loginFailed();
+ void loginUsingCookies();
/**
* @brief Public slot, which open settings dialog
void setUsername(const QString &username);
/**
- * @brief
- *
- * @param show
- */
- void showPanels(bool show);
-
- /**
* @brief Public slot to intercept signal when old cerdentials are invalid or credentials
* doesn't exist yet
*
*/
void toggleProgressIndicator(bool state);
+ /**
+ * @brief Shows / hides Situare related UI items
+ *
+ * @param show
+ */
+ void updateItemVisibility(bool show);
+
private:
/**
* @brief Build friend list panel and connect slots
void buildUserInfoPanel();
/**
+ * @brief Build webview and connect slots
+ *
+ */
+ void buildWebView();
+
+ /**
* @brief Build zoom button panel and connect slots
*/
void buildZoomButtonPanel();
void gpsTimeout();
/**
+ * @brief Slot to load cookies from settings
+ *
+ */
+ void loadCookies();
+
+ /**
* @brief Slot to intercept signal when webview has finished loading webpage
*
* @param done Status of the loading
void loadDone(bool done);
/**
+ * @brief Slot to save cookies to settings
+ *
+ */
+ void saveCookies();
+
+ /**
* @brief Set correnct view port size to datamembers
*
* @param width Width of the viewport
void fetchUsernameFromSettings();
/**
+ * @brief Signal for finding user.
+ *
+ * @param coordinates user geo coordinates
+ */
+ void findUser(const QPointF &coordinates);
+
+ /**
* @brief GPS setting changed
*
* @param enabled True if GPS is enabled, otherwise false
* @brief Signals when Login/Logout action is pressed
*
*/
- void loginPressed();
+ void loginActionPressed();
/**
* @brief MapView has been resized
QString m_email; ///< Placeholder for email
QString m_password; ///< Placeholder for password
- QUrl m_loginUrl; ///< Placeholder for login page url
-
QWebView *m_webView; ///< Shows facebook login page
FriendListPanel *m_friendsListPanel; ///< Instance of friends list panel
- LoginDialog *m_loginDialog; ///< Login dialog
MapView *m_mapView; ///< Instance of the map view
+ NetworkCookieJar *m_cookieJar; ///< Placeholder for QNetworkCookies
PanelSideBar *m_userPanelSidebar; ///< User panel side bar
PanelSideBar *m_friendsListPanelSidebar;///< Friends panel side bar
UserInfoPanel *m_userPanel; ///< Instance of the user information panel