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'] . '书币', '', '请到个人中心>充值记录查看');
}
}
}