member_article.php 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154
  1. <?php
  2. /**
  3. * cms用户中心文章
  4. *
  5. *
  6. ***/
  7. defined('InShopNC') or exit('Access Invalid!');
  8. class member_articleControl extends CMSMemberControl{
  9. public function __construct() {
  10. parent::__construct();
  11. }
  12. public function indexOp() {
  13. $this->article_listOp();
  14. }
  15. /**
  16. * 文章列表
  17. */
  18. public function article_listOp() {
  19. $condition = array();
  20. if(!empty($_GET['article_state'])) {
  21. $condition['article_state'] = $_GET['article_state'];
  22. } else {
  23. $condition['article_state'] = array('in',array(self::ARTICLE_STATE_PUBLISHED, self::ARTICLE_STATE_VERIFY)) ;
  24. }
  25. $this->get_article_list($condition);
  26. }
  27. /**
  28. * 草稿列表
  29. */
  30. public function draft_listOp() {
  31. $condition = array();
  32. $condition['article_state'] = self::ARTICLE_STATE_DRAFT;
  33. $this->get_article_list($condition);
  34. }
  35. /**
  36. * 草稿列表
  37. */
  38. public function recycle_listOp() {
  39. $condition = array();
  40. $condition['article_state'] = self::ARTICLE_STATE_RECYCLE;
  41. $this->get_article_list($condition);
  42. }
  43. /**
  44. * 获得文章列表
  45. */
  46. private function get_article_list($condition = array()) {
  47. if(!empty($_GET['keyword'])) {
  48. $condition['article_title'] = array('like', '%'.$_GET['keyword'].'%');
  49. }
  50. $condition['article_type'] = $this->publisher_type;
  51. $condition['article_publisher_id'] = $this->publisher_id;
  52. $model_article = Model('cms_article');
  53. $article_list = $model_article->getList($condition, 20, 'article_id desc');
  54. Tpl::output('show_page',$model_article->showpage(2));
  55. Tpl::output('article_list', $article_list);
  56. Tpl::output('article_state_list', $this->get_article_state_list());
  57. Tpl::output('index_sign', 'article');
  58. Tpl::showpage('member_article_list', 'cms_member_layout');
  59. }
  60. /**
  61. * 文章编辑
  62. */
  63. public function article_editOp() {
  64. $article_id = intval($_GET['article_id']);
  65. $article_detail = $this->check_article_auth($article_id);
  66. if($article_detail) {
  67. $model_article_class = Model('cms_article_class');
  68. $article_class_list = $model_article_class->getList(TRUE, null, 'class_sort asc');
  69. Tpl::output('article_class_list', $article_class_list);
  70. $model_tag = Model('cms_tag');
  71. $tag_list = $model_tag->getList(TRUE, null, 'tag_sort asc');
  72. Tpl::output('tag_list', $tag_list);
  73. //相关文章
  74. $article_link_list = $this->get_article_link_list($article_detail['article_link']);
  75. Tpl::output('article_link_list', $article_link_list);
  76. //相关商品
  77. $article_goods_list = unserialize($article_detail['article_goods']);
  78. Tpl::output('article_goods_list', $article_goods_list);
  79. Tpl::output('article_detail', $article_detail);
  80. Tpl::showpage('publish_article','cms_member_layout');
  81. } else {
  82. showMessage(Language::get('wrong_argument'),'','','error');
  83. }
  84. }
  85. /**
  86. * 移到回收站
  87. */
  88. public function article_publishOp() {
  89. $this->article_state_change($this->publish_state);
  90. }
  91. /**
  92. * 移到回收站
  93. */
  94. public function article_recycleOp() {
  95. $this->article_state_change(self::ARTICLE_STATE_RECYCLE);
  96. }
  97. /**
  98. * 移到草稿箱
  99. */
  100. public function article_draftOp() {
  101. $this->article_state_change(self::ARTICLE_STATE_DRAFT);
  102. }
  103. /**
  104. * 删除
  105. */
  106. public function article_dropOp() {
  107. $article_id = intval($_GET['article_id']);
  108. $article_auth = $this->check_article_auth($article_id);
  109. if($article_auth) {
  110. $model_article = Model('cms_article');
  111. $result = $model_article->drop(array('article_id'=>$article_id));
  112. if($result) {
  113. showMessage(Language::get('nc_common_del_succ'),'');
  114. } else {
  115. showMessage(Language::get('nc_common_del_fail'),'','','error');
  116. }
  117. } else {
  118. showMessage(Language::get('wrong_argument'),'','','error');
  119. }
  120. }
  121. /**
  122. * 改变文章状态
  123. */
  124. private function article_state_change($article_state_new) {
  125. $article_id = intval($_GET['article_id']);
  126. $article_auth = $this->check_article_auth($article_id);
  127. if($article_auth) {
  128. $model_article = Model('cms_article');
  129. $result = $model_article->modify(array('article_state'=>$article_state_new),array('article_id'=>$article_id));
  130. showMessage(Language::get('nc_common_op_succ'),'');
  131. } else {
  132. showMessage(Language::get('nc_common_op_fail'),'','','error');
  133. }
  134. }
  135. }