<template>
  <v-page>
    <v-header class="nav-tab" :leftClick="()=>_router.replace('/pages/base/index')">
        <template #right>
            <view class="per-bot p-y-md p-x-sm d-flex align-center">
              <!-- <img :src="$localImgUrl('Page6.png')" alt="" class="h-20 m-r-xs" /> -->
              <span class="color-light">
               <v-lang
                  
                ></v-lang>
                <i class="iconfont m-l-xs fn-sm">&#xe6e9;</i>
              </span>
            </view>
        </template>
    </v-header>
    <main class="flex-fill flex-shrink" style="background-color: #121212;padding-top: 100rpx;">
			<view class="form m-lg">
				<view class="d-flex">
				  <view class="item transition-3 p-y-sp-r-sm fn-26 color-light">{{$t('login.b1')}}
						<view style="color: #999;font-size: 14px;" class="m-b-md m-t-sm">
							{{$t('login.b2')}}
						</view>
					</view>
				</view>
				<view class="fn-center p-t-lg p-b-md" v-if="false">
					<img :src="logoMap.login_logo" class="h-80" />
				</view>
				<view class="form-item m-b-lg p-b-xs ">
					<view class="label m-b-lg color-light fn-16">{{$t('login.a9')}}</view>
					<v-input class="color-light" v-model="form.account" :placeholder="$t('login.a1')"></v-input>
				</view>
				<view class="form-item m-b-xl p-b-xs">
					<view class="label m-b-lg color-light">{{$t('login.a2')}}</view>
					<v-input
						class="color-light"
						v-model="form.password"
						type="password"
						:placeholder="$t('login.a3')"
					></v-input>
				</view>
				<view class="m-b-lg">
					<v-button type="white" block class="w-max rounded-md" key="loginbtn" @click="toLogin">{{$t('login.a4')}}</v-button>
				</view>
			
			</view>
	  <view class="m-x-lg m-y-md d-flex">
	  	<v-link
			tag="div"
			to="/pages/safe/forget-password"
			class="tips fn-14 color-light"
		>{{$t('login.a5')}}？</v-link>
	  <view class="mlaotu fn-14">
	    {{$t('login.a6')}}，
	    <v-link to="/pages/reg/index?from=login" class="color-light d-inline-block" >{{$t('login.a7')}}</v-link>
	  </view>
	 </view>
    </main>
    <view class="m-x-lg p-x-lg">
      <!-- <view class="p-y-md border-t fn-center">
        {{$t('login.a6')}}，
        <v-link to="/pages/reg/index?from=login" class="color-theme-1 d-inline-block" >{{$t('login.a7')}}</v-link>
      </view> -->
    </view>
    <!-- 二次验证弹框 -->
    <van-popup
      :show="secondaryShow"
      @close="secondaryShow=false"
      closeable
      close-on-popstate
      position="bottom"
      custom-style="height:40%"
    >
      <van-tabs class="m-t-lg p-t-lg" v-if="secondaryShow"  :sticky="false" :active="form2.code_type" @change="changeTab">
        <van-tab title="Google" v-if="secondaryData.google_status==1" :name="3">
          <v-input
            class="border h-40 m-y-md m-x-lg p-x-md"
            type="number"
            :placeholder="$t('common.code')"
            v-model="form2.code"
          ></v-input>
        </van-tab>
        <van-tab :title="$t('login.a8')" v-if="secondaryData.phone_status==1" :name="1">
          <v-input
            class="border h-40 m-y-md m-x-lg p-x-md"
            type="number"
            :placeholder="$t('common.code')"
            v-model="form2.code"
          >
            <template #right>
                <v-code
              type="green-plain"
              url="/login/sendSmsCodeBeforeLogin"
              :data="{signature:form2.signature}"
              ref="mobileCode"
            ></v-code>
            </template>
          </v-input>
        </van-tab>
        <van-tab :title="$t('login.a9')" v-if="secondaryData.email_status==1" :name="2">
          <v-input
            class="border h-40 m-y-md m-x-lg p-x-md"
            type="number"
            :placeholder="$t('common.code')"
            v-model="form2.code"
          >
            <template #right>
              <v-code
                type="green-plain"
                url="/login/sendEmailCodeBeforeLogin"
                :data="{signature:form2.signature}"
                ref="emailCode"
              ></v-code>
            </template>
          </v-input>
          <view class="m-md"></view>
        </van-tab>
      </van-tabs>
      <view class="m-md">
        <v-button type="yellow" block class="w-max rounded-md" @click="sendCodeLogin">{{$t('login.a4')}}</v-button>
      </view>
    </van-popup>
    <van-toast id="van-toast"/>
  </v-page>
</template>
<script>
import Member from "@/api/member";
import { mapActions, mapState } from "vuex";
export default {
  data() {
    return {
      form: {
        type: 1,
        account: "",
        password: "",
      },
      form2: {
        code: "",
        code_type: "",
        signature: "",
      },
      secondaryData: {},
      secondaryShow:false,
      activeName: 1,
    };
  },
  computed: {
    ...mapState({
      logoMap: "logoMap",
    }),
  },
  methods: {
    ...mapActions({
      setToken: "token",
      setUser: "user",
    }),
    changeTab(ev){
      this.form2.code_type = ev.detail.name
    },
    // 去登陆
    toLogin() {
    
      if (this.form.account.includes("@")) {
        this.form.type = 2;
      } else {
        this.form.type = 1;
      }
      if (!this.form.account) {
        this.$toast(this.$t("login.a1"));
        return;
      }
      if (!this.form.password) {
        this.$toast(this.$t("login.a3"));
        return;
      }
      Member.login(this.form)
        .then((res) => {
          if (res.code == 1021) {
            //二次验证
            this.loginVer(res.data);
          } else {
            this.loginSuccess(res.data);
          }
        })
        .catch(() => {
        });
    },
    loginVer(data) {
        console.log(data)
      this.secondaryShow = true;
      this.secondaryData = data;
      this.form2.signature = data.signature;
      if (data.google_status == 1) {
        this.form2.code_type = 3;
      } else if (data.phone_status == 1) {
        this.form2.code_type = 1;
        this.$nextTick(() => {
          this.$refs.mobileCode.send();
        });
      } else if (data.email_status == 1) {
        this.form2.code_type = 2;
        this.$nextTick(() => {
          this.$refs.emailCode.send();
        });
      }
    },
    // 发送验证码 二次验证登录用
    sendCodeLogin() {
      Member.loginConfirm(this.form2, { loading: true }).then((res) => {
        this.loginSuccess(res.data);
      });
    },
    // 登录成功
    loginSuccess(data) {
      this.setToken(data.token);
      this.setUser(data.user);
      this._router.push("/pages/base/index");
    },
  },
  mounted() {
	  console.log(this.marketList)
  },

};
</script>
<style lang="scss" scoped>
.nav-tab {
  background: transparent;
  &::after {
    border: none;
  }
}
.mlaotu{
	margin-left: auto;
}
</style>