// pages/feedBack/feedBack.js
const { api, rapi, formatTime, imgName, getUserInfo, wxLogin, alertTip, authAgainByUser, userLocation } = require('../../lib/util.js')

//获取应用实例
const app = getApp()

Page({

  /**
   * 页面的初始数据
   */
  data: {
    wordCount: 0,
    feedbackImages: [],
    feedback: '',
    type: 'normal',
    focus: false,
    disabled: false
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  },
  /**
   * 输入框输入事件处理
   */
  handelTextArea: function (val) {
    // if (val.detail.cursor <= 50) {

    //   if (val.detail.cursor == 200) {
    //     wx.showToast({
    //       title: '反馈信息最多不超过200个字符哦~',
    //       icon: 'none',
    //       duration: 2000
    //     })
    //   }
    // } else {
    //   wx.showToast({
    //     title: '反馈信息最多不超过50个字符哦~',
    //     icon: 'none',
    //     duration: 2000
    //   })
    // }
    this.setData({
      feedback: val.detail.value,
      wordCount: val.detail.cursor
    })
  },
  chooseImage: function () {
    var that = this;
    let count = that.count - that.data.feedbackImages.length
    if (count > 0) {
      wx.chooseImage({
        count: count, // 默认9
        sizeType: ['original', 'compressed'], // 可以指定是原图还是压缩图，默认二者都有
        sourceType: ['album', 'camera'], // 可以指定来源是相册还是相机，默认二者都有
        success: function (res) {
          // 返回选定照片的本地文件路径列表，tempFilePath可以作为img标签的src属性显示图片
          var tempFilePaths = res.tempFilePaths
          //启动上传等待中...  
          wx.showToast({
            title: '正在上传...',
            icon: 'loading',
            mask: true,
            duration: 200000
          })
          console.log(tempFilePaths)
          var filePaths = that.data.feedbackImages
          tempFilePaths.forEach(ele => {
            wx.uploadFile({
              url: request.BASE_URL + '/newretail/api/dfs/upload', //仅为示例，非真实的接口地址
              filePath: ele,
              name: 'file',
              formData: {
                'user': 'test'
              },
              success: function (res) {
                try {
                  var data = res.data
                  let tempData = JSON.parse(data)
                  console.log(tempData)
                  filePaths.push(tempData.data)
                  // that.images = filePaths
                  that.setData({
                    //将临时变量赋值给已经在data中定义好的变量
                    feedbackImages: filePaths
                  })
                  wx.hideToast()
                } catch (error) {
                  console.log(error)
                  wx.showToast({
                    title: error.message,
                    icon: 'none',
                    duration: 2000
                  })
                }
              },
              fail: function (e) {
                console.log(e.message)
              }
            })
          });
        }
      })
    } else {
      wx.showToast({
        title: '最多只能上传' + that.count + '张哦~',
        icon: 'none',
        duration: 2000
      })
    }
  },
  /* 删除图片 */
  deleteImg: function (val) {
    Array.prototype.del = function (index) {
      if (isNaN(index) || index >= this.length) {
        return false;
      }
      for (var i = 0, n = 0; i < this.length; i++) {
        if (this[i] != this[index]) {
          this[n++] = this[i];
        }
      }
      this.length -= 1;
    };
    const index = val.currentTarget.dataset.id
    const images = this.data.feedbackImages
    images.del(index)
    this.setData({
      feedbackImages: images
    })
    // this.images = images
  },
  // 确认按钮操作
  formSubmit: function (e) {
    const self = this
    this.setData({
      disabled: true
    })
    if (this.data.feedback !== '') {
      let feedbackText = this.data.feedback    
      api.post('feedback/add',{content:feedbackText}).then(res => {
        this.setData({
          type: "success",
          disabled: false
        })
        
      }).catch(err => {
        wx.showToast({
          title: err.message,
          icon: 'none',
          duration: 2000
        })
        this.setData({
          disabled: false
        })
      })
    } else {
      alertTip('反馈信息不能为空哦~')
      this.setData({
        focus: true,
        disabled: false
      })
    }
  },
  /* 返回上一页 */
  backPrePage: function () {
    wx.navigateBack({
      delta: 1
    })
  },
  /*查看图片详情 */
  previewImage: function (e) {
    let urls = []
    this.data.feedbackImages.forEach(item => {
      urls.push(item.url)
    })
    const urlIndex = e.currentTarget.dataset.id
    wx.previewImage({
      current: urls[urlIndex], // 当前显示图片的http链接
      urls: urls,
    })
  }
})