aboutsummaryrefslogtreecommitdiffstats
path: root/include/imap.php
diff options
context:
space:
mode:
authorFriendika <info@friendika.com>2011-04-15 23:40:43 -0700
committerFriendika <info@friendika.com>2011-04-15 23:40:43 -0700
commit27cbb830a7bd72f13181acc5999a6bed4f74f5ae (patch)
tree36012bdb41c1972ac1c274e3594fa72cc8520781 /include/imap.php
parent158b65894a086b36e383c2a41e494eb1d45fdb4a (diff)
downloadvolse-hubzilla-27cbb830a7bd72f13181acc5999a6bed4f74f5ae.tar.gz
volse-hubzilla-27cbb830a7bd72f13181acc5999a6bed4f74f5ae.tar.bz2
volse-hubzilla-27cbb830a7bd72f13181acc5999a6bed4f74f5ae.zip
more work on email contacts
Diffstat (limited to 'include/imap.php')
-rw-r--r--include/imap.php107
1 files changed, 0 insertions, 107 deletions
diff --git a/include/imap.php b/include/imap.php
deleted file mode 100644
index 018727639..000000000
--- a/include/imap.php
+++ /dev/null
@@ -1,107 +0,0 @@
-<?php
-
-
-function f9_imap_connect($mailbox,$username,$password) {
-
- if(! (local_user() && function_exists('imap_open')))
- return false;
-
- $mbox = imap_open($mailbox,$username,$password);
-
- return $mbox;
-
-}
-
-
-function f9_imap_poll_from($mbox,$str) {
-
- if(! ($mbox && $str))
- return false;
-
- $search = imap_search($mbox,'FROM "' . $str . '"', SE_UID);
-
- return $search;
-}
-
-
-function getmsg($mbox,$mid) {
- // input $mbox = IMAP stream, $mid = message id
- // output all the following:
- global $charset,$htmlmsg,$plainmsg,$attachments;
- $htmlmsg = $plainmsg = $charset = '';
- $attachments = array();
-
- // HEADER
- $h = imap_header($mbox,$mid);
- // add code here to get date, from, to, cc, subject...
-
- // BODY
- $s = imap_fetchstructure($mbox,$mid);
- if (!$s->parts) // simple
- getpart($mbox,$mid,$s,0); // pass 0 as part-number
- else { // multipart: cycle through each part
- foreach ($s->parts as $partno0=>$p)
- getpart($mbox,$mid,$p,$partno0+1);
- }
-}
-
-function getpart($mbox,$mid,$p,$partno) {
- // $partno = '1', '2', '2.1', '2.1.3', etc for multipart, 0 if simple
- global $htmlmsg,$plainmsg,$charset,$attachments;
-
- // DECODE DATA
- $data = ($partno)?
- imap_fetchbody($mbox,$mid,$partno): // multipart
- imap_body($mbox,$mid); // simple
- // Any part may be encoded, even plain text messages, so check everything.
- if ($p->encoding==4)
- $data = quoted_printable_decode($data);
- elseif ($p->encoding==3)
- $data = base64_decode($data);
-
- // PARAMETERS
- // get all parameters, like charset, filenames of attachments, etc.
- $params = array();
- if ($p->parameters)
- foreach ($p->parameters as $x)
- $params[strtolower($x->attribute)] = $x->value;
- if ($p->dparameters)
- foreach ($p->dparameters as $x)
- $params[strtolower($x->attribute)] = $x->value;
-
- // ATTACHMENT
- // Any part with a filename is an attachment,
- // so an attached text file (type 0) is not mistaken as the message.
- if ($params['filename'] || $params['name']) {
- // filename may be given as 'Filename' or 'Name' or both
- $filename = ($params['filename'])? $params['filename'] : $params['name'];
- // filename may be encoded, so see imap_mime_header_decode()
- $attachments[$filename] = $data; // this is a problem if two files have same name
- }
-
- // TEXT
- if ($p->type==0 && $data) {
- // Messages may be split in different parts because of inline attachments,
- // so append parts together with blank row.
- if (strtolower($p->subtype)=='plain')
- $plainmsg. = trim($data) ."\n\n";
- else
- $htmlmsg. = $data ."<br><br>";
- $charset = $params['charset']; // assume all parts are same charset
- }
-
- // EMBEDDED MESSAGE
- // Many bounce notifications embed the original message as type 2,
- // but AOL uses type 1 (multipart), which is not handled here.
- // There are no PHP functions to parse embedded messages,
- // so this just appends the raw source to the main message.
- elseif ($p->type==2 && $data) {
- $plainmsg. = $data."\n\n";
- }
-
- // SUBPART RECURSION
- if ($p->parts) {
- foreach ($p->parts as $partno0=>$p2)
- getpart($mbox,$mid,$p2,$partno.'.'.($partno0+1)); // 1.2, 1.2.1, etc.
- }
-} \ No newline at end of file