Changeset 4044
- Timestamp:
- 04/15/11 14:31:34 (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2.2.0.1/expressoMail1_2/inc/class.imap_functions.inc.php
r4025 r4044 100 100 function get_range_msgs2($params) 101 101 { 102 $folder = $params['folder']; 103 $msg_range_begin = $params['msg_range_begin']; 104 $msg_range_end = $params['msg_range_end']; 105 $sort_box_type = $params['sort_box_type']; 106 $sort_box_reverse = $params['sort_box_reverse']; 107 $search_box_type = $params['search_box_type'] != "ALL" && $params['search_box_type'] != "" ? $params['search_box_type'] : false; 108 109 if(!$this->mbox || !is_resource($this->mbox)) 102 // Free others requests 103 session_write_close(); 104 105 $folder = $params['folder']; 106 $msg_range_begin = $params['msg_range_begin']; 107 $msg_range_end = $params['msg_range_end']; 108 $sort_box_type = $params['sort_box_type']; 109 $sort_box_reverse = $params['sort_box_reverse']; 110 $search_box_type = $params['search_box_type'] != "ALL" && $params['search_box_type'] != "" ? $params['search_box_type'] : false; 111 112 if( !$this->mbox || !is_resource( $this->mbox ) ) 110 113 $this->mbox = $this->open_mbox($folder); 111 112 $return = array(); 113 114 if(!$search_box_type || $search_box_type=="UNSEEN" || $search_box_type=="SEEN") { 115 $msgs_info = imap_mailboxmsginfo($this->mbox); 116 117 $return['tot_unseen'] = $search_box_type == "SEEN" ? 0 : $msgs_info->Unread; 118 119 $sort_array_msg = $this-> get_msgs($folder, $sort_box_type, $search_box_type, $sort_box_reverse,$msg_range_begin,$msg_range_end); 120 121 $num_msgs = ($search_box_type=="UNSEEN") ? $msgs_info->Unread : (($search_box_type=="SEEN") ? ($msgs_info->Nmsgs - $msgs_info->Unread) : $msgs_info->Nmsgs); 122 114 115 // Correção para caixas acentuadas; 116 $name_folder = mb_convert_encoding($folder, "UTF7-IMAP","ISO_8859-1"); 117 118 $return = array(); 119 //Para enviar o offset entre o timezone definido pelo usuário e GMT 120 $return['offsetToGMT'] = $this->functions->CalculateDateOffset(); 121 122 $msgs_info = imap_status( $this->mbox,"{".$this->imap_server.":".$this->imap_port.$this->imap_options."}".$name_folder ,SA_ALL ); 123 $num_msgs = $msgs_info->messages; //imap_num_msg($this->mbox); 124 125 $sort_array_msg = $this->get_msgs( $folder, $sort_box_type, $search_box_type, $sort_box_reverse, $msg_range_begin, $msg_range_end ); 126 127 // Total Msg Unseen 128 $return['tot_unseen'] = $msgs_info->unseen; 129 130 // Total Msg 131 $return['num_msgs'] = $msgs_info->messages; 132 133 if( is_array($sort_array_msg) ) 134 { 123 135 $i = 0; 124 if(is_array($sort_array_msg)){ 125 foreach($sort_array_msg as $msg_number => $value) 126 { 127 $temp = $this->get_info_head_msg($msg_number); 128 if(!$temp) 129 return false; 130 131 $return[$i] = $temp; 132 $i++; 133 } 134 } 135 $return['num_msgs'] = $num_msgs; 136 } 137 else { 138 $num_msgs = imap_num_msg($this->mbox); 139 $sort_array_msg = $this-> get_msgs($folder, $sort_box_type, $search_box_type, $sort_box_reverse,$msg_range_begin,$num_msgs); 140 141 142 $return['tot_unseen'] = 0; 143 $i = 0; 144 145 if(is_array($sort_array_msg)){ 146 foreach($sort_array_msg as $msg_number => $value) 147 { 148 $temp = $this->get_info_head_msg($msg_number); 149 if(!$temp) 150 return false; 151 152 if($temp['Unseen'] == 'U' || $temp['Recent'] == 'N'){ 153 $return['tot_unseen']++; 154 } 155 156 if($i <= ($msg_range_end-$msg_range_begin)) 157 $return[$i] = $temp; 158 $i++; 159 } 160 } 161 $return['num_msgs'] = count($sort_array_msg)+($msg_range_begin-1); 162 } 163 return $return; 164 } 165 166 function get_info_head_msg($msg_number) { 136 137 foreach($sort_array_msg as $msg_number => $value) 138 { 139 $temp = $this->get_info_head_msg($msg_number); 140 141 if(!$temp) 142 return false; 143 144 if($i <= ($msg_range_end-$msg_range_begin)) 145 $return[$i] = $temp; 146 147 $i++; 148 } 149 } 150 151 return $return; 152 } 153 154 function get_info_head_msg($msg_number) 155 { 167 156 $head_array = array(); 168 157 include_once("class.imap_attachment.inc.php");
Note: See TracChangeset
for help on using the changeset viewer.