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