diff --git a/resources/text/CHANGELOG b/resources/text/CHANGELOG
index f523affbc..578cb8af3 100644
--- a/resources/text/CHANGELOG
+++ b/resources/text/CHANGELOG
@@ -16,7 +16,7 @@
Added:
- - Brand new "service plugin system" - HIGHLY EXPERIMENTAL and REWRITTEN from scratch. Expect bugs and misunderstandings now! Major parts of RSS Guard were completely rewritten.
+ - Brand new "service plugin system" - HIGHLY EXPERIMENTAL and REWRITTEN from scratch. Expect bugs and misunderstandings now! Major parts of RSS Guard were completely rewritten. Note that some functionality was TEMPORARILY removed, this includes "newspaper view".
- Added ability to completely disable notifications (bug #128).
- Added ability to go to next unread message. (partially bug #112)
diff --git a/src/services/abstract/serviceroot.cpp b/src/services/abstract/serviceroot.cpp
index 61c002824..773475c68 100755
--- a/src/services/abstract/serviceroot.cpp
+++ b/src/services/abstract/serviceroot.cpp
@@ -20,7 +20,7 @@
#include "core/feedsmodel.h"
-ServiceRoot::ServiceRoot(RootItem *parent) : RootItem(parent) {
+ServiceRoot::ServiceRoot(RootItem *parent) : RootItem(parent), m_accountId(NO_PARENT_CATEGORY) {
setKind(RootItemKind::ServiceRoot);
}
@@ -46,3 +46,11 @@ void ServiceRoot::requestItemReassignment(RootItem *item, RootItem *new_parent)
void ServiceRoot::requestItemRemoval(RootItem *item) {
emit itemRemovalRequested(item);
}
+
+int ServiceRoot::accountId() const {
+ return m_accountId;
+}
+
+void ServiceRoot::setAccountId(int account_id) {
+ m_accountId = account_id;
+}
diff --git a/src/services/abstract/serviceroot.h b/src/services/abstract/serviceroot.h
index f178ad4da..8868143ee 100755
--- a/src/services/abstract/serviceroot.h
+++ b/src/services/abstract/serviceroot.h
@@ -135,6 +135,9 @@ class ServiceRoot : public RootItem {
void requestItemReassignment(RootItem *item, RootItem *new_parent);
void requestItemRemoval(RootItem *item);
+ int accountId() const;
+ void setAccountId(int account_id);
+
signals:
// Emitted if data in any item belonging to this root are changed.
void dataChanged(QList items);
@@ -143,6 +146,9 @@ class ServiceRoot : public RootItem {
void itemReassignmentRequested(RootItem *item, RootItem *new_parent);
void itemRemovalRequested(RootItem *item);
+
+ private:
+ int m_accountId;
};
#endif // SERVICEROOT_H
diff --git a/src/services/standard/standardserviceentrypoint.cpp b/src/services/standard/standardserviceentrypoint.cpp
index 8d979815c..730255b73 100755
--- a/src/services/standard/standardserviceentrypoint.cpp
+++ b/src/services/standard/standardserviceentrypoint.cpp
@@ -74,7 +74,7 @@ ServiceRoot *StandardServiceEntryPoint::createNewRoot() {
if (query.exec(QString("INSERT INTO Accounts (id, type) VALUES (%1, '%2');").arg(QString::number(id_to_assing),
SERVICE_CODE_STD_RSS))) {
StandardServiceRoot *root = new StandardServiceRoot(true);
- root->setId(id_to_assing);
+ root->setAccountId(id_to_assing);
return root;
}
else {
@@ -91,7 +91,7 @@ QList StandardServiceEntryPoint::initializeSubtree() {
if (query.exec(QString("SELECT id FROM Accounts WHERE type = '%1';").arg(SERVICE_CODE_STD_RSS))) {
while (query.next()) {
StandardServiceRoot *root = new StandardServiceRoot(true);
- root->setId(query.value(0).toInt());
+ root->setAccountId(query.value(0).toInt());
roots.append(root);
}
}
diff --git a/src/services/standard/standardserviceroot.cpp b/src/services/standard/standardserviceroot.cpp
index 623178b6c..7752375da 100755
--- a/src/services/standard/standardserviceroot.cpp
+++ b/src/services/standard/standardserviceroot.cpp
@@ -144,7 +144,7 @@ QVariant StandardServiceRoot::data(int column, int role) const {
switch (role) {
case Qt::ToolTipRole:
if (column == FDS_MODEL_TITLE_INDEX) {
- return tr("This is service account for standard RSS/RDF/ATOM feeds.");
+ return tr("This is service account for standard RSS/RDF/ATOM feeds.\n\nAccount ID: %1").arg(accountId());
}
else if (column == FDS_MODEL_COUNTS_INDEX) {
//: Tooltip for "unread" column of feed list.
diff --git a/src/services/tt-rss/definitions.h b/src/services/tt-rss/definitions.h
index c77b7ff11..9a96dfed7 100755
--- a/src/services/tt-rss/definitions.h
+++ b/src/services/tt-rss/definitions.h
@@ -4,8 +4,12 @@
#define MINIMAL_API_LEVEL 10
#define CONTENT_TYPE "application/json; charset=utf-8"
-// Error when user needs to login before making an operation.
-#define NOT_LOGGED_IN "NOT_LOGGED_IN"
+///
+/// Errors.
+///
+#define NOT_LOGGED_IN "NOT_LOGGED_IN" // Error when user needs to login before making an operation.
+#define UNKNOWN_METHOD "UNKNOWN_METHOD" // Given "op" is not recognized.
+#define INCORRECT_USAGE "INCORRECT_USAGE" // Given "op" was used with bad parameters.
// General return status codes.
#define API_STATUS_OK 0
@@ -19,21 +23,4 @@
// Logout.
#define LOGOUT_OK "OK"
-
-/* //login
- * QtJson::JsonObject obj;
- obj["op"] = "login";
- obj["user"] = "admin";
- obj["password"] = "Zy69tKWF";
-
- QByteArray arr;
- NetworkResult res = NetworkFactory::uploadData("http://rss.rotterovi.eu/api/",
- 15000,
- QtJson::serialize(obj),
- "application/json; charset=utf-8",
- arr);
-
- obj = QtJson::parse(QString::fromUtf8(arr)).toMap();*/
-
#endif // DEFINITIONS_H
-
diff --git a/src/services/tt-rss/network/ttrssnetworkfactory.cpp b/src/services/tt-rss/network/ttrssnetworkfactory.cpp
index 8c300cc77..9028613f5 100755
--- a/src/services/tt-rss/network/ttrssnetworkfactory.cpp
+++ b/src/services/tt-rss/network/ttrssnetworkfactory.cpp
@@ -22,7 +22,8 @@
#include "network-web/networkfactory.h"
-TtRssNetworkFactory::TtRssNetworkFactory() : m_url(QString()) {
+TtRssNetworkFactory::TtRssNetworkFactory()
+ : m_url(QString()), m_username(QString()), m_password(QString()), m_session_Id(QString()) {
}
TtRssNetworkFactory::~TtRssNetworkFactory() {
@@ -65,7 +66,9 @@ LoginResult TtRssNetworkFactory::login() {
return LoginResult(res.first, TtRssLoginResponse());
}
else {
- return LoginResult(res.first, TtRssLoginResponse(QString::fromUtf8(result)));
+ LoginResult result(res.first, TtRssLoginResponse(QString::fromUtf8(result)));
+ m_session_Id = result.second.sessionId();
+ return result;
}
}
diff --git a/src/services/tt-rss/network/ttrssnetworkfactory.h b/src/services/tt-rss/network/ttrssnetworkfactory.h
index 52f559ec5..c6ce09028 100755
--- a/src/services/tt-rss/network/ttrssnetworkfactory.h
+++ b/src/services/tt-rss/network/ttrssnetworkfactory.h
@@ -73,6 +73,7 @@ class TtRssNetworkFactory {
QString m_url;
QString m_username;
QString m_password;
+ QString m_session_Id;
};
#endif // TTRSSNETWORKFACTORY_H