make feed settings consistent with database

This commit is contained in:
Martin Rotter 2023-07-26 11:03:59 +02:00
parent 020f824100
commit 43cdc5f128
3 changed files with 10 additions and 4 deletions

View File

@ -2200,7 +2200,8 @@ void DatabaseQueries::createOverwriteFeed(const QSqlDatabase& db, Feed* feed, in
q.bindValue(QSL(":open_articles"), feed->openArticlesDirectly());
q.bindValue(QSL(":is_rtl"), feed->isRtl());
q.bindValue(QSL(":add_any_datetime_articles"), feed->addAnyDatetimeArticles());
q.bindValue(QSL(":datetime_to_avoid"), feed->datetimeToAvoid().toMSecsSinceEpoch());
q.bindValue(QSL(":datetime_to_avoid"),
feed->datetimeToAvoid().isValid() ? feed->datetimeToAvoid().toMSecsSinceEpoch() : 0);
auto custom_data = feed->customDatabaseData();
QString serialized_custom_data = serializeCustomData(custom_data);

View File

@ -355,7 +355,11 @@ Assignment DatabaseQueries::getFeeds(const QSqlDatabase& db,
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->setDatetimeToAvoid(query.value(FDS_DB_DATETIME_TO_AVOID_INDEX).toDateTime());
auto dt_avoid = query.value(FDS_DB_DATETIME_TO_AVOID_INDEX).value<qint64>();
feed->setDatetimeToAvoid(dt_avoid > 0 ? TextFactory::parseDateTime(dt_avoid) : QDateTime());
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());

View File

@ -51,7 +51,8 @@ void FormFeedDetails::apply() {
m_feed->setOpenArticlesDirectly(m_ui->m_cbOpenArticlesAutomatically->isChecked());
m_feed->setIsRtl(m_ui->m_cbFeedRTL->isChecked());
m_feed->setAddAnyDatetimeArticles(m_ui->m_cbAddAnyDateArticles->isChecked());
m_feed->setDatetimeToAvoid(m_ui->m_dtDateTimeToAvoid->dateTime());
m_feed->setDatetimeToAvoid(m_ui->m_gbAvoidOldArticles->isChecked() ? m_ui->m_dtDateTimeToAvoid->dateTime()
: QDateTime());
m_feed->setIsSwitchedOff(m_ui->m_cbDisableFeed->isChecked());
m_feed->setIsQuiet(m_ui->m_cbSuppressFeed->isChecked());
@ -106,7 +107,7 @@ void FormFeedDetails::loadFeedData() {
m_ui->m_cbOpenArticlesAutomatically->setChecked(m_feed->openArticlesDirectly());
m_ui->m_cbFeedRTL->setChecked(m_feed->isRtl());
m_ui->m_cbAddAnyDateArticles->setChecked(m_feed->addAnyDatetimeArticles());
m_ui->m_gbAvoidOldArticles->setEnabled(!m_feed->addAnyDatetimeArticles());
m_ui->m_gbAvoidOldArticles->setChecked(m_feed->datetimeToAvoid().isValid());
m_ui->m_dtDateTimeToAvoid->setDateTime(m_feed->datetimeToAvoid());
m_ui->m_cbDisableFeed->setChecked(m_feed->isSwitchedOff());
m_ui->m_cbSuppressFeed->setChecked(m_feed->isQuiet());