<template>
	<!--    章节练习答题页-->
	<view :class="{'yejian': if_theme_dark}">
		<!--#ifdef APP-PLUS-->
		<view class="lz-status_bar">
			<view class="lz-top_view"></view>
		</view>
		<!--#endif-->
		<!-- #ifndef MP-WEIXIN -->
		<view class="kaoshi-head">
			<view class="kaoshi-head-top">
				<view class="kaoshi-head-left">
					<view class="iconfont icon-zuojiantou" @tap="$navigateBack"></view>
				</view>
				<view class="kaoshi-head-m">题目搜索</view>
				<view class="kaoshi-head-right"></view>
			</view>
		</view>
		<!--#endif-->
		<view style="height: 10px;"></view>
		<view class="questionBankAnswer" v-if="current_timu && current_timu.id">
			<view class="questionBankAnswer-tx">
				{{ current_timu.type == 1 ? "单选题" : current_timu.type == 2 ? "多选题" : current_timu.type == 3 ?'判断题' : current_timu.type == 4 ?'填空题' : current_timu.type == 5 ?'简答题' : '' }}
			</view>
		</view>
		<view class="questionBankAnswer-content" v-if="current_timu && current_timu.answers">
			<question-title :node="current_timu.question_name"></question-title>
			<block v-for="(item, index) in current_timu.answers" :key="index">
				<question-option :ref="'questionOption_' + index" :type="type" :item="item" :index="index"
					:current_timu="current_timu" :timu_index="timu_order - 1" @post_answer_req="post_answer_req"
					@set_sub_button_style="set_sub_button_style"></question-option>
			</block>
			<template v-if="current_timu.type == 4">
				<view style="height: 12px;"></view>
			</template>
			<template v-else-if="current_timu.type == 5">
				<view style="height: 12px;"></view>
			</template>
		</view>
		<question-answer ref="questionAnswer" v-if="current_timu" :timu_order="timu_order" :current_timu="current_timu">
		</question-answer>
		<view style="height: 50px;"></view>
	</view>
</template>

<script>
	import {
		mapState
	} from 'vuex';

	export default {
		data() {
			return {
				type: '', //from_type 1：章节练习  2：历年真题
				// 当前题目
				current_timu: {},
				show_change_moshi: false,
				if_theme_dark: false, // 黑夜模式
				// 上次答到第几题
				timu_order: 1,
			};
		},
		computed: {
			...mapState(['subject', 'userinfo']),
			static_media() {
				return {
					img01: this.$myConfig.localMedia + '/static/img/dui.png',
				}
			},
		},
		onLoad(opts) {
			this.id = opts.id
			this.type = opts.from_type
			this.get_timu_info();
		},
		methods: {
			// 获取当前题目
			async get_timu_info() {
				let res = await this.$myHttp.post({
					url: this.$myHttp.urlMap.timu_details,
					data: {
						id: this.id
					},
					needLogin: true
				});
				if (res.code == 1) {
					if (res.data != []) {
						let timu = this.set_right_flg(res.data);
						this.current_timu = timu;
						this.setAnswerStyle(this.current_timu)
					} else {
						this.current_timu = null;
					}
				}
			},
			//单选多选判断，选项正确错误
			setAnswerStyle(timu) {
				this.$nextTick(() => {
					timu.answers.forEach((item, index) => {
						this.$refs['questionOption_' + index][0].setAnswerStyle({});
					})
				})
			},
			// 设置正确答案的标记
			set_right_flg(timu) {
				if (timu) {
					timu.post_status = 0;
					if (timu.answers) {
						for (let i = 0, leng = timu.answers.length; i < leng; i++) {
							if (timu.right_answer.toString().toLowerCase().replace(/\s/g, '').indexOf(timu.answers[i]
									.answer_code.toString().toLowerCase().replace(/\s/g, '')) !== -1) {
								timu.answers[i]['right_flg'] = true
							}
						}
					}
				}
				return timu
			},
		}
	};
</script>

<style>
	/*====sl修改样式开始====*/
	@import "~@/static/css/tiku.css";
</style>
