diff options
| author | 2021-03-09 08:41:01 +0100 | |
|---|---|---|
| committer | 2021-03-09 08:41:01 +0100 | |
| commit | ef4a826e345e2eb7c0013617b3f07cc53ef22ed8 (patch) | |
| tree | 9347f2e14c857626376b224fe40572ae0d695be2 | |
| parent | 385e7f883a3ea39fba4e5dad4a64f1ffe352165d (diff) | |
Reload full content when changed (#3506)
* Reload full content when changed
If an article is changed, reload also its full content when applicable.
* Compute hash before getting full content
* Revert mix two PRs
* Update app/Controllers/feedController.php
| -rwxr-xr-x | app/Controllers/feedController.php | 3 | ||||
| -rw-r--r-- | app/Models/Entry.php | 4 | ||||
| -rw-r--r-- | app/Models/Feed.php | 6 |
3 files changed, 7 insertions, 6 deletions
diff --git a/app/Controllers/feedController.php b/app/Controllers/feedController.php index 25bada492..6c9b16ff4 100755 --- a/app/Controllers/feedController.php +++ b/app/Controllers/feedController.php @@ -377,6 +377,9 @@ class FreshRSS_feed_Controller extends Minz_ActionController { continue; } + // If the entry has changed, there is a good chance for the full content to have changed as well. + $entry->loadCompleteContent(true); + if (!$entryDAO->inTransaction()) { $entryDAO->beginTransaction(); } diff --git a/app/Models/Entry.php b/app/Models/Entry.php index 6e14d43b7..021ceedfb 100644 --- a/app/Models/Entry.php +++ b/app/Models/Entry.php @@ -433,9 +433,9 @@ class FreshRSS_Entry extends Minz_Model { $feed = $this->feed(true); if ($feed != null && trim($feed->pathEntries()) != '') { $entryDAO = FreshRSS_Factory::createEntryDao(); - $entry = $entryDAO->searchByGuid($this->feedId, $this->guid); + $entry = $force ? null : $entryDAO->searchByGuid($this->feedId, $this->guid); - if ($entry && !$force) { + if ($entry) { // l'article existe déjà en BDD, en se contente de recharger ce contenu $this->content = $entry->content(); } else { diff --git a/app/Models/Feed.php b/app/Models/Feed.php index 795337b01..7f52ba52f 100644 --- a/app/Models/Feed.php +++ b/app/Models/Feed.php @@ -467,10 +467,8 @@ class FreshRSS_Feed extends Minz_Model { ); $entry->_tags($tags); $entry->_feed($this); - if ($this->pathEntries != '') { - // Optionally load full content for truncated feeds - $entry->loadCompleteContent(); - } + $entry->hash(); //Must be computed before loading full content + $entry->loadCompleteContent(); // Optionally load full content for truncated feeds yield $entry; } |
