Exemplo n.º 1
0
 protected function getallAction()
 {
     $translate = $this->application->getBootstrap()->getResource('translate');
     $view = $this->application->getBootstrap()->getResource('view');
     $view->setScriptPath(APPLICATION_PATH . '/views/scripts');
     $acl = Zend_Controller_Front::getInstance()->getParam('bootstrap')->getResource('formacl');
     $queueticketObj = new Queueticket();
     $queueticketRows = $queueticketObj->fetchAll("ghost = false");
     foreach ($queueticketRows as $queueticketRow) {
         try {
             $mail = new Zend_Mail_Storage_Imap(array('host' => $queueticketRow['input_email_host'], 'user' => $queueticketRow['input_email_user'], 'password' => $queueticketRow['input_email_password']));
             for ($i = 1; $i <= $mail->countMessages(); $i++) {
                 $message = $mail->getMessage($i);
                 if (!$message->hasFlag(Zend_Mail_Storage::FLAG_SEEN)) {
                     $values = array('subject' => $message->subject, 'content' => $message->getContent(), 'priority' => substr($queueticketRow['available_priority'], 0, 1), 'state' => substr($queueticketRow['available_states'], 0, 1), 'start' => date("c"), 'id_queue' => $queueticketRow['id']);
                     $model = new Ticket();
                     $row = $model->createRow($values);
                     $row->save();
                     $mail->setFlags($i, array(Zend_Mail_Storage::FLAG_SEEN));
                 }
             }
         } catch (Exception $e) {
             print_r($e->getMessage());
         }
     }
 }
Exemplo n.º 2
0
 public function testSetFlags()
 {
     $mail = new Zend_Mail_Storage_Imap($this->_params);
     $mail->setFlags(1, array(Zend_Mail_Storage::FLAG_SEEN));
     $message = $mail->getMessage(1);
     $this->assertTrue($message->hasFlag(Zend_Mail_Storage::FLAG_SEEN));
     $this->assertFalse($message->hasFlag(Zend_Mail_Storage::FLAG_FLAGGED));
     $mail->setFlags(1, array(Zend_Mail_Storage::FLAG_SEEN, Zend_Mail_Storage::FLAG_FLAGGED));
     $message = $mail->getMessage(1);
     $this->assertTrue($message->hasFlag(Zend_Mail_Storage::FLAG_SEEN));
     $this->assertTrue($message->hasFlag(Zend_Mail_Storage::FLAG_FLAGGED));
     $mail->setFlags(1, array(Zend_Mail_Storage::FLAG_FLAGGED));
     $message = $mail->getMessage(1);
     $this->assertFalse($message->hasFlag(Zend_Mail_Storage::FLAG_SEEN));
     $this->assertTrue($message->hasFlag(Zend_Mail_Storage::FLAG_FLAGGED));
     $mail->setFlags(1, array('myflag'));
     $message = $mail->getMessage(1);
     $this->assertFalse($message->hasFlag(Zend_Mail_Storage::FLAG_SEEN));
     $this->assertFalse($message->hasFlag(Zend_Mail_Storage::FLAG_FLAGGED));
     $this->assertTrue($message->hasFlag('myflag'));
     try {
         $mail->setFlags(1, array(Zend_Mail_Storage::FLAG_RECENT));
     } catch (Exception $e) {
         return;
         // ok
     }
     $this->fail('should not be able to set recent flag');
 }
}
/**
 * Generate SASL client request, using base64 encoded 
 * OAuth params
 */
$initClientRequest = 'GET ' . $urlWithXoauth . ' ' . $oauthParams;
$initClientRequestEncoded = base64_encode($initClientRequest);
/**
 * Make the IMAP connection and send the auth request
 */
$imap = new Zend_Mail_Protocol_Imap('imap.gmail.com', '993', true);
$authenticateParams = array('XOAUTH', $initClientRequestEncoded);
$imap->requestAndResponse('AUTHENTICATE', $authenticateParams);
/**
 * Print the INBOX message count and the subject of all messages
 * in the INBOX
 */
$storage = new Zend_Mail_Storage_Imap($imap);
include 'header.php';
echo '<h1>Total messages: ' . $storage->countMessages() . ' for ' . $TWO_LEGGED_EMAIL_ADDRESS . "</h1>\n";
/**
 * Retrieve first 5 messages.  If retrieving more, you'll want
 * to directly use Zend_Mail_Protocol_Imap and do a batch retrieval,
 * plus retrieve only the headers
 */
echo 'First five messages: <ul>';
for ($i = 1; $i <= $storage->countMessages() && $i <= 5; $i++) {
    echo '<li>' . htmlentities($storage->getMessage($i)->subject) . "</li>\n";
}
echo '</ul>';
include 'footer.php';
Exemplo n.º 4
0
 public function testFetchHeaderFolder()
 {
     $mail = new Zend_Mail_Storage_Imap($this->_params);
     $mail->selectFolder('subfolder/test');
     $subject = $mail->getMessage(1)->subject;
     $this->assertEquals('Message in subfolder', $subject);
 }
Exemplo n.º 5
0
<?php

set_include_path(get_include_path() . PATH_SEPARATOR . dirname(__FILE__) . '/../library');
require 'Zend/Loader/Autoloader.php';
$autoloader = Zend_Loader_Autoloader::getInstance();
$autoloader->registerNamespace('ZendX');
$mailbox = new Zend_Mail_Storage_Imap(array('host' => 'imap.example.org', 'user' => '*****@*****.**', 'password' => '...'));
if ($mailbox->countMessages()) {
    $request = new ZendX_MailControl_Controller_Request_Mail($mailbox->getMessage(3));
    $front = Zend_Controller_Front::getInstance();
    $front->setControllerDirectory(dirname(__FILE__) . '/../application/controllers')->setRouter(new ZendX_MailControl_Controller_Router_Null())->throwExceptions(true)->dispatch($request);
}
Exemplo n.º 6
0
/**
 * Given an open and authenticated IMAP connection, displays some basic info
 * about the INBOX folder.
 */
function showInbox($imap)
{
    /**
     * Print the INBOX message count and the subject of all messages
     * in the INBOX
     */
    $storage = new Zend_Mail_Storage_Imap($imap);
    include 'header.php';
    echo '<h1>Total messages: ' . $storage->countMessages() . "</h1>\n";
    /**
     * Retrieve first 5 messages.  If retrieving more, you'll want
     * to directly use Zend_Mail_Protocol_Imap and do a batch retrieval,
     * plus retrieve only the headers
     */
    echo 'First five messages: <ul>';
    for ($i = 1; $i <= $storage->countMessages() && $i <= 5; $i++) {
        echo '<li>' . htmlentities($storage->getMessage($i)->subject) . "</li>\n";
    }
    echo '</ul>';
}