Browse Source

Ça a l'air de marcher, mais il faut tester avec tous les flux.

Christophe HENRY 8 years ago
parent
commit
c709bdb6a6
2 changed files with 16 additions and 0 deletions
  1. 14 0
      Event.class.php
  2. 2 0
      Feed.class.php

+ 14 - 0
Event.class.php

@@ -176,6 +176,20 @@ class Event extends MysqlEntity{
 		return $this->favorite;
 	}
 
+	/** Positionne l'id obtenu de la base de données à partir du guid.
+	    s'il existe. Ne fait rien sinon.
+	@returns l'id en cas de succès, null sinon.
+	*/
+	function setIdFromDb() {
+		/** @TODO: on pourrait initialiser l'objet directement en y mettant
+		    les données, plutôt que de récupérer l'id à part. */
+		assert('!is_null($this->guid)');
+		$result = $this->load(array('guid'=>$this->guid));
+		$id = false===$result ? null : $result->id;
+		if (!empty($id)) $this->id = $id;
+		return $id;
+	}
+
 }
 
 ?>

+ 2 - 0
Feed.class.php

@@ -112,6 +112,8 @@ class Feed extends MysqlEntity{
 			);
 			$event->setLink($item->get_permalink());
 
+			$event->setIdFromDb();
+			
 			//Gestion de la balise enclosure pour les podcasts et autre cochonneries :)
 			$enclosure = $item->get_enclosure();
 			if($enclosure!=null && $enclosure->link!=''){