From c65695b1da77042d6aa7fb7bc6c043033cfbe237 Mon Sep 17 00:00:00 2001 From: Thomas Bruederli Date: Fri, 16 Mar 2012 21:25:45 +0100 Subject: [PATCH] Fix odfviewer plugin to work with latest Roundcube version --- plugins/odfviewer/odfviewer.php | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/plugins/odfviewer/odfviewer.php b/plugins/odfviewer/odfviewer.php index a64cf857..40cf5221 100644 --- a/plugins/odfviewer/odfviewer.php +++ b/plugins/odfviewer/odfviewer.php @@ -75,20 +75,19 @@ class odfviewer extends rcube_plugin */ function get_part($args) { - global $IMAP, $MESSAGE; - if (!$args['download'] && $args['mimetype'] && in_array($args['mimetype'], $this->odf_mimetypes)) { if (empty($_GET['_load'])) { $suffix = preg_match('/(\.\w+)$/', $args['part']->filename, $m) ? $m[1] : '.odt'; $fn = md5(session_id() . $_SERVER['REQUEST_URI']) . $suffix; - + // FIXME: copy file to disk because only apache can send the file correctly $tempfn = $this->tempdir . $fn; if (!file_exists($tempfn)) { $fp = fopen($tempfn, 'w'); - $IMAP->get_message_part($MESSAGE->uid, $args['part']->mime_id, $args['part'], false, $fp); + $imap = rcmail::get_instance()->get_storage(); + $imap->get_message_part($args['uid'], $args['id'], $args['part'], false, $fp); fclose($fp); - + // remember tempfiles in session to clean up on logout $_SESSION['odfviewer']['tempfiles'][] = $fn; }