messagesController.php 7.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243
  1. <?php
  2. class messagesController extends Staple_Controller
  3. {
  4. public function _start()
  5. {
  6. $auth = Staple_Auth::get();
  7. $this->authLevel = $auth->getAuthLevel();
  8. if($this->authLevel < 500)
  9. {
  10. header("location:".$this->_link(array('index','index'))."");
  11. }
  12. }
  13. public function index()
  14. {
  15. $user = new userModel();
  16. if($user->getAuthLevel() >= 900)
  17. {
  18. $form = new newMessageForm();
  19. if($form->wasSubmitted())
  20. {
  21. $form->addData($_POST);
  22. if($form->validate())
  23. {
  24. $data = $form->exportFormData();
  25. if($data['account'] == 'all')
  26. {
  27. $message = new messageModel();
  28. $message->setMessage($data['message']);
  29. $message->setExpireDate($data['expireDate']);
  30. $message->save();
  31. }
  32. else
  33. {
  34. $message = new privateMessageModel();
  35. $message->setMessage($data['message']);
  36. $message->setExpireDate($data['expireDate']);
  37. $message->setUserId($data['account']);
  38. $message->save();
  39. }
  40. $form = new newMessageForm();
  41. $this->view->form = $form;
  42. }
  43. else
  44. {
  45. $this->view->form = $form;
  46. $this->layout->addScriptBlock('$(document).ready(function() { $("#newMessage").foundation("reveal", "open"); }); ');
  47. }
  48. }
  49. else
  50. {
  51. $this->view->form = $form;
  52. }
  53. $messages = new messagesModel();
  54. $this->view->messages = $messages;
  55. }
  56. else
  57. {
  58. header("location: ".$this->_link(array("messages","account"))."");
  59. }
  60. }
  61. public function account()
  62. {
  63. $user = new userModel();
  64. if($user->getAuthLevel() >= 500)
  65. {
  66. $form = new newMessageForm();
  67. $form->setAction($this->_link(array("messages","account")));
  68. if($form->wasSubmitted())
  69. {
  70. $form->addData($_POST);
  71. if($form->validate())
  72. {
  73. $data = $form->exportFormData();
  74. if($data['account'] == 'all')
  75. {
  76. $message = new messageModel();
  77. $message->setMessage($data['message']);
  78. $message->setExpireDate($data['expireDate']);
  79. $message->save();
  80. }
  81. else
  82. {
  83. $message = new privateMessageModel();
  84. $message->setMessage($data['message']);
  85. $message->setExpireDate($data['expireDate']);
  86. $message->setUserId($data['account']);
  87. $message->save();
  88. }
  89. $form = new newMessageForm();
  90. $form->setAction($this->_link(array("messages","account")));
  91. $this->view->form = $form;
  92. }
  93. else
  94. {
  95. $this->view->form = $form;
  96. $this->layout->addScriptBlock('$(document).ready(function() { $("#newMessage").foundation("reveal", "open"); }); ');
  97. }
  98. }
  99. else
  100. {
  101. $this->view->form = $form;
  102. }
  103. $messages = new messagesModel();
  104. $this->view->messages = $messages;
  105. }
  106. else
  107. {
  108. header("location: ".$this->_link(array("messages","account"))."");
  109. }
  110. }
  111. public function edit($id = null)
  112. {
  113. if($id != null)
  114. {
  115. $form = new editMessageForm();
  116. $message = new messageModel();
  117. $message->load($id);
  118. $this->view->id = $message->getId();
  119. $data['id'] = $message->getId();
  120. $data['message'] = $message->getMessage();
  121. $data['expireDate'] = $message->getExpireDate();
  122. $form->setAction($this->_link(array('messages','edit',$message->getId())));
  123. $form->addData($data);
  124. if($form->wasSubmitted())
  125. {
  126. $form->addData($_POST);
  127. if($form->validate())
  128. {
  129. $data = $form->exportFormData();
  130. $message = new messageModel();
  131. $message->setId($id);
  132. $message->setMessage($data['message']);
  133. $message->setExpireDate($data['expireDate']);
  134. $message->save();
  135. header("location:".$this->_link(array('messages'))."");
  136. }
  137. else
  138. {
  139. $this->view->form = $form;
  140. }
  141. }
  142. else
  143. {
  144. $this->view->form = $form;
  145. }
  146. }
  147. else
  148. {
  149. header("location: ".$this->_link(array('messages'))."");
  150. }
  151. }
  152. public function editPrivate($id = null)
  153. {
  154. if($id != null)
  155. {
  156. $form = new editPrivateMessageForm();
  157. $message = new privateMessageModel();
  158. $data = $message->supervisorLoad($id);
  159. $form->setAction($this->_link(array('messages','edit',$message->getId())));
  160. $form->addData($data);
  161. if($form->wasSubmitted())
  162. {
  163. $form->addData($_POST);
  164. if($form->validate())
  165. {
  166. $data = $form->exportFormData();
  167. $message = new privateMessageModel();
  168. $message->setId($id);
  169. $message->setMessage($data['message']);
  170. $message->setExpireDate($data['expireDate']);
  171. $message->save();
  172. header("location:".$this->_link(array('messages'))."");
  173. }
  174. else
  175. {
  176. $this->view->form = $form;
  177. }
  178. }
  179. else
  180. {
  181. $this->view->form = $form;
  182. }
  183. }
  184. else
  185. {
  186. header("location: ".$this->_link(array('messages'))."");
  187. }
  188. }
  189. public function deleteprivate($id)
  190. {
  191. $message = new privateMessageModel();
  192. $message->delete($id);
  193. header("location:".$this->_link(array('messages'))."");
  194. }
  195. public function delete($id)
  196. {
  197. $message = new messageModel();
  198. $message->delete($id);
  199. header("location:".$this->_link(array('messages'))."");
  200. }
  201. public function expired()
  202. {
  203. $messages = new messagesModel();
  204. $this->view->messages = $messages;
  205. }
  206. public function accountexpired()
  207. {
  208. $messages = new messagesModel();
  209. //$this->view->messages = $messages;
  210. $this->view->messages = $messages->getExpiredPrivateMessages();
  211. }
  212. }
  213. ?>