alecpl
2008-08-26 9e8e5fa634ace418e6b34280133685485b97a9c0
program/include/rcmail.php
@@ -216,10 +216,9 @@
  public function get_dbh()
  {
    if (!$this->db) {
      $dbclass = "rcube_" . $this->config->get('db_backend', 'mdb2');
      $config_all = $this->config->all();
      $this->db = new $dbclass($config_all['db_dsnw'], $config_all['db_dsnr'], $config_all['db_persistent']);
      $this->db = new rcube_mdb2($config_all['db_dsnw'], $config_all['db_dsnr'], $config_all['db_persistent']);
      $this->db->sqlite_initials = INSTALL_PATH . 'SQL/sqlite.initial.sql';
      $this->db->set_debug((bool)$config_all['sql_debug']);
      $this->db->db_connect('w');
@@ -233,13 +232,17 @@
   * Init output object for GUI and add common scripts.
   * This will instantiate a rcmail_template object and set
   * environment vars according to the current session and configuration
   *
   * @param boolean True if this request is loaded in a (i)frame
   * @return object rcube_template Reference to HTML output object
   */
  public function load_gui($framed = false)
  {
    // init output page
    $this->output = new rcube_template($this->task, $framed);
    if (!($this->output instanceof rcube_template))
      $this->output = new rcube_template($this->task, $framed);
    foreach (array('flag_for_deletion') as $js_config_var) {
    foreach (array('flag_for_deletion','read_when_deleted') as $js_config_var) {
      $this->output->set_env($js_config_var, $this->config->get($js_config_var));
    }
@@ -262,10 +265,13 @@
  
  /**
   * Create an output object for JSON responses
   *
   * @return object rcube_json_output Reference to JSON output object
   */
  public function init_json()
  {
    $this->output = new rcube_json_output($this->task);
    if (!($this->output instanceof rcube_json_output))
      $this->output = new rcube_json_output($this->task);
    
    return $this->output;
  }
@@ -308,7 +314,7 @@
  {
    $conn = false;
    
    if ($_SESSION['imap_host']) {
    if ($_SESSION['imap_host'] && !$this->imap->conn) {
      if (!($conn = $this->imap->connect($_SESSION['imap_host'], $_SESSION['username'], $this->decrypt_passwd($_SESSION['password']), $_SESSION['imap_port'], $_SESSION['imap_ssl'], rcmail::get_instance()->config->get('imap_auth_type', 'check')))) {
        if ($this->output)
          $this->output->show_message($this->imap->error_code == -1 ? 'imaperror' : 'sessionerror', 'error');
@@ -317,7 +323,7 @@
      $this->set_imap_prop();
    }
    return $conn;
    return $conn;
  }
@@ -503,6 +509,8 @@
    else if (empty($default_host)) {
      $host = get_input_value('_host', RCUBE_INPUT_POST);
    }
    else
      $host = $default_host;
    return $host;
  }
@@ -851,7 +859,8 @@
    
    unset($p['task']);
    foreach ($p as $par => $val)
      $url .= '&'.urlencode($par).'='.urlencode($val);
      if (isset($val))
        $url .= '&'.urlencode($par).'='.urlencode($val);
    
    return $url;
  }