From 664fe7e953423790f556a0e9093a3d9667848567 Mon Sep 17 00:00:00 2001
From: Jacek Kowalski <Jacek@jacekk.info>
Date: Fri, 12 Feb 2016 23:24:39 +0000
Subject: [PATCH] [mod_rss] Poprawka ładowania kanałów RSS (external entites)

---
 class/BotMsg.php |   46 +++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 41 insertions(+), 5 deletions(-)

diff --git a/class/BotMsg.php b/class/BotMsg.php
index 54c6afa..bf58ce9 100644
--- a/class/BotMsg.php
+++ b/class/BotMsg.php
@@ -1,11 +1,33 @@
 <?php
 class BotMsgException extends Exception {}
+
+/**
+ * Interfejs dla klas przetwarzających wiadomości wychodzące
+ * do formatu właściwego dla danej sieci.
+ */
 interface BotMsgInterface {
+	/**
+	 * Konstruktor
+	 * @param BotMsg $msg Wiadomość do przetworzenia
+	 */
 	function __construct(BotMsg $msg);
+	/**
+	 * Zwraca przetworzoną wiadomość
+	 * @return string Wiadomość po przetworzeniu
+	 */
 	function __toString();
+	
+	/**
+	 * Podaje na wyjście (np. za pomocą echo) wiadomość w formacie
+	 * odpowiednim dla danego API, uwzględniając nagłówki HTTP
+	 * i inne konieczne elementy.
+	 */
 	function sendPullResponse();
 }
 
+/**
+ * Klasa reprezentująca wiadomość wychodzącą.
+ */
 class BotMsg {
 	private $beautiful = TRUE;
 	private $parser = NULL;
@@ -14,14 +36,28 @@
 	private $raw = '';
 	
 	/**
-	 * Włącza lub wyłącza "upiększanie" konwertowanej do czystego tekstu wiadomości, np.:
-	 * <b>abc</b> zamieniane jest na *abc*
-	 * <h1>efg</h1> przechodzi w = efg =
+	 * Włącza lub wyłącza "upiększanie" konwertowanej
+	 * do czystego tekstu ({@link BotMsg::getText()}) wiadomości, np.:
+	 *
+	 * &lt;b&gt;abc&lt;/b&gt; zamieniane jest na \*abc\*
+	 *
+	 * &lt;h1&gt;efg&lt;h1&gt; przechodzi w = efg =
+	 *
 	 * Domyślnie włączone
 	 * @param bool $set Ustawienie "upiększania"
 	 */
+	function setBeautiful($set = FALSE) {
+		if($this->beautiful != $set) {
+			$this->text = $this->html = $this->parser = NULL;
+			$this->beautiful = (bool)$set;
+		}
+	}
+	
+	/**
+	 * @deprecated Zastąpiono funkcją {@link BotMsg::setBeautiful()}
+	 */
 	function beautifulText($set = FALSE) {
-		$this->beautiful = (bool)$set;
+		$this->setBeautiful($set);
 	}
 	
 	/**
@@ -204,7 +240,7 @@
 			}
 		}
 		
-		return $return;
+		return trim($return);
 	}
 	
 	private function parseHTMLDOM($dom) {

--
Gitblit v1.9.1