var api = require('../../utils/api')
var app = getApp()

Page({
  data: {
    userInfo: null,
    subscription: null,
    deviceCount: 0,
    subRemaining: 0
  },

  onShow: function () {
    this.loadProfile()
  },

  loadProfile: function () {
    var self = this
    api.getProfile().then(function (profile) {
      self.setData({
        userInfo: profile,
        deviceCount: profile.device_count || 0
      })
    }).catch(function () {})

    api.getSubscription().then(function (sub) {
      self.setData({
        subscription: sub,
        subRemaining: sub.remaining_days || 0
      })
    }).catch(function () {})
  },

  onManageDevice: function () {
    var self = this
    if (this.data.deviceCount > 0) {
      wx.showActionSheet({
        itemList: ['解绑当前设备'],
        success: function (res) {
          if (res.tapIndex === 0) {
            wx.showModal({
              title: '确认解绑',
              content: '解绑后将无法使用该设备，确定要解绑吗？',
              success: function (modalRes) {
                if (modalRes.confirm) {
                  api.unbindDevice().then(function () {
                    wx.showToast({ title: '已解绑', icon: 'success' })
                    self.loadProfile()
                  }).catch(function (err) {
                    wx.showToast({ title: err.message || '解绑失败', icon: 'none' })
                  })
                }
              }
            })
          }
        }
      })
    } else {
      wx.navigateTo({ url: '/pages/scan/scan' })
    }
  },

  onViewSubscription: function () {
    wx.navigateTo({ url: '/pages/subscribe-plans/subscribe-plans' })
  },

  onViewHistory: function () {
    wx.switchTab({ url: '/pages/history/history' })
  },

  onHelp: function () {
    wx.navigateTo({ url: '/pages/help/help' })
  },

  onContact: function () {
    wx.navigateTo({ url: '/pages/contact/contact' })
  },

  onLogout: function () {
    wx.showModal({
      title: '退出登录',
      content: '确定要退出登录吗？',
      success: function (res) {
        if (res.confirm) {
          wx.removeStorageSync('token')
          wx.reLaunch({ url: '/pages/login/login' })
        }
      }
    })
  }
})
