import {
    getRankingData,
    getRankedDay
} from '~/api/global'
import event from '~/mixins/event'
Page({
    behaviors: [event],
    /**
     * 页面的初始数据
     */
    data: {
        userList: [],
        ranking: '',
        //2:邀新榜,3:热播榜,4:挑战pk榜
        rankingType: '',
        icon: '',
        podiumBoxBg: '',
        historyList: [],
        selector: {
            currentDay: '',
            next: true,
            previous: true,
        },
        backgroundColor: ''
    },
    /**
     * 生命周期函数--监听页面加载
     */
    async onLoad(options) {
        let historyList = await getRankedDay()
        this.setData({
            historyList,
            selector: {
                currentDay: historyList.length - 1,
                next: false,
                previous: historyList.length - 1 > 0
            }
        }, () => {
            this.getRankInfo(options)
        })

    },
    async getRankInfo(options) {
        let backgroundColor = options.type == '2' ? '#50AE75' : options.type == '3' ? '#FF7E6C' : '#8468FA';
        this.setData({
            rankingType: options.type,
            icon: options.type == '2' ? '/static/yx.png' : options.type == '3' ? '/static/play.png' : '/static/win.png',
            podiumBoxBg: options.type == '2' ? 'invitation' : options.type == '3' ? 'hot' : 'pk',
            backgroundColor
        })
        wx.setNavigationBarColor({
            frontColor: '#ffffff',
            backgroundColor
        })
        let {
            userList,
            ranking
        } = await getRankingData({
            type: options.type,
            day: this.data.historyList[this.data.selector.currentDay]
        })
        this.setData({
            userList,
            ranking
        })
    },
    switchType({
        target
    }) {
        let rankingType = target.dataset.type
        if (rankingType && rankingType != this.data.rankingType) {
            this.getRankInfo({
                type: rankingType
            })
        }
    },
    bindDateChange({
        currentTarget
    }) {
        let type = currentTarget.dataset.type
        let currentDay = this.data.selector.currentDay
        if (type == 'next' && currentDay < this.data.historyList.length - 1) {
            currentDay = ++currentDay
        } else if (type == 'previous' && currentDay > 0) {
            currentDay = --currentDay
        }
        this.setData({
            selector: {
                currentDay,
                next: currentDay < this.data.historyList.length - 1,
                previous: currentDay > 0
            }
        })
        this.getRankInfo({
            type: this.data.rankingType
        })
    },
    jumpIndex() {
        wx.switchTab({
            url: '/pages/index/index',
        })
    },
    jumpUserInfo({
        currentTarget
    }) {
        if (!currentTarget.dataset.uid) {
            return
        }
        wx.navigateTo({
            url: `/pages/personal/index?uid=${currentTarget.dataset.uid}&type=${this.data.rankingType==4?'pk':'user'}`,
        })
    },
    onShareAppMessage() {
        // #if MP
        return {
            title: this.data.rankingType == 3 ? '我要上热门,就差你的一个赞,快来帮帮我吧!' : '这个小程序太赞了!孩子朗读能力蹭蹭上涨,推荐你试试!',
            path: `/pages/index/index?uid=${wx.getStorageSync('uid')}`,
            imageUrl: this.data.rankingType == 3 ? '/static/375-300-3.jpg' : '/static/375-300-2.jpg'
        }
        // #elif ANDROID
        return {
            title: this.data.rankingType == 3 ? '我要上热门,就差你的一个赞,快来帮帮我吧!' : '这个小程序太赞了!孩子朗读能力蹭蹭上涨,推荐你试试!',
            userName: 'gh_50f61361ad1d',
            path: `/pages/index/index?uid=${wx.getStorageSync('uid')}`,
            imagePath: this.data.rankingType == 3 ? '/static/375-300-3.jpg' : '/static/375-300-2.jpg',
            webpageUrl: 'http://www.efunbox.cn',
            withShareTicket: true,
            miniprogramType: 1,
            scene: 0,
        }
        // #endif

    }
})