summaryrefslogtreecommitdiff
path: root/app/models/Feed.php
diff options
context:
space:
mode:
authorGravatar Marien Fressinaud <dev@marienfressinaud.fr> 2012-11-06 21:29:26 +0100
committerGravatar Marien Fressinaud <dev@marienfressinaud.fr> 2012-11-06 21:29:26 +0100
commit87ae244176567ecd83642dc4a2646465aac15a46 (patch)
tree4ade290ec13d0da83ba4c9033a5ba376bc9ead67 /app/models/Feed.php
parent6dfab0b1dcaf70a24c03df12d8977748db933f3d (diff)
Fix issue #10 : On peut désormais charger les articles complets pour des flux incomplets... Nécessite des tests plus approfondis
Diffstat (limited to 'app/models/Feed.php')
-rw-r--r--app/models/Feed.php18
1 files changed, 15 insertions, 3 deletions
diff --git a/app/models/Feed.php b/app/models/Feed.php
index 8bc717a48..7568069b0 100644
--- a/app/models/Feed.php
+++ b/app/models/Feed.php
@@ -79,21 +79,33 @@ class Feed extends Model {
$feed->init ();
$title = $feed->get_title ();
- $this->loadEntries ($feed);
$this->_name (!is_null ($title) ? $title : $this->url);
$this->_website ($feed->get_link ());
$this->_description ($feed->get_description ());
+ $this->loadEntries ($feed);
}
}
private function loadEntries ($feed) {
$entries = array ();
-
+
foreach ($feed->get_items () as $item) {
$title = $item->get_title ();
$author = $item->get_author ();
- $content = $item->get_content ();
$link = $item->get_permalink ();
$date = strtotime ($item->get_date ());
+
+ // Gestion du contenu
+ // On cherche à récupérer les articles en entier... même si le flux ne le propose pas
+ $path = get_path ($this->website ());
+ if ($path) {
+ try {
+ $content = get_content_by_parsing ($item->get_permalink (), $path);
+ } catch (Exception $e) {
+ $content = $item->get_content ();
+ }
+ } else {
+ $content = $item->get_content ();
+ }
$entry = new Entry (
$this->id (),