<template>
	<view class="page">
		<view class="bg"></view>

		<view class="content">

			<view class="box">
				<view class="">
					<view class="flex-rowc color-fff size-28">
						{{ `答题进度 ${answerCount}/${total}` }}
					</view>
					<up-line-progress :percentage="progress" activeColor="FFBF60" inactiveColor="#D9D9D9" height="16rpx" :showText="false"></up-line-progress>
				</view>

				<view class="content bg-fff">
					<view class="label size-22">
						选择题
					</view>
					<view class="">
						<view v-for="(item, qIdx) in list" :key="`question-${qIdx}`">
							<view class="size-28 mt32 mb20">
								{{ item.question }}
							</view>
							<view class="size-28 color-777 p20 daan"
								v-for="(option, oIdx) in item.options"
								:key="`${qIdx}-option-${oIdx}`"
							>
								{{ `${String.fromCharCode(65 + oIdx)}、${option.label}` }}
							</view>
						</view>
					</view>
				</view>
			</view>
			<view class="footer-btn">
				<view class="btn">
					提交
				</view>
			</view>

		</view>
	</view>
</template>

<script setup>
import { ref, computed } from 'vue'
import { onShow, onReachBottom } from '@dcloudio/uni-app'
import { usePageList } from "@/utils/pageList";

const answerCount = ref(0)
const total = ref(0)


// todo
const { list, getData, getMore } = usePageList()

onShow(() => {
	// todo fetch
	answerCount.value = 30
	total.value = 100

	list.value = [
		{
			question: '猫咪每天在地上走路，时不时还会打滚，身上是很不干净的，最好每个星期洗次澡',
			options: [
				{
					label: '对',
					value: 0,
				},
				{
					label: '错',
					value: 1,
				},
			]
		},
		{
			question: '当狗狗出现乱拉乱尿或者捣乱拆家等反映时，您会如何处理?',
			options: [
				{
					label: '暴力制止，根据情况是否严重来判断下手轻重，让狗狗知道这样做会受到惩罚',
					value: 0,
				},
				{
					label: '奖罚分明，制止后耐心引导，直到狗狗做出正确的行为，并立马给出奖励',
					value: 1,
				},
				{
					label: '狗狗也不是故意的，也不会造成什么很大的影响，默默打扫好就算了吧',
					value: 2,
				},
			]
		},
		{
			question: '3、狗狗和猫咪一样是肉食性动物，最好可以纯肉喂养，对狗狗的身心健康有很大好处',
			options: [
				{
					label: '对',
					value: 0,
				},
				{
					label: '错',
					value: 1,
				},
			]
		},
	]
	return

	getData()
})

onReachBottom(() => {
	// todo: fetch more
	return
	getMore()
})

const progress = computed(() => {
	return Math.floor(answerCount.value / total.value)
})

</script>

<style lang="scss" scoped>
	.page {
		width: 100vw;
		& > .bg {
			width: 100%;
			height: 298rpx;
			background: linear-gradient(178deg,#ffbf60 2%, #ffbf60 5%, #f2f2f2 63%);
		}

		& > .content {
			position: absolute;
			top: 0;
			width: 100%;
		}
	}

	.active {
		color: #FFBF60;
		background-color: rgb(255, 241, 240);
	}

	.daan {
		background-color: #F3F3F3;
		border-radius: 50rpx;
	}

	.p20 {
		padding: 20px;
	}

	.box {
		padding: 16rpx;

		.content {
			border-radius: 20rpx;
			padding: 15rpx 20rpx;

			.label {
				padding: 5rpx 15rpx;
				color: #fff;
				background-color: #FFBF60;
			}
		}
	}
</style>