<template>
	<view class="content">
		<!-- <view class="bg"></view> -->
		<view class="login">
			<view class="editem">
				<view class="item">
					<view class="text">{{language == 'zh-Hans'?$t("common.titleAccountText"):$t("common.infoEmail")}}
					</view>
					<view class="input">
						<input v-model="phone" type="text" :placeholder="$t('tips.verifyRecord')" />
					</view>
				</view>
				<view class="item ">
					<view class="text">{{$t("common.titleCode")}}</view>
					<view class="input yanzhengma">
						<input class="uni-input" v-model="code" :placeholder="$t('common.titleCode')" />
						<button class="code" type="none" @click="handleCode" v-model="code"
							:disabled="disabled">{{second<60 ? second:$t("common.titleSendCode")}}
						</button>
					</view>
				</view>
				<view class="item">
					<view class="text">{{$t("common.titlePassword")}}</view>
					<view class="input">
						<input class="uni-input" v-model="password" :placeholder="$t('common.titlePassword')" />
					</view>
				</view>
				<view class="item">
					<view class="text">{{$t("common.titleConfirmPassword")}}</view>
					<view class="input">
						<input class="uni-input" v-model="password2" :placeholder="$t('common.titleConfirmPassword')" />
					</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("tips.btnSubmit")}}</view>
		</view>
	</view>
</template>

<script>
	export default {
		data() {
			return {
				phone: "",
				code: "",
				password: "",
				password2: "",
				disabled: false,
				second: 60,
				value: 1,
				type: "",
				language: ""
			}
		},
		onLoad(options) {
			let that = this
			this.type = options.type //1
			that.language = uni.getLocale()
			console.log("language", that.language)
			uni.setNavigationBarTitle({
				title: that.type == "register" ? this.$t('common.titleRegister') : this.$t(
					'common.titleForgotPassword'),
			})
		},
		methods: {
			checkboxChange(e) {
				this.value = e.detail.value.length ? e.detail.value[0] : "0"
			},
			// 登录、
			handleTelLogin() {
				let that = this
				let phoneType = that.phone.indexOf("@") !== -1

				if (that.language == 'zh-Hans' && !phoneType && !(/^1[3456789]\d{9}$/.test(that.phone))) {
					that.$tools.msg(that.$t("tips.verifyAccount"))
					return
				}
				if (that.language == 'zh-Hans' && phoneType && !(/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/.test(that
						.phone))) {
					that.$tools.msg(that.$t("tips.verifyAccount"))
					return
				}
				if (that.language != 'zh-Hans' && !(/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/.test(that.phone))) {
					that.$tools.msg(that.$t("tips.verifyEmailCorrect"))
					return
				}

				if (!that.code) {
					that.$tools.msg(that.$t("tips.verifyCode"))
					return
				}
				if (!that.password) {
					that.$tools.msg(that.$t("tips.passwordTips"))
					return
				}
				if (!that.password2) {
					that.$tools.msg(that.$t("tips.verifyPasswordTwo"))
					return
				}
				if (that.password2 != that.password) {
					that.$tools.msg(that.$t("tips.verifyPasswordCorrect"))
					return
				}
				let account = {
					data: that.phone,
					password: that.password,
					c_password: that.password2,
					code: that.code
				}
				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.msg(that.$t("tips.msgSetPasswordSuccess"))
					setTimeout(function() {
						uni.$emit('login-sucesss');
					}, 1000)
				}).catch(err => {})
			},
			// 获取验证码
			handleCode() {
				let that = this
				let phoneType = that.phone.indexOf("@") !== -1
				if (that.language == 'zh-Hans' && !phoneType && !(/^1[3456789]\d{9}$/.test(that.phone))) {
					that.$tools.msg(that.$t("tips.verifyAccount"))
					return
				}
				if (that.language == 'zh-Hans' && phoneType && !(/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/.test(that
						.phone))) {
					that.$tools.msg(that.$t("tips.verifyAccount"))
					return
				}
				if (that.language != 'zh-Hans' && !(/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/.test(that.phone))) {
					that.$tools.msg(that.$t("tips.verifyEmailCorrect"))
					return
				}
				// 
				that.$model.getSendCode({
					data: that.phone,
					type: that.type
				}).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 => {})
			},
			handlexieyi() {}
		}
	}
</script>

<style scoped lang="scss">
	.content {
		width: 100%;
		height: 100vh;
		// 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% - 30px);
		height: auto;
		background: #fff;
		border-radius: 10px;
		padding: 15px;
		background-color: #fff;
		z-index: 99;
		// position: relative;
		// margin-left: calc(10% - 40px);
		// box-shadow: 0px 1px 5px 2px #dfe2e1fc;

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


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


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

				.text {
					width: 100%;
					height: 40px;
					line-height: 40px;
					font-size: 28rpx;
				}

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

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

				.yanzhengma {
					input {
						right: 120px;
					}
				}
			}

			.code {
				width: 110px;
				background: #dfdfdf;
				font-size: 14px;
				margin: 0;
				line-height: 40px;
				border-radius: 5px;
				text-align: center;
				position: absolute;
				right: 0px;
				top: 0px;
				bottom: 0;
				z-index: 99;
			}
		}

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

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

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

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

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