Вход Регистрация
Файл: setk/mail/classes/class.Email.php
Строк: 21
<?php 

/**
* Класс для работы с почтой
* Автор: alex-borisi
* ICQ:   587863132
* Сайт:  http://nasimbe.ru
*/

class Email extends ImapMailbox
{
    
/**
    * Заменяет все HTML сущности
    * @return Text
    */
    
    
public function getHtmlText($string) {
        
        
$searchHTML = array ("'<script[^>]*?>.*?</script>'si",
                              
"'<s*brs*([^>]*)>'si",  
                              
"'<[/!]*?[^<>]*?>'si"
                              
"'([rn])[s]+'",  
                              
"'&(quot|#34);'i"
                              
"'&(amp|#38);'i",
                              
"'&(lt|#60);'i",
                              
"'&(gt|#62);'i",
                              
"'&(nbsp|#160);'i",
                              
"'&(iexcl|#161);'i",
                              
"'&(cent|#162);'i",
                              
"'&(pound|#163);'i",
                              
"'&(copy|#169);'i",
                              
"'&#(d+);'e");
                              
        
$replaceHTML = array ("",
                              
"n",
                              
"",
                              
"\1",
                              
""",
                              "
&",
                              "
<",
                              "
>",
                              " ",
                              chr(161),
                              chr(162),
                              chr(163),
                              chr(169),
                              "
chr(\1)");
                              
        return preg_replace(
$searchHTML$replaceHTML$string);
    }
    
    /**
    * Cоздает массив со списком всех сообщений
    */
    
    public function getListMessages() {
        
$mail = array();
        
$list = $this->searchMailbox('ALL');
        
        foreach (
$list AS $key => $value) {
            
$mail[$key] = $this->getMail($value); 
            
            if (
$mail[$key]->textPlain) {
                
$mail[$key]->message = $mail[$key]->textPlain;
            } elseif (
$mail[$key]->textHtml) {
                
$mail[$key]->message = $this->getHtmlText($mail[$key]->textHtml);
            } else {
                
$mail[$key]->message = '';
            }
            
            unset(
$mail[$key]->textPlain, $mail[$key]->textHtml);
        }
        
        return 
$mail;
    }
}
Онлайн: 0
Реклама