From 6464666075170b006501c4f12d6a2f470300af46 Mon Sep 17 00:00:00 2001 From: Alexandre Alapetite Date: Thu, 7 Nov 2013 19:18:52 +0100 Subject: Plus de tolérance pour les flux MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Utilise une méthode moins stricte qui tolère des erreurs XML dans les flux. Le choix de l'encodage en entrée a dû être légèrement changé car SimplePie a une stratégie d'essayer plusieurs encodages jusqu'à en trouver un qui marche. En étant moins strict sur les erreurs, ça marche plus souvent, et du coup les encodages n'étaient plus bon. À essayer avec plein de flux. Tous mes flux passent (~150). Devrait permettre de fermer https://github.com/marienfressinaud/FreshRSS/issues/233 Fonctionne aussi avec des flux à encodage invalide comme http://travaux.ovh.net/rss.php qui se déclare en "text/xml" (du coup ASCII) mais dans le flux avec un entête XML déclarant de l'UTF-8 --- app/i18n/en.php | 2 +- app/i18n/fr.php | 2 +- app/models/Feed.php | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) (limited to 'app') diff --git a/app/i18n/en.php b/app/i18n/en.php index bf4d3f550..9366287c3 100644 --- a/app/i18n/en.php +++ b/app/i18n/en.php @@ -76,7 +76,7 @@ return array ( 'already_subscribed' => 'You have already subscribed to %s', 'feed_added' => 'RSS feed %s has been added', 'feed_not_added' => '%s could not be added', - 'internal_problem_feed' => 'An internal problem occurred, RSS feed could not be added', + 'internal_problem_feed' => 'The RSS feed could not be added. Check FressRSS logs for details.', 'invalid_url' => 'URL %s is invalid', 'feed_actualized' => '%s has been updated', 'n_feeds_actualized' => '%d feeds have been updated', diff --git a/app/i18n/fr.php b/app/i18n/fr.php index 3af8fef7c..0cb40fd82 100644 --- a/app/i18n/fr.php +++ b/app/i18n/fr.php @@ -76,7 +76,7 @@ return array ( 'already_subscribed' => 'Vous êtes déjà abonné à %s', 'feed_added' => 'Le flux %s a bien été ajouté', 'feed_not_added' => '%s n’ a pas pu être ajouté', - 'internal_problem_feed' => 'Un problème interne a été rencontré, le flux n’a pas pu être ajouté', + 'internal_problem_feed' => 'Le flux n’a pas pu être ajouté. Consulter les logs de FreshRSS pour plus de détails.', 'invalid_url' => 'L’url %s est invalide', 'feed_actualized' => '%s a été mis à jour', 'n_feeds_actualized' => '%d flux ont été mis à jour', diff --git a/app/models/Feed.php b/app/models/Feed.php index 97fa7aabc..3877c5b33 100644 --- a/app/models/Feed.php +++ b/app/models/Feed.php @@ -117,7 +117,7 @@ class Feed extends Model { if (empty ($value)) { throw new BadUrlException ($value); } - if (!preg_match ('#^https?://#', $value)) { + if (!preg_match ('#^https?://#i', $value)) { $value = 'http://' . $value; } -- cgit v1.2.3