const app = getApp() const util = require('../../utils/util.js') Page({ /** * 页面的初始数据 */ data: { messageId: '', activityInfo: {}, like: false, showEdit: false, pageToken: 0, activityComment: [], commentText: '' }, getPublisherInfo: function () { wx.navigateTo({ url: '/pages/publisher/publisher?id=' + this.data.activityInfo.pub_id }) }, editActivity: function () { wx.navigateTo({ url: '/pages/activityPublish/activityPublish?id=' + this.data.activityInfo.pub_id + '&msg_id=' + this.data.messageId }) }, toggleLike: function () { wx.showLoading({ title: this.data.like ? '取消收藏' : '收藏中' }) wx.cloud.callFunction({ name: this.data.like ? 'deleteFavorite' : 'createFavorite', data: { msg_id: this.data.messageId } }).then(res => { wx.hideLoading() if (res.result.status !== 'OK') { wx.showToast({ title: res.result.errMsg, icon: 'none' }) return } wx.showToast({ title: this.data.like ? '取消收藏成功' : '收藏成功', icon: 'none' }) this.setData({ like: !this.data.like }) }) // if (!this.data.likeEnable) return // this.setData({ // likeEnable: false // }) // const db = wx.cloud.database() // if (this.data.like == 0) { // db.collection('likeData').add({ // data: { // type: 'message', // id: this.data.activityInfo._id // }, // success: function () { // this.setData({ // like: 1, // likeEnable: true // }) // wx.showToast({ // title: '已收藏', // }) // }.bind(this), // fail: function () { // wx.showToast({ // title: '网络错误', // icon: 'none' // }) // } // }) // } else { // db.collection('likeData').where({ // type: 'message', // id: this.data.activityInfo._id // }).remove({ // success: function () { // this.setData({ // like: 0, // likeEnable: true // }) // wx.showToast({ // title: '已取消收藏', // }) // }.bind(this), // fail: function () { // wx.showToast({ // title: '网络错误', // icon: 'none' // }) // } // }) // } }, loadQuestionData: function () { wx.showNavigationBarLoading() wx.cloud.callFunction({ name: 'listQuestions', data: { msg_id: this.data.messageId, page_token: this.data.pageToken, page_size: 25 } }).then(res => { wx.hideNavigationBarLoading() if (res.result.status !== 'OK') { wx.showToast({ title: res.result.errMsg, icon: 'none' }) return } for (let i = 0; i < res.result.list.length; i++) { res.result.list[i].a_time = util.handleDate(res.result.list[i].a_time) } this.setData({ activityComment: this.data.activityComment.concat(res.result.list), pageToken: res.result.next_page_token }) }) }, comment: function () { if (this.data.commentText.length < 5) { wx.showToast({ title: '提问字数至少为5', icon: 'none' }) } else { wx.showLoading({ title: '发送中' }) wx.cloud.callFunction({ name: 'createQuestion', data: { msg_id: this.data.messageId, question: this.data.commentText } }).then(res => { wx.hideLoading() if (res.result.status !== 'OK') { wx.showToast({ title: res.result.errMsg, icon: 'none' }) return } wx.showToast({ title: '发送成功,请等待发布者回复', icon: 'none' }) this.setData({ commentText: '' }) }) } }, /** * 生命周期函数--监听页面加载 */ onLoad: function (options) { this.setData({ messageId: options.id }) wx.showLoading({ title: '加载中' }) wx.cloud.callFunction({ name: 'getMessage', data: { msg_id: this.data.messageId } }).then(res => { wx.hideLoading() if (res.result.status !== 'OK') { wx.showToast({ title: res.result.errMsg, icon: 'none' }) return } res.result.data = util.dbToMsg(res.result.data) let edit = false for (let i = 0; i < app.globalData.pubInfo.length; i++) { if (res.result.data.pub_id === app.globalData.pubInfo[i].pub_id) { edit = true } } this.setData({ activityInfo: res.result.data, like: res.result.data.favorite, showEdit: edit }) this.loadQuestionData() }) }, /** * 生命周期函数--监听页面初次渲染完成 */ onReady: function () { }, /** * 生命周期函数--监听页面显示 */ onShow: function () { }, /** * 生命周期函数--监听页面隐藏 */ onHide: function () { }, /** * 生命周期函数--监听页面卸载 */ onUnload: function () { }, /** * 页面相关事件处理函数--监听用户下拉动作 */ onPullDownRefresh: function () { }, /** * 页面上拉触底事件的处理函数 */ onReachBottom: function () { }, /** * 用户点击右上角分享 */ onShareAppMessage: function () { } })