From 01accaff5b52d8fa53a1821d452f265aef67cef1 Mon Sep 17 00:00:00 2001
From: thomascube <thomas@roundcube.net>
Date: Wed, 28 Oct 2009 18:53:40 -0400
Subject: [PATCH] Add fallback to default skin if the selected one is not available in plugin directory

---
 program/include/rcube_plugin.php |   14 ++++++++++++++
 1 files changed, 14 insertions(+), 0 deletions(-)

diff --git a/program/include/rcube_plugin.php b/program/include/rcube_plugin.php
index 5e37764..ed30e8f 100644
--- a/program/include/rcube_plugin.php
+++ b/program/include/rcube_plugin.php
@@ -231,6 +231,20 @@
     else
       return $fn;
   }
+  
+  /**
+   * Provide path to the currently selected skin folder within the plugin directory
+   * with a fallback to the default skin folder.
+   *
+   * @return string Skin path relative to plugins directory
+   */
+  protected function local_skin_path()
+  {
+      $skin_path = 'skins/'.$this->api->output->config['skin'];
+      if (!is_dir(realpath(slashify($this->home) . $skin_path)))
+        $skin_path = 'skins/default';
+    return $skin_path;
+  }
 
   /**
    * Callback function for array_map

--
Gitblit v1.9.1