public function getDate($raw = false) { return $raw ? $this->date : decodeMimeStr($this->date); }
function getEmailMsg($header, $body, $user_detail = null, $chk_mbyt = null) { $fromEmail = $header->from['0']->mailbox . "@" . $header->from['0']->host; //mail id of sender $fromNamenext = $header->from['0']->mailbox; //name of sender $user_detailRegex = ''; $notifyRegex = ''; if ($fromNamenext) { $fromNamenextRegex = "/^On(.*){$fromNamenext}(.*)/i"; } $fromName = isset($header->from['0']->personal) ? decodeMimeStr($header->from['0']->personal) : null; //name of sender if ($fromName) { $frmNmRegex = "/^On(.*){$fromName}(.*)/i"; } $toEmail = $header->to['0']->mailbox . "@" . $header->to['0']->host; //to mail id $toName = isset($header->to['0']->personal) ? decodeMimeStr($header->to['0']->personal) : null; //to name if ($toName) { $toNmRegex = "/^On(.*){$toName}(.*)/i"; } //get rid of any quoted text in the email body if (strpos($header->message_id, "blackberry")) { $msgpos = strpos($body, "Sent from"); $msg = substr($body, 0, $msgpos - 3); } else { $body_array = explode("\n", $body); @($patterns = array("/^_________________________________________________________________\$/", "/^-*(.*)Original Message(.*)-*/i", "/^On(.*)wrote:(.*)/i", $frmNmRegex, $fromNamenextRegex, $toNmRegex, "/^(.*){$toEmail}(.*)wrote:(.*)/i", "/^(.*){$fromEmail}(.*)wrote:(.*)/i", "/^>(.*)/i", "/^---(.*)On(.*)wrote:(.*)/i")); if ($user_detail && !empty($user_detail)) { foreach ($user_detail as $uk => $uv) { $user_detail_temp = $uv['name'] . ' ' . $uv['last_name']; $user_detailRegex = "/^On(.*){$user_detail_temp}(.*)/i"; array_splice($patterns, 3, 0, $user_detailRegex); } } $message = ""; foreach ($body_array as $key => $value) { if ($chk_mbyt) { $value = strip_tags($value, '<br><li><ul><ol><u><i><p><span>'); if (stristr($value, 'Just REPLY to this Email the same will be added under the Task')) { $value_t = explode('Just REPLY to this Email', $value); $value = trim($value_t[0]); } } foreach ($patterns as $pattern) { if (trim($pattern) && preg_match($pattern, $value, $matches)) { break 2; } } if (stristr($value, 'Just REPLY to this Email the same will be added under the Task')) { } else { $message .= "{$value}\n"; //add line to body } } if (stristr($message, '*De :*')) { $t_message = explode('*De :*', $message); $message = $t_message[0]; } $msg = $message; // = str_replace("*", "", $message); $msgpos = ''; if (strpos($message, "Sent from")) { if (strpos($message, "Sent from my iPhone")) { $msgpos = strpos($message, "Sent from my iPhone"); $msg = substr($message, 0, $msgpos); } else { $msgpos = strpos($message, "Sent from"); $msg = substr($message, 0, $msgpos); } } if (strpos($message, "Content-Transfer-Encoding: quoted-printable") && trim(@$msg) == "") { if (strpos($message, $cmpmsg)) { $msgpos = strpos($message, $cmpmsg); $msg = substr($message, 0, $msgpos); } if (strpos(@$msg, "Content-Type: text/plain; charset=ISO-8859-1")) { $msgposion = strpos($msg, "Content-Type: text/plain; charset=ISO-8859-1"); $msg = substr($msg, $msgposion + 44); } else { $msgpos = strpos($message, "Content-Transfer-Encoding: quoted-printable"); $msg = substr($message, $msgpos + 43); $msgpos1 = strpos($msg, "Original Message"); $msgpos1 = $msgpos1 - 5; $msg = substr($msg, 0, $msgpos1); $carimap = array("=C3=A9", "=C3=A8", "=C3=AA", "=C3=AB", "=C3=A7", "=C3=A0", "=20", "=C3=80", "=C3=89"); $carhtml = array("é", "è", "ê", "ë", "ç", "à", " ", "À", "É"); $msg = str_replace($carimap, $carhtml, $msg); } } else { if (strpos($message, "Original Message") && trim(@$msg) == "") { $msgpos2 = strpos($message, "Original Message"); $msgpos2 = $msgpos2 - 5; $msg = substr($message, 0, $msgpos2); $carimap = array("=C3=A9", "=C3=A8", "=C3=AA", "=C3=AB", "=C3=A7", "=C3=A0", "=20", "=C3=80", "=C3=89"); $carhtml = array("é", "è", "ê", "ë", "ç", "à", " ", "À", "É"); $msg = str_replace($carimap, $carhtml, $msg); } } if (strpos($message, "From:") && strpos($message, "Sent:") && strpos($message, "To:") && strpos($message, "Subject:") && trim(@$msg) == "") { $carimap = array("=C3=A9", "=C3=A8", "=C3=AA", "=C3=AB", "=C3=A7", "=C3=A0", "=20", "=C3=80", "=C3=89"); $carhtml = array("é", "è", "ê", "ë", "ç", "à", " ", "À", "É"); $message = str_replace($carimap, $carhtml, $message); $msgpos = strpos($message, "From:"); $msgpos = $msgpos - 5; $msg = substr($message, 0, $msgpos); $msg1 = substr($message, 0, $msgpos); if (strpos($msg, "Content-Transfer-Encoding: quoted-printable")) { $msgepos = strpos($msg, "Content-Transfer-Encoding: quoted-printable"); $msg = substr($msg, $msgepos + 43); } if (strpos($message, "Content-Transfer-Encoding: quoted-printable") && !strpos($msg1, "Content-Transfer-Encoding: quoted-printable")) { $msgpos = strpos($message, "Content-Transfer-Encoding: quoted-printable"); $msg = substr($message, $msgpos + 43); $msgpos1 = strpos($msg, "Original Message"); $msgpos1 = $msgpos1 - 5; $msg = substr($msg, 0, $msgpos1); $carimap = array("=C3=A9", "=C3=A8", "=C3=AA", "=C3=AB", "=C3=A7", "=C3=A0", "=20", "=C3=80", "=C3=89"); $carhtml = array("é", "è", "ê", "ë", "ç", "à", " ", "À", "É"); $msg = str_replace($carimap, $carhtml, $msg); } if (strpos($message, "Original Message")) { $msgpos2 = strpos($message, "Original Message"); $msgpos2 = $msgpos2 - 6; $msg = substr($message, 0, $msgpos2); $carimap = array("=C3=A9", "=C3=A8", "=C3=AA", "=C3=AB", "=C3=A7", "=C3=A0", "=20", "=C3=80", "=C3=89"); $carhtml = array("é", "è", "ê", "ë", "ç", "à", " ", "À", "É"); $msg = str_replace($carimap, $carhtml, $msg); } } } if (strpos($msg, "Content-Type: text/html; charset=UTF-8")) { $stpos = strpos($msg, "Content-Type: text/html; charset=UTF-8") + 71; $msg = substr($msg, $stpos); } if (strpos($msg, "Content-Transfer-Encoding: 7bit")) { $stpos = strpos($msg, "Content-Transfer-Encoding: 7bit") + 32; $msg = substr($msg, $stpos); } if (strpos(@$msg, "Content-Type: text/plain; charset=ISO-8859-1")) { $msgposion = strpos($msg, "Content-Type: text/plain; charset=ISO-8859-1"); $msg = substr($msg, $msgposion + 44); } //echo $msg;exit; if (strpos($msg, "\r\n\r\n\r\n\r\n\r\n\r\n")) { $msg = str_replace("\r\n\r\n\r\n\r\n\r\n\r\n", "\n", $msg); } if (strpos($msg, "\r\n\r\n\r\n\r\n\r\n")) { $msg = str_replace("\r\n\r\n\r\n\r\n\r\n", "\n", $msg); } if (strpos($msg, "\r\n\r\n\r\n\r\n")) { $msg = str_replace("\r\n\r\n\r\n\r\n", "\n", $msg); } if (strpos($msg, "\r\n\r\n\r\n")) { $msg = str_replace("\r\n\r\n\r\n", "\n", $msg); } if (strpos($msg, "\r\n\r\n")) { $msg = str_replace("\r\n\r\n", "\n", $msg); } $strim = array("/**/", "/*", "*/", "**", "*", "=A0", "=", "<br />"); @($msg = str_replace($strim, "", $msg)); if (strpos(@$msg, FROM_EMAIL_NOTIFY)) { $msg = substr($msg, 0, strpos($msg, "From:")); } $msg = strip_tags($msg); $msg = nl2br(trim($msg)); return trim($msg); }
function getEmailMsg($header, $body) { $fromEmail = $header->from['0']->mailbox . "@" . $header->from['0']->host; //mail id of sender $fromName = isset($header->from['0']->personal) ? decodeMimeStr($header->from['0']->personal) : null; //name of sender if ($fromName) { $frmNmRegex = "/^On(.*){$fromName}(.*)/i"; } $toEmail = $header->to['0']->mailbox . "@" . $header->to['0']->host; //to mail id $toName = isset($header->to['0']->personal) ? decodeMimeStr($header->to['0']->personal) : null; //to name if ($toName) { $toNmRegex = "/^On(.*){$toName}(.*)/i"; } //get rid of any quoted text in the email body if (strpos($header->message_id, "blackberry")) { $msgpos = strpos($body, "Sent from"); $msg = substr($body, 0, $msgpos - 3); } else { $body_array = explode("\n", $body); $patterns = array("/^_________________________________________________________________\$/", "/^-*(.*)Original Message(.*)-*/i", "/^On(.*)wrote:(.*)/i", $frmNmRegex, $toNmRegex, "/^(.*){$toEmail}(.*)wrote:(.*)/i", "/^(.*){$fromEmail}(.*)wrote:(.*)/i", "/^>(.*)/i", "/^---(.*)On(.*)wrote:(.*)/i"); $message = ""; foreach ($body_array as $key => $value) { foreach ($patterns as $pattern) { if (trim($pattern) && preg_match($pattern, $value, $matches)) { break 2; } } $message .= "{$value}\n"; //add line to body } $msg = $message; // = str_replace("*", "", $message); $msgpos = ''; if (strpos($message, "Sent from")) { if (strpos($message, "Sent from my iPhone")) { $msgpos = strpos($message, "Sent from my iPhone"); $msg = substr($message, 0, $msgpos); } else { $msgpos = strpos($message, "Sent from"); $msg = substr($message, 0, $msgpos); } } if (strpos($message, "Content-Transfer-Encoding: quoted-printable") && trim(@$msg) == "") { if (strpos($message, $cmpmsg)) { $msgpos = strpos($message, $cmpmsg); $msg = substr($message, 0, $msgpos); } if (strpos(@$msg, "Content-Type: text/plain; charset=ISO-8859-1")) { $msgposion = strpos($msg, "Content-Type: text/plain; charset=ISO-8859-1"); $msg = substr($msg, $msgposion + 44); } else { $msgpos = strpos($message, "Content-Transfer-Encoding: quoted-printable"); $msg = substr($message, $msgpos + 43); $msgpos1 = strpos($msg, "Original Message"); $msgpos1 = $msgpos1 - 5; $msg = substr($msg, 0, $msgpos1); $carimap = array("=C3=A9", "=C3=A8", "=C3=AA", "=C3=AB", "=C3=A7", "=C3=A0", "=20", "=C3=80", "=C3=89"); $carhtml = array("é", "è", "ê", "ë", "ç", "à", " ", "À", "É"); $msg = str_replace($carimap, $carhtml, $msg); } } else { if (strpos($message, "Original Message") && trim(@$msg) == "") { $msgpos2 = strpos($message, "Original Message"); $msgpos2 = $msgpos2 - 5; $msg = substr($message, 0, $msgpos2); $carimap = array("=C3=A9", "=C3=A8", "=C3=AA", "=C3=AB", "=C3=A7", "=C3=A0", "=20", "=C3=80", "=C3=89"); $carhtml = array("é", "è", "ê", "ë", "ç", "à", " ", "À", "É"); $msg = str_replace($carimap, $carhtml, $msg); } } if (strpos($message, "From:") && strpos($message, "Sent:") && strpos($message, "To:") && strpos($message, "Subject:") && trim(@$msg) == "") { $carimap = array("=C3=A9", "=C3=A8", "=C3=AA", "=C3=AB", "=C3=A7", "=C3=A0", "=20", "=C3=80", "=C3=89"); $carhtml = array("é", "è", "ê", "ë", "ç", "à", " ", "À", "É"); $message = str_replace($carimap, $carhtml, $message); $msgpos = strpos($message, "From:"); $msgpos = $msgpos - 5; $msg = substr($message, 0, $msgpos); $msg1 = substr($message, 0, $msgpos); if (strpos($msg, "Content-Transfer-Encoding: quoted-printable")) { $msgepos = strpos($msg, "Content-Transfer-Encoding: quoted-printable"); $msg = substr($msg, $msgepos + 43); } if (strpos($message, "Content-Transfer-Encoding: quoted-printable") && !strpos($msg1, "Content-Transfer-Encoding: quoted-printable")) { $msgpos = strpos($message, "Content-Transfer-Encoding: quoted-printable"); $msg = substr($message, $msgpos + 43); $msgpos1 = strpos($msg, "Original Message"); $msgpos1 = $msgpos1 - 5; $msg = substr($msg, 0, $msgpos1); $carimap = array("=C3=A9", "=C3=A8", "=C3=AA", "=C3=AB", "=C3=A7", "=C3=A0", "=20", "=C3=80", "=C3=89"); $carhtml = array("é", "è", "ê", "ë", "ç", "à", " ", "À", "É"); $msg = str_replace($carimap, $carhtml, $msg); } if (strpos($message, "Original Message")) { $msgpos2 = strpos($message, "Original Message"); $msgpos2 = $msgpos2 - 6; $msg = substr($message, 0, $msgpos2); $carimap = array("=C3=A9", "=C3=A8", "=C3=AA", "=C3=AB", "=C3=A7", "=C3=A0", "=20", "=C3=80", "=C3=89"); $carhtml = array("é", "è", "ê", "ë", "ç", "à", " ", "À", "É"); $msg = str_replace($carimap, $carhtml, $msg); } } } if (strpos($msg, "Content-Type: text/html; charset=UTF-8")) { $stpos = strpos($msg, "Content-Type: text/html; charset=UTF-8") + 71; $msg = substr($msg, $stpos); } if (strpos($msg, "Content-Transfer-Encoding: 7bit")) { $stpos = strpos($msg, "Content-Transfer-Encoding: 7bit") + 32; $msg = substr($msg, $stpos); } if (strpos(@$msg, "Content-Type: text/plain; charset=ISO-8859-1")) { $msgposion = strpos($msg, "Content-Type: text/plain; charset=ISO-8859-1"); $msg = substr($msg, $msgposion + 44); } //echo $msg;exit; if (strpos($msg, "\r\n\r\n\r\n\r\n\r\n\r\n")) { $msg = str_replace("\r\n\r\n\r\n\r\n\r\n\r\n", "\n", $msg); } if (strpos($msg, "\r\n\r\n\r\n\r\n\r\n")) { $msg = str_replace("\r\n\r\n\r\n\r\n\r\n", "\n", $msg); } if (strpos($msg, "\r\n\r\n\r\n\r\n")) { $msg = str_replace("\r\n\r\n\r\n\r\n", "\n", $msg); } if (strpos($msg, "\r\n\r\n\r\n")) { $msg = str_replace("\r\n\r\n\r\n", "\n", $msg); } if (strpos($msg, "\r\n\r\n")) { $msg = str_replace("\r\n\r\n", "\n", $msg); } $strim = array("/**/", "/*", "*/", "**", "*", "=A0", "=", "<br />"); @($msg = str_replace($strim, "", $msg)); if (strpos(@$msg, FROM_EMAIL_NOTIFY)) { $msg = substr($msg, 0, strpos($msg, "From:")); } $msg = strip_tags($msg); $msg = nl2br(trim($msg)); return trim($msg); }
</template-item> <template-item field="description"> <block> <span class="small subdued"><?php echo htmlspecialchars($message->getDate()); ?> </span> </block> </template-item> </template-items> </placard> </module> <placard class="callout subdued" layout="simple"> <layout-items> <block><strong><?php echo htmlspecialchars(decodeMimeStr($message->getSubject())); ?> </strong></block> </layout-items> </placard> <block><br/><?php echo nl2br(htmlspecialchars($message->getBody())); ?> <br/></block> <navigation-bar> <back> <label>Inbox</label> <load-page event="activate" page="index.php?page=<?php echo $pageNumber; ?> " />