Newer
Older
TUve-AMF / podmail.php
@reddawg reddawg on 5 Jan 2008 2 KB TUve-AMF
<?php
include("./podz.inc");

Define('IMAP_SERVER', 'mail.domainatlantic.com');
Define('IMAP_USER','reddawg@podz.ubixos.com');
Define('IMAP_PASS','temp123');


// Create new service for AMFPHP Remoting as Class
class podmail {
  var $mysqli;
  #var $conn;
  #var $imap_server;

  function podmail()  {
    # Connect to MySQL database....
    $this->mysqli = new mysqli(DATABASE_SERVER, DATABASE_USERNAME, DATABASE_PASSWORD, DATABASE_NAME);         
    # Check MySQL connection
    if (mysqli_connect_errno()) {
      # Dont use die (Fatal Error), return useful info to the client
      trigger_error("AMFPHP Remoting 'sample' class could not connect: " . mysqli_connect_error()); 
      }
    #$user = "podz@domainatlantic.com";
    #$pass = "temp123";
    #$this->imap_server = "{mail.domainatlantic.com:143}";
    #$this->conn = @imap_open($this->imap_server, $user, $pass);
    }

  function makeFolder($fName) {
    if ($fName == "Inbox")
      return("INBOX");
    else
      return("INBOX." . $fName);
    }

  function getMail($data) {
    $imapServer = "{" . IMAP_SERVER . ":143}" . $this->makeFolder($data['folder']);
    $conn = @imap_open($imapServer,IMAP_USER,IMAP_PASS);

    $headers = @imap_headers($conn);
    $numEmails = sizeof($headers);

    for ($i = 1; $i < $numEmails+1; $i++) {
      $mailHeader = @imap_headerinfo($conn, $i);
      $from = $mailHeader->fromaddress;
      $subject = strip_tags($mailHeader->subject);
      $date = $mailHeader->date;
      $return_array[] = array('id' => $i, 'from' => $from,'subject' => $subject,'date' => $date);
      }

    if ($numEmails == 0x0)
      $return_array[] = array('a' => 'b');
 
    return($return_array);
    }

  function getBody($data) {
    $imapServer = "{" . IMAP_SERVER . ":143}" . $this->makeFolder($data['folder']);
    $conn = @imap_open($imapServer,IMAP_USER,IMAP_PASS);

    //$body = nl2br(strip_tags(imap_body($this->conn, $data['id'])));
    $body = imap_body($conn,$data['id']);
    return($body);
    }

  function getFolders() {
    $imapServer = "{" . IMAP_SERVER . ":143}";

    $conn = @imap_open($imapServer,IMAP_USER,IMAP_PASS);

    $list = imap_getmailboxes($conn,$imapServer, "*");
   sort($list);

   $retVal = "<>";

    foreach ($list as $key => $val) {
      $fn = ltrim(str_replace($imapServer . "INBOX","",imap_utf7_decode($val->name)),".");
      if ($fn == "")
        $retVal .= "<folder name=\"Inbox\" data=\"INBOX\" />\n"; 
      else {
        $retVal .= "<folder name=\"$fn\" data=\"INBOX.$fn\" />\n";
        }
      $prev = $fn;
      }
    $retVal .= "</>";
  
    return($retVal);
    }

  }
?>