Преглед на файлове

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 години
родител
ревизия
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;
 }