svideo.action.php 7.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193
  1. <?php
  2. class svideoModule extends baseModule
  3. {
  4. public function index()
  5. {
  6. if (!$GLOBALS['user_info']) {
  7. $user_id = 0;
  8. } else {
  9. $user_id = intval($GLOBALS['user_info']['id']);
  10. }
  11. $page = intval($_REQUEST['page']) ? intval($_REQUEST['page']) : 1;
  12. $root = array(
  13. 'has_next' => 1,
  14. 'page' => $page,
  15. 'status' => 1,
  16. 'error' => ''
  17. );
  18. $page_size = 20;
  19. $list = load_auto_cache("svideo_select_weibo_recommend",
  20. array('page' => $page, 'page_size' => $page_size, 'user_id' => $user_id, 'type' => 'video'));
  21. $root['list'] = $list;
  22. for($i=0;$i<count($root['list']);$i++)
  23. {
  24. $root['list'][$i]['nick_name'] = emoji_decode($root['list'][$i]['nick_name']);
  25. }
  26. if (count($list) == $page_size) {
  27. $root['has_next'] = 1;
  28. } else {
  29. $root['has_next'] = 0;
  30. }
  31. api_ajax_return($root);
  32. }
  33. public function video()
  34. {
  35. if (!$GLOBALS['user_info']['id']) {
  36. //有这个参数: user_login_status = 0 时,表示服务端未登陆、要求登陆,操作
  37. return api_ajax_return(array(
  38. 'error' => '用户未登陆,请先登陆.',
  39. 'status' => 0,
  40. 'user_login_status' => 0,
  41. ));
  42. }
  43. $user_id = intval($GLOBALS['user_info']['id']);
  44. $to_user_id = intval($_REQUEST['to_user_id']);//被查看的用户ID
  45. if (!$to_user_id) {
  46. $to_user_id = $user_id;
  47. }
  48. $page = intval($_REQUEST['page']); //取第几页数据
  49. $page = $page >= 1 ? $page : 1;
  50. $page_size = 10;
  51. fanwe_require(APP_ROOT_PATH . 'mapi/lib/redis/UserFollwRedisService.php');
  52. if ($user_id == $to_user_id) {
  53. $list = load_auto_cache("edu_select_weibo_list",
  54. array('page' => $page, 'page_size' => $page_size, 'user_id' => $user_id, 'type' => 'video'));
  55. foreach ($list as $k => $v)
  56. {
  57. $list[$k]['nick_name'] = emoji_decode($list[$k]['nick_name']);
  58. $list[$k]['content'] = emoji_decode($list[$k]['content']);
  59. }
  60. } else {
  61. $list = load_auto_cache("select_weibo_other_list",
  62. array('page' => $page, 'page_size' => $page_size, 'to_user_id' => $to_user_id, 'type' => 'video'));
  63. if ($user_id > 0) {
  64. $pay_digg_list = load_auto_cache("select_user_pay_list",
  65. array('page' => $page, 'page_size' => $page_size, 'user_id' => $user_id));
  66. $diggs_array = $pay_digg_list['digg'];
  67. $user_redis = new UserFollwRedisService($user_id);
  68. $root['is_focus'] = intval($user_redis->is_following($to_user_id));
  69. } else {
  70. $diggs_array = array();
  71. }
  72. foreach ($list as $k => $v) {
  73. if (in_array($v['weibo_id'], $diggs_array)) {
  74. $list[$k]['has_digg'] = 1;
  75. }
  76. if ($user_id != $v['user_id']) {
  77. $list[$k]['is_top'] = 0;
  78. }
  79. $list[$k]['nick_name'] = emoji_decode($list[$k]['nick_name']);
  80. $list[$k]['content'] = emoji_decode($list[$k]['content']);
  81. }
  82. }
  83. return api_ajax_return(array(
  84. 'status' => 1,
  85. 'list' => $list,
  86. 'has_next' => count($list) == $page_size ? 1 : 0,
  87. 'page' => $page,
  88. ));
  89. }
  90. public function add_favor()
  91. {
  92. if (!$GLOBALS['user_info']['id']) {
  93. //有这个参数: user_login_status = 0 时,表示服务端未登陆、要求登陆,操作
  94. return api_ajax_return(array(
  95. 'error' => '用户未登陆,请先登陆.',
  96. 'status' => 0,
  97. 'user_login_status' => 0,
  98. ));
  99. }
  100. $user_id = $GLOBALS['user_info']['id'];
  101. $weibo_id = intval($_REQUEST['weibo_id']);
  102. if ($weibo_id > 0) {
  103. $weibo_exists = $GLOBALS['db']->getOne("select count(*) from fanwe_weibo where id = " . $weibo_id);
  104. if (!$weibo_exists) {
  105. return api_ajax_return(array('status' => 0, 'error' => '小视频不存在'));
  106. }
  107. $exists = $GLOBALS['db']->getOne("select count(*) from " . DB_PREFIX . "qk_svideo_favor f where user_id = {$user_id} and weibo_id = {$weibo_id}");
  108. if (!$exists) {
  109. $GLOBALS['db']->autoExecute(DB_PREFIX . "qk_svideo_favor",
  110. array('user_id' => $user_id, 'weibo_id' => $weibo_id, 'create_time' => NOW_TIME), 'INSERT');
  111. } else {
  112. $this->del_favor();
  113. }
  114. }
  115. return api_ajax_return(array('status' => 1, 'has_favor' => 1));
  116. }
  117. public function del_favor()
  118. {
  119. if (!$GLOBALS['user_info']['id']) {
  120. //有这个参数: user_login_status = 0 时,表示服务端未登陆、要求登陆,操作
  121. return api_ajax_return(array(
  122. 'error' => '用户未登陆,请先登陆.',
  123. 'status' => 0,
  124. 'user_login_status' => 0,
  125. ));
  126. }
  127. $user_id = $GLOBALS['user_info']['id'];
  128. $weibo_id = intval($_REQUEST['weibo_id']);
  129. $GLOBALS['db']->query("delete from " . DB_PREFIX . "qk_svideo_favor where user_id = {$user_id} and weibo_id = {$weibo_id}");
  130. return api_ajax_return(array('status' => 1, 'has_favor' => 0));
  131. }
  132. //我的收藏
  133. public function favor()
  134. {
  135. if (!$GLOBALS['user_info']['id']) {
  136. //有这个参数: user_login_status = 0 时,表示服务端未登陆、要求登陆,操作
  137. return api_ajax_return(array(
  138. 'error' => '用户未登陆,请先登陆.',
  139. 'status' => 0,
  140. 'user_login_status' => 0,
  141. ));
  142. }
  143. $user_id = $GLOBALS['user_info']['id'];
  144. $page_size = 20;
  145. $page = intval($_REQUEST['page']) ? intval($_REQUEST['page']) : 1;
  146. $limit = (($page - 1) * $page_size) . "," . $page_size;
  147. $sql = "SELECT w.user_id,w.id as weibo_id,u.head_image,u.is_authentication,w.content,w.red_count,w.digg_count,w.comment_count,w.video_count,w.data,u.nick_name,w.sort_num,w.photo_image,w.is_top ,u.city,w.price,w.type,w.create_time,w.city,w.province,w.address
  148. FROM
  149. " . DB_PREFIX . "qk_svideo_favor as f join " . DB_PREFIX . "weibo as w on f.weibo_id = w.id
  150. left join " . DB_PREFIX . "user as u on w.user_id = u.id
  151. WHERE f.user_id = {$user_id} order by f.id desc limit {$limit}";
  152. fanwe_require(APP_ROOT_PATH . 'mapi/xr/core/common.php');
  153. $items = $GLOBALS['db']->getAll($sql);
  154. foreach ($items as &$item) {
  155. $item['head_image'] = deal_weio_image($item['head_image'], 'head_image');
  156. $item['photo_image'] = deal_weio_image($item['photo_image'], $item['type']);
  157. }
  158. unset($item);
  159. api_ajax_return(array(
  160. 'items' => $items,
  161. 'has_next' => count($items) == $page_size ? 1 : 0,
  162. 'page' => $page,
  163. 'status' => 1,
  164. 'error' => ''
  165. ));
  166. }
  167. }