Upgrade of NC server API usage + corresponding activity queries and properties includ...
authorDominique Fuchs <32204802+DominiqueFuchs@users.noreply.github.com>
Thu, 16 Jan 2020 11:43:04 +0000 (12:43 +0100)
committerDominique Fuchs <32204802+DominiqueFuchs@users.noreply.github.com>
Thu, 16 Jan 2020 11:43:04 +0000 (12:43 +0100)
Signed-off-by: Dominique Fuchs <32204802+DominiqueFuchs@users.noreply.github.com>
src/gui/tray/ActivityData.h
src/gui/tray/ActivityListModel.cpp
src/gui/tray/NotificationHandler.cpp

index d2f3c864f43e2a96ce0b3e9f1bebb3f63e3b29d4..d912a7e3c6611e4ec4966bd1cd34bbf5cacb3236 100644 (file)
@@ -56,6 +56,7 @@ public:
 
     Type _type;
     qlonglong _id;
+    QString _fileAction;
     QString _objectType;
     QString _subject;
     QString _message;
@@ -64,6 +65,7 @@ public:
     QUrl _link;
     QDateTime _dateTime;
     QString _accName;
+    QString _icon;
 
     // Stores information about the error
     int _status;
index 6baf302d09329e988864c186d74480e13756c7a8..701c543eed909d6eed1a21c268bf06d6345177de 100644 (file)
@@ -203,13 +203,14 @@ void ActivityListModel::startFetchJob()
     if (!_accountState->isConnected()) {
         return;
     }
-    JsonApiJob *job = new JsonApiJob(_accountState->account(), QLatin1String("ocs/v2.php/cloud/activity"), this);
+    //JsonApiJob *job = new JsonApiJob(_accountState->account(), QLatin1String("ocs/v2.php/cloud/activity"), this);
+    JsonApiJob *job = new JsonApiJob(_accountState->account(), QLatin1String("ocs/v2.php/apps/activity/api/v2/activity"), this);
     QObject::connect(job, &JsonApiJob::jsonReceived,
         this, &ActivityListModel::slotActivitiesReceived);
 
     QUrlQuery params;
-    params.addQueryItem(QLatin1String("start"), QString::number(_currentItem));
-    params.addQueryItem(QLatin1String("count"), QString::number(100));
+    params.addQueryItem(QLatin1String("since"), QString::number(_currentItem));
+    params.addQueryItem(QLatin1String("limit"), QString::number(50));
     job->addQueryParams(params);
 
     _currentlyFetching = true;
@@ -239,13 +240,16 @@ void ActivityListModel::slotActivitiesReceived(const QJsonDocument &json, int st
 
         Activity a;
         a._type = Activity::ActivityType;
+        a._objectType = json.value("object_type").toString();
         a._accName = ast->account()->displayName();
         a._id = json.value("id").toInt();
+        a._fileAction = json.value("type").toString();
         a._subject = json.value("subject").toString();
         a._message = json.value("message").toString();
-        a._file = json.value("file").toString();
+        a._file = json.value("object_name").toString();
         a._link = QUrl(json.value("link").toString());
-        a._dateTime = QDateTime::fromString(json.value("date").toString(), Qt::ISODate);
+        a._dateTime = QDateTime::fromString(json.value("datetime").toString(), Qt::ISODate);
+        a._icon = json.value("icon").toString();
         list.append(a);
     }
 
index f1594b4dd6835195811f9de9c762e32bd92167b1..ff218f9258b4be8fe62aa72a0634aad7fa7a6234 100644 (file)
@@ -102,6 +102,7 @@ void ServerNotificationHandler::slotNotificationsReceived(const QJsonDocument &j
 
         a._subject = json.value("subject").toString();
         a._message = json.value("message").toString();
+        a._icon = json.value("icon").toString();
 
         if (!json.value("icon").toString().isEmpty()) {
             IconJob *iconJob = new IconJob(QUrl(json.value("icon").toString()));