From 139d45e491cd057018a37ebed7295c434902488f Mon Sep 17 00:00:00 2001
From: Dennis Beier <nanovim@gmail.com>
Date: Sun, 16 Sep 2018 13:33:23 +0200
Subject: [PATCH] added class for reply messages

---
 engine.pro                                |  6 ++++--
 repos/entities/rocketchatmessage.h        |  3 ++-
 repos/entities/rocketchatreplymessage.cpp |  9 +++++++++
 repos/entities/rocketchatreplymessage.h   | 22 ++++++++++++++++++++++
 services/messageservice.cpp               |  1 -
 5 files changed, 37 insertions(+), 4 deletions(-)
 create mode 100644 repos/entities/rocketchatreplymessage.cpp
 create mode 100644 repos/entities/rocketchatreplymessage.h

diff --git a/engine.pro b/engine.pro
index 2e76b8e..11f2c17 100644
--- a/engine.pro
+++ b/engine.pro
@@ -100,7 +100,8 @@ SOURCES +=  api/meteorddp.cpp \
     ddpRequests/rocketchatgetroombyid.cpp \
     ddpRequests/rocketchatjoinroomrequest.cpp \
     ddpRequests/rocketchatgetroomidbynameorid.cpp \
-    ddpRequests/rocketchatspotlightrequest.cpp
+    ddpRequests/rocketchatspotlightrequest.cpp \
+    repos/entities/rocketchatreplymessage.cpp
 
 
 HEADERS += \
@@ -203,7 +204,8 @@ HEADERS += \
     ddpRequests/rocketchatjoinroomrequest.h \
     ddpRequests/rocketchatgetroomidbynameorid.h \
     ddpRequests/rocketchatspotlightrequest.h \
-    api/messagelistener.h
+    api/messagelistener.h \
+    repos/entities/rocketchatreplymessage.h
 
 linux{
 
diff --git a/repos/entities/rocketchatmessage.h b/repos/entities/rocketchatmessage.h
index 43e1940..f80b396 100755
--- a/repos/entities/rocketchatmessage.h
+++ b/repos/entities/rocketchatmessage.h
@@ -36,7 +36,8 @@ class RocketChatMessage
 {
     public:
         enum class Type {
-            textmessage
+            textmessage,
+            replymessage
         };
         RocketChatMessage( QJsonObject data, unsigned long timestamp, RocketChatMessage::Type messageType = Type::textmessage );
         RocketChatMessage( QJsonObject data );
diff --git a/repos/entities/rocketchatreplymessage.cpp b/repos/entities/rocketchatreplymessage.cpp
new file mode 100644
index 0000000..f295b6a
--- /dev/null
+++ b/repos/entities/rocketchatreplymessage.cpp
@@ -0,0 +1,9 @@
+#include "rocketchatreplymessage.h"
+
+
+RocketChatReplyMessage::RocketChatReplyMessage(QString pText, QString pUrl)
+    :RocketChatAttachment(pUrl,"replyMessage",pUrl),RocketChatMessage(QJsonObject(),0,RocketChatMessage::Type::replymessage)
+{
+    mUrl = pUrl;
+    messageString = pText;
+}
diff --git a/repos/entities/rocketchatreplymessage.h b/repos/entities/rocketchatreplymessage.h
new file mode 100644
index 0000000..18975aa
--- /dev/null
+++ b/repos/entities/rocketchatreplymessage.h
@@ -0,0 +1,22 @@
+#ifndef ROCKETCHATREPLYMESSAGE_H
+#define ROCKETCHATREPLYMESSAGE_H
+
+#include "rocketchatattachment.h"
+#include "rocketchatmessage.h"
+
+#include <QObject>
+
+class RocketChatReplyMessage :  RocketChatAttachment, RocketChatMessage
+{
+    Q_OBJECT
+public:
+    RocketChatReplyMessage( QString Text, QString Url = "");
+    using RocketChatAttachment::getType;
+    using RocketChatMessage::getMessageString;
+
+signals:
+
+public slots:
+};
+
+#endif // ROCKETCHATREPLYMESSAGE_H
diff --git a/services/messageservice.cpp b/services/messageservice.cpp
index 510e360..524d187 100644
--- a/services/messageservice.cpp
+++ b/services/messageservice.cpp
@@ -164,7 +164,6 @@ QSharedPointer<RocketChatMessage> MessageService::parseMessage( const QJsonObjec
         if ( authorId == userId ) {
             ownMessage = true;
         }
-
         QJsonObject timestampObject = pMessageData[QStringLiteral( "ts" )].toObject();
         qint64 timestamp = 0;
 
-- 
GitLab