Files
peko-h5/view/peko/modules/game/js/index.js
2023-08-07 16:04:25 +08:00

194 lines
6.6 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

let urlPrefix = getUrlPrefix()
let browser = checkVersion()
let env = EnvCheck();
if (env == 'test') {
new VConsole();
}
// const productUrlNew = 'https://api.99park.cn'; // 正式環境
// const testUrlNew = 'http://beta.99park.cn'; // 測試環境
const productUrlNew = 'https://api.pekolive.com'; // 正式環境
const testUrlNew = 'https://beta.api.pekolive.com'; // 測試環境
//獲取新域名前綴
function getUrlPrefixNew() {
if (!EnvCheck()) return undefined;
return EnvCheck() === 'live' ? productUrlNew : testUrlNew;
}
const urlPrefixNew = getUrlPrefixNew()
// 封裝layer消息提醒框
let layerIndex
const showLoading = (content = '加載中...') => {
layer.open({
type: 2,
shadeClose: false,
content,
success(e) {
layerIndex = $(e).attr('index')
}
})
}
const hideLoading = (index) => {
layer.close(index)
}
const toastMsg = (content = '操作完成', time = 2) => {
layer.open({
content,
time,
skin: 'msg'
})
}
let shareObj = {
type: 2,
data: {
msg: 'llllll',
title: '來piko邂逅你的專屬聲音',
imgUrl: 'http://beta.img.pekolive.com/logo.png',
desc: '聽聲音玩遊戲交朋友來piko~',
}
}
let inviteList = []
let userInfo = {}
const getInviteList = () => {
showLoading()
networkRequest({
type: 'GET',
url: urlPrefix + '/inviteCode/getListV2',
success(res){
hideLoading(layerIndex)
if(res.code === 200){
$('.invite-code span').html(res.data.inviteCode)
inviteList = res.data.inviteList
userInfo = res.data.inviteUser
renderUserInfo()
renderInviteList()
if(pubInfo.deviceInfo.app == 'pikoEnterprise'){
shareObj.data.link = shareObj.data.showUrl = `${urlPrefixNew}/peko/modules/game/register.html?inviteCode=` + res.data.inviteCode + '&shareUid=' + userInfo.uid + '&enterprise=pikoEnterprise'
$('.qr').qrcode(`${urlPrefixNew}/peko/modules/game/register.html?inviteCode=` + res.data.inviteCode + '&shareUid=' + userInfo.uid + '&enterprise=pikoEnterprise')
$('canvas').addClass('active')
}else{
shareObj.data.link = shareObj.data.showUrl = `${urlPrefixNew}/peko/modules/game/register.html?inviteCode=` + res.data.inviteCode + '&shareUid=' + userInfo.uid
$('.qr').qrcode(`${urlPrefixNew}/peko/modules/game/register.html?inviteCode=` + res.data.inviteCode + '&shareUid=' + userInfo.uid)
$('canvas').addClass('active')
}
$('.share-btn').on('click', function () {
if (browser.app) {
if (browser.android) {
window.androidJsObj.openSharePage(JSON.stringify(shareObj));
} else if (browser.ios) {
window.webkit.messageHandlers.openSharePage.postMessage(JSON.stringify(shareObj));
}
}
});
}else{
toastMsg(res.message)
}
},
error(){
hideLoading(layerIndex)
toastMsg('網絡錯誤')
}
})
}
const getRule = () => {
showLoading()
networkRequest({
type: 'GET',
url: urlPrefix + '/inviteCode/getInviteTicketInfo',
success(res){
hideLoading(layerIndex)
if(res.code === 200){
if(res.data){
$('.punctuation').html(';')
$('.rule-wrap').addClass('rule-wrap-big')
taskLimit = res.data.taskLimit
tickets = res.data.tickets
let desc = ''
tickets.map((item, index) => {
desc += `${item.ticketName}${item.ticketNum}${index === tickets.length-1 ? '。' : ''}`
})
let str = `
<p>4.每成功邀請${taskLimit}位好友註冊且報名比賽,可獲贈${desc}</p>
`
$('.rule-wrap').append(str)
}
}else{
toastMsg(res.message)
}
},
error(){
hideLoading(layerIndex)
toastMsg('網絡錯誤')
}
})
}
const renderInviteList = () => {
let str = ''
inviteList.map( (item) => {
if(!item.nick){
item.nick = '未知'
}
str += `
<li>
<div class="item-avatar"><img src="${item.avatar ? item.avatar : `./images/default.png`}" alt=""></div>
<div class="item-info">
<p class="item-nickname">
${item.nick.length > 11 ? item.nick.slice(0, 11) + `...` : item.nick}
${
item.gender ? `<img src="${item.gender === 1 ? `./images/male.png` : `./images/female.png`}" alt="">` : ''
}
</p>
<div class="item-date"><span>${dateFormat(item.createTime, "yyyy-MM-dd hh:mm")}</span>&nbsp;&nbsp;註冊</div>
</div>
<div class="isActive ${item.hasLoginActived ? '' : 'inactive'}">${item.hasLoginActived ? '已登錄激活' : '未登錄激活'}</div>
</li>
`
} )
$('.invite-record-wrap').html(str)
}
const renderUserInfo = () => {
if(!userInfo.nick){
userInfo.nick = '未知'
}
if(userInfo.nick.length > 10){
userInfo.nick = userInfo.nick.slice(0, 10) + `...`
}
$('.personal-info .nickname').html(userInfo.nick)
$('.personal-info-content .avatar img').attr('src', userInfo.avatar)
$('.personal-info .platform-code .erbanNo').html(userInfo.erbanNo)
}
$(function(){
getInfoFromClient()
setTimeout(function(){
getInviteList()
getRule()
}, 150)
if (browser.app) {
if (browser.android) {
let channel = JSON.parse(pubInfo.deviceInfo).channel
if (channel.indexOf('toutiao') != -1 || channel.indexOf('kuaishou') != -1) {
$('.banner img').attr('src', './images/banner-yy.png')
$('.avatar img').attr('src', './images/logo-yy.png')
$('.appName').html('piko')
}
}
}
setTimeout(() => {
$('body').show()
}, 0)
})