Просмотр исходного кода

OPML : améliorations

Charge et sauve la description des flux.
Redirige vers la page d'accueil après une importation OPML (maintenant
rapide, et pour mieux permettre le rafraîchissement des flux avec moins
de risques que l'utilisateur quitte la page)

Suite de https://github.com/marienfressinaud/FreshRSS/issues/228
Alexandre Alapetite 12 лет назад
Родитель
Сommit
65c972873b
3 измененных файлов с 10 добавлено и 9 удалено
  1. 3 3
      app/controllers/feedController.php
  2. 2 4
      app/models/Feed.php
  3. 5 2
      lib/lib_rss.php

+ 3 - 3
app/controllers/feedController.php

@@ -340,10 +340,10 @@ class feedController extends ActionController {
 		Session::_param ('notification', $notif);
 		Session::_param ('actualize_feeds', true);
 
-		// et on redirige vers la page import/export
+		// et on redirige vers la page d'accueil
 		Request::forward (array (
-			'c' => 'configure',
-			'a' => 'importExport'
+			'c' => 'index',
+			'a' => 'index'
 		), true);
 	}
 

+ 2 - 4
app/models/Feed.php

@@ -247,10 +247,8 @@ class Feed extends Model {
 					$this->_url ($subscribe_url);
 				}
 
-				if (empty($this->name)) {	// May come from OPML
-					$title = $feed->get_title ();
-					$this->_name (!is_null ($title) ? $title : $this->url);
-				}
+				$title = $feed->get_title ();
+				$this->_name (!is_null ($title) ? $title : $this->url);
 
 				$this->_website ($feed->get_link ());
 				$this->_description ($feed->get_description ());

+ 5 - 2
lib/lib_rss.php

@@ -91,7 +91,7 @@ function opml_export ($cats) {
 		$txt .= '<outline text="' . $cat['name'] . '">' . "\n";
 
 		foreach ($cat['feeds'] as $feed) {
-			$txt .= "\t" . '<outline text="' . $feed->name () . '" type="rss" xmlUrl="' . $feed->url () . '" htmlUrl="' . $feed->website () . '" />' . "\n";
+			$txt .= "\t" . '<outline text="' . $feed->name () . '" type="rss" xmlUrl="' . $feed->url () . '" htmlUrl="' . $feed->website () . '" description="' . $feed->description () . '" />' . "\n";
 		}
 
 		$txt .= '</outline>' . "\n";
@@ -201,7 +201,10 @@ function getFeed ($outline, $cat_id) {
 	$feed->_category ($cat_id);
 	$feed->_name ($title);
 	if (isset($outline['htmlUrl'])) {
-		$feed->_website((string)$outline['htmlUrl']);
+		$feed->_website(htmlspecialchars((string)$outline['htmlUrl'], ENT_QUOTES, 'UTF-8'));
+	}
+	if (isset($outline['description'])) {
+		$feed->_description(htmlspecialchars((string)$outline['description'], ENT_QUOTES, 'UTF-8'));
 	}
 	return $feed;
 }