From e49064282339bf08f0dfcce4224a20ec055f32ac Mon Sep 17 00:00:00 2001
From: thomascube <thomas@roundcube.net>
Date: Tue, 01 Mar 2011 17:19:19 -0500
Subject: [PATCH] Add skin_logo config option to installer; show drop-down list for skin selection

---
 installer/rcube_install.php |   14 ++++++++++++++
 installer/config.php        |   15 ++++++++++++++-
 2 files changed, 28 insertions(+), 1 deletions(-)

diff --git a/installer/config.php b/installer/config.php
index 5250782..02a3715 100644
--- a/installer/config.php
+++ b/installer/config.php
@@ -500,13 +500,26 @@
 <dd>
 <?php
 
-$input_skin = new html_inputfield(array('name' => '_skin', 'size' => 30, 'id' => "cfgskin"));
+$input_skin = new html_select(array('name' => '_skin', 'id' => "cfgskin"));
+$input_skin->add($RCI->list_skins());
 echo $input_skin->show($RCI->getprop('skin'));
 
 ?>
 <div>Name of interface skin (folder in /skins)</div>
 </dd>
 
+<dt class="propname">skin_logo</dt>
+<dd>
+<?php
+
+$input_skin = new html_inputfield(array('name' => '_skin_logo', 'size' => 50, 'id' => "cfgskinlogo"));
+echo $input_skin->show($RCI->getprop('skin_logo'));
+
+?>
+<div>Custom image to display instead of the Roundcube logo.</div>
+<p class="hint">Enter a URL relative to the document root of this Roundcube installation.</p>
+</dd>
+
 <dt class="propname">pagesize <span class="userconf">*</span></dt>
 <dd>
 <?php
diff --git a/installer/rcube_install.php b/installer/rcube_install.php
index 3f2d1a4..8ff6492 100644
--- a/installer/rcube_install.php
+++ b/installer/rcube_install.php
@@ -511,6 +511,20 @@
     return $select;
   }
   
+  /**
+   * Return a list with available subfolders of the skin directory
+   */
+  function list_skins()
+  {
+    $skins = array();
+    $skindir = INSTALL_PATH . 'skins/';
+    foreach (glob($skindir . '*') as $path) {
+      if (is_dir($path) && is_readable($path)) {
+        $skins[] = substr($path, strlen($skindir));
+      }
+    }
+    return $skins;
+  }
   
   /**
    * Display OK status

--
Gitblit v1.9.1