<template>
	<view>
		<!-- <sub-tabnav :tabs="tabs" @change="changeIndex" :selectIndex="selectIndex" :scrollTop="scrollTop"></sub-tabnav> -->
		<!-- #ifdef MP-WEIXIN -->
		<view class="" style="background: #ffffff;"> 
			<uni-search-bar @confirm="search" :focus="false" placeholder="请输入搜索内容" v-model="searchValue" @blur="blur" @focus="focus" @input="input"
							@cancel="cancel" @clear="clear">
			</uni-search-bar>
		</view>
		<!-- #endif -->
		<view style="margin:10upx 30upx 0 30upx;box-shadow: 0px 4px 20px 0px rgba(0,0,0,0.04);">
			<home-banner :banners="banners"></home-banner>
		</view>
		<view class="flex space" style="display:flex; flex-wrap:wrap; padding: 30upx 30upx 0px 30upx;">
			<block v-for="(value,key) in listData" :key="key">
			<view class="box pb10 mb15" style="width:31%; border-radius:20rpx;" @click="detail(value.id,0)">
				<!-- <view class="btn-mini" style="position: absolute; top: 20upx; right: 20upx; border-radius: 10upx;font-size: 18upx;width: 60upx; height: 36upx; z-index: 1;" :style="getBtnStyle">{{value.lxname}}</view> -->
				<image class="integral-mall-goods" mode="aspectFill" :src="value.img"></image>
				<view class="mt8 plr10 ft14 ftw400 text-center text-over cl-main">{{value.name}}</view>
			</view>
			</block>
			<!-- <uni-pagination title="" @change="onPageChange" v-if="total>pageSize" show-icon="true" :pageSize="pageSize" :total="total" current="1"></uni-pagination> -->
		</view>
		<uni-load-more :status="status" :content-text="contentText" />
		<view style="width: 100%; height: 30upx;"></view>
		<!-- <dialog-login v-if="showLogin" @loginYes="loginYes" @closed="showLogin = false"></dialog-login> -->
		<!-- <com-footer model="tuan"></com-footer> -->
		
	</view>
</template>

