renderSuccess('数据返回成功', $list); } /** * 获取子级分类数据 */ public function getCultivateClassInfo() { global $_W, $_GPC; $cc_id = $_GPC['cc_id']; $list = Category::getSingleCategory($cc_id, ['id', 'name', 'advs']); if ($list['advs']) { $list['advs'] = unserialize($list['advs']); foreach ($list['advs'] as &$val) $val['thumb'] = tomedia($val['thumb']); } $field = ['video_link', 'id', 'title', 'likeids', 'likenum', 'share','video_cover']; $videoRes = Category::categoryVideoAll($list['id'], $field, true, $_W['mid']); $list['video'] = $videoRes['list']; $this->renderSuccess('数据返回成功', $list); } /** * 获取招聘工作分类 */ public function cultivateClassList() { global $_GPC; if ($_GPC['job_type']) { $list = Category::getCategoryRecruit($_GPC['job_type']); $this->renderSuccess('数据返回成功', $list); } $this->renderError('分类参数不存在'); } /** * 获取商品类型分类 */ public function getStoreCategory() { $list = Category::getStoreCategory(); $this->renderSuccess('数据返回成功', $list); } /** * 获取商品类型子集分类 */ public function getStoreCategoryChild() { global $_W, $_GPC; $cc_id = $_GPC['cc_id']; if (empty($cc_id) || !is_numeric($cc_id)) $this->renderError('缺少分类id'); $list = Category::getChildCategoryAll($cc_id, ['id', 'name']); if ($list) $this->renderSuccess('数据返回成功', $list); else $this->renderSuccess(2, '数据为空'); } /** * Comment: 分类视频点赞操作 * Author: whj * Date: 2023/6/30 10:12 */ public function fabulous() { global $_W, $_GPC; #1、参数接收 $id = $_GPC['id']; if (empty($id) || !is_numeric($id)) $this->renderError('缺少参数:id');//视频id #2、获取帖子的点赞信息 $info = pdo_get(PDO_NAME . "cultivate_class_video", ['id' => $id], ['likeids', 'likenum']); $ids = unserialize($info['likeids']); $num = count($ids); #3、判断是否为重复操作 if (is_array($ids) && $num > 0) { if (in_array($_W['mid'], $ids)) { #4、取消点赞的操作 $ids = array_flip($ids); unset($ids[$_W['mid']]); $ids = array_flip($ids); $likenum = $info['likenum'] - 1; } else { $ids = array_values($ids);//初始化数组 重新生成键值 从0开始 $ids[$num] = $_W['mid']; $likenum = $info['likenum'] + 1; } } else { $ids[$num] = $_W['mid']; $likenum = $info['likenum'] + 1; } #5、点赞成功的操作 $res = pdo_update(PDO_NAME . "cultivate_class_video", ['likeids' => serialize($ids), 'likenum' => $likenum], ['id' => $id]); if ($res) $this->renderSuccess(); $this->renderError(); } /** * Comment: 分享时记录分享数量 * Author: zzw * Date: 2023/6/30 10:30 */ public function shareNum() { global $_W, $_GPC; #1、参数获取 $id = $_GPC['id'] or $this->renderError('缺少参数:id'); #2、获取当前分享数量 $shareNum = pdo_getcolumn(PDO_NAME . "cultivate_class_video", ['id' => $id], 'share'); $totalNum = intval($shareNum) + 1; #2、修改分享数量 pdo_update(PDO_NAME . "cultivate_class_video", ['share' => $totalNum], ['id' => $id]); $this->renderSuccess('记录成功'); } /** * Comment: 评论接口 * Author: whj * Date: 2023/6/30 10:30 */ public function comment() { global $_W,$_GPC; //判断是否绑定手机 $mastmobile = unserialize($_W['wlsetting']['userset']['plugin']); if (empty($_W['wlmember']['mobile']) && in_array('private',$mastmobile)){ $this->renderError('未绑定手机号'); } #1、参数接收 $video_id = $_GPC['video_id'] OR $this->renderError('缺少参数:video_id') ;//视频id $text = $_GPC['text'] OR $this->renderError('请输入评论内容!') ;//评论内容 $pid = $_GPC['pid'] ?: 0;//父id $oneid = $_GPC['oneid'] ?: 0;//第1级评论id //判断文本内容是否非法 $textRes = Filter::init($text,$_W['source'],1); if ($textRes['errno'] == 0) $this->renderError($textRes['message']); #2、判断用户是否为黑名单用户 $this->checkBlack(); #3、评论信息拼装 $data['uniacid'] = $_W['uniacid']; $data['aid'] = $_W['aid']; $data['video_id'] = $video_id; $data['content'] = base64_encode($text); $data['mid'] = $_W['mid']; $data['pid'] = $pid; $data['oneid'] = $oneid; $data['createtime'] = time(); //判断是否需要审核 $settings = Setting::wlsetting_read('comment_set'); if($settings['videoComment'] == 1) $data['status'] = 1; #4、保存评论内容 $res = pdo_insert(PDO_NAME."cultivate_class_comment",$data); if($res){ $cid = pdo_insertid(); # 回复帖子消息推送 if (!empty($pid)) { $parentRes = pdo_get(PDO_NAME .'cultivate_class_comment',['id' => $pid],'mid'); Category::setReplyModelInfo($video_id,$cid,$_W['mid'],$parentRes['mid']); } $this->renderSuccess('评论成功',['cid' => $cid,'amid' => $data['mid']]); } else { $this->renderError('评论失败,请稍后重试'); } } /** * Comment: 编辑或删除评论信息 * Author: wlf * Date: 2022/02/09 11:25 */ public function changeComment(){ global $_W,$_GPC; $this->checkBlack(); $id = $_GPC['id'] OR $this->renderError('缺少参数:id');//评论id $type = $_GPC['type'] ? : 0; // 1修改 0删除 if($type > 0){ $text = $_GPC['text'] OR $this->renderError('请输入修改内容!');//评论内容 //判断文本内容是否非法 $textRes = Filter::init($text,$_W['source'],1); if($textRes['errno'] == 0){ $this->renderError($textRes['message']); } $data['content'] = base64_encode($text); //判断是否需要审核 $set = Setting::agentsetting_read('pocket');// <-- replace --> // if($set['comment_reply'] == 1) $data['status'] = 0; $res = pdo_update(PDO_NAME .'cultivate_class_comment',$data,['id' => $id]); }else{ $res = $this->treeDeleteComment($id); } if($res > 0){ $this->renderSuccess('操作成功'); }else{ $this->renderError('操作失败,请稍后重试'); } } /** * 递归删除评论 * @param $id * @return false|mixed */ protected function treeDeleteComment($id) { global $_W; if (empty($id)) return false; $arr = pdo_getall(PDO_NAME . 'cultivate_class_comment' , ['uniacid' => $_W['uniacid'] , 'pid' => $id]); if (empty($arr)) return pdo_delete(PDO_NAME . 'cultivate_class_comment' , ['uniacid' => $_W['uniacid'] , 'id' => $id]); foreach ($arr as $key => $value) { if (!$this->treeDeleteComment($value['id'])) return false; } return pdo_delete(PDO_NAME . 'cultivate_class_comment' , ['uniacid' => $_W['uniacid'] , 'id' => $id]); } /** * Comment: 判断用户是否被加入黑名单 * Author: wlf * Date: 2020/06/28 16:28 */ public function checkBlack(){ global $_W; $flag = pdo_getcolumn(PDO_NAME.'pocket_blacklist',array('uniacid'=>$_W['uniacid'],'mid'=>$_W['mid'],'aid'=>$_W['aid']),'id'); if(!empty($flag)){ $tips = $_W['wlsetting']['userset']['black_desc'] ? : '您被禁止评论,请联系客服'; $this->renderError($tips); } } /** * 获取视频评论 * @return void */ public function getVideoComment() { global $_W,$_GPC; $mid = $_W['mid']; $oneid = $_GPC['oneid'] ?: 0; $pindex = $_GPC['pindex'] ?: 1; $psize = $_GPC['psize'] ?: 10; $video_id = $_GPC['video_id']; if (empty($video_id) || !is_numeric($video_id)) $this->renderError('缺少参数:video_id'); // 第一级评论 $commentWhere = ['aid' => $_W['aid'],'video_id' => $video_id,'oneid' => $oneid, 'status' => 1]; $commentData = Category::getVideoComment($commentWhere,$mid,$pindex,$psize); $list = $commentData['list']; $total = $commentData['total']; $this->renderSuccess('数据返回成功',['list' => $list,'total' => $total]); } /** * Comment: 分类视频点赞操作 * Author: whj * Date: 2023/6/30 10:12 */ public function commentFabulous() { global $_W, $_GPC; #1、参数接收 $id = $_GPC['id']; if (empty($id) || !is_numeric($id)) $this->renderError('缺少参数:id');//视频id #2、获取帖子的点赞信息 $info = pdo_get(PDO_NAME . "cultivate_class_comment", ['id' => $id], ['likeids', 'likenum']); $ids = unserialize($info['likeids']); $num = count($ids); #3、判断是否为重复操作 if (is_array($ids) && $num > 0) { if (in_array($_W['mid'], $ids)) { #4、取消点赞的操作 $ids = array_flip($ids); unset($ids[$_W['mid']]); $ids = array_flip($ids); $likenum = $info['likenum'] - 1; } else { $ids = array_values($ids);//初始化数组 重新生成键值 从0开始 $ids[$num] = $_W['mid']; $likenum = $info['likenum'] + 1; } } else { $ids[$num] = $_W['mid']; $likenum = $info['likenum'] + 1; } #5、点赞成功的操作 $res = pdo_update(PDO_NAME . "cultivate_class_comment", ['likeids' => serialize($ids), 'likenum' => $likenum], ['id' => $id]); if ($res) $this->renderSuccess(); $this->renderError(); } }