diff options
Diffstat (limited to 'HomeScreen/src2/usermanagement.h')
-rw-r--r-- | HomeScreen/src2/usermanagement.h | 63 |
1 files changed, 58 insertions, 5 deletions
diff --git a/HomeScreen/src2/usermanagement.h b/HomeScreen/src2/usermanagement.h index 099c991..382d1ac 100644 --- a/HomeScreen/src2/usermanagement.h +++ b/HomeScreen/src2/usermanagement.h @@ -1,32 +1,85 @@ #ifndef USERMANAGEMENT_H #define USERMANAGEMENT_H +#define REAL_SERVER "ws://your_server.com:1234" + #include <QObject> #include "applicationmodel.h" #include <QTimer> +#include <QPointF> #include <QtWebSockets/QWebSocket> +#ifndef REAL_SERVER +#include <QtWebSockets/QWebSocketServer> +#endif +struct User { + QString postal_address; + QPointF loc; + QString country; + QString mail; + QString city; + QString graphEmail; + QString graphPreferredLanguage; + QString ccNumberMasked; + QString ccExpYear; + QString ccExpMonth; + QString description; + QStringList groups; + QString last_name; + QString ccNumber; + QString house_identifier; + QString phone; + QString name; + QString state; + QString common_name; + QString fax; + QString postal_code; + QString first_name; + QString keytoken; +}; + class UserManagement : public QObject { Q_OBJECT public: - explicit UserManagement(QObject *home, QObject *shortcutArea, QObject *statusArea); + explicit UserManagement(QObject *root); signals: public slots: - void slot_timerTest(); + void connectWebsockets(); void onConnected(); void onClosed(); void onTextMessageReceived(QString message); + void onWebSocketError(QAbstractSocket::SocketError); + void slot_sendData(); +#ifndef REAL_SERVER + void onServerNewConnection(); + void onServerClosed(); + void processBinaryMessage(QByteArray message); + void processTextMessage(QString message); + void serverSocketDisconnected(); + void slot_timerTest(); +#endif private: QObject *home; QObject *shortcutArea; QObject *statusArea; + QObject *logo; + QByteArray data; ApplicationModel *appModel; - QTimer timerTest; - QString currentLanguage; QWebSocket webSocket; - void connectWebsockets(const QUrl &url); + int sequence; + bool jsonToMap(const QByteArray &buf, QVariantMap *map) const; + bool mapToJson(const QVariantMap &map, QByteArray *json) const; + bool jsonToList(const QByteArray &buf, QList<QVariant> *list) const; + bool listToJson(const QList<QVariant> &list, QByteArray *json) const; + void setUser(const User &user); +#ifndef REAL_SERVER + QTimer timerTest; + QWebSocket *pSocket; + QWebSocketServer *webSocketServer; + void launchServer(); +#endif }; #endif // USERMANAGEMENT_H |