This commit is contained in:
Martin Rotter 2025-04-29 07:29:33 +02:00
parent e5053e4fa3
commit 7b3e82b48e
3 changed files with 7 additions and 0 deletions

View file

@ -68,6 +68,7 @@ Here is the reference documentation of types available for your filtering script
| Property | `contents` | `String` | ❌ | ❌ | Contents of the message. | Property | `contents` | `String` | ❌ | ❌ | Contents of the message.
| Property | `rawContents` | `String` | ❌ | ❌ | This is the RAW contents of the message obtained from remote service/feed. A raw XML or JSON element data. This attribute has the value only if `runningFilterWhenFetching` returns `true`. In other words, this attribute is not persistently stored in the RSS Guard's DB. Also, this attribute is artificially filled in with ATOM-like data when testing the filter. | Property | `rawContents` | `String` | ❌ | ❌ | This is the RAW contents of the message obtained from remote service/feed. A raw XML or JSON element data. This attribute has the value only if `runningFilterWhenFetching` returns `true`. In other words, this attribute is not persistently stored in the RSS Guard's DB. Also, this attribute is artificially filled in with ATOM-like data when testing the filter.
| Property | `score` | `Number` | ❌ | ❌ | Arbitrary number in range \<0.0, 100.0\>. You can use this number to sort messages in a custom fashion as this attribute also has its own column in articles list. | Property | `score` | `Number` | ❌ | ❌ | Arbitrary number in range \<0.0, 100.0\>. You can use this number to sort messages in a custom fashion as this attribute also has its own column in articles list.
| Property | `hasEnclosures` | `Boolean` | ✅ | ❌ | Returns `true` if the article has at least one enclosure/attachment. Otherwise returns `false`.
| Property | `created` | `Date` | ❌ | ❌ | Date/time of the message. | Property | `created` | `Date` | ❌ | ❌ | Date/time of the message.
| Property | `isRead` | `Boolean` | ❌ | ✅ | Is message read? | Property | `isRead` | `Boolean` | ❌ | ✅ | Is message read?
| Property | `isImportant` | `Boolean` | ❌ | ✅ | Is message important? | Property | `isImportant` | `Boolean` | ❌ | ✅ | Is message important?

View file

@ -341,3 +341,7 @@ QList<MessageCategory> MessageObject::categories() const {
bool MessageObject::runningFilterWhenFetching() const { bool MessageObject::runningFilterWhenFetching() const {
return m_runningAfterFetching; return m_runningAfterFetching;
} }
bool MessageObject::hasEnclosures() const {
return !m_message->m_enclosures.isEmpty();
}

View file

@ -16,6 +16,7 @@ class MessageObject : public QObject {
Q_PROPERTY(QString feedCustomId READ feedCustomId) Q_PROPERTY(QString feedCustomId READ feedCustomId)
Q_PROPERTY(int accountId READ accountId) Q_PROPERTY(int accountId READ accountId)
Q_PROPERTY(int id READ id) Q_PROPERTY(int id READ id)
Q_PROPERTY(bool hasEnclosures READ hasEnclosures)
Q_PROPERTY(QString customId READ customId WRITE setCustomId) Q_PROPERTY(QString customId READ customId WRITE setCustomId)
Q_PROPERTY(QString title READ title WRITE setTitle) Q_PROPERTY(QString title READ title WRITE setTitle)
Q_PROPERTY(QString url READ url WRITE setUrl) Q_PROPERTY(QString url READ url WRITE setUrl)
@ -106,6 +107,7 @@ class MessageObject : public QObject {
QList<MessageCategory> categories() const; QList<MessageCategory> categories() const;
bool runningFilterWhenFetching() const; bool runningFilterWhenFetching() const;
bool hasEnclosures() const;
// Generic Message's properties bindings. // Generic Message's properties bindings.
QString feedCustomId() const; QString feedCustomId() const;