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.: + * + * <b>abc</b> zamieniane jest na \*abc\* + * + * <h1>efg<h1> 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