mailboxfolder.inc.php 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142
  1. <?php
  2. class MailboxFolder {
  3. private $id = NULL;
  4. private $folderName = NULL;
  5. private $mailboxId = NULL;
  6. private $labelId = NULL;
  7. public function __construct($id, $folderName, $mailboxId, $labelId) {
  8. $this->id = $id;
  9. $this->folderName = $folderName;
  10. $this->mailboxId = $mailboxId;
  11. $this->labelId = $labelId;
  12. }
  13. public function getId() {
  14. return $this->id;
  15. }
  16. public function getFolderName() {
  17. return $this->folderName;
  18. }
  19. public function getMailboxId() {
  20. return $this->mailboxId;
  21. }
  22. public function getLabelId() {
  23. return $this->labelId;
  24. }
  25. /**
  26. * Get MailboxFolder by Folder-name
  27. *
  28. *
  29. * @param string $folderName Name of folder
  30. *
  31. * @return MailboxFolder Selected MailboxFolder
  32. *
  33. */
  34. // TODO: sizeof handling
  35. public static function getMailboxFolderByName($folderName) {
  36. global $db;
  37. $return = array();
  38. $folders = $db->selectQuery("SELECT * FROM `mailbox-folders` WHERE `folder_name` = '" . $folderName . "';");
  39. if(!$folders) {
  40. return false;
  41. }
  42. foreach($folders as $folder) {
  43. $return[] = new MailboxFolder($folder->id, $folder->folder_name, $folder->mailbox_id, $folder->label_id);
  44. }
  45. return $return[0];
  46. }
  47. /**
  48. * Get MailboxFolder by Label ID
  49. *
  50. *
  51. * @param int $labelId Label ID
  52. *
  53. * @return Array(MailboxFolder) Array with selected MailboxFolder(s)
  54. *
  55. */
  56. public static function getMailboxFolderByLabelId($labelId) {
  57. global $db;
  58. $return = array();
  59. $folders = $db->selectQuery("SELECT * FROM `mailbox-folders` WHERE `label_id` = '" . $labelId . "';");
  60. if(!$folders) {
  61. return false;
  62. }
  63. foreach($folders as $folder) {
  64. $return[] = new MailboxFolder($folder->id, $folder->folder_name, $folder->mailbox_id, $folder->label_id);
  65. }
  66. return $return;
  67. }
  68. /**
  69. * Get MailboxFolder-Name by ID
  70. *
  71. *
  72. * @param int $mId Mailbox-Folder-ID
  73. *
  74. * @return string MailboxFolder-Name
  75. *
  76. */
  77. public static function getMailboxFolderNameFromId($mId) {
  78. global $db;
  79. $mailbox = $db->selectStringQuery("SELECT `folder_name` FROM `mailbox-folders` WHERE id=" . $mId);
  80. return $mailbox;
  81. }
  82. /**
  83. * Add new Mailbox-Folder
  84. *
  85. * @param string $folderName FS-Path of folderName
  86. * @param int $mailboxID ID of mailboxID
  87. * @param int $labelID ID of Label
  88. *
  89. * @return void
  90. *
  91. */
  92. public static function addMailboxFolder($folderName, $mailboxID, $labelID) {
  93. global $db;
  94. $db->insertQuery("INSERT INTO `mailbox-folders`(`folder_name`, `mailbox_id`, `label_id`) VALUES ('" . $folderName . "', " . $mailboxID . ", " . $labelID . ")");
  95. }
  96. /**
  97. * Update Mailbox-Folder
  98. *
  99. * @param int $mailboxFolderID ID of mailboxFolder
  100. * @param string $folderName FS-Path of folderName
  101. * @param int $mailboxID ID of mailboxID
  102. * @param int $labelID ID of Label
  103. *
  104. * @return void
  105. *
  106. */
  107. public static function updateMailboxFolder($mailboxFolderID, $folderName, $mailboxID, $labelID) {
  108. global $db;
  109. $db->updateQuery("UPDATE `mailbox-folders` SET `folder_name` = '" . $folderName . "', `mailbox_id` = " . $mailboxID . ",`label_id` = " . $labelID . " WHERE `id` = " . $mailboxFolderID . ";");
  110. }
  111. }