messagesModel.php 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146
  1. <?php
  2. class messagesModel extends Staple_Model
  3. {
  4. private $db;
  5. private $id;
  6. private $message;
  7. private $postDate;
  8. private $expireDate;
  9. /**
  10. * @return mixed
  11. */
  12. public function getId()
  13. {
  14. return $this->id;
  15. }
  16. /**
  17. * @param mixed $id
  18. */
  19. public function setId($id)
  20. {
  21. $this->id = $id;
  22. }
  23. /**
  24. * @return mixed
  25. */
  26. public function getMessage()
  27. {
  28. return $this->message;
  29. }
  30. /**
  31. * @param mixed $message
  32. */
  33. public function setMessage($message)
  34. {
  35. $this->message = $message;
  36. }
  37. /**
  38. * @return mixed
  39. */
  40. public function getExpireDate()
  41. {
  42. $date = new DateTime();
  43. $date->setTimestamp($this->expireDate);
  44. return $date->format('m/d/Y');
  45. }
  46. /**
  47. * @param mixed $expireDate
  48. */
  49. public function setExpireDate($expireDate)
  50. {
  51. $this->expireDate = strtotime($expireDate);
  52. }
  53. /**
  54. * @return mixed
  55. */
  56. public function getPostDate()
  57. {
  58. return $this->postDate;
  59. }
  60. function __construct()
  61. {
  62. $this->db = Staple_DB::get();
  63. }
  64. function load($id)
  65. {
  66. $sql = "SELECT * FROM messages WHERE id = '".$this->db->real_escape_string($id)."' ";
  67. $query = $this->db->query($sql);
  68. $result = $query->fetch_assoc();
  69. $this->id = $result['id'];
  70. $this->expireDate = $result['expireDate'];
  71. $this->message = $result['message'];
  72. $this->postDate = $result['postDate'];
  73. }
  74. function getMessages()
  75. {
  76. $date = new DateTime();
  77. $date->setTime(0,0,0);
  78. $sql = "
  79. SELECT * FROM messages WHERE expireDate >= '".$this->db->real_escape_string($date->format('U'))."' ORDER BY postDate DESC;
  80. ";
  81. $data = array();
  82. $query = $this->db->query($sql);
  83. while($result = $query->fetch_assoc())
  84. {
  85. $data[] = $result;
  86. }
  87. return $data;
  88. }
  89. function save()
  90. {
  91. if(isset($this->id))
  92. {
  93. //Edit
  94. $sql = "UPDATE messages SET expireDate = '".$this->expireDate."', message = '".$this->message."' WHERE id = '".$this->id."';";
  95. if($this->db->query($sql))
  96. {
  97. return true;
  98. }
  99. }
  100. else
  101. {
  102. //Save
  103. $sql = "INSERT INTO messages (message,expireDate) VALUES ('".$this->db->real_escape_string($this->message)."','".$this->db->real_escape_string($this->expireDate)."')";
  104. if($this->db->query($sql))
  105. {
  106. return true;
  107. }
  108. }
  109. }
  110. function delete($id)
  111. {
  112. $sql = "DELETE FROM messages WHERE id = '".$this->db->real_escape_string($id)."';";
  113. if($this->db->query($sql))
  114. {
  115. return true;
  116. }
  117. }
  118. }