From 15909472e8e196663092221b4289c9038f19dc07 Mon Sep 17 00:00:00 2001 From: Jacek Kowalski <Jacek@jacekk.info> Date: Sun, 12 Aug 2012 13:25:59 +0000 Subject: [PATCH] Poprawienie obsługi obrazków przy wiadomości typu PULL. --- class/BotMsgGG.php | 32 +++++++++++++++++++++++++------- 1 files changed, 25 insertions(+), 7 deletions(-) diff --git a/class/BotMsgGG.php b/class/BotMsgGG.php index 4f5638e..acd339d 100644 --- a/class/BotMsgGG.php +++ b/class/BotMsgGG.php @@ -6,7 +6,6 @@ private $parser; private $html = ''; private $old = ''; - private $img = ''; private $format = ''; private $images = array(); @@ -49,15 +48,35 @@ /** * Zwraca wiadomość zgodną z BotAPI Gadu-Gadu, którą można przekazać bezpośrednio do BotMastera - * @param bool $img Czy dołączać obrazki? + * @param NULL|bool $img Czy dołączać obrazki? * @return string */ - function getGG($image = TRUE) { - if($image) { - $image = $this->img; + function getGG($image = NULL) { + if($image === FALSE) { + $image = ''; + } + elseif($image === TRUE) { + $last = array_pop($this->images); + if(count($this->images) > 0) { + $push = new BotAPIGG(); + foreach($this->images as $data) { + $push->putImage($image[3]); + } + } + + $image = $last[2].file_get_contents($last[3]); } else { + if(count($this->images) > 0) { + $push = new BotAPIGG(); + foreach($this->images as $data) { + if(!$push->existsImage($image[2])) { + $push->putImage($image[3]); + } + } + } + $image = ''; } @@ -309,11 +328,10 @@ $crc = hash_file('crc32b', $src); $name = sprintf('%08s%08x', $crc, $size); - $this->images[$src] = array($crc, $size, $name); + $this->images[$src] = array($crc, $size, $name, $src); } $node->setAttribute('name', $name); - $this->img = $name.file_get_contents($src); $this->format .= pack('vC', mb_strlen($this->old), self::FORMAT_IMAGE) .pack('CCVV', 0x09, 0x01, $size, hexdec($crc)); -- Gitblit v1.9.1