//app.js
import http from './utils/http'

App({
  onLaunch: function () {

    var userinfo = wx.getStorageSync('sg-userinfo')
    if (!userinfo) {
      wx.redirectTo({
        url: '/pages/login/index',
      })
    } else {
      this.globalData.userInfo = userinfo
    }

    // 展示本地存储能力
    // var logs = wx.getStorageSync('logs') || []
    // logs.unshift(Date.now())
    // wx.setStorageSync('logs', logs)

    // 登录
    // wx.login({
    //   success: res => {
    // 发送 res.code 到后台换取 openId, sessionKey, unionId
    // }
    // })
    // 获取用户信息
    // wx.getSetting({
    //   success: res => {
    //     if (res.authSetting['scope.userInfo']) {
    //       // 已经授权，可以直接调用 getUserInfo 获取头像昵称，不会弹框
    //       wx.getUserInfo({
    //         success: res => {
    //           // 可以将 res 发送给后台解码出 unionId
    //           this.globalData.userInfo = res.userInfo

    //           // 由于 getUserInfo 是网络请求，可能会在 Page.onLoad 之后才返回
    //           // 所以此处加入 callback 以防止这种情况
    //           if (this.userInfoReadyCallback) {
    //             this.userInfoReadyCallback(res)
    //           }
    //         }
    //       })
    //     }
    //   }
    // })
  },
  globalData: {
    userInfo: null
  },
  updateUserInfo: function (info) {
    console.log(info)
    this.globalData.userInfo = info
    wx.setStorageSync('sg-userinfo', info)
  },
  logout: function (res) {
    this.globalData.userInfo = null
    wx.setStorageSync('sg-userinfo', null)
    wx.navigateTo({
      url: '/pages/login/index'
    })
  },
  resetFilter: function () {
    var data = {
      project_ids: [''],
      work_point_ids: [''],
      device_id: '',
      device_name_id: '',
      spec_id: ''
    }
    wx.setStorageSync('sg-device-filters', data)
  },
  resetDataFilter: function () {
    var data = {
      devices: [],
      device_ids: [''],
      names: [],
      device_name_ids: [''],
      specs: [],
      spec_ids: [''],
      rent_types: [],
      rent_type_ids: ['']
    }
    wx.setStorageSync('sg-data-filters', data)
  },
  navigate(e) {
    var url = e.currentTarget.dataset.url
    wx.navigateTo({
      url: url,
    })
  },
  updateInput(that, e) {
    var name = e.currentTarget.dataset.name
    var val = e.detail.value
    that.setData({
      [name]: val
    })
  },
  loginCallback: function (data) {
    this.updateUserInfo(data)
    var topRole = data.topRole
    if (topRole && topRole.key == 'leader') {
      wx.switchTab({
        url: '/pages/account/index',
      })
    } else {
      wx.switchTab({
        url: '/pages/index/index',
      })
    }
  },
})