thomascube
2008-06-20 c719f3c1e06c00fa4723f2f1298b3c94a1bec7e7
program/include/rcube_template.php
@@ -57,11 +57,8 @@
        //$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'];
        // load the correct skin (in case user-defined)
        $this->set_skin($this->config['skin']);
        // add common javascripts
        $javascript = 'var '.JS_OBJECT_NAME.' = new rcube_webmail();';
@@ -113,8 +110,13 @@
     */
    public function set_skin($skin)
    {
   if (!empty($skin) && is_dir('skins/'.$skin) && is_readable('skins/'.$skin))
       $this->config['skin_path'] = 'skins/'.$skin;
        if (!empty($skin) && is_dir('skins/'.$skin) && is_readable('skins/'.$skin))
            $skin_path = 'skins/'.$skin;
        else
            $skin_path = $this->config['skin_path'] ? $this->config['skin_path'] : 'skins/default';
        $this->app->config->set('skin_path', $skin_path);
        $this->config['skin_path'] = $skin_path;
    }
    /**
@@ -125,9 +127,9 @@
     */
    public function template_exists($name)
    {
   $filename = $this->config['skin_path'] . '/templates/' . $name . '.html';
        $filename = $this->config['skin_path'] . '/templates/' . $name . '.html';
   return (is_file($filename) && is_readable($filename));
        return (is_file($filename) && is_readable($filename));
    }
    /**
@@ -216,7 +218,7 @@
     * @uses   self::$js_commands
     * @uses   self::$object_handlers
     */
    public public function reset()
    public function reset()
    {
        $this->env = array();
        $this->js_env = array();
@@ -227,6 +229,20 @@
    /**
     * Redirect to a certain url
     *
     * @param mixed Either a string with the action or url parameters as key-value pairs
     * @see rcmail::url()
     */
    public function redirect($p = array())
    {
        $location = $this->app->url($p);
        header('Location: ' . $location);
        exit;
    }
    /**
     * Send the request output to the client.
     * This will either parse a skin tempalte or send an AJAX response
     *