channel.php 9.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174
  1. <?php
  2. //decode by http://dezend.qiling.org QQ 2859470
  3. define('CURSCRIPT', 'channel');
  4. require_once dirname(__FILE__) . '/global.php';
  5. require_once MYMPS_INC . '/db.class.php';
  6. require_once dirname(__FILE__) . '/include/color.inc.php';
  7. require_once dirname(__FILE__) . '/include/ifview.inc.php';
  8. (!defined('IN_ADMIN') || !defined('IN_MYMPS')) && exit('Access Denied');
  9. $part = $part ? $part : 'list';
  10. $cat_color = $color;
  11. if (!submit_check(CURSCRIPT . '_submit')) {
  12. require_once MYMPS_DATA . '/html_type.inc.php';
  13. if ($part == 'list') {
  14. chk_admin_purview('purview_新闻类别');
  15. $f_cat = cat_list('channel', 0, 0, false);
  16. $here = '新闻栏目列表';
  17. include mymps_tpl('news_channel_list');
  18. } else {
  19. if ($part == 'edit') {
  20. !$catid && write_msg('请选择你要修改的栏目ID!');
  21. $cat = $db->getRow('SELECT * FROM ' . $db_mymps . 'channel WHERE catid = \'' . $catid . '\'');
  22. $here = '编辑新闻栏目';
  23. include mymps_tpl('news_channel_edit');
  24. } else {
  25. if ($part == 'add') {
  26. $maxorder = $db->getOne('SELECT MAX(catorder) FROM ' . $db_mymps . 'channel');
  27. $maxorder = $maxorder + 1;
  28. $here = '添加新闻栏目';
  29. include mymps_tpl('news_channel_add');
  30. } else {
  31. if ($part == 'del') {
  32. !$catid && write_msg('没有选择记录');
  33. mymps_delete('channel', 'WHERE catid = \'' . $catid . '\'');
  34. mymps_delete('channel', 'WHERE parentid = \'' . $catid . '\'');
  35. mymps_delete('news', 'WHERE catid IN(' . get_cat_children($catid, 'channel') . ')');
  36. foreach (array('option_static', 'pid_releate') as $range) {
  37. clear_cache_files('channel_' . $range);
  38. }
  39. write_msg('删除新闻栏目 ' . $catid . ' 成功', 'channel.php?part=list', 'Mymps');
  40. }
  41. }
  42. }
  43. }
  44. } else {
  45. ($part == 'add' || $part == 'edit') && (require_once dirname(__FILE__) . '/include/pinyin.inc.php');
  46. if ($part == 'list') {
  47. if (is_array($catorder)) {
  48. $cur_action .= '排序 ';
  49. foreach ($catorder as $key => $value) {
  50. $db->query('UPDATE `' . $db_mymps . 'channel` SET catorder = \'' . $value . '\' WHERE catid = ' . $key);
  51. }
  52. }
  53. if (is_array($if_viewids)) {
  54. $cur_action .= '启用与否';
  55. $db->query('UPDATE `' . $db_mymps . 'channel` SET if_view = \'1\' ');
  56. foreach ($if_viewids as $k => $val) {
  57. $db->query('UPDATE `' . $db_mymps . 'channel` SET if_view = \'2\' WHERE catid = ' . $val);
  58. }
  59. } else {
  60. $db->query('UPDATE `' . $db_mymps . 'channel` SET if_view = \'1\' ');
  61. }
  62. foreach (array('option_static', 'pid_releate') as $range) {
  63. clear_cache_files('channel_' . $range);
  64. }
  65. write_msg('新闻栏目 ' . $cur_action . ' 更新成功!', '?part=list', 'record');
  66. } else {
  67. if ($part == 'add') {
  68. empty($catname) && write_msg('请填写新闻栏目名称!');
  69. $len = strlen($catname);
  70. $len < 2 && write_msg('新闻栏目名必须在2个字符以上');
  71. $catname = explode('|', trim($catname));
  72. if (empty($catorder)) {
  73. $maxorder = $db->getOne('SELECT MAX(catorder) FROM ' . $db_mymps . 'channel');
  74. $catorder = $catorder + 1;
  75. }
  76. if (is_array($catname)) {
  77. foreach ($catname as $key => $value) {
  78. $value = trim($value);
  79. $catorder++;
  80. $len = strlen($value);
  81. ($len < 2 || 30 < $len) && write_msg('分类名必须在2个至30个字符之间');
  82. $db->query('INSERT INTO ' . $db_mymps . 'channel (catname,if_view,title,keywords,description,parentid,catorder,dir_type) VALUES (\'' . $value . '\',\'' . $isview . '\',\'' . $value . '\',\'' . $value . '\',\'' . $value . '\',\'' . $parentid . '\',\'' . $catorder . '\',\'' . $dir_type . '\')');
  83. $insert_id = $db->insert_id();
  84. if ($parentid == 0) {
  85. if ($dir_type == 1) {
  86. $html_dir = '/' . $insert_id . '/';
  87. } else {
  88. if ($dir_type == 2) {
  89. $html_dir = '/' . GetPinyin($value) . '/';
  90. } else {
  91. if ($dir_type == 3) {
  92. $html_dir = '/' . GetPinyin($value, 1) . '/';
  93. }
  94. }
  95. }
  96. } else {
  97. $row = $db->getRow('SELECT * FROM `' . $db_mymps . 'channel` WHERE catid = \'' . $parentid . '\'');
  98. if ($dir_type == 1) {
  99. $html_dir = ($row['html_dir'] ? $row['html_dir'] : $row['html_dir']) . $insert_id . '/';
  100. } else {
  101. if ($dir_type == 2) {
  102. $html_dir = ($row['html_dir'] ? $row['html_dir'] : $row['html_dir']) . GetPinyin($value) . '/';
  103. } else {
  104. if ($dir_type == 3) {
  105. $html_dir = ($row['html_dir'] ? $row['html_dir'] : $row['html_dir']) . GetPinyin($value, 1) . '/';
  106. }
  107. }
  108. }
  109. }
  110. $db->query('UPDATE `' . $db_mymps . 'channel` SET html_dir = \'' . $html_dir . '\' WHERE catid = \'' . $insert_id . '\'');
  111. }
  112. foreach (array('option_static', 'pid_releate') as $range) {
  113. clear_cache_files('channel_' . $range);
  114. }
  115. write_msg('新闻分类添加成功!', '?part=list', 'record');
  116. } else {
  117. write_msg('新闻分类添加失败,请按格式填写!');
  118. }
  119. } else {
  120. if ($part == 'edit') {
  121. empty($catname) && write_msg('请填写新闻栏目名称!');
  122. strlen($catname) < 2 && write_msg('新闻栏目名必须在2个字符以上');
  123. $catid == $parentid && write_msg('隶属栏目不能为自己!');
  124. $parentid != 0 && ($row = $db->getRow('SELECT catname,html_dir FROM `' . $db_mymps . 'channel` WHERE catid = \'' . $parentid . '\''));
  125. if ($dir_type == 4) {
  126. !$mydir && write_msg('请填写自定义目录名!');
  127. if ($parentid == 0) {
  128. $html_dir = '/' . $mydir . '/';
  129. } else {
  130. $html_dir = $row['html_dir'] . $mydir . '/';
  131. }
  132. } else {
  133. if ($parentid == 0) {
  134. if ($dir_type == 1) {
  135. $html_dir = '/' . $catid . '/';
  136. } else {
  137. if ($dir_type == 2) {
  138. $html_dir = '/' . GetPinyin($catname) . '/';
  139. } else {
  140. if ($dir_type == 3) {
  141. $html_dir = '/' . GetPinyin($catname, 1) . '/';
  142. }
  143. }
  144. }
  145. } else {
  146. if ($dir_type == 1) {
  147. $html_dir = $row['html_dir'] . $catid . '/';
  148. } else {
  149. if ($dir_type == 2) {
  150. $html_dir = $row['html_dir'] . GetPinyin($catname) . '/';
  151. } else {
  152. if ($dir_type == 3) {
  153. $html_dir = $row['html_dir'] . GetPinyin($catname, 1) . '/';
  154. }
  155. }
  156. }
  157. }
  158. }
  159. $sql = 'UPDATE ' . $db_mymps . 'channel SET catname=\'' . $catname . '\',if_view=\'' . $isview . '\',title=\'' . $title . '\',color=\'' . $fontcolor . '\',keywords=\'' . $keywords . '\',description=\'' . $description . '\',parentid=\'' . $parentid . '\',catorder=\'' . $catorder . '\',dir_type = \'' . $dir_type . '\', dir_typename = \'' . $mydir . '\', html_dir = \'' . $html_dir . '\' WHERE catid = \'' . $catid . '\'';
  160. $res = $db->query($sql);
  161. $nav_path = '新闻栏目管理 &raquo 编辑栏目';
  162. $message = '成功编辑新闻栏目 ' . $catname;
  163. $after_action = '<a href=\'?part=add\'><u>继续增加栏目</u></a>' . "\r\n\t\t" . '&nbsp;&nbsp;<a href=\'?part=edit&catid=' . $catid . '\'><u>重新编辑该栏目</u></a>&nbsp;&nbsp;<a href=\'?part=list#' . $catid . '\'><u>已增加栏目管理</u></a>';
  164. foreach (array('option_static', 'pid_releate') as $range) {
  165. clear_cache_files('channel_' . $range);
  166. }
  167. write_msg($message, 'channel.php');
  168. }
  169. }
  170. }
  171. }
  172. is_object($db) && $db->Close();
  173. $db = $mymps_global = $part = $action = $here = NULL;