From b5c364273d7b026c0deda2326018aabff8bec73c Mon Sep 17 00:00:00 2001
From: Aleksander Machniak <alec@alec.pl>
Date: Mon, 16 Sep 2013 09:55:13 -0400
Subject: [PATCH] Merge pull request #107 from JohnDoh/multi-logo
---
program/include/rcmail_output_html.php | 17 +++++++++++++++--
config/defaults.inc.php | 2 ++
2 files changed, 17 insertions(+), 2 deletions(-)
diff --git a/config/defaults.inc.php b/config/defaults.inc.php
index bf7c4df..95e024c 100644
--- a/config/defaults.inc.php
+++ b/config/defaults.inc.php
@@ -245,6 +245,8 @@
// replace Roundcube logo with this image
// specify an URL relative to the document root of this Roundcube installation
+// an array can be used to specify different logos for specific template files, '*' for default logo
+// for example array("*" => "/images/roundcube_logo.png", "messageprint" => "/images/roundcube_logo_print.png")
$config['skin_logo'] = null;
// automatically create a new Roundcube user when log-in the first time.
diff --git a/program/include/rcmail_output_html.php b/program/include/rcmail_output_html.php
index a2ec29c..6db5593 100644
--- a/program/include/rcmail_output_html.php
+++ b/program/include/rcmail_output_html.php
@@ -924,8 +924,21 @@
}
else if ($object == 'logo') {
$attrib += array('alt' => $this->xml_command(array('', 'object', 'name="productname"')));
- if ($logo = $this->config->get('skin_logo'))
- $attrib['src'] = $logo;
+
+ if ($logo = $this->config->get('skin_logo')) {
+ if (is_array($logo)) {
+ if ($template_logo = $logo[$this->template_name]) {
+ $attrib['src'] = $template_logo;
+ }
+ elseif ($template_logo = $logo['*']) {
+ $attrib['src'] = $template_logo;
+ }
+ }
+ else {
+ $attrib['src'] = $logo;
+ }
+ }
+
$content = html::img($attrib);
}
else if ($object == 'productname') {
--
Gitblit v1.9.1