alecpl
2008-05-29 531abb1a95587cf3fb02c580d89cdc95a32e98d3
program/include/rcube_imap.php
@@ -102,7 +102,7 @@
   * @return boolean  TRUE on success, FALSE on failure
   * @access public
   */
  function connect($host, $user, $pass, $port=143, $use_ssl=null)
  function connect($host, $user, $pass, $port=143, $use_ssl=null, $auth_type='check')
    {
    global $ICL_SSL, $ICL_PORT, $IMAP_USE_INTERNAL_DATE;
    
@@ -119,8 +119,6 @@
    $ICL_PORT = $port;
    $IMAP_USE_INTERNAL_DATE = false;
    $auth_type = rcmail::get_instance()->config->get('imap_auth_type', 'check');
    $this->conn = iil_Connect($host, $user, $pass, array('imap' => $auth_type));
    $this->host = $host;
    $this->user = $user;
@@ -575,10 +573,9 @@
      {
      // retrieve headers from IMAP
      if ($this->get_capability('sort') && ($msg_index = iil_C_Sort($this->conn, $mailbox, $this->sort_field, $this->skip_deleted ? 'UNDELETED' : '')))
        {
        $mymsgidx = array_slice ($msg_index, $begin, $end-$begin, true);
        {
        $mymsgidx = array_slice ($msg_index, $begin, $end-$begin);
        $msgs = join(",", $mymsgidx);
        $headers_sorted = true;
        }
      else
        {
@@ -2503,13 +2500,15 @@
      if (($p = array_search(strtolower($folder), $this->default_folders_lc)) !== false && !$a_defaults[$p])
        $a_defaults[$p] = $folder;
      else
        $a_out[] = $folder;
   {
   $l_folders[$folder] = mb_strtolower(rcube_charset_convert($folder, 'UTF-7'));
   }
      }
    natcasesort($a_out);
    asort($l_folders, SORT_LOCALE_STRING);
    ksort($a_defaults);
    return array_merge($a_defaults, $a_out);
    return array_merge($a_defaults, array_keys($l_folders));
    }
  /**
@@ -2789,7 +2788,7 @@
    */
   function set_sequence_numbers($seqnums)
   {
      $this->sequence_numbers = $seqnums;
      $this->sequence_numbers = array_flip($seqnums);
   }
 
   /**
@@ -2810,19 +2809,6 @@
   }
 
   /**
    * Get the position of a message sequence number in my sequence_numbers array
    *
    * @param int Message sequence number contained in sequence_numbers
    * @return int Position, -1 if not found
    */
   function position_of($seqnum)
   {
      $pos = array_search($seqnum, $this->sequence_numbers);
      if ($pos === false) return -1;
      return $pos;
   }
   /**
    * Sort method called by uasort()
    */
   function compare_seqnums($a, $b)
@@ -2832,12 +2818,11 @@
      $seqb = $b->id;
      
      // then find each sequence number in my ordered list
      $posa = $this->position_of($seqa);
      $posb = $this->position_of($seqb);
      $posa = isset($this->sequence_numbers[$seqa]) ? intval($this->sequence_numbers[$seqa]) : -1;
      $posb = isset($this->sequence_numbers[$seqb]) ? intval($this->sequence_numbers[$seqb]) : -1;
      
      // return the relative position as the comparison value
      $ret = $posa - $posb;
      return $ret;
      return $posa - $posb;
   }
}