国内流行的内容管理系统(CMS)多端全媒体解决方案 https://www.dedebiz.com
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

144 lines
5.6KB

  1. <?php
  2. /**
  3. * 处理文档管理列表操作
  4. *
  5. * @version $id:archives_do.php 13:52 2010年7月9日 tianya $
  6. * @package DedeBIZ.User
  7. * @copyright Copyright (c) 2022 DedeBIZ.COM
  8. * @license https://www.dedebiz.com/license
  9. * @link https://www.dedebiz.com
  10. */
  11. require_once(dirname(__FILE__)."/config.php");
  12. if (empty($dopost)) $dopost = '';
  13. $aid = isset($aid) && is_numeric($aid) ? $aid : 0;
  14. $channelid = isset($channelid) && is_numeric($channelid) ? $channelid : 1;
  15. //删除收藏
  16. if ($dopost == "delStow") {
  17. CheckRank(0, 0);//禁止游客操作
  18. $type = empty($type) ? '' : HtmlReplace(trim($type), -1);
  19. $tupdate = '';
  20. if (!empty($type)) {
  21. $tupdate = " AND type = '$type'";
  22. }
  23. $ENV_GOBACK_URL = empty($_COOKIE['ENV_GOBACK_URL']) ? "mystow.php" : $_COOKIE['ENV_GOBACK_URL'];
  24. $dsql->ExecuteNoneQuery("DELETE FROM `#@__member_stow` WHERE aid='$aid' AND mid='".$cfg_ml->M_ID."'$tupdate;");
  25. //更新会员统计
  26. $row = $dsql->GetOne("SELECT COUNT(*) AS nums FROM `#@__member_stow` WHERE `mid`='".$cfg_ml->M_ID."' ");
  27. $dsql->ExecuteNoneQuery("UPDATE `#@__member_tj` SET `stow`='$row[nums]' WHERE `mid`='".$cfg_ml->M_ID."'");
  28. ShowMsg("成功删除一条收藏记录", $ENV_GOBACK_URL);
  29. exit();
  30. }
  31. //添加投稿
  32. else if ($dopost == "addArc") {
  33. CheckRank(0, 0);//禁止游客操作
  34. if ($channelid == 1) {
  35. $addcon = 'article_add.php?channelid='.$channelid;
  36. } else if ($channelid == 2) {
  37. $addcon = 'album_add.php?channelid='.$channelid;
  38. } else if ($channelid == 3) {
  39. $addcon = 'soft_add.php?channelid='.$channelid;
  40. } else {
  41. $row = $dsql->GetOne("SELECT useraddcon FROM `#@__channeltype` WHERE id='$channelid' ");
  42. if (!is_array($row)) {
  43. ShowMsg("模型参数错误", "-1");
  44. exit();
  45. }
  46. $addcon = $row['useraddcon'];
  47. if (trim($addcon) == '') {
  48. $addcon = 'archives_add.php';
  49. }
  50. $addcon = $addcon."?channelid=$channelid";
  51. }
  52. header("Location:$addcon");
  53. exit();
  54. }
  55. //修改投稿
  56. else if ($dopost == "edit") {
  57. CheckRank(0, 0);//禁止游客操作
  58. if ($channelid == 1) {
  59. $edit = 'article_edit.php?channelid='.$channelid;
  60. } else if ($channelid == 2) {
  61. $edit = 'album_edit.php?channelid='.$channelid;
  62. } else if ($channelid == 3) {
  63. $edit = 'soft_edit.php?channelid='.$channelid;
  64. } else {
  65. $row = $dsql->GetOne("SELECT usereditcon FROM `#@__channeltype` WHERE id='$channelid' ");
  66. if (!is_array($row)) {
  67. ShowMsg("参数错误", "-1");
  68. exit();
  69. }
  70. $edit = $row['usereditcon'];
  71. if (trim($edit) == '') {
  72. $edit = 'archives_edit.php';
  73. }
  74. $edit = $edit."?channelid=$channelid";
  75. }
  76. header("Location:$edit"."&aid=$aid");
  77. exit();
  78. }
  79. //删除文档
  80. else if ($dopost == "delArc") {
  81. CheckRank(0, 0);//禁止游客操作
  82. include_once(DEDEMEMBER."/inc/inc_batchup.php");
  83. $ENV_GOBACK_URL = empty($_COOKIE['ENV_GOBACK_URL']) ? 'content_list.php?channelid=' : $_COOKIE['ENV_GOBACK_URL'];
  84. $equery = "SELECT arc.channel,arc.senddate,arc.arcrank,ch.maintable,ch.addtable,ch.issystem,ch.arcsta FROM `#@__arctiny` arc LEFT JOIN `#@__channeltype` ch ON ch.id=arc.channel WHERE arc.id='$aid' ";
  85. $row = $dsql->GetOne($equery);
  86. if (!is_array($row)) {
  87. ShowMsg("您没有权限删除这篇文档", "-1");
  88. exit();
  89. }
  90. if (trim($row['maintable']) == '') $row['maintable'] = '#@__archives';
  91. if ($row['issystem'] == -1) {
  92. $equery = "SELECT mid FROM `{$row['addtable']}` WHERE aid='$aid' AND mid='".$cfg_ml->M_ID."' ";
  93. } else {
  94. $equery = "SELECT mid,litpic from `{$row['maintable']}` WHERE id='$aid' AND mid='".$cfg_ml->M_ID."' ";
  95. }
  96. $arr = $dsql->GetOne($equery);
  97. if (!is_array($arr)) {
  98. ShowMsg("您没有权限删除这篇文档", "-1");
  99. exit();
  100. }
  101. if ($row['arcrank'] >= 0) {
  102. $dtime = time();
  103. $maxtime = $cfg_mb_editday * 24 * 3600;
  104. if ($dtime - $row['senddate'] > $maxtime) {
  105. ShowMsg("这篇文档已经锁定,暂时无法删除", "-1");
  106. exit();
  107. }
  108. }
  109. $channelid = $row['channel'];
  110. $row['litpic'] = (isset($arr['litpic']) ? $arr['litpic'] : '');
  111. //删除文档
  112. if ($row['issystem'] != -1) $rs = DelArc($aid);
  113. else $rs = DelArcSg($aid);
  114. //删除缩略图
  115. if (trim($row['litpic']) != '' && preg_match("#^".$cfg_user_dir."/{$cfg_ml->M_ID}#", $row['litpic'])) {
  116. $dsql->ExecuteNoneQuery("DELETE FROM `#@__uploads` WHERE url LIKE '{$row['litpic']}' AND mid='{$cfg_ml->M_ID}' ");
  117. @unlink($cfg_basedir.$row['litpic']);
  118. }
  119. if ($ENV_GOBACK_URL == 'content_list.php?channelid=') {
  120. $ENV_GOBACK_URL = $ENV_GOBACK_URL.$channelid;
  121. }
  122. if ($rs) {
  123. //更新会员记录
  124. countArchives($channelid);
  125. //扣除积分
  126. $dsql->ExecuteNoneQuery("Update `#@__member` set scores=scores-{$cfg_sendarc_scores} WHERE mid='".$cfg_ml->M_ID."' And (scores-{$cfg_sendarc_scores}) > 0;");
  127. ShowMsg("成功删除一篇文档", $ENV_GOBACK_URL);
  128. exit();
  129. } else {
  130. ShowMsg("删除文档失败", $ENV_GOBACK_URL);
  131. exit();
  132. }
  133. exit();
  134. }
  135. //查看文档
  136. else if ($dopost == "viewArchives") {
  137. CheckRank(0, 0);//禁止游客操作
  138. if ($type == "") {
  139. header("location:".$cfg_phpurl."/view.php?aid=".$aid);
  140. } else {
  141. header("location:/book/book.php?bid=".$aid);
  142. }
  143. }
  144. ?>