From ce22f1e0c68d6813177f5e2177371032f9924a50 Mon Sep 17 00:00:00 2001
From: thomascube <thomas@roundcube.net>
Date: Mon, 21 Nov 2011 09:10:29 -0500
Subject: [PATCH] Show configurable support link in about page; refer on <srcuri> for download link; no link to roundcube.net to avoid tons of support requests

---
 program/steps/settings/about.inc |   22 +++++++++++++++++-----
 1 files changed, 17 insertions(+), 5 deletions(-)

diff --git a/program/steps/settings/about.inc b/program/steps/settings/about.inc
index 1125b70..6776321 100644
--- a/program/steps/settings/about.inc
+++ b/program/steps/settings/about.inc
@@ -20,6 +20,18 @@
 
 */
 
+
+function rcmail_supportlink($attrib)
+{
+  global $RCMAIL;
+  
+  if ($url = $RCMAIL->config->get('support_url')) {
+    $label = $attrub['label'] ? $attrub['label'] : 'support';
+    $attrib['href'] = $url;
+    return html::a($attrib, rcube_label($label));
+  }
+}
+
 function rcmail_plugins_list($attrib)
 {
   global $RCMAIL;
@@ -49,18 +61,18 @@
   $table->add_header('source', rcube_label('source'));
 
   foreach ($plugins as $name => $data) {
-    $uri = $data['uri'] ? $data['uri'] : $data['channel'];
+    $uri = $data['srcuri'];
     if ($uri && stripos($uri, 'http') !== 0) {
       $uri = 'http://' . $uri;
     }
-
+    
     $table->add_row();
     $table->add('name', Q($data['name'] ? $data['name'] : $name));
     $table->add('version', Q($data['version']));
     $table->add('license', $data['license_uri'] ? html::a(array('target' => '_blank', href=> Q($data['license_uri'])),
         Q($data['license'])) : $data['license']);
     $table->add('source', $uri ? html::a(array('target' => '_blank', href=> Q($uri)),
-        Q(rcube_label('source'))) : '');
+        Q(rcube_label('download'))) : '');
   }
 
   return $table->show();
@@ -74,8 +86,7 @@
     'version' => 'string(//rc:package/rc:version/rc:release)',
     'license' => 'string(//rc:package/rc:license)',
     'license_uri' => 'string(//rc:package/rc:license/@uri)',
-    'uri' => 'string(//rc:package/rc:uri)',
-    'channel' => 'string(//rc:package/rc:channel)',
+    'srcuri' => 'string(//rc:package/rc:srcuri)',
   );
 
   $package = INSTALL_PATH . "/plugins/$name/package.xml";
@@ -111,6 +122,7 @@
 
 $OUTPUT->set_pagetitle(rcube_label('about'));
 
+$OUTPUT->add_handler('supportlink', 'rcmail_supportlink');
 $OUTPUT->add_handler('pluginlist', 'rcmail_plugins_list');
 
 $OUTPUT->send('about');

--
Gitblit v1.9.1