/mods/board/edit.php

https://github.com/ichraffsnicht/ClanSphere-Enhanced · PHP · 136 lines · 104 code · 30 blank · 2 comment · 20 complexity · af026c9911c944370658524b99a1e5b4 MD5 · raw file

  1. <?php
  2. // ClanSphere 2010 - www.clansphere.net
  3. // $Id$
  4. $cs_lang = cs_translate('board');
  5. $cs_post = cs_post('id');
  6. $cs_get = cs_get('id');
  7. $data = array();
  8. $board_id = empty($cs_get['id']) ? 0 : $cs_get['id'];
  9. if (!empty($cs_post['id'])) $board_id = $cs_post['id'];
  10. require_once('mods/categories/functions.php');
  11. $board_pwdel = 0;
  12. $new_board_pwd = '';
  13. $data['if']['preview'] = false;
  14. if(isset($_POST['submit']) OR isset($_POST['preview'])) {
  15. $board['categories_id'] = empty($_POST['categories_name']) ? $_POST['categories_id'] :
  16. cs_categories_create('board',$_POST['categories_name']);
  17. $board['board_access'] = $_POST['board_access'];
  18. $board['board_name'] = $_POST['board_name'];
  19. $board['board_text'] = $_POST['board_text'];
  20. $board['board_read'] = isset($_POST['board_read']) ? $_POST['board_read'] : '';
  21. $board['board_pwd'] = $_POST['new_board_pwd'];
  22. $board['squads_id'] = $_POST['squads_id'];
  23. $new_board_pwd = $_POST['new_board_pwd'];
  24. if(!empty($_POST['board_pwdel']))
  25. $board_pwdel = $_POST['board_pwdel'];
  26. $error = '';
  27. if(empty($board['categories_id']))
  28. $error .= $cs_lang['no_cat'] . cs_html_br(1);
  29. if(empty($board['board_name']))
  30. $error .= $cs_lang['no_name'] . cs_html_br(1);
  31. if(empty($board['board_text']))
  32. $error .= $cs_lang['no_text'] . cs_html_br(1);
  33. }
  34. else {
  35. $cells = 'categories_id, board_name, board_text, users_id, board_time, board_access, board_pwd, squads_id, board_read';
  36. $board = cs_sql_select(__FILE__,'board',$cells,"board_id = '" . $board_id . "'");
  37. }
  38. if(!isset($_POST['submit']) OR isset($_POST['preview']))
  39. $data['head']['body'] = $cs_lang['body_edit'];
  40. elseif(!empty($error))
  41. $data['head']['body'] = $error;
  42. if(isset($_POST['preview']) AND empty($error)) {
  43. $data['if']['preview'] = TRUE;
  44. if(!empty($board['board_pwd'])) {
  45. $data['prev']['icon'] = cs_html_img('symbols/board/password.png');
  46. }elseif(!empty($board['squads_id'])) {
  47. $data['prev']['icon'] = cs_html_img('symbols/board/board_read_.png');
  48. }else{
  49. $data['prev']['icon'] = cs_icon('password');
  50. }
  51. $data['prev']['text'] = cs_secure($board['board_text'],1);
  52. }
  53. if(!empty($error) OR isset($_POST['preview']) OR !isset($_POST['submit'])) {
  54. $data['data'] = $board;
  55. $data['categories']['dropdown'] = cs_categories_dropdown2('board',$board['categories_id']);
  56. $data['abcode']['features'] = cs_abcode_features('board_text');
  57. $data['access']['options'] = '';
  58. $levels = 0;
  59. while($levels < 6) {
  60. $board['board_access'] == $levels ? $sel = 1 : $sel = 0;
  61. $data['access']['options'] .= cs_html_option($levels . ' - ' . $cs_lang['lev_' . $levels],$levels,$sel);
  62. $levels++;
  63. }
  64. $checked = 'checked="checked"';
  65. $data['check']['yes'] = !empty($board['board_read']) ? $checked : '';
  66. $data['check']['no'] = empty($board['board_read']) ? $checked : '';
  67. $matches[1] = $cs_lang['secure_stages'];
  68. $matches[2] = $cs_lang['stage_1'] . $cs_lang['stage_1_text'] . cs_html_br(1);
  69. $matches[2] .= $cs_lang['stage_2'] . $cs_lang['stage_2_text'] . cs_html_br(1);
  70. $matches[2] .= $cs_lang['stage_3'] . $cs_lang['stage_3_text'] . cs_html_br(1);
  71. $matches[2] .= $cs_lang['stage_4'] . $cs_lang['stage_4_text'];
  72. $data['clip']['sec_level'] = cs_abcode_clip($matches);
  73. $data['if']['pwd_remove'] = !empty($board['board_pwd']) ? TRUE : FALSE;
  74. $op_squads = cs_sql_option(__FILE__,'squads');
  75. $data['squads']['lang'] = $cs_lang[$op_squads['label']];
  76. $data_squads = cs_sql_select(__FILE__,'squads','squads_name,squads_id','squads_own=1','squads_name',0,0);
  77. $data['squads']['dropdown'] = cs_dropdown('squads_id','squads_name',$data_squads,$board['squads_id']);
  78. $data['board']['id'] = $board_id;
  79. echo cs_subtemplate(__FILE__,$data,'board','edit');
  80. }
  81. else {
  82. if(!empty($new_board_pwd)) {
  83. global $cs_db;
  84. if($cs_db['hash'] == 'md5')
  85. $board['board_pwd'] = md5($new_board_pwd);
  86. elseif($cs_db['hash'] == 'sha1')
  87. $board['board_pwd'] = sha1($new_board_pwd);
  88. $sql_del = 1;
  89. }
  90. if(!empty($board_pwdel)) {
  91. $board['board_pwd'] = '';
  92. $sql_del = 1;
  93. }
  94. if(!empty($sql_del)) {
  95. $board_pws_sql = cs_sql_select(__FILE__,'boardpws','boardpws_id',"board_id = '" . $board_id . "'",0,0,0);
  96. if(!empty($board_pws_sql)) {
  97. foreach($board_pws_sql AS $value) {
  98. cs_sql_delete(__FILE__,'boardpws',$value['boardpws_id']);
  99. }
  100. }
  101. }
  102. $board_cells = array_keys($board);
  103. $board_save = array_values($board);
  104. cs_sql_update(__FILE__,'board',$board_cells,$board_save,$board_id);
  105. cs_redirect($cs_lang['changes_done'], 'board') ;
  106. }