Exemplo n.º 1
0
 function testDeleteMailFromDirectory()
 {
     require_once "common.php";
     $data = Filter::filterArray($this->mail_data);
     $mail = MailManager::createMail($data);
     //echo "<hr style='height:3px;background-color:blue;' />";
     $dir = MailManager::loadDirectoryFromName(MAILBOX, $this->author_id);
     //echo "<hr style='height:3px;background-color:blue;' />";
     $oldmailboxcount = count($dir->getMails());
     $dir2 = MailManager::loadDirectoryFromName(TRASH, $dir->getOwner());
     $oldtrashcount = count($dir2->getMails());
     //echo "<p>" . $mail . "<br />" . $dir . "</p>"; //DEBUG
     if ($mail == null || $mail === false) {
         return "<br />Mail test NOT PASSED: not created";
     }
     MailManager::moveToTrash($mail, $dir);
     $dir = MailManager::loadDirectoryFromName(MAILBOX, $this->author_id);
     $mail2 = MailManager::loadMail($mail->getID());
     $dir2 = MailManager::loadDirectoryFromName(TRASH, $dir->getOwner());
     if ($mail === false) {
         return "<br />Mail test NOT PASSED: deleted";
     }
     //echo "<p>" . $dir . "<br />" . $dir2 . "</p>"; //DEBUG
     if ($mail != $mail2) {
         return "<br />Mail test NOT PASSED: mail duplicated";
     }
     if (count($dir->getMails()) == $oldmailboxcount) {
         return "<br />Mail test NOT PASSED: mailbox not updated";
     }
     if (count($dir2->getMails()) == $oldtrashcount) {
         return "<br />Mail test NOT PASSED: trash not updated";
     }
     return "<br />Mail deleting test passed";
 }
Exemplo n.º 2
0
 private static function doMailAction($request)
 {
     require_once 'mail/MailManager.php';
     if (isset(self::$currentID) && self::$currentID != null) {
         self::$currentObject = MailManager::loadMail(self::$currentID);
     }
     switch (self::$requestedAction) {
         case "Edit":
             //una mail non si può modificare...
             break;
         case "Move":
             require_once 'mail/MailPage.php';
             MailPage::showMoveToForm(self::$currentObject);
             break;
         case "Delete":
             $dir = MailManager::directoryForMail(self::$currentObject, self::$user);
             MailManager::moveToTrash(self::$currentObject, $dir);
             header("location: " . FileManager::appendToRootPath("Directory/" . $dir->getID()));
             break;
         case "Spam":
             $dir = MailManager::directoryForMail(self::$currentObject, self::$user);
             MailManager::moveToSpam(self::$currentObject, $dir);
             header("location: " . FileManager::appendToRootPath("Directory/" . $dir->getID()));
             break;
         case "Answer":
             self::$currentObject = MailManager::loadMail(self::$currentID);
         case "New":
             if (!isset(self::$currentObject)) {
                 self::$currentObject = null;
             }
             require_once 'mail/MailPage.php';
             MailPage::showNewForm(self::$currentObject);
             break;
         case "EmptyTrash":
             MailManager::emptyTrash(self::$user);
             header("location: " . FileManager::appendToRootPath("User/" . self::$user->getID() . "/Mails"));
             break;
         case "Read":
             require_once 'mail/MailPage.php';
             MailPage::showMail(self::$currentObject);
             break;
         case "Search":
         default:
             require_once 'search/SearchPage.php';
             SearchPage::showMailSearchForm();
             break;
     }
 }