getRunTimeObject()->urlType == UrlConstants::REFERRAL_GROUND_PAGE_SPREAD) { //如果业务域名就跳转; $userInfo = UserService::instance()->getUserInfo(); $adminConfig = AdminService::instance()->getAdminConfigModel()->getAdminInfoAll($userInfo->channel_id); $shareHost = Config::get('site.share_domain') . '/index/share/index?'; if (strstr('http', $shareHost) === false) { $shareHost = 'http://' . $shareHost; } $params['from'] = 'wechat'; $params['share_type'] = $this->request->get('type'); $params['admin_id'] = $adminConfig['admin_id']; $params['channel_id'] = $userInfo->channel_id; $params['user_id'] = $userInfo->id; $shareHost .= http_build_query($params); $this->redirect($shareHost); } $userInfo = UserService::instance()->getUserInfo(); $isOpenShare = Config::get('site.is_open_share'); $channels = Config::get('site.share_channels'); // echo $channels; // echo $userInfo->channel_id;exit; if ($isOpenShare && $channels != -1) { $channels = explode(',', $channels); $userChannel = explode(',', $userInfo->channel_id); $isHave = array_intersect($channels, $userChannel); if (empty($channels) || !$isHave) { $isOpenShare = 0; } } $toUrl = getCurrentDomain($userInfo->channel_id, '/index/user/recent'); //获得分享内容 $content = ActiveShareService::instance()->getShareContent($userInfo->channel_id, $userInfo->id); //获得分享统计 $data = ShareService::instance()->getShareUserList($userInfo->id, 0, 6, $userInfo->nickname); $data['pageNum'] = 0; $data['lenNum'] = 6; //弹幕 $barrage = ShareService::instance()->getShareBarrage($userInfo->id); // ShareService::instance()->attentionUser(60053,['nickname'=>'nihao','avatar'=>44544]); // ShareService::instance()->updateUserSourceTime($userInfo->id,60052); // $re = ShareService::instance()->ClickShareLink($userInfo->id,60052,1111111); // dump($re);exit; $this->assign('share_rules', Config::get('site.share_rules')); $this->assign('log_host', Config::get('site.loghost')); //设置打点域名 $this->assign('content', str_replace("'", "\"", $content)); $this->assign('barrage', $barrage); $this->assign('is_open_share', $isOpenShare); $this->assign('to_url', $toUrl); // dump($data) $this->assign('data', $data); return $this->view->fetch(); } public function exportfans() { $user = UserService::instance()->getUserInfo(); $channel_id = $user->channel_id; $fans = ExportFansService::instance()->checkFansSignToExport($channel_id, $user->id)->data; if ($fans) { $this->assign('fans', $fans); $adminConfig = AdminService::instance()->getAdminConfigModel()->getAdminInfoAll($user->channel_id); $this->assign('adminconfig', $adminConfig); return $this->view->fetch(); } else { $this->redirect(getCurrentDomain($channel_id, '/index/user/recent')); } } //引导落地页 public function leadpage($id) { if (empty($id) || !intval($id)) { $this->error('链接不存在'); die; } $data = model("ExportFans")->getOne($id); if (!$data || !isset($data['lead_img']) || empty($data['lead_img'])) { $this->error('链接不存在'); die; } $this->view->assign('data', $data); return $this->fetch(); } //引导落地页 public function landpage($id, $type) { $admininfo = model('AdminConfig')->getAdminInfoAll($this->urlChannelId); $wechat = new WeChatObject($admininfo); $officialAccount = $wechat->getOfficialAccount(); //使用原始url生成签名 $url = Request::instance()->url(true); $url = preg_replace('/:\d+$/', '', trim($url)); //去除 :端口 结束的 $url = preg_replace('/:\d+\//', '/', trim($url)); //去除 :端口/ $officialAccount->jssdk->setUrl($url); $json = $officialAccount->jssdk->buildConfig(['onMenuShareTimeline','onMenuShareAppMessage','onMenuShareQQ','onMenuShareQZone'], false, false, true); $this->assign('wxjson', $json); if (empty($id) || !intval($id)) { $this->error('链接不存在'); die; } $data = model("ExportFans")->getOne($id); if (!$data) { $this->error('链接不存在'); die; } if ($type == 'sign') { $lead_field = 'lead_img'; } else { $lead_field = $type . '_lead_img'; } $row = [ 'id' => $data['id'], 'lead_img' => ArrayHelper::array_get($data, $lead_field), 'share_icon' => ArrayHelper::array_get($data, 'share_icon'), 'title' => ArrayHelper::array_get($data, 'lead_title'), 'share_title' => ArrayHelper::array_get($data, 'share_title'), 'share_desc' => ArrayHelper::array_get($data, 'share_desc'), 'share_url' => ArrayHelper::array_get($data, 'share_url'), ]; $this->view->assign('data', $row); return $this->fetch(); } public function addkandian($id) { $user = UserService::instance()->getUserInfo(); $export = ExportFansService::instance()->getExportFansModel()->getOne($id); if (!$export) { $this->error('活动已结束', '', '下次再来获取书币哦'); } //书币赠送次数超限 $cache = CacheConstants::getExportFansGiveKandianCount($user->id); if (Redis::instance()->get($cache) >= $export['share_times']) { $this->error('当日获取书币次数已满', '', '下次再来获取书币哦'); } $cookie = Cookie::get('once'); if (!$cookie) { $success = rand(0, 1); if ($success == 1) { BuyMoreService::instance()->addFreeKandian($user->id, $export['share_free_kandian'], 0, 3, RechargeConstants::RECHARGE_TYPE_ACTIVITY); Redis::instance()->incr($cache); Redis::instance()->expire($cache, 86400); Cookie::delete('once'); $this->success('恭喜您获得' . $export['share_free_kandian'] . '书币', '', '请到个人中心>充值记录查看'); } else { Cookie::set('once', 1); $this->error('您本次分享未获得书币', '', '下次分享必定获取书币'); } } else { BuyMoreService::instance()->addFreeKandian($user->id, $export['share_free_kandian'], 0, 3, RechargeConstants::RECHARGE_TYPE_ACTIVITY); Redis::instance()->incr($cache); Redis::instance()->expire($cache, 86400); Cookie::delete('once'); $this->success('恭喜您获得' . $export['share_free_kandian'] . '书币', '', '请到个人中心>充值记录查看'); } } }