summaryrefslogtreecommitdiff
path: root/program
diff options
context:
space:
mode:
authorthomascube <thomas@roundcube.net>2009-10-28 22:53:40 +0000
committerthomascube <thomas@roundcube.net>2009-10-28 22:53:40 +0000
commit01accaff5b52d8fa53a1821d452f265aef67cef1 (patch)
tree80769e6d5f0ed1aa7bf3659fa3d538ae0fa12ca4 /program
parent2b96b67e8cdb96c7106c76bed307e0b2413379ba (diff)
Add fallback to default skin if the selected one is not available in plugin directory
Diffstat (limited to 'program')
-rw-r--r--program/include/rcube_plugin.php14
1 files changed, 14 insertions, 0 deletions
diff --git a/program/include/rcube_plugin.php b/program/include/rcube_plugin.php
index 5e37764c4..ed30e8f17 100644
--- a/program/include/rcube_plugin.php
+++ b/program/include/rcube_plugin.php
@@ -231,6 +231,20 @@ abstract class rcube_plugin
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