slide();//轮播图 $this->recommend(); $this->hot(); $this->area(); $this->slide(2);//中部广告 $this->newzixun(); $this->slide(4);//资讯广告 $this->gift(); $user_id=session('member_auth.mid'); $user=get_user_entity($user_id)==false?session('member_auth'):get_user_entity($user_id); C(api('Config/lists')); if (C('UC_SET') == 1 && session('member_auth.nickname') == 'Uc用户') { $user_play = null; $sqltype = 2; $ucuser = M('User','tab_',C('DB_CONFIG2'))->where(array('account'=>session('member_auth.account')))->find(); if($ucuser==''){ $sqltype = 3; $ucuser = M('User','tab_',C('DB_CONFIG3'))->where(array('account'=>session('member_auth.account')))->find(); } $this->assign('uc_balance', $ucuser['balance']); } else{ $user_play=M('User_play as u','tab_') ->field('g.relation_game_id,g.relation_game_name,u.server_name,icon') ->join('tab_game g on u.game_id = g.id ') ->where(array('user_id'=>$user['id'])) ->group('g.relation_game_id') ->limit(2) ->select(); } $this->assign('user_play',$user_play); $this->assign('user',$user); $this->display(); } public function slide($pos_id=1){ $adv = M("Adv","tab_"); $map['status'] = 1; $map['pos_id'] = $pos_id; #首页轮播图广告id $map['start_time']=array(array('lt',time()),array('eq',0), 'or') ; $map['end_time']=array(array('gt',time()),array('eq',0), 'or') ; $carousel = $adv->where($map)->order('sort desc,id desc')->select(); if($pos_id==2){ // 设置媒体中部广告为一张 随机显示 $carousel = $adv->where($map)->limit(1)->select(); $this->assign("midcarousel",$carousel); }elseif($pos_id==4){ $data[0] = array('url'=>'javascript:','title'=>'暂无广告','data'=>'0'); $carousel = empty($carousel)?$data:$carousel; $this->assign("zixuncarousel",$carousel); }else{ $this->assign("carousel",$carousel); } } /*** *推荐游戏 */ public function recommend(){ $model = array( 'm_name'=>'Game', 'prefix'=>'tab_', 'map' =>array('game_status'=>1,'recommend_status'=>1,'display_site'=>['like','%' . DISPLAY_SITE . '%']), 'field' =>'*,min(id) as id', 'order' =>'sort desc,id desc', 'group' =>'relation_game_id', 'limit' =>'0,9', ); if(is_cache() && S('index_reco')){ $reco=S('index_reco'); }else{ $reco = parent::list_data($model); if(is_cache() ){ S('index_reco',$reco); } } $reco=game_merge($reco,$model['map']); // var_dump($reco);die; $this->assign('recommend',$reco); } /*** *推荐游戏 */ public function recommend1(){ $shunxu = I('shunxu'); $shuzu = M('Game','tab_')->where(array('game_status'=>1,'recommend_status'=>1))->field('relation_game_id')->group('relation_game_id')->select(); $count = count($shuzu); if ($count <= 4){ $this->ajaxReturn(array('status'=>0,'data'=>"没有更多了~")); } $arr = array(); foreach ($shuzu as $k => $v){ $arr[] = $shuzu[$k]['relation_game_id']; } $shunxu1 = $shunxu*4; $shunxu2 = $shunxu*4+4; if (floor($shunxu1/$count) == floor($shunxu2/$count) && floor($shunxu1/$count) == 0){ $shunxu_x = $shunxu1.",".($shunxu2-$shunxu1); }elseif(floor($shunxu1/$count) == floor($shunxu2/$count) && floor($shunxu1/$count) != 0){ $floor = floor($shunxu1/$count); $shunxu_x = ($shunxu1-$floor*$count).",".(($shunxu2-$floor*$count)-($shunxu1-$floor*$count)); }elseif (floor($shunxu1/$count) == 0 && floor($shunxu2/$count)!=0){ $floor = floor($shunxu2/$count); $shunxu_x1 = $shunxu1.",".($count-$shunxu1); $shunxu_x2 = '0'.",".($shunxu2-$floor*$count); }elseif(floor($shunxu1/$count) != 0 && floor($shunxu2/$count)!=0 && floor($shunxu1/$count) != floor($shunxu2/$count)){ $floor1 = floor($shunxu1/$count); $floor2 = floor($shunxu2/$count); $shunxu_x1 = ($shunxu1-$floor1*$count).",".($count-($shunxu1-$floor1*$count)); $shunxu_x2 = '0'.",".($shunxu2-$floor2*$count); } if ($shunxu_x){ $model = array( 'm_name'=>'Game', 'prefix'=>'tab_', 'map' =>array('game_status'=>1,'recommend_status'=>1), 'field' =>'*,min(id) as id', 'order' =>'id desc', 'group' =>'relation_game_id', 'limit' =>$shunxu_x, ); $reco = parent::list_data($model); }else{ $model1 = array( 'm_name'=>'Game', 'prefix'=>'tab_', 'map' =>array('game_status'=>1,'recommend_status'=>1), 'field' =>'*,min(id) as id', 'order' =>'id desc', 'group' =>'relation_game_id', 'limit' =>$shunxu_x1, ); $reco1 = parent::list_data($model1); if ($shunxu_x2 != '0,0'){ $model2 = array( 'm_name'=>'Game', 'prefix'=>'tab_', 'map' =>array('game_status'=>1,'recommend_status'=>1), 'field' =>'*,min(id) as id', 'order' =>'id desc', 'group' =>'relation_game_id', 'limit' =>$shunxu_x2, ); $reco2 = parent::list_data($model2); $reco = array_merge($reco1,$reco2); }else{ $reco = $reco1; } } $reco=game_merge($reco,$model['map']); foreach ($reco as $key=>$value){ $reco[$key]['game_detail']=U('Game/game_detail',array('id'=>$value['relation_game_id'])); $reco[$key]['dow_url_generate_and']=U('Game/dow_url_generate',array('id'=>$value['relation_game_id'],'type'=>1)); $reco[$key]['dow_url_generate_ios']=U('Game/dow_url_generate',array('id'=>$value['relation_game_id'],'type'=>2)); $reco[$key]['relation_game_id']=U('Game/game_detail',array('id'=>$value['relation_game_id'])); $reco[$key]['cover']=get_cover($value['cover'],'path'); $reco[$key]['percent']=$value['game_score']*10; $reco[$key]['down_total']=$value['anddow']+$value['iosdow']; $reco[$key]['game_type_name'] = msubstr2($reco[$key]['game_type_name'],0,10); $reco[$key]['relation_game_name'] = msubstr2($reco[$key]['relation_game_name'],0,10); } if($reco){ $this->ajaxReturn(array('status'=>1,'data'=>$reco)); }else{ $this->ajaxReturn(array('status'=>0,'data'=>"没有更多了~")); } } /*** *热门游戏 */ public function hot($limit=8){ $model = array( 'm_name'=>'Game', 'prefix'=>'tab_', 'map' =>array('game_status'=>1,'recommend_status'=>2,'display_site'=>['like','%' . DISPLAY_SITE . '%']), 'field' =>'*,min(id) as id', 'order' =>'sort desc,id desc', 'group' =>'relation_game_id', 'limit' =>8, ); if(is_cache() && S('index_hot')){ $hot=S('index_hot'); }else{ $hot = parent::list_data($model); if(is_cache() ){ S('index_hot',$hot); } } $hot = game_merge($hot,$model['map']); $this->assign('hot',$hot); } /*** *最新游戏 */ public function newgame($recommend_status=3,$order='sort desc,id desc'){ $model = array( 'm_name'=>'Game', 'prefix'=>'tab_', 'map' =>array('game_status'=>1,'recommend_status'=>$recommend_status,'display_site'=>['like','%' . DISPLAY_SITE . '%']), 'field' =>'*,min(id) as id,@counter:=@counter+1 AS Rank', 'order' =>$order, 'group' =>'relation_game_id', 'limit' =>9, ); $newgame = parent::list_data($model); $newgame = array_order(game_merge($newgame,$model['map'])); $this->assign('new',$newgame); } /*** *游戏礼包 */ public function gift(){ $map['game_status']=1; $map['end_time']=array(array('gt',time()),array('eq',0),'or'); //$map['giftbag_type']=2; $map['status'] = 1; $map['display_site'] = ['like','%'. DISPLAY_SITE .'%']; $model = array( 'm_name'=>'Giftbag', 'prefix'=>'tab_', 'field' =>'tab_giftbag.id as gift_id,relation_game_name,game_id,tab_giftbag.game_name,giftbag_name,giftbag_type,tab_game.icon,tab_giftbag.create_time', 'join' =>'tab_game on tab_giftbag.game_id = tab_game.id', 'map' =>$map, 'order' =>'create_time desc', 'limit' =>10, ); if(is_cache() && S('index_gift')){ $gift=S('index_gift'); }else{ $gift = parent::join_data($model); if(is_cache() ){ S('index_gift',$gift); } } foreach ($gift as $key => $value) { $gift[$key]['gift_num']=gift_recorded($value['game_id'],$value['gift_id']); } $this->assign('gift',$gift); } /*** *游戏区服 */ public function area(){ $model = array( 'm_name'=>'server', 'prefix'=>'tab_', 'field' =>'tab_server.*,tab_game.relation_game_name,tab_game.relation_game_id,tab_game.icon,tab_game.cover,tab_giftbag.id as gift_id', 'join' =>' left join tab_game on tab_server.game_id = tab_game.id left join tab_giftbag on tab_server.game_id = tab_giftbag.game_id', 'map' =>array('game_status'=>1,'show_status'=>1,'tab_server.start_time'=>array('lt',time()),'display_site'=>['like','%' . DISPLAY_SITE . '%']), 'group' =>'tab_server.id', 'order' =>'start_time desc', 'limit'=>10000, ); $area = parent::join_data($model); $this->assign('area',$area); } public function newzixun($limit=''){ $map['sys_category.name']=array('in','media_gg,media_activity,media_zx');//显示公告和资讯 $map['sys_document.status']=1; $map['sys_document.display']=1; $map['deadline']=array(array('gt',time()),array('eq',0),'or'); $data=M('document') ->field('sys_category.name,cover_id,category_id,sys_document.description,sys_document.title,sys_document.update_time,sys_document.id') ->join('sys_category on sys_document.category_id = sys_category.id and sys_category.pid = 84') ->where($map) ->limit($limit) ->limit(0,20) ->order('level desc,id desc') ->select(); foreach ($data as $key => $value) { if($value['name']=='media_activity'){ $huodong[]=$value; unset($data[$key]); } if($value['name']=='media_gg'){ $media_gg[]=$value; unset($data[$key]); } if($value['name']=='media_zx'){ $media_zx[]=$value; unset($data[$key]); } } $this->assign('firhuodong',$huodong[0]); unset($huodong[0]); $this->assign('huodong',$huodong); $this->assign('media_gg',$media_gg); $this->assign('media_zx',$media_zx); $this->assign('newzixun',$data); } public function download(){ $app_map['name'] = ['like','%游戏盒子%']; $app_map['version'] = 1; $android = M('app', 'tab_')->where($app_map)->find(); $android_url = file_exists($android['file_url'])?$android['file_url']:"javascript:"; $this->assign('android',$android_url); $app_map['version'] = 2; $ios = M('app', 'tab_')->where($app_map)->find(); $ios['url'] = file_exists($ios['file_url'])?$ios['file_url']:"javascript:"; $ios['plist_url'] = "https://".$_SERVER['HTTP_HOST'].substr($ios['plist_url'],1); if(is_mobile_request()){ $devices = get_devices_type(); $this->assign("devices",$devices); } $this->assign('ios',$ios); $this->display(); } public function qrcode($url='pc.vlcms.com',$level=3,$size=4){ $url = base64_decode(base64_decode($url)); Vendor('phpqrcode.phpqrcode'); $errorCorrectionLevel =intval($level) ;//容错级别 $matrixPointSize = intval($size);//生成图片大小 //生成二维码图片 //echo $_SERVER['REQUEST_URI']; ob_clean(); $object = new \QRcode(); echo $object->png($url, false, $errorCorrectionLevel, $matrixPointSize, 2); } public function down_app(){ } public function business(){ $model = array( 'm_name'=>'Game', 'prefix'=>'tab_', 'map' =>array('game_status'=>1,'recommend_status'=>1,'display_site'=>['like','%' . DISPLAY_SITE . '%']), 'field' =>'*,min(id) as id', 'order' =>'sort desc,id desc', 'group' =>'relation_game_id', 'limit' =>'0,9', ); if(is_cache() && S('index_reco')){ $reco=S('index_reco'); }else{ $reco = parent::list_data($model); if(is_cache() ){ S('index_reco',$reco); } } $reco=game_merge($reco,$model['map']); $this->assign('recommend',$reco); $this->display(); } public function join(){ $this->display(); } public function hezuo(){ $this->display(); } }