reminder.inc.php 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132
  1. <?php
  2. class Reminder {
  3. private $id = NULL;
  4. private $userID = NULL;
  5. private $reminderDate = NULL;
  6. private $remindedYet = NULL;
  7. public function __construct($id, $userID, $reminderDate, $remindedYet) {
  8. $this->id = $id;
  9. $this->userID = $userID;
  10. $this->reminderDate = $reminderDate;
  11. $this->remindedYet = $remindedYet;
  12. }
  13. public function getID() {
  14. return $this->id;
  15. }
  16. public function getUserID() {
  17. return $this->userID;
  18. }
  19. public function getReminderDate() {
  20. return $this->reminderDate;
  21. }
  22. public function setReminderDate($reminderDate) {
  23. $this->reminderDate = $reminderDate;
  24. }
  25. public function getRemindedYet() {
  26. return $this->remindedYet;
  27. }
  28. public function setRemindedYet($remindedYet) {
  29. $this->remindedYet = $remindedYet;
  30. }
  31. public function save() {
  32. global $db;
  33. $db->updateQuery("UPDATE `reminders` SET `user_id` = " . $this->userID . ", `reminder_date` = '" . $this->reminderDate . "', `reminded_yet` = " . $this->remindedYet . " WHERE `id` = " . $this->id . ";");
  34. }
  35. /**
  36. * Add Reminder to DB
  37. *
  38. * @param int $userID ID of User
  39. * @param string $reminderDate Date of Reminder
  40. *
  41. * @return void
  42. *
  43. */
  44. public static function addReminder($userID, $reminderDate) {
  45. global $db;
  46. $db->insertQuery("INSERT INTO `reminders`(`user_id`, `reminder_date`, `reminded_yet`) VALUES (" . $userID . ", '" . $reminderDate . "', 0);");
  47. }
  48. /**
  49. * Description
  50. *
  51. * @param type $name description
  52. *
  53. * @return type the integer of the set mode used. FALSE if foo
  54. *
  55. */
  56. public static function getLastReminder() {
  57. global $db;
  58. $lastID = $db->selectStringQuery("SELECT MAX(id) FROM `reminders`;");
  59. return Reminder::getReminderByID($lastID);
  60. }
  61. /**
  62. * Get Reminder by Reminder-ID
  63. *
  64. * @param int $reminderID ID of Reminder
  65. *
  66. * @return Reminder Selected Reminder
  67. *
  68. */
  69. public static function getReminderByID($reminderID) {
  70. global $db;
  71. $reminders = $db->selectQuery("SELECT * FROM `reminders` WHERE `id` = " . $reminderID . ";");
  72. $return = array();
  73. foreach($reminders as $reminder) {
  74. $return[] = new Reminder($reminder->id, $reminder->user_id, $reminder->reminder_date, $reminder->reminded_yet);
  75. }
  76. return $return[0];
  77. }
  78. /**
  79. * Get upcoming Reminders by User-ID
  80. *
  81. * @param int $userID ID of User
  82. *
  83. * @return Array(Reminder) Array with selected Reminders
  84. *
  85. */
  86. public static function getUpcomingRemindersByUserID($userID) {
  87. global $db;
  88. $reminders = $db->selectQuery("SELECT * FROM `reminders` WHERE `user_id` = " . $userID . " AND `reminder_date`< CURRENT_TIMESTAMP AND `reminded_yet` = 0;");
  89. $return = array();
  90. if(!$reminders) {
  91. return false;
  92. }
  93. foreach($reminders as $reminder) {
  94. $return[] = new Reminder($reminder->id, $reminder->user_id, $reminder->reminder_date, $reminder->reminded_yet);
  95. }
  96. return $return;
  97. }
  98. }
  99. ?>