<script>
	import uniLoadMore from '@/components/uni-load-more/uni-load-more.vue';
	  export default {
		  components: {
		  	uniLoadMore
		  },
		data(){
			return {
				banners:[],
				vipLevel:0,
				isLogin:true,
				showLogin:false,
				datasa:[],
				dataconfig:[],
				searchValue:'',
				total:0,
				pageSize:10,
				tabs:[
					{name:'全部'},
					{name:'视频'},
					{name:'音频'},
					{name:'小说'},
					{name:'壁纸'},
				],
				selectIndex:0,
				scrollTop:0,
				
				type2tab:[],
				selecttype2:0,
				type2id:'',
				
				type3tab:[],
				selecttype3:0,
				type3id:'',
				
				type4tab:[],
				selecttype4:0,
				type4id:'',
				
				typetab:[],
				selecttype:0,
				typeid:'',
				
				addddtab:[],
				selectadddd:0,
				addddid:'',
				
				yeartab:[],
				selectyear:0,
				yearid:'',
				
				type:'',
				keytext:'',
				listData: [],
				last_id: 0,
				reload: true,
				status: 'more',
				contentText: {
					contentdown: '上拉加载更多',
					contentrefresh: '加载中',
					contentnomore: '没有数据了'
				}
			}
		},
		onLoad(e){
			//console.log(111)
			if(e.selectIndex){
				this.selectIndex=e.selectIndex*1
			}
			this.status = 'more';
			this.getList();
			this.banners=uni.getStorageSync("config").banner
		},
		onPageScroll(e){
			this.scrollTop = e.scrollTop;
		},
		onReachBottom() {
			this.status = 'more';
			this.getList();
		},
		//监听搜索框文本变化
		onNavigationBarSearchInputChanged(e) {
			let text = e.text;
			if(text){
				this.keytext=text;	
			}
			console.log(text)
		},
		//监听点击搜索按钮事件
		onNavigationBarSearchInputConfirmed(e) {
			// #ifdef APP-PLUS
			plus.key.hideSoftKeybord();
			// #endif
			var this_=this
			let text = e.text;
			if (!text) {
				uni.showModal({
					title: '',
					content:"请输入搜索内容",
					showCancel: false,
					confirmText: "确定",
					confirmColor:"#e19503",
					success: function (res) {
						this_.keytext='';
						this_.getList(0)
					}
				});
				return;
			} else {
				this.keytext=text;
				this.listData=[];
				this.last_id=0;
				this.type='';	
				this.getList(0)
			}
			
		},
		methods:{
			detail(vid,mid){
				var fxpid=1
				if(uni.getStorageSync("userinfo")){
					 fxpid=uni.getStorageSync("userinfo").id
				}
				uni.navigateTo({
					url:'/pages/video/index?vid='+vid+'&mid='+mid+'&fxpid='+fxpid
				})
			},
			onPageChange(e) {
			    this.last_id=0
			    this.reload=true
			    this.getList()
				uni.pageScrollTo({
				    scrollTop: 0,
				    duration: 100
				});
			},
			getList() {
				let data = {
					//column: 'id,post_id,title,author_name,cover,published_at' //需要的字段名
				};
				var limit=10;
				if (this.last_id>0) {
					//说明已有数据，目前处于上拉加载
					this.status = 'loading';
					data.offset = this.last_id*limit;
					data._ = new Date().getTime() + '';
				}
				data.limit=limit		
				
				if(this.selectIndex){
					data.lx=this.selectIndex
				}
				if(this.typeid && this.selectIndex==1){
					data.typeid=this.typeid
				}
				if(this.addddid && this.selectIndex==1){
					data.addddid=this.addddid
				}
				if(this.yearid && this.selectIndex==1){
					data.yearid=this.yearid
				}
				if(this.type2id && this.selectIndex==2){
					data.typeid=this.type2id
				}
				if(this.type3id && this.selectIndex==3){
					data.typeid=this.type3id
				}
				if(this.type4id && this.selectIndex==4){
					data.typeid=this.type4id
				}
				if(this.keytext){
					data.keytext=this.keytext
				}
				uni.request({
					url: this.configs.webUrl+'/api/video/lists',
					data: data,
					success: data => {
						//console.log(data.data)
						
						this.yeartab=data.data.typedata.year
						this.addddtab=data.data.typedata.adddd
						this.typetab=data.data.typedata.type
						this.type2tab=data.data.typedata.type2
						this.type3tab=data.data.typedata.type3
						this.type4tab=data.data.typedata.type4
						
						if (data.data.total>0) {
							let list = data.data.rows;
							this.listData = this.reload ? list : this.listData.concat(list);
							this.reload = false;
							this.last_id = this.last_id+1;
							if(data.data.total<this.last_id*limit){
								this.status = '';
							}
						}else{
							this.listData=[];
							this.contentText.contentdown='没有数据'
							this.status=''
							
						}
					},
					fail: (data, code) => {
						//console.log('fail' + JSON.stringify(data));
					}
				});
			},
			changeIndex(index){
				this.selectIndex = index;
				this.type=this.tabs[index].name
				this.getdata()				
			},
			changetype(index){
				this.selecttype = index;
				this.typeid=this.typetab[index].id
				this.getdata()				
			},
			changeadddd(index){
				this.selectadddd = index;
				this.addddid=this.addddtab[index].id
				this.getdata()				
			},
			changeyear(index){
				this.selectyear = index;
				this.yearid=this.yeartab[index].id
				this.getdata()				
			},
			
			changetype2(index){
				this.selecttype2 = index;
				this.type2id=this.type2tab[index].id
				this.getdata()				
			},
			changetype3(index){
				this.selecttype3 = index;
				this.type3id=this.type3tab[index].id
				this.getdata()				
			},
			changetype4(index){
				this.selecttype4 = index;
				this.type4id=this.type4tab[index].id
				this.getdata()				
			},
			getdata(){
				this.last_id=0
				this.reload=true
				this.getList()
			},
			loginYes(){
				
			},
			mlinkTo(e){
				if(this.isLogin == true){
					let link = e.currentTarget.dataset.link;
				}else{
					this.showLogin = true;
				}
			},
			search(res) {
				this.listData=[];
				this.last_id=0;
				this.keytext=res.value;
				this.type='';	
				this.getList(0)
			},
	
			clear(res) {
			
			},
			input(res) {
				console.log('----input:', res)
			},
			blur(res) { 
				// this.listData=[];
				// this.last_id=0;
				// this.keytext=res.value;
				// this.type='';	
				// this.getList(0)
				//res.value 
			},
			focus(e) {

			},
			cancel(res) {
				this.keytext='';
				this.type='';	
				this.getList(0)
			}
		}
	}
</script>

<style>
.integral-mall-goods{
		width: 100%;
		height: 280rpx;
		background: #F2F2F2;
		border-radius: 16upx;
	}
	.user-not-vip{
		width: 100%;
		height: 80rpx;
		background: #FDF6EC;
		border-radius: 40rpx;
		border: 2rpx solid #EFC381;
		text-align: center;
		line-height: 76rpx;
		font-size: 24rpx;
		color:#000000;
		font-weight: bold;
	}
	

	.tuan-product-l{
		width: 320rpx;
		height: 240rpx;
		border-radius: 16rpx;
		background: #F2F2F2;
	}
	.tuan-product-r{
		width: calc(100% - 320rpx);
	}
	.search-result {
			padding-top: 10px;
			padding-bottom: 20px;
			text-align: center;
		}
	
		.search-result-text {
			text-align: center;
			font-size: 14px;
			color:#666;
		}
	
		.example-body {
			/* #ifndef APP-NVUE */
			display: block;
			/* #endif */
			padding: 0px;
		}
	
		.uni-mt-10 {
			margin-top: 10px;
		}
</style>