reminder.inc.php 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  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. // TODO: error handling
  35. }
  36. /**
  37. * Get Reminder by Reminder-ID
  38. *
  39. * @param int $reminderID ID of Reminder
  40. *
  41. * @return Reminder Selected Reminder
  42. *
  43. */
  44. public static function getReminderByID($reminderID) {
  45. global $db;
  46. $reminders = $db->selectQuery("SELECT * FROM `reminders` WHERE `id` = " . $reminderID . ";");
  47. $return = array();
  48. foreach($reminders as $reminder) {
  49. $return[] = new Reminder($reminder->id, $reminder->user_id, $reminder->reminder_date, $reminder->reminded_yet);
  50. }
  51. // TODO: sizeof handling
  52. return $return[0];
  53. }
  54. /**
  55. * Get upcoming Reminders by User-ID
  56. *
  57. * @param int $userID ID of User
  58. *
  59. * @return Array(Reminder) Array with selected Reminders
  60. *
  61. */
  62. public static function getUpcomingRemindersByUserID($userID) {
  63. global $db;
  64. $reminders = $db->selectQuery("SELECT * FROM `reminders` WHERE `user_id` = " . $userID . " AND `reminder_date`< CURRENT_TIMESTAMP AND `reminded_yet` = 0;");
  65. $return = array();
  66. foreach($reminders as $reminder) {
  67. $return[] = new Reminder($reminder->id, $reminder->user_id, $reminder->reminder_date, $reminder->reminded_yet);
  68. }
  69. return $return;
  70. }
  71. }
  72. ?>