/**
  * @param string $rawData
  * @return MailMessage
  */
 function MailMessage($rawData = null, $holdOriginalBody = false)
 {
     ConvertUtils::SetLimits();
     $GLOBALS[MailInputCharset] = isset($GLOBALS[MailInputCharset]) ? $GLOBALS[MailInputCharset] : '';
     MimePart::MimePart($rawData);
     $null = null;
     $this->Attachments = new AttachmentCollection($null);
     $this->TextBodies = new TextBodyCollection($null);
     $this->OriginalMailMessage = '';
     if ($rawData) {
         if ($holdOriginalBody) {
             $this->OriginalMailMessage =& $rawData;
         }
         $this->_setAllParams();
     }
 }
Exemple #2
0
             default:
                 $Error_Desc = UnknownUploadError;
                 break;
         }
     } else {
         $filesize = @filesize($fs->GetFolderFullPath($attfolder) . '/' . $tempname);
         if ($filesize === false) {
             $Error_Desc = MissingTempFile;
         }
     }
 } else {
     $postsize = @ini_get('upload_max_filesize');
     $Error_Desc = $postsize ? FileLargerThan . $postsize : FileIsTooBig;
 }
 if (empty($Error_Desc)) {
     ConvertUtils::SetLimits();
     $isNullFile = true;
     @setlocale(LC_CTYPE, 'en_US.UTF-8');
     $handle = @fopen($fs->GetFolderFullPath($attfolder) . '/' . $tempname, 'rb');
     if (isset($filesize) && $filesize > 0) {
         $isNullFile = false;
     }
     $getdelimiter = fread($handle, 20);
     rewind($handle);
     $pos1 = (int) strpos($getdelimiter, ',');
     $pos2 = (int) strpos($getdelimiter, ';');
     $delimiter = $pos1 > $pos2 ? ',' : ';';
     $expArray = array('e-mail address' => 'HomeEmail', 'e-mailaddress' => 'HomeEmail', 'emailaddress' => 'HomeEmail', 'e-mail' => 'HomeEmail', 'email' => 'HomeEmail', 'notes' => 'Notes', 'homeaddress' => 'HomeStreet', 'home street' => 'HomeStreet', 'homestreet' => 'HomeStreet', 'home city' => 'HomeCity', 'homecity' => 'HomeCity', 'home postal code' => 'HomeZip', 'zip' => 'HomeZip', 'home state' => 'HomeState', 'homestate' => 'HomeState', 'home country/region' => 'HomeCountry', 'home country' => 'HomeCountry', 'homecountry' => 'HomeCountry', 'home phone' => 'HomePhone', 'homephone' => 'HomePhone', 'home fax' => 'HomeFax', 'homefax' => 'HomeFax', 'mobile phone' => 'HomeMobile', 'mobilephone' => 'HomeMobile', 'personal web page' => 'HomeWeb', 'personalwebpage' => 'HomeWeb', 'web page' => 'HomeWeb', 'webpage' => 'HomeWeb', 'company' => 'BusinessCompany', 'business street' => 'BusinessStreet', 'businessstreet' => 'BusinessStreet', 'business city' => 'BusinessCity', 'businesscity' => 'BusinessCity', 'business state' => 'BusinessState', 'businessstate' => 'BusinessState', 'business postal code' => 'BusinessZip', 'business country/region' => 'BusinessCountry', 'business country' => 'BusinessCountry', 'job title' => 'BusinessJobTitle', 'jobtitle' => 'BusinessJobTitle', 'department' => 'BusinessDepartment', 'office location' => 'BusinessOffice', 'officelocation' => 'BusinessOffice', 'business phone' => 'BusinessPhone', 'businessphone' => 'BusinessPhone', 'business fax' => 'BusinessFax', 'businessfax' => 'BusinessFax', 'business web page' => 'BusinessWeb', 'businesswebpage' => 'BusinessWeb');
     $headerArray = array();
     while (($data = fgetcsv($handle, 2000, $delimiter)) !== false) {
         $num = count($data);
 function HeadersFullImapSearchMessages($pageNumber, $condition, $folder, &$refMsgCount)
 {
     $webMailMessageCollection = null;
     if ($this->_account->MailProtocol == MAILPROTOCOL_IMAP4 && ($folder->SyncType == FOLDERSYNC_AllHeadersOnly || $folder->SyncType == FOLDERSYNC_NewHeadersOnly)) {
         ConvertUtils::SetLimits();
         if ($this->MailStorage->Connect()) {
             $imapUids = $this->MailStorage->HeadersBodyImapSearchMessagesUids($folder, $condition);
             if ($imapUids !== false) {
                 if (count($imapUids) > 0) {
                     if (USE_DB && $this->DbStorage->Connect()) {
                         $dbUids = $this->DbStorage->SearchMessagesUids($condition, $folder);
                         if ($dbUids !== false) {
                             if (count($dbUids) > 0) {
                                 $resultUids = array_intersect($dbUids, $imapUids);
                                 $refMsgCount = count($resultUids);
                                 $start = ($pageNumber - 1) * $this->_account->MailsPerPage;
                                 $messageUidSet = array_slice($resultUids, $start, $this->_account->MailsPerPage);
                                 $webMailMessageCollection =& $this->DbStorage->LoadMessageHeadersByIntUids($messageUidSet, $folder);
                                 $webMailMessageCollection->SetAllMessageFolderId($folder->IdDb);
                             } else {
                                 $webMailMessageCollection = new WebMailMessageCollection();
                             }
                         }
                     }
                 } else {
                     $webMailMessageCollection = new WebMailMessageCollection();
                 }
                 //$GLOBALS[MailDefaultCharset] = $this->_account->GetDefaultIncCharset();
                 //$GLOBALS[MailOutputCharset] = $this->_account->GetUserCharset();
                 //$webMailMessageCollection =& $this->MailStorage->DmImapSearchMessages($pageNumber, $folder, $condition, $inHeadersOnly, $refMsgCount);
             }
         }
     }
     return $webMailMessageCollection;
 }
 /**
  * @return FolderCollection
  */
 function GetLSubFolders()
 {
     ConvertUtils::SetLimits();
     $subsScrFolders = $this->_imapMail->list_subscribed_mailbox($this->Account->Delimiter);
     return $subsScrFolders;
 }