Просмотр файла shcms/mails.php

Размер файла: 11.04Kb
  1. <?
  2. /*
  3. =============================================
  4. Движок: SHCMS Engine
  5. =============================================
  6. Название файла: Почта
  7. =============================================
  8. Official website: http://shcms.ru
  9. =============================================
  10. */
  11. define('SHCMS', true);
  12. include_once'../system/inc/basic_settings.php';
  13. if($_GET['id']){$id = $_GET['id'];}
  14. $users_mail = mysql_fetch_array(mysql_query("SELECT * FROM `users` WHERE `id` = '$id'"));
  15. registrat();
  16. if($user_id == $users_mail['id']) {
  17. $shcmsengine['title'] = 'Вы не можете писать себе';
  18. include_once'../template/head.php';
  19. errors("Вы не можете писать себе");
  20. header("Refresh: 1; url=?act=mail");
  21. include_once '../template/foot.php';
  22. exit;
  23. }
  24.  
  25. switch($act):
  26. case '':
  27. $shcmsengine['title'] = 'Почта';
  28. include_once'../template/head.php';
  29. $allmail = mysql_result(mysql_query("SELECT COUNT(DISTINCT(`posted`)) FROM `mails` WHERE `user_id` = '$user_id'"),0);
  30. $newmail = new Navigation($allmail, 10, true);
  31. $mail = mysql_query("SELECT DISTINCT(`posted`) FROM `mails` WHERE `user_id` = '$user_id' ORDER BY `id` DESC ". $newmail->limit()."");
  32. echo '<div class="maintitle mainrazd">Все ваши контакты</div><div class="maintext">';
  33. if(!mysql_num_rows($mail))
  34. {
  35. echo '<div class="posts">У вас нет контактов</div>';
  36. }
  37. else
  38. {
  39. while($mails = mysql_fetch_array($mail))
  40. {
  41. $profile_users = mysql_fetch_array(mysql_query("SELECT * FROM `users` WHERE `id` = ".$mails['posted']." LIMIT 1"));
  42. echo '<div class="posts"> ';
  43. if($profile_users['pol'] == 1){
  44. echo ' <img src="/template/icon/users/1.png"/>';
  45. }
  46. else {
  47. echo ' <img src="/template/icon/users/2.png"/>';
  48. }
  49. echo ' <a href="'.DIR_SHCMS.'change_view.php?id='.$profile_users['id'].'">'.$profile_users['login'].'</a>';
  50. echo '<span class="maintime"><a href="mails.php?act=message&id='.$mails['posted'].'">Написать</a></span>';
  51. echo '</div>';
  52. }
  53. echo '<div class="pages">';
  54. echo $newmail->pagination();
  55. echo '</div>';
  56. }
  57. echo '</div>';
  58. $mail_proch = mysql_result(mysql_query("SELECT COUNT(*) FROM `mails` WHERE `user_id` = '$user_id' AND `read` = 'yes'"),0);
  59. $mail_noproch = mysql_result(mysql_query("SELECT COUNT(*) FROM `mails` WHERE `user_id` = '$user_id' AND `read` = 'no'"),0);
  60. $mail_read = mysql_result(mysql_query("SELECT COUNT(*) FROM `mails` WHERE `posted` = '$user_id'"),0);
  61. echo '<div class="maintitle mainrazd">Действие</div><div class="maintext">';
  62. echo '<div class="posts"><img src="../template/icon/mail/pr.png"> <a href="?act=written">Прочитанные письма</a>&nbsp('.$mail_proch.')</div>';
  63. echo '<div class="posts"><img src="../template/icon/mail/ne.png"> <a href="?act=mail">Непрочитанные письма</a>&nbsp('.$mail_noproch.')</div>';
  64. echo '<div class="posts"><img src="../template/icon/mail/ot.png"> <a href="?act=read">Отправленные письма</a>&nbsp('.$mail_read.')</div>';
  65. echo '</div>';
  66. break;
  67.  
  68. case 'message':
  69. $shcmsengine['title'] = 'Переписка с '.$users_mail['login'].'';
  70. include_once'../template/head.php';
  71.  
  72. if($_POST['submit'])
  73. {
  74. $submit = $_POST['submit'];
  75. }
  76. if(isset($submit))
  77. {
  78. if($_POST['text'])
  79. {
  80. $text = $_POST['text'];
  81. }
  82.  
  83. if(empty($text))
  84. {
  85. errors('Введите пожалуйста текст сообщения');
  86. include_once'../template/foot.php';
  87. exit;
  88. }
  89. if(strlen($text) < 4 or strlen($text) > 10000)
  90. {
  91. errors('Сообщение должно быть не меньше 4 и не больше 10000');
  92. include_once'../template/foot.php';
  93. exit;
  94. }
  95. if($settings_shcms['antimat'] == true) {
  96. $text = $system_function->antimat($text);
  97. }
  98.  
  99. $message = mysql_query("INSERT INTO `mails` (`user_id`,`read`,`text`,`posted`,`time`) VALUES ('".$users_mail['id']."','no','$text','$user_id','".time()."')");
  100. if($message == true)
  101. {
  102. messag("Сообщение успешно отправлено");
  103. header("Refresh: 1; url=?act=message&id=$id");
  104. include_once'../template/foot.php';
  105. exit;
  106. }
  107. else
  108. {
  109. errors("Возникла ошибка при отправки письма");
  110. header("Refresh: 1; url=?");
  111. include_once'../template/foot.php';
  112. exit;
  113. }
  114. }
  115.  
  116. echo '<div class="maintext">';
  117. $form = new form("?act=message&id=$id");
  118. $form->textarea('<strong>Текст сообщения:</strong>','text','',true);
  119. $form->submit('Отправить','submit');
  120. $form->submit('Обновить','resfresh');
  121. $form->finish();
  122. echo '</div>';
  123. $allfield = mysql_result(mysql_query("SELECT COUNT(*) FROM `mails` WHERE ((`mails`.`user_id`='$id' AND `mails`.`posted`='$user_id') OR (`mails`.`user_id`='$user_id' AND `mails`.`posted`='$id'))"),0);
  124. $newlist = new Navigation($allfield, 10, true);
  125. $mails = mysql_query("SELECT * FROM `mails` WHERE ((`mails`.`user_id`='$id' AND `mails`.`posted`='$user_id') OR (`mails`.`user_id`='$user_id' AND `mails`.`posted`='$id')) ORDER BY `id` DESC ". $newlist->limit()."");
  126. while($mail = mysql_fetch_array($mails)) {
  127. if($user_id == $mail['user_id']) {
  128. mysql_query("UPDATE `mails` SET `read` = 'yes' WHERE `posted` = '$id'");
  129. }
  130. $mysql_users = mysql_fetch_array(mysql_query("SELECT * FROM `users` WHERE `id` = '$mail[user_id]'"));
  131. echo '<div class="maintitle">';
  132. if($mail['read'] == 'no') {
  133. users_profile($mail['user_id']);
  134. echo '<font color="red">&nbsp;&nbsp;<small>Не прочитано</small></font>';
  135. }else {
  136. users_profile($mail['user_id']);
  137. }
  138. echo '<span class="mainforum">'.$timedate->times($mail['time']).'</span></div><div class="maintext">';
  139. echo processing($mail['text']) ;
  140. echo '<div class="mainforum"><a href="?act=delete&id_mail='.$mail['id'].'&id='.$id.'"><img src="../template/icon/delete.png"></a></div>';
  141. echo '</div>';
  142. }
  143. echo '<div class="pages">';
  144. echo $newlist->pagination('act=message&id='.$id.'');
  145. echo '</div>';
  146. break;
  147. case 'delete':
  148. $shcmsengine['title'] = 'Удаление сообщений';
  149. include_once'../template/head.php';
  150. if($_GET['id_mail']){$id_mail = $_GET['id_mail'];}
  151. if($id == false) {
  152. errors('Выбранный вами пост не существует');
  153. header("Refresh: 1; url=?act=message&id=$id");
  154. include_once'../template/foot.php';
  155. }
  156. $delete_mail = mysql_query("DELETE FROM `mails` WHERE `id` = '$id_mail'");
  157. if($delete_mail == true) {
  158. messag('Пост успешно удален');
  159. header("Refresh: 1; url=?act=message&id=$id");
  160. include_once'../template/foot.php';
  161. }else {
  162. errors('Пост не удален');
  163. header("Refresh: 1; url=?act=message&id=$id");
  164. include_once'../template/foot.php';
  165. }
  166. break;
  167.  
  168. case 'mail':
  169. $countmail = mysql_result(mysql_query("SELECT COUNT(*) FROM `mails` WHERE `user_id` = '" .$user_id."' AND `read` = 'no'"), 0);
  170. if($countmail == NULL){
  171. $shcmsengine['title'] = 'Новых сообщений нет';
  172. }
  173. else{
  174. $shcmsengine['title'] = 'Новых сообщений ('.$countmail.')';
  175. }
  176. include_once'../template/head.php';
  177. $allfield = mysql_result(mysql_query("SELECT COUNT(*) FROM `mails` WHERE `user_id` = '" .$user_id."' AND `read` = 'no'"), 0);
  178. $newlist = new Navigation($allfield, 10, true);
  179. $mail = mysql_query("SELECT DISTINCT(`posted`) FROM `mails` WHERE `user_id` = '$user_id' AND `read` = 'no' ORDER BY `id` DESC ". $newlist->limit()."");
  180. $mails = mysql_fetch_array($mail);
  181. if($mails == NULL)
  182. {
  183. echo '<div class="posts"> ';
  184. echo SHCMS_core::img_shcms('../template/icon/empty.png').'Новых сообщений у вас нет!</div>';
  185. }
  186. else
  187. {
  188. do
  189. {
  190. $mail_users = mysql_fetch_array(mysql_query("SELECT * FROM `users` WHERE `id` = '$mails[posted]'"));
  191. echo '<div class="mysql_no">
  192. <a href="?act=message&id='.$mails['posted'].'">'.$mail_users['login'].'</a>
  193. ('.mysql_result(mysql_query("SELECT COUNT(*) FROM `mails` WHERE `user_id` = '$user_id' AND `read` = 'no' AND `posted` = '$mails[posted]'"),0).')</div>';
  194. }
  195. while($mails = mysql_fetch_array($mail));
  196. echo '<div class="pages">';
  197. echo $newlist->pagination('act=mail');
  198. echo '</div>';
  199. }
  200. break;
  201.  
  202. /*
  203. case'prosm':
  204. $mail = mysql_fetch_array(mysql_query("SELECT * FROM `mails` WHERE `id` = '$id'"));
  205. $user_mail = mysql_fetch_array(mysql_query("SELECT * FROM `users` WHERE `id` = '$mail[posted]'"));
  206. $shcmsengine['title'] = 'Переписка с пользователем '.$user_mail['login'].'';
  207. include_once'../template/head.php';
  208. if($user_id == $mail['user_id']) {
  209. mysql_query("UPDATE `mails` SET `read` = 'yes' WHERE `id` = '$id'");
  210. }
  211. echo '<div class="posts"><strong>Написал: </strong>';
  212. echo ''.users_list($mail['posted']).'<br/>';
  213. echo '<strong>Отправлено: </strong>'.$timedate->times($mail['time']).'<br/>';
  214. echo '<strong>Ответить: </strong><a href="'.DIR_SHCMS.'mails.php?act=message&id='.$mail['posted'].'">Написать письмо</a>';
  215. echo '</div><div class="posts">';
  216. echo processing($mail['text']).'</div>';
  217. */
  218.  
  219. break;
  220. case 'written':
  221. $shcmsengine['title'] = 'Прочитанные письма';
  222. include_once'../template/head.php';
  223. $mail = mysql_query("SELECT * FROM `mails` WHERE `user_id` = '$user_id' AND `read` = 'yes'");
  224.  
  225. while($mails = mysql_fetch_array($mail))
  226. {
  227. $mail_users = mysql_fetch_array(mysql_query("SELECT * FROM `users` WHERE `id` = '$mails[posted]'"));
  228. echo '<div class="mysql_yes"><a href="?act=prosm&id='.$mails['id'].'">'.$mail_users['login'].'</a>
  229. <div class="maintime">'.$timedate->times($mails['time']).'</div></div>';
  230. }
  231. break;
  232. case 'read':
  233. $shcmsengine['title'] = 'Отправленные письма';
  234. include_once'../template/head.php';
  235. $mail = mysql_query("SELECT * FROM `mails` WHERE `posted` = '$user_id' ORDER BY `id` DESC");
  236. while($mails = mysql_fetch_array($mail))
  237. {
  238. $mail_users = mysql_fetch_array(mysql_query("SELECT * FROM `users` WHERE `id` = '$mails[user_id]'"));
  239. echo '<div class="mysql_yes"><a href="?act=prosm&id='.$mails['id'].'">'.$mail_users['login'].'</a>
  240. <div class="maintime">'.$timedate->times($mails['time']).'</div></div>';
  241. }
  242.  
  243. break;
  244. endswitch;
  245.  
  246. include_once'../template/foot.php';
  247.  
  248. ?>