From 495ef5b443452f92fae14adbcace0d73ec0f7e41 Mon Sep 17 00:00:00 2001 From: alec Date: Sun, 15 Jun 2008 09:19:47 +0000 Subject: - Added option to select skin in user preferences (#1485031) - template_exists() moved to rcube_template class git-svn-id: https://svn.roundcube.net/trunk@1539 208e9e7b-5314-0410-a742-e7e81cd9613c --- roundcubemail/program/include/rcube_template.php | 27 ++++++++++++++++++++++++ 1 file changed, 27 insertions(+) (limited to 'roundcubemail/program/include/rcube_template.php') diff --git a/roundcubemail/program/include/rcube_template.php b/roundcubemail/program/include/rcube_template.php index 5834e42ab..9bc918e9a 100755 --- a/roundcubemail/program/include/rcube_template.php +++ b/roundcubemail/program/include/rcube_template.php @@ -57,6 +57,12 @@ class rcube_template extends rcube_html_page //$this->framed = $framed; $this->set_env('task', $task); + // load the correct skin (in case user-defined) + if (empty($this->config['skin']) || !is_readable('skins/'.$this->config['skin'])) + $this->config['skin'] = $this->config['default_skin']; + + $this->config['skin_path'] = 'skins/'.$this->config['skin']; + // add common javascripts $javascript = 'var '.JS_OBJECT_NAME.' = new rcube_webmail();'; @@ -102,6 +108,27 @@ class rcube_template extends rcube_html_page $this->pagetitle = $title; } + /** + * Set skin + */ + public function set_skin($skin) + { + if (!empty($skin) && is_dir('skins/'.$skin) && is_readable('skins/'.$skin)) + $this->config['skin_path'] = 'skins/'.$skin; + } + + /** + * Check if a specific template exists + * + * @param string Template name + * @return boolean True if template exists + */ + public function template_exists($name) + { + $filename = $this->config['skin_path'] . '/templates/' . $name . '.html'; + + return (is_file($filename) && is_readable($filename)); + } /** * Register a template object handler -- cgit v1.2.3