From: Michael M Slusarz Date: Wed, 6 Oct 2010 16:48:45 +0000 (-0600) Subject: Remove horde/Core dependency in HTML Mime Viewer X-Git-Url: https://git.internetallee.de/?a=commitdiff_plain;h=bf581182077282830a58bdfdaa3a82afd4a8c00b;p=horde.git Remove horde/Core dependency in HTML Mime Viewer --- diff --git a/framework/Core/lib/Horde/Core/Factory/MimeViewer.php b/framework/Core/lib/Horde/Core/Factory/MimeViewer.php index 2c5d7eaec..a8d6dc119 100644 --- a/framework/Core/lib/Horde/Core/Factory/MimeViewer.php +++ b/framework/Core/lib/Horde/Core/Factory/MimeViewer.php @@ -115,6 +115,7 @@ class Horde_Core_Factory_MimeViewer case 'Html': $params['browser'] = $GLOBALS['browser']; + $params['external_callback'] = array('Horde', 'externalUrl'); break; case 'Ooo': diff --git a/framework/Mime_Viewer/lib/Horde/Mime/Viewer/Html.php b/framework/Mime_Viewer/lib/Horde/Mime/Viewer/Html.php index b44c40584..177f66846 100644 --- a/framework/Mime_Viewer/lib/Horde/Mime/Viewer/Html.php +++ b/framework/Mime_Viewer/lib/Horde/Mime/Viewer/Html.php @@ -57,7 +57,11 @@ class Horde_Mime_Viewer_Html extends Horde_Mime_Viewer_Base * rendered. * @param array $conf Configuration: *
-     * 'browser' - (Horde_Browser) A browser object.
+     * browser - (Horde_Browser) A browser object.
+     * external_callback - (callback) A callback function that a href URL is
+     *                     passed through. The function must take the original
+     *                     URL as the first parameter.
+     *                     DEFAULT: No callback
      * 
* * @throws InvalidArgumentException @@ -204,8 +208,10 @@ class Horde_Mime_Viewer_Html extends Horde_Mime_Viewer_Base $child->setAttribute('style', ($child->hasAttribute('style') ? rtrim($child->getAttribute('style'), '; ') . ';' : '') . $this->_phishCss); } - /* Try to derefer all external references. */ - $child->setAttribute('href', Horde::externalUrl($val->value)); + if (isset($this->_params['external_callback'])) { + /* Try to derefer all external references. */ + $child->setAttribute('href', call_user_func($this->_params['external_callback'], $val->value)); + } } } }