Przeglądaj źródła

Petit changement utilisation de la date déclarée des articles

Alexandre Alapetite 12 lat temu
rodzic
commit
a1249e56a7
2 zmienionych plików z 7 dodań i 3 usunięć
  1. 1 1
      CHANGELOG
  2. 6 2
      app/Controllers/feedController.php

+ 1 - 1
CHANGELOG

@@ -62,7 +62,7 @@
 		* Utilise un nom poli “FreshRSS” (évite des problèmes avec certains filtres)
 		* Se limite au répertoire “./FreshRSS/p/i/” pour de meilleures performances HTTP
 			* Les images, CSS, scripts sont servis sans cookie
-		* utilise “HttpOnly” pour plus de sécurité
+		* Utilise “HttpOnly” pour plus de sécurité
 	* Nouvel “agent utilisateur” exposé lors du téléchargement des flux, par exemple :
 		* “FreshRSS/0.7 (Linux; http://freshrss.org) SimplePie/1.3.1”
 	* Affichage du numéro de version dans "À propos"

+ 6 - 2
app/Controllers/feedController.php

@@ -197,6 +197,7 @@ class FreshRSS_feed_Controller extends Minz_ActionController {
 
 				//For this feed, check last n entry GUIDs already in database
 				$existingGuids = array_fill_keys ($entryDAO->listLastGuidsByFeed ($feed->id (), count($entries) + 10), 1);
+				$useDeclaredDate = empty($existingGuids);
 
 				$feedHistory = $feed->keepHistory();
 				if ($feedHistory == -2) {	//default
@@ -207,11 +208,14 @@ class FreshRSS_feed_Controller extends Minz_ActionController {
 				// La BDD refusera l'ajout car (id_feed, guid) doit être unique
 				$feedDAO->beginTransaction ();
 				foreach ($entries as $entry) {
+					$eDate = $entry->date (true);
 					if ((!isset ($existingGuids[$entry->guid ()])) &&
-						(($feedHistory != 0) || ($entry->date (true) >= $date_min))) {
+						(($feedHistory != 0) || ($eDate  >= $date_min))) {
 						$values = $entry->toArray ();
 						//Use declared date at first import, otherwise use discovery date
-						$values['id'] = empty($existingGuids) ? min(time(), $entry->date (true)) . uSecString() : uTimeString();
+						$values['id'] = ($useDeclaredDate || $eDate < $date_min) ?
+							min(time(), $eDate) . uSecString() :
+							uTimeString();
 						$values['is_read'] = $is_read;
 						$entryDAO->addEntry ($values);
 					}