소스 검색

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;
 }