<template>
	<view class="content">
		<!-- <view class="bg"></view> -->
		<view class="login">
			<view class="editem">
				<view class="item">
					<view class="text">{{$t("infoEmail")}}</view>
					<view class="input">
						<input v-model="phone" type="email" :placeholder="$t('verifyEmail')"/>
					</view>
				</view>
				<view class="item ">
					<view class="text">{{$t("titleCode")}}</view>
					<view class="input yanzhengma">
						<input class="uni-input" v-model="code" :placeholder="$t('verifyCode')"/>
						<button class="code" type="none" @click="handleCode" v-model="code"
							:disabled="disabled">{{second<60 ? second+$t("titleSendCodeRetry"):$t("titleSendCode")}}
						</button>
					</view>
				</view>
				<view class="item">
					<view class="text">{{$t("titlePassword")}}</view>
					<view class="input">
						<input class="uni-input" v-model="password" :placeholder="$t('verifyPassword')"/>
					</view>
				</view>
				<view class="item">
					<view class="text">{{$t("titleConfirmPassword")}}</view>
					<view class="input">
						<input class="uni-input" v-model="password2" :placeholder="$t('verifyPasswordTwo')"/>
					</view>
				</view>
			</view>
			<!-- <view class="xieyi">
				<checkbox-group @change="checkboxChange" class="group">
					<label>
						<checkbox :value="1" style="transform:scale(0.7)" />{{$t("login.agreement")}}
						<text @click="handlexieyi" @click.stop>{{$t("login.agreementContnt")}}</text>
					</label>
				</checkbox-group>
			</view> -->
			<view class="btnlogin" @click="handleTelLogin">{{$t("btnSubmit")}}</view>
		</view>
	</view>
</template>

<script>
	export default {
		data() {
			return {
				phone: "",
				code: "",
				password: "",
				password2: "",
				disabled: false,
				second: 60,
				value: 1,
				type: ""
			}
		},
		onLoad(options) {
			let that = this
			this.type = options.type //1
			uni.setNavigationBarTitle({
				title: that.type=='register'?that.$t('titleRegister'):that.$t('titleSetPassword')
			})
		},
		methods: {
			checkboxChange(e) {
				this.value = e.detail.value.length ? e.detail.value[0] : "0"
			},
			// 登录、
			handleTelLogin() {
				let that = this
				if (that.value == 0) {
					that.$tools.msg(that.$t("verifyAgreement"))
					return
				}
				if (!(/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/.test(that.phone))) {
					that.$tools.msg(that.$t("verifyEmailCorrect"))
					return
				}
				if (!that.code) {
					that.$tools.msg(that.$t("verifyCode"))
					return
				}
				if (!that.password) {
					that.$tools.msg(that.$t("verifyPassword"))
					return
				}
				if (!that.password2) {
					that.$tools.msg(that.$t("verifyPassword"))
					return
				}
				if (that.password2 != that.password) {
					that.$tools.msg(that.$t("verifyPasswordCorrect"))
					return
				}
				let account = {
					data: that.phone,
					password: that.password,
					confirm_password: that.password2,
					code: that.code,
					language: uni.getStorageSync('language')
				}
				let https = that.type == 'register' ? that.$model.getregister(account) : that.$model.getResetPassword(
					account)
				return https.then(res => {
					console.log("注册", res)
					if (res.code != 0) {
						that.$tools.msg(res.msg)
						return
					}
					uni.setStorageSync('token', res.data.token)
					uni.setStorageSync('aan_id', res.data.aan_id)
					that.$tools.handleUserList()
					that.$tools.msg(that.$t("msgSetPasswordSuccess"))
					setTimeout(function() {
						uni.reLaunch({
							url: "/pages/index/index"
						})
					}, 1000)
				}).catch(err => {})
			},
			// 获取验证码
			handleCode() {
				let that = this
				if (!(/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/.test(that.phone))) {
					that.$tools.msg(that.$t("verifyEmailCorrect"))
					return
				}
				// 
				that.$model.getSendCode({
					data: that.phone,
				}).then(res => {
					console.log(res)
					if (res.code != 0) {
						that.$tools.msg(res.msg)
						return
					}
					that.disabled = true
					let interval = setInterval(() => {
						--that.second
					}, 1000)
					setTimeout(() => {
						clearInterval(interval)
						that.disabled = false
						that.second = 60
					}, 60000)
				}).catch(err => {})
			},
		}
	}
</script>

<style scoped lang="scss">
	.content {
		width: 100%;
		height: 100vh;
		background: #fff;
		// display: flex;
		// flex-direction: column;
		// align-items: center;
		// justify-content: center;
	}

	.bg {
		position: absolute;
		top: 0;
		width: 100%;
		height: 50vh;
		z-index: 9;
		// background: $maincolor;
	}

	.login {
		width: calc(100% - 60rpx);
		height: auto;
		background: #fff;
		border-radius: 20rpx;
		padding: 30rpx;
		background-color: #fff;
		z-index: 99;
		// position: relative;
		// margin-left: calc(10% - 80rpx);
		// box-shadow: 0px 1px 5px 2px #dfe2e1fc;

		.title {
			text-align: left;
			color: #333;
			font-size: 40rpx;
			font-weight: bold;
			margin-bottom: 30rpx;
		}


		.editem {
			position: relative;
			display: flex;
			align-items: center;
			font-size: 32rpx;
			justify-content: space-between;
			flex-wrap: wrap;


			.item {
				width: 100%;
				display: flex;
				align-items: center;
				justify-content: space-between;
				margin-bottom: 20rpx;
				flex-wrap: wrap;

				.text {
					width: 100%;
					height: 70rpx;
					line-height: 70rpx;
					font-size: 32rpx;
					font-weight: bold;
				}

				.input {
					width: 100%;
					height: 35px;
					line-height: 35px;
					display: flex;
					position: relative;
					border: #dfdfdf 1px solid;
					border-radius: 5px;
					padding: 0 20rpx;
					background-color: #f7f7f7;
				}

				input {
					height: 80rpx;
					line-height: 80rpx;
					position: absolute;
					left: 20rpx;
					right: 0px;
					z-index: 88;
					font-size: 28rpx;
				}

				.yanzhengma {
					input {
						right: 180px;
						font-size: 28rpx;
					}
				}
			}

			.code {
				color: #333;
				width: 180px;
				background: #dfdfdf;
				font-size: 28rpx;
				margin: 0;
				line-height: 80rpx;
				border-radius: 5px;
				text-align: center;
				position: absolute;
				right: 0px;
				top: 0px;
				bottom: 0;
				z-index: 99;
			}

			.forget {
				width: 80px;
				background: #fff;
				color: $textcolor;
			}
		}

		.btngroup {
			width: 100%;
			height: 35px;
			line-height: 35px;
			display: flex;
			justify-content: center;

			text {
				display: block;
				color: $textcolor;
			}
		}

		.btnlogin {
			width: 100%;
			margin: 30rpx 0;
			height: 42px;
			line-height: 42px;
			background: $btncolor;
			font-weight: 700;
			border-radius: 30rpx;
			text-align: center;
			color: #fff !important;
		}
	}

	.xieyi {
		font-size: 32rpx;
		color: $textcolor;

		text {
			border-bottom: 1px solid $textcolor;
		}
	}
</style>