<template>
	<view class="begin">
		<view class="title">
			公益活动
		</view>
		<uni-segmented-control styleType="text" activeColor="red" :current="current" :values="value"
			@clickItem="togglecurrent"></uni-segmented-control>
		<view class="content">
			<view v-show="current === 0">
				<view class="voluteer_card" v-for="ever in morevalue">
					<image :src="`http://124.93.196.45:10091/Neusoft/times-model${ever[0]}`"></image>
					<view class="voluteer_card_bottom">
						<p>{{ever[1]}}</p>
						<p>活动时间：
							{{ever[2]}}~ {{ever[3]}}
						</p>
						<p>发起方：{{ever[4]}}</p>
						<p>简介：{{ever[5]}}</p>
					</view>
					<view>
						<view>
							<image src="../../static/baoming_icon.png"></image>
							<text>已报名{{ever[6]}}人</text>
						</view>
						<view @click="goto(ever[7])">去报名</view>
					</view>
				</view>
				<view class="voluteer_bottom">
					<view class="nav_bottom" v-for="(path_image,index) in endbottom" @click="gowhere(index)">
						<image :src="path_image[0]"></image>
						<p>{{path_image[1]}}</p>
					</view>
				</view>
			</view>
			<view v-show="current === 1">

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

<script>
	export default {
		data() {
			const imagepath = Array.from({
				length: 4
			}).map((_, x) => `../../static/a${x+1}.png`)
			const textarray = ["首页", "公益", "心得", "我的"]
			const endbottom = imagepath.map((value, index) => [value, textarray[index]])
			return {
				current: 0,
				value: ["全部活动", "已报名"],
				morevalue: null,
				endbottom
			}
		},
		methods: {
			togglecurrent(e) {
				if (this.current != e.currentIndex) {
					this.current = e.currentIndex
				}
			},
			async requests(updown, path) {
				let response
				if (updown == "up") {
					response = await fetch(`http://124.93.196.45:10091/Neusoft/times-model${path}`, {
						method: "POST",
						headers: {
							"Content-Type": "application/json",
						},
						body: JSON.stringify({
							"password": "0CYdq6Hn",
							"username": "6dOMIgIU"
						})
					})
				} else if (updown == "down") {
					response = await fetch(`http://124.93.196.45:10091/Neusoft/times-model${path}`, {
						method: "GET",
						headers: {
							"Content-Type": "application/json",
							"Authorization": (await this.requests("up", "/app/login")).token
						},
					})

				}
				const data = await response.json()
				console.log(data)
				return data
			},
			goto(id) {
				uni.navigateTo({
					url: `/pages/index/voluteer_son?id=${id}`
				})
			},
			gowhere(index) {
				switch (index) {
					case 0:
						uni.navigateTo({
							url: '/pages/index/index'
						});
						break;
					case 2:
						uni.navigateTo({
							url: '/pages/index/student'
						});
						break;
				}
			}
		},
		async mounted() {
			// await this.requests("down","/activity/app-o/detail?id=1")
			this.morevalue = (await this.requests("down", "/activity/app-o/list")).rows.map(x => [x.picPath, x.title, x
				.startDate, x.endDate, x.sponsor, x.content, x.signUpNum, x.id
			])
			console.log(this.morevalue);
		}
	}
</script>

<style>
	* {
		padding: 0;
		margin: 0;
	}

	.begin {
		background-color: rgb(221, 221, 221);
		height: 100vh;
		display: flex;
		flex-direction: column;
	}

	.title {
		font-size: 1.3rem;
		font-weight: bold;
		text-align: center;

	}

	.content {
		height: 110vh;
		overflow: scroll;
	}

	.voluteer_card {
		height: 42vh;
		background-color: #fff;
		margin: 2%;
		border-radius: 10px;
		display: flex;
		flex-direction: column;
		justify-content: space-evenly;
	}

	.voluteer_card image {
		width: 100%;
		height: 24vh;
		border-radius: 10px;
	}

	.voluteer_card_bottom {
		padding: 0% 4% 2% 4%;
	}

	.voluteer_card_bottom p:nth-child(1) {
		font-size: 1.1rem;
	}

	.voluteer_card_bottom p:not(:nth-child(1)) {
		font-size: 0.8rem;
		padding: 1% 0;
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;
	}

	.voluteer_card_bottom p:last-child {
		padding-bottom: 2%;
		border-bottom: 1px solid rgb(220, 220, 220);
	}

	.voluteer_card_bottom+view {
		display: flex;
		justify-content: space-between;
		align-items: center;
		padding: 0% 4% 2% 4%;
	}

	.voluteer_card_bottom+view>view:first-child {
		display: flex;
		justify-content: space-evenly;
		align-items: center;
	}

	.voluteer_card_bottom+view>view:first-child image {
		width: 20px;
		height: 20px;
	}

	.voluteer_card_bottom+view>view:nth-child(2) {
		text-align: center;
		line-height: 30px;
		width: 100px;
		height: 30px;
		background-color: red;
		color: white;
		border-radius: 15px;
	}

	.voluteer_bottom {
		display: flex;
		justify-content: space-around;
		background-color: white;
		position: fixed;
		bottom: 0;
		left: 0;
		width: 100vw;
		height: 65px;
	}

	.nav_bottom {
		display: flex;
		flex-direction: column;
		align-items: center;
	}

	.nav_bottom image {
		width: 40px;
		height: 40px;
	}
	
	.nav_bottom:nth-child(2) p {
		color: #C2050F;
	}
</style>
