/** * @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(); } }
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; }