<template>
	<view class="page">
		<nav-bar title="Notice" bgColor="#fff">
			<span slot="right" style="margin-right: 10px; font-size: 14px;" @click="allRead">All read</span>
		</nav-bar>
		<view style="width: 92%; margin: 10px auto;" v-if="list.length > 0">
			<view class="cell_list" v-for="item in list" :key="item.id" style="margin-top: 10px; border-radius: 10px;" @click="onPageJump(item.id)">
				<view class="t">
					<view>
						<span v-if="item.is_read == 0" style="background-color: #FF4E4E; display: block;margin-right: 10px; width: 8px; height: 8px; border-radius: 5px; float: left; margin-top: 7px;"></span>
						<span style="font-size: 16px; color: #3d3d3d; font-weight: 600; float: left;">{{item.title}}</span>
					</view>
					<view class="d">{{item.intro}}</view>
					<view class="d">{{item.created_at}}</view>
				</view>
				<view class="cell_right arrow"></view>
			</view>
			
		</view>
		<view style="text-align: center; padding-bottom: 80px;" v-if="list.length == 0">
			<image style="width: 180px; height: 180px; margin-top: 80px;" src="/static/images/w5.png" mode="cover"></image>
			<view style="color: #999; font-size: 14px; font-weight: 400;">No data available</view>
		</view>
	</view>
</template>

<script>
	import {
		mapState,
		mapMutations
	} from 'vuex';
	export default {
		data() {
			return {
				list: [],
				page: 1,
				limit: 10,
			};
		},
		computed: {
			...mapState(['userInfo'])
		},
		//第一次加载
		onLoad(e) {
			this.getnotice();
		},
		//页面显示
		onShow() {},
		//方法
		methods: {
			getnotice(){
				let data = {
					category_id: 10,
					page: this.page,
					limit: this.limit,
					lang: this.$i18n.locale
				}
				this.$http.post('/api/article/list', data).then(res => {
					if(res.code == 0){
						res.data.data.forEach(item => {
							this.list.push(item);
						})
					}
				});
			},
			allRead(){
				let ids = this.list.filter(item => item.is_read == 0).map(item => item.id);
				if(ids.length > 0){
					this.$http.get('/api/article/mask_as_read?id='+ids.join(',')+'&lang='+this.$i18n.locale).then(res => {
						if(res.code == 0){
							uni.showToast({
								title: "Success"
							})
							this.list.filter(item => item.is_read == 0).forEach(unRead => {
								unRead.is_read = 1;
							});
						}
					});
				}else{
					uni.showToast({
						title: "Success"
					})
				}
			},
			onPageJump(id) {
				uni.navigateTo({
					url: '/pages/mine/noticedetails?id=' + id
				});
			},
		},
		//页面隐藏
		onHide() {},
		//页面卸载
		onUnload() {},
		//页面下来刷新
		onPullDownRefresh() {
			//console.log(111);
		},
		//页面上拉触底
		onReachBottom() {
			this.page = this.page + 1;
			let data = {
				category_id: 10,
				page: this.page,
				limit: this.limit,
				lang: this.$i18n.locale
			}
			this.$http.post('/api/article/list', data).then(res => {
				if(res.code == 0){
					res.data.data.forEach(item => {
						this.list.push(item);
					})
				}
			}).catch(err => {
				this.page = this.page - 1;
			});
		},
		//用户点击分享
		onShareAppMessage(e) {
			return this.wxShare();
		}
	};
</script>
<style lang="scss" scoped>
	@import '@/style/mixin.scss';
	body{background-color: #F8F8F8;}
	.page{ min-height: 100vh;background-color: #F8F8F8;}
	.wallet1{
		border-radius: 10px; padding: 20px 15px; width: 84%; margin: 10px auto;
		background: url('/static/images/w1.png') #2B66F6; background-repeat: no-repeat; background-position: 92% 5px;
	}
	.cell_list .t{
		color: #3d3d3d; font-size: 16px; font-weight: 400; line-height: 25px;
	}
	.cell_list .d{
		color: #999; font-size: 12px; font-weight: 400; line-height: 20px; clear: both;
	}
	.cell_list .u{
		color: #1D61E7; font-weight: 600;float: right; font-size: 16px;
	}
	.cell_list .u1{
		color: #333; font-weight: 600;float: right;font-size: 16px;
	}
	.w{
		background-color: #F8F8F8; border-radius: 10px; padding: 20px 10px;
	}
	.w .t{
		text-align: center; margin-top: 10px; font-size: 14px;
	}
</style>