work on article ignore/limit
This commit is contained in:
parent
869e0d1f70
commit
796fbf916e
|
@ -518,14 +518,16 @@ void FeedDownloader::removeDuplicateMessages(QList<Message>& messages) {
|
|||
}
|
||||
|
||||
void FeedDownloader::removeTooOldMessages(Feed* feed, QList<Message>& msgs) {
|
||||
if (!feed->addAnyDatetimeArticles()) {
|
||||
const Feed::ArticleIgnoreLimit art = feed->articleIgnoreLimit();
|
||||
|
||||
if (!art.m_addAnyArticlesToDb) {
|
||||
QDateTime dt_to_avoid;
|
||||
|
||||
if (feed->datetimeToAvoid().isValid() && feed->datetimeToAvoid().toMSecsSinceEpoch() > 0) {
|
||||
dt_to_avoid = feed->datetimeToAvoid();
|
||||
if (art.m_dtToAvoid.isValid() && art.m_dtToAvoid.toMSecsSinceEpoch() > 0) {
|
||||
dt_to_avoid = art.m_dtToAvoid;
|
||||
}
|
||||
else if (feed->hoursToAvoid() > 0) {
|
||||
dt_to_avoid = QDateTime::currentDateTimeUtc().addSecs((feed->hoursToAvoid() * -3600));
|
||||
else if (art.m_hoursToAvoid > 0) {
|
||||
dt_to_avoid = QDateTime::currentDateTimeUtc().addSecs((art.m_hoursToAvoid * -3600));
|
||||
}
|
||||
else if (qApp->settings()->value(GROUP(Messages), SETTING(Messages::AvoidOldArticles)).toBool()) {
|
||||
QDateTime global_dt_to_avoid =
|
||||
|
|
|
@ -2554,11 +2554,14 @@ void DatabaseQueries::createOverwriteFeed(const QSqlDatabase& db, Feed* feed, in
|
|||
q.bindValue(QSL(":is_quiet"), feed->isQuiet());
|
||||
q.bindValue(QSL(":open_articles"), feed->openArticlesDirectly());
|
||||
q.bindValue(QSL(":is_rtl"), feed->isRtl());
|
||||
q.bindValue(QSL(":add_any_datetime_articles"), feed->addAnyDatetimeArticles());
|
||||
|
||||
const Feed::ArticleIgnoreLimit art = feed->articleIgnoreLimit();
|
||||
|
||||
q.bindValue(QSL(":add_any_datetime_articles"), art.m_addAnyArticlesToDb);
|
||||
q.bindValue(QSL(":datetime_to_avoid"),
|
||||
(feed->datetimeToAvoid().isValid() && feed->datetimeToAvoid().toMSecsSinceEpoch() > 0)
|
||||
? feed->datetimeToAvoid().toMSecsSinceEpoch()
|
||||
: feed->hoursToAvoid());
|
||||
(art.m_dtToAvoid.isValid() && art.m_dtToAvoid.toMSecsSinceEpoch() > 0)
|
||||
? art.m_dtToAvoid.toMSecsSinceEpoch()
|
||||
: art.m_hoursToAvoid);
|
||||
|
||||
auto custom_data = feed->customDatabaseData();
|
||||
QString serialized_custom_data = serializeCustomData(custom_data);
|
||||
|
|
|
@ -381,17 +381,21 @@ Assignment DatabaseQueries::getFeeds(const QSqlDatabase& db,
|
|||
feed->setIsSwitchedOff(query.value(FDS_DB_IS_OFF_INDEX).toBool());
|
||||
feed->setIsQuiet(query.value(FDS_DB_IS_QUIET_INDEX).toBool());
|
||||
feed->setIsRtl(query.value(FDS_DB_IS_RTL_INDEX).toBool());
|
||||
feed->setAddAnyDatetimeArticles(query.value(FDS_DB_ADD_ANY_DATETIME_ARTICLES_INDEX).toBool());
|
||||
|
||||
Feed::ArticleIgnoreLimit art;
|
||||
|
||||
art.m_addAnyArticlesToDb = query.value(FDS_DB_ADD_ANY_DATETIME_ARTICLES_INDEX).toBool();
|
||||
|
||||
qint64 time_to_avoid = query.value(FDS_DB_DATETIME_TO_AVOID_INDEX).value<qint64>();
|
||||
|
||||
if (time_to_avoid > 10000) {
|
||||
feed->setDatetimeToAvoid(TextFactory::parseDateTime(time_to_avoid));
|
||||
art.m_dtToAvoid = TextFactory::parseDateTime(time_to_avoid);
|
||||
}
|
||||
else {
|
||||
feed->setHoursToAvoid(time_to_avoid);
|
||||
art.m_hoursToAvoid = time_to_avoid;
|
||||
}
|
||||
|
||||
feed->setArticleIgnoreLimit(art);
|
||||
feed->setOpenArticlesDirectly(query.value(FDS_DB_OPEN_ARTICLES_INDEX).toBool());
|
||||
|
||||
qDebugNN << LOGSEC_CORE << "Custom ID of feed when loading from DB is" << QUOTE_W_SPACE_DOT(feed->customId());
|
||||
|
|
|
@ -19,7 +19,7 @@ ArticleAmountControl::ArticleAmountControl(QWidget* parent) : QWidget(parent) {
|
|||
false);
|
||||
|
||||
m_ui.m_spinArticleCount->setSpecialValueText(tr("all articles"));
|
||||
m_ui.m_cbAddAnyDateArticles->setChecked(true);
|
||||
// m_ui.m_cbAddAnyDateArticles->setChecked(true);
|
||||
m_ui.m_dtDateTimeToAvoid->setEnabled(false);
|
||||
m_ui.m_spinHoursAvoid->setEnabled(false);
|
||||
m_ui.m_spinHoursAvoid->setMode(TimeSpinBox::Mode::DaysHours);
|
||||
|
@ -57,7 +57,7 @@ void ArticleAmountControl::setForAppWideFeatures(bool app_wide, bool batch_edit)
|
|||
m_ui.m_cbAddAnyDateArticles->setVisible(false);
|
||||
}
|
||||
else {
|
||||
connect(m_ui.m_cbAddAnyDateArticles, &QCheckBox::toggled, m_ui.m_gbAvoidOldArticles, &QGroupBox::setEnabled);
|
||||
connect(m_ui.m_cbAddAnyDateArticles, &QCheckBox::toggled, m_ui.m_wdgAvoidOldArticles, &QGroupBox::setDisabled);
|
||||
}
|
||||
|
||||
if (batch_edit) {
|
||||
|
@ -78,7 +78,7 @@ void ArticleAmountControl::setForAppWideFeatures(bool app_wide, bool batch_edit)
|
|||
}
|
||||
}
|
||||
|
||||
void ArticleAmountControl::load(const Setup& setup) {
|
||||
void ArticleAmountControl::load(const Feed::ArticleIgnoreLimit& setup) {
|
||||
// Ignoring articles.
|
||||
if (setup.m_dtToAvoid.isValid() && setup.m_dtToAvoid.toMSecsSinceEpoch() > 0) {
|
||||
m_ui.m_rbAvoidAbsolute->setChecked(true);
|
||||
|
@ -90,6 +90,7 @@ void ArticleAmountControl::load(const Setup& setup) {
|
|||
}
|
||||
|
||||
m_ui.m_gbAvoidOldArticles->setChecked(setup.m_avoidOldArticles);
|
||||
m_ui.m_cbAddAnyDateArticles->setChecked(setup.m_addAnyArticlesToDb);
|
||||
|
||||
// Limitting articles.
|
||||
m_ui.m_spinArticleCount->setValue(setup.m_keepCountOfArticles);
|
||||
|
@ -98,8 +99,8 @@ void ArticleAmountControl::load(const Setup& setup) {
|
|||
m_ui.m_cbNoRemoveUnread->setChecked(setup.m_doNotRemoveUnread);
|
||||
}
|
||||
|
||||
ArticleAmountControl::Setup ArticleAmountControl::save() const {
|
||||
Setup setup;
|
||||
Feed::ArticleIgnoreLimit ArticleAmountControl::save() const {
|
||||
Feed::ArticleIgnoreLimit setup;
|
||||
|
||||
// Ignoring articles.
|
||||
setup.m_addAnyArticlesToDb = m_ui.m_cbAddAnyDateArticles->isChecked();
|
||||
|
@ -121,29 +122,31 @@ ArticleAmountControl::Setup ArticleAmountControl::save() const {
|
|||
return setup;
|
||||
}
|
||||
|
||||
bool isChangeAllowed(MultiFeedEditCheckBox* mcb) {
|
||||
return mcb->isChecked();
|
||||
bool isChangeAllowed(MultiFeedEditCheckBox* mcb, bool batch_edit) {
|
||||
return !batch_edit || mcb->isChecked();
|
||||
}
|
||||
|
||||
void ArticleAmountControl::saveFeed(Feed* fd) const {
|
||||
if (isChangeAllowed(m_ui.m_mcbAddAnyDateArticles)) {
|
||||
fd->setAddAnyDatetimeArticles(m_ui.m_cbAddAnyDateArticles->isChecked());
|
||||
void ArticleAmountControl::saveFeed(Feed* fd, bool batch_edit) const {
|
||||
Feed::ArticleIgnoreLimit& art = fd->articleIgnoreLimit();
|
||||
|
||||
if (isChangeAllowed(m_ui.m_mcbAddAnyDateArticles, batch_edit)) {
|
||||
art.m_addAnyArticlesToDb = m_ui.m_cbAddAnyDateArticles->isChecked();
|
||||
}
|
||||
|
||||
if (isChangeAllowed(m_ui.m_mcbAvoidOldArticles)) {
|
||||
if (isChangeAllowed(m_ui.m_mcbAvoidOldArticles, batch_edit)) {
|
||||
if (m_ui.m_gbAvoidOldArticles->isChecked()) {
|
||||
if (m_ui.m_rbAvoidAbsolute->isChecked()) {
|
||||
fd->setDatetimeToAvoid(m_ui.m_dtDateTimeToAvoid->dateTime());
|
||||
fd->setHoursToAvoid(0);
|
||||
art.m_dtToAvoid = m_ui.m_dtDateTimeToAvoid->dateTime();
|
||||
art.m_hoursToAvoid = 0;
|
||||
}
|
||||
else {
|
||||
fd->setDatetimeToAvoid({});
|
||||
fd->setHoursToAvoid(m_ui.m_spinHoursAvoid->value());
|
||||
art.m_dtToAvoid = {};
|
||||
art.m_hoursToAvoid = m_ui.m_spinHoursAvoid->value();
|
||||
}
|
||||
}
|
||||
else {
|
||||
fd->setDatetimeToAvoid({});
|
||||
fd->setHoursToAvoid(0);
|
||||
art.m_dtToAvoid = {};
|
||||
art.m_hoursToAvoid = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
|
||||
#include "ui_articleamountcontrol.h"
|
||||
|
||||
class Feed;
|
||||
#include "services/abstract/feed.h"
|
||||
|
||||
class ArticleAmountControl : public QWidget {
|
||||
Q_OBJECT
|
||||
|
@ -15,28 +15,14 @@ class ArticleAmountControl : public QWidget {
|
|||
friend class FormFeedDetails;
|
||||
|
||||
public:
|
||||
struct Setup {
|
||||
// Ignoring articles.
|
||||
bool m_avoidOldArticles = false;
|
||||
bool m_addAnyArticlesToDb = false;
|
||||
QDateTime m_dtToAvoid = QDateTime();
|
||||
int m_hoursToAvoid = 0;
|
||||
|
||||
// Limitting articles.
|
||||
int m_keepCountOfArticles = 0;
|
||||
bool m_doNotRemoveStarred = true;
|
||||
bool m_doNotRemoveUnread = true;
|
||||
bool m_moveToBinDontPurge = false;
|
||||
};
|
||||
|
||||
explicit ArticleAmountControl(QWidget* parent = nullptr);
|
||||
|
||||
void setForAppWideFeatures(bool app_wide, bool batch_edit);
|
||||
|
||||
void load(const Setup& setup);
|
||||
Setup save() const;
|
||||
void load(const Feed::ArticleIgnoreLimit& setup);
|
||||
Feed::ArticleIgnoreLimit save() const;
|
||||
|
||||
void saveFeed(Feed* fd) const;
|
||||
void saveFeed(Feed* fd, bool batch_edit) const;
|
||||
|
||||
private slots:
|
||||
void updateArticleCountSuffix(int count);
|
||||
|
|
|
@ -29,7 +29,7 @@
|
|||
<item>
|
||||
<widget class="QTabWidget" name="tabWidget">
|
||||
<property name="currentIndex">
|
||||
<number>1</number>
|
||||
<number>0</number>
|
||||
</property>
|
||||
<widget class="QWidget" name="m_tabIgnore">
|
||||
<attribute name="title">
|
||||
|
@ -72,9 +72,6 @@
|
|||
</property>
|
||||
<item>
|
||||
<widget class="QGroupBox" name="m_gbAvoidOldArticles">
|
||||
<property name="enabled">
|
||||
<bool>true</bool>
|
||||
</property>
|
||||
<property name="title">
|
||||
<string>Avoid adding articles before this date/time into the database</string>
|
||||
</property>
|
||||
|
|
|
@ -283,7 +283,7 @@ void SettingsFeedsMessages::loadSettings() {
|
|||
->setChecked(settings()->value(GROUP(Messages), SETTING(Messages::UseLegacyArticleFormat)).toBool());
|
||||
}
|
||||
|
||||
ArticleAmountControl::Setup art_limit;
|
||||
Feed::ArticleIgnoreLimit art_limit;
|
||||
art_limit.m_avoidOldArticles = settings()->value(GROUP(Messages), SETTING(Messages::AvoidOldArticles)).toBool();
|
||||
art_limit.m_dtToAvoid = settings()->value(GROUP(Messages), SETTING(Messages::DateTimeToAvoidArticle)).toDateTime();
|
||||
art_limit.m_hoursToAvoid = settings()->value(GROUP(Messages), SETTING(Messages::HoursToAvoidArticle)).toInt();
|
||||
|
@ -413,7 +413,7 @@ void SettingsFeedsMessages::saveSettings() {
|
|||
m_ui->m_cbLegacyArticleFormatting->isChecked());
|
||||
}
|
||||
|
||||
ArticleAmountControl::Setup art_limit = m_ui->m_wdgArticleLimiting->save();
|
||||
Feed::ArticleIgnoreLimit art_limit = m_ui->m_wdgArticleLimiting->save();
|
||||
|
||||
settings()->setValue(GROUP(Messages), Messages::AvoidOldArticles, art_limit.m_avoidOldArticles);
|
||||
settings()->setValue(GROUP(Messages), Messages::DateTimeToAvoidArticle, art_limit.m_dtToAvoid);
|
||||
|
|
|
@ -16,8 +16,7 @@ Feed::Feed(RootItem* parent)
|
|||
: RootItem(parent), m_source(QString()), m_status(Status::Normal), m_statusString(QString()),
|
||||
m_autoUpdateType(AutoUpdateType::DefaultAutoUpdate), m_autoUpdateInterval(DEFAULT_AUTO_UPDATE_INTERVAL),
|
||||
m_lastUpdated(QDateTime::currentDateTimeUtc()), m_isSwitchedOff(false), m_isQuiet(false),
|
||||
m_openArticlesDirectly(false), m_isRtl(false), m_addAnyDatetimeArticles(false), m_datetimeToAvoid(QDateTime()),
|
||||
m_hoursToAvoid(0), m_messageFilters(QList<QPointer<MessageFilter>>()) {
|
||||
m_openArticlesDirectly(false), m_isRtl(false), m_messageFilters(QList<QPointer<MessageFilter>>()) {
|
||||
setKind(RootItem::Kind::Feed);
|
||||
}
|
||||
|
||||
|
@ -39,9 +38,7 @@ Feed::Feed(const Feed& other) : RootItem(other) {
|
|||
setLastUpdated(other.lastUpdated());
|
||||
setMessageFilters(other.messageFilters());
|
||||
setOpenArticlesDirectly(other.openArticlesDirectly());
|
||||
setAddAnyDatetimeArticles(other.addAnyDatetimeArticles());
|
||||
setDatetimeToAvoid(other.datetimeToAvoid());
|
||||
setHoursToAvoid(other.hoursToAvoid());
|
||||
setArticleIgnoreLimit(Feed::ArticleIgnoreLimit(other.articleIgnoreLimit()));
|
||||
setIsRtl(other.isRtl());
|
||||
setIsSwitchedOff(other.isSwitchedOff());
|
||||
setIsQuiet(other.isQuiet());
|
||||
|
@ -203,22 +200,6 @@ void Feed::setIsRtl(bool rtl) {
|
|||
m_isRtl = rtl;
|
||||
}
|
||||
|
||||
bool Feed::addAnyDatetimeArticles() const {
|
||||
return m_addAnyDatetimeArticles;
|
||||
}
|
||||
|
||||
void Feed::setAddAnyDatetimeArticles(bool add_any_articles) {
|
||||
m_addAnyDatetimeArticles = add_any_articles;
|
||||
}
|
||||
|
||||
QDateTime Feed::datetimeToAvoid() const {
|
||||
return m_datetimeToAvoid;
|
||||
}
|
||||
|
||||
void Feed::setDatetimeToAvoid(const QDateTime& dt) {
|
||||
m_datetimeToAvoid = dt;
|
||||
}
|
||||
|
||||
void Feed::appendMessageFilter(MessageFilter* filter) {
|
||||
m_messageFilters.append(QPointer<MessageFilter>(filter));
|
||||
}
|
||||
|
@ -313,12 +294,16 @@ QString Feed::getStatusDescription() const {
|
|||
}
|
||||
}
|
||||
|
||||
int Feed::hoursToAvoid() const {
|
||||
return m_hoursToAvoid;
|
||||
Feed::ArticleIgnoreLimit& Feed::articleIgnoreLimit() {
|
||||
return m_articleIgnoreLimit;
|
||||
}
|
||||
|
||||
void Feed::setHoursToAvoid(int hours_to_avoid) {
|
||||
m_hoursToAvoid = hours_to_avoid;
|
||||
const Feed::ArticleIgnoreLimit& Feed::articleIgnoreLimit() const {
|
||||
return m_articleIgnoreLimit;
|
||||
}
|
||||
|
||||
void Feed::setArticleIgnoreLimit(const ArticleIgnoreLimit& ignore_limit) {
|
||||
m_articleIgnoreLimit = ignore_limit;
|
||||
}
|
||||
|
||||
bool Feed::isQuiet() const {
|
||||
|
|
|
@ -16,6 +16,20 @@ class Feed : public RootItem {
|
|||
Q_OBJECT
|
||||
|
||||
public:
|
||||
struct ArticleIgnoreLimit {
|
||||
// Ignoring articles.
|
||||
bool m_avoidOldArticles = false;
|
||||
bool m_addAnyArticlesToDb = false;
|
||||
QDateTime m_dtToAvoid = QDateTime();
|
||||
int m_hoursToAvoid = 0;
|
||||
|
||||
// Limitting articles.
|
||||
int m_keepCountOfArticles = 0;
|
||||
bool m_doNotRemoveStarred = true;
|
||||
bool m_doNotRemoveUnread = true;
|
||||
bool m_moveToBinDontPurge = false;
|
||||
};
|
||||
|
||||
// Specifies the auto-download strategy for the feed.
|
||||
enum class AutoUpdateType {
|
||||
DontAutoUpdate = 0,
|
||||
|
@ -91,14 +105,9 @@ class Feed : public RootItem {
|
|||
bool isRtl() const;
|
||||
void setIsRtl(bool rtl);
|
||||
|
||||
bool addAnyDatetimeArticles() const;
|
||||
void setAddAnyDatetimeArticles(bool add_any_articles);
|
||||
|
||||
QDateTime datetimeToAvoid() const;
|
||||
void setDatetimeToAvoid(const QDateTime& dt);
|
||||
|
||||
int hoursToAvoid() const;
|
||||
void setHoursToAvoid(int hours_to_avoid);
|
||||
ArticleIgnoreLimit& articleIgnoreLimit();
|
||||
const ArticleIgnoreLimit& articleIgnoreLimit() const;
|
||||
void setArticleIgnoreLimit(const ArticleIgnoreLimit& ignore_limit);
|
||||
|
||||
public slots:
|
||||
virtual void updateCounts(bool including_total_count);
|
||||
|
@ -122,9 +131,8 @@ class Feed : public RootItem {
|
|||
// NOTE: These are used to filter out older articles
|
||||
// than needed. Either absolute value is given (date/time)
|
||||
// or relative value given in minutes.
|
||||
bool m_addAnyDatetimeArticles;
|
||||
QDateTime m_datetimeToAvoid;
|
||||
int m_hoursToAvoid;
|
||||
// Amount
|
||||
ArticleIgnoreLimit m_articleIgnoreLimit;
|
||||
|
||||
int m_totalCount{};
|
||||
int m_unreadCount{};
|
||||
|
@ -133,5 +141,6 @@ class Feed : public RootItem {
|
|||
|
||||
Q_DECLARE_METATYPE(Feed::AutoUpdateType)
|
||||
Q_DECLARE_METATYPE(Feed::Status)
|
||||
Q_DECLARE_METATYPE(Feed::ArticleIgnoreLimit)
|
||||
|
||||
#endif // FEED_H
|
||||
|
|
|
@ -55,7 +55,7 @@ void FormFeedDetails::apply() {
|
|||
fd->setIsRtl(m_ui.m_cbFeedRTL->isChecked());
|
||||
}
|
||||
|
||||
m_ui.m_wdgArticleLimiting->saveFeed(fd);
|
||||
m_ui.m_wdgArticleLimiting->saveFeed(fd, m_isBatchEdit);
|
||||
|
||||
if (isChangeAllowed(m_ui.m_mcbDisableFeed)) {
|
||||
fd->setIsSwitchedOff(m_ui.m_cbDisableFeed->isChecked());
|
||||
|
@ -149,8 +149,9 @@ void FormFeedDetails::loadFeedData() {
|
|||
m_ui.m_cbDisableFeed->setChecked(fd->isSwitchedOff());
|
||||
m_ui.m_cbSuppressFeed->setChecked(fd->isQuiet());
|
||||
|
||||
ArticleAmountControl::Setup art_limit;
|
||||
Feed::ArticleIgnoreLimit art_limit = Feed::ArticleIgnoreLimit(fd->articleIgnoreLimit());
|
||||
|
||||
/*
|
||||
art_limit.m_addAnyArticlesToDb = fd->addAnyDatetimeArticles();
|
||||
art_limit.m_avoidOldArticles =
|
||||
(fd->datetimeToAvoid().isValid() && fd->datetimeToAvoid().toMSecsSinceEpoch() > 0) || fd->hoursToAvoid() > 0;
|
||||
|
@ -161,6 +162,7 @@ void FormFeedDetails::loadFeedData() {
|
|||
art_limit.m_doNotRemoveUnread = false;
|
||||
art_limit.m_keepCountOfArticles = 4;
|
||||
art_limit.m_moveToBinDontPurge = false;
|
||||
*/
|
||||
|
||||
m_ui.m_wdgArticleLimiting->load(art_limit);
|
||||
}
|
||||
|
|
|
@ -492,11 +492,15 @@ QMap<QString, QVariantMap> ServiceRoot::storeCustomFeedsData() {
|
|||
feed_custom_data.insert(QSL("is_quiet"), feed->isQuiet());
|
||||
feed_custom_data.insert(QSL("open_articles_directly"), feed->openArticlesDirectly());
|
||||
feed_custom_data.insert(QSL("is_rtl"), feed->isRtl());
|
||||
feed_custom_data.insert(QSL("add_any_datetime_articles"), feed->addAnyDatetimeArticles());
|
||||
|
||||
feed_custom_data.insert(QSL("article_limit_ignore"), QVariant::fromValue(feed->articleIgnoreLimit()));
|
||||
|
||||
/*
|
||||
feed_custom_data.insert(QSL("datetime_to_avoid"),
|
||||
(feed->datetimeToAvoid().isValid() && feed->datetimeToAvoid().toMSecsSinceEpoch() > 0)
|
||||
? feed->datetimeToAvoid().toMSecsSinceEpoch()
|
||||
: feed->hoursToAvoid());
|
||||
*/
|
||||
|
||||
// NOTE: This is here specifically to be able to restore custom sort order.
|
||||
// Otherwise the information is lost when list of feeds/folders is refreshed from remote
|
||||
|
@ -547,6 +551,11 @@ void ServiceRoot::restoreCustomFeedsData(const QMap<QString, QVariantMap>& data,
|
|||
feed->setIsQuiet(feed_custom_data.value(QSL("is_quiet")).toBool());
|
||||
feed->setOpenArticlesDirectly(feed_custom_data.value(QSL("open_articles_directly")).toBool());
|
||||
feed->setIsRtl(feed_custom_data.value(QSL("is_rtl")).toBool());
|
||||
|
||||
feed
|
||||
->setArticleIgnoreLimit(feed_custom_data.value(QSL("article_limit_ignore")).value<Feed::ArticleIgnoreLimit>());
|
||||
|
||||
/*
|
||||
feed->setAddAnyDatetimeArticles(feed_custom_data.value(QSL("add_any_datetime_articles")).toBool());
|
||||
|
||||
qint64 time_to_avoid = feed_custom_data.value(QSL("datetime_to_avoid")).value<qint64>();
|
||||
|
@ -557,6 +566,7 @@ void ServiceRoot::restoreCustomFeedsData(const QMap<QString, QVariantMap>& data,
|
|||
else {
|
||||
feed->setHoursToAvoid(time_to_avoid);
|
||||
}
|
||||
*/
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue