import Vue from 'vue'
import {
	thirdLogin
} from '../request/api.js'
import {
	baseUrl
} from '../request/baseUrl.js'
export const isWechat = async () => {
	// #ifdef H5
	var ua = window.navigator.userAgent.toLowerCase();

	//alert(ua);
	// if (ua.match(/windowswechat/i) == "windowswechat") {
	// 	//alert('这是电脑版微信浏览器');
	// 	return false;
	// } else {
	// 	console.log('这不是微信浏览器');
	// }
	if (ua.match(/MicroMessenger/i) == 'micromessenger') {
		return true;
	}

	return false;
	// #endif

	// #ifdef MP-WEIXIN
	return true
	// #endif
}
export const login = async () => {
	// #ifdef H5
	let appid = 'wx877c9b57a770f86e'
	let url = "";
	url = window.location.href;
	var a =
		`https://open.weixin.qq.com/connect/oauth2/authorize?appid=${appid}&redirect_uri=${encodeURIComponent(url)}&response_type=code&scope=snsapi_userinfo&state=isLogin#wechat_redirect`
	window.location.href = a
	// #endif


	// #ifdef MP-WEIXIN
	let res = await wx.login()
	if (res.errMsg === 'login:ok') {
		wechatloginAfter(res.code)
	}
	console.log('小程序登录结果：', res);
	// wechatloginAfter(res.code)
	// #endif
}
export const getUrlParams = (key) => {
	// let pages = getCurrentPages()
	// let currentRoute = pages[pages.length - 1]
	// return currentRoute.options[key]
	// 获取当前页面的 URL 参数
	// var pages = getCurrentPages(); // 获取当前页面栈
	// var currentPage = pages[pages.length - 1]; // 获取当前页面
	// var url = currentPage.route; // 获取当前页面路径
	// var options;

	// // 判断是否在微信小程序环境下
	// if (uni.getSystemInfoSync().platform === 'mp-weixin') {
	// 	// 在微信小程序中，通过 options 属性获取 URL 参数
	// 	options = currentPage.options;
	// } else {
	var searchParams = new URLSearchParams(window.location.search);
	// 获取code参数的值
	var code = searchParams.get(key);
	return code
	// }

}
export const wechatloginAfter = async (code) => {
	// 向后端发起请求
	let {
		data
	} = await thirdLogin({
		platform: 'wechat',
		code
	})
	console.log(data);
	if (!data.data || !data.data.userinfo || !data.data.userinfo?.token) {
		uni.$u.toast('微信自动登录失败');
		return
	}
	uni.setStorageSync('userInfo', data.data.userinfo)
	uni.setStorageSync('token', data.data.userinfo.token)
	uni.setStorageSync('thirdinfo', data.data.thirdinfo)
	uni.navigateTo({
		url: '/pages/index/index?code=',
	})
	// 本地存储token
	// console.log('获取到的用户数据', data.data);
	// localStorage.setItem('USER_INFO', JSON.stringify(data.data.userinfo))
	// localStorage.setItem('TOKEN', data.data.userinfo.token)
	// localStorage.setItem('USER_THIRD', JSON.stringify(data.data.thirdinfo))
	// _this.userInfo = data.data.userinfo
	// console.log(_this.userInfo);
}

function qsFormatter(href) {
	if (href.includes("?")) {
		var a = href.split("?")[1]
		var b = a.split("&")
		var r = {};
		b.forEach(item => {
			var kv = item.split("=")
			r[kv[0]] = kv[1]
		})
		return r
	} else {
		return {}
	}
}

function isPhoneNumber(phone) {
	// 使用正则表达式匹配手机号
	var pattern = /^1[3456789]\d{9}$/;
	return pattern.test(phone);
}

// 格式化日期

Date.prototype.$formatDate = function() {
	console.log(this);
	const year = this.getFullYear(); // 年份
	const month = this.getMonth() + 1; // 月份（注意月份范围是 0-11）
	const day = this.getDate(); // 日期

	// 拼接成字符串形式的日期
	const formattedDate = `${year}年${(month < 10 ? '0' : '') + month}月${(day < 10 ? '0' : '') + day}日`;

	return formattedDate;
}

function showImg(urls, index) {
	uni.previewImage({
		urls,
		index
	})
}



Vue.prototype.$getUrlParams = getUrlParams
Vue.prototype.$showImg = showImg
Vue.prototype.$isWechat = isWechat
Vue.prototype.$wechatloginAfter = wechatloginAfter
Vue.prototype.$login = login
Vue.prototype.$isPhoneNumber = isPhoneNumber