<?php
namespace member\controller;
use source\Controller;
class Weixin extends Controller{
/**
 * 106云盘自动发卡平台网盘系统
 * ============================================================================
 * 版权所有 2016-2028 扎兰屯市姝妍计算机服务有限公司，并保留所有权利。
 * 网站地址: http://www.106ym.com
 * ----------------------------------------------------------------------------
 * 如果商业用途务必到官方购买正版授权, 以免引起不必要的法律纠纷.
 * ============================================================================
 */
    public function index($id = ''){
		$config = api('Config/lists');
        C($config); 
        $token = C('WX_TOKEN'); 
		
        /* 加载微信SDK */
        $wechat = new \weixin\Wxre(array('token'=>$token));
		

        /* 获取请求信息 */
        $data = $wechat->request();
		
		

        if($data && is_array($data)){
        	

            /**
             * 你可以在这里分析数据，决定要返回给用户什么样的信息
             * 接受到的信息类型有9种，分别使用下面九个常量标识
             * Wechat::MSG_TYPE_TEXT       //文本消息
             * Wechat::MSG_TYPE_IMAGE      //图片消息
             * Wechat::MSG_TYPE_VOICE      //音频消息
             * Wechat::MSG_TYPE_VIDEO      //视频消息
             * Wechat::MSG_TYPE_MUSIC      //音乐消息
             * Wechat::MSG_TYPE_NEWS       //图文消息（推送过来的应该不存在这种类型，但是可以给用户回复该类型消息）
             * Wechat::MSG_TYPE_LOCATION   //位置消息
             * Wechat::MSG_TYPE_LINK       //连接消息
             * Wechat::MSG_TYPE_EVENT      //事件消息
             *
             * 事件消息又分为下面五种
             * Wechat::MSG_EVENT_SUBSCRIBE          //订阅
             * Wechat::MSG_EVENT_SCAN               //二维码扫描
             * Wechat::MSG_EVENT_LOCATION           //报告位置
             * Wechat::MSG_EVENT_CLICK              //菜单点击
             * Wechat::MSG_EVENT_MASSSENDJOBFINISH  //群发消息成功
             */

            $content = ''; //回复内容，回复不同类型消息，内容的格式有所不同
            $type    = ''; //回复消息的类型

            /* 响应当前请求(自动回复) */
			if($data['EventKey']=='zxts'){
				$wechat->response('投诉QQ:351075088
投诉邮箱：toushu@69kz.com
投诉电话：0470-3200086
工作时间：上午8点至下午17点','text');		
			}else if($data['EventKey']=='gywm'){
				$wechat->response('106云盘是扎兰屯市姝妍计算机服务有限公司旗下自主品牌，106云盘是面向所有注册用户，提供数据的同步、备份、分享、下载、页面展示等功能并帮助协同办公的个人以及企业云存储服务。“便捷安全”是106云盘的服务宗旨。','text');		
			}else if($data['Event']=='subscribe' || $data['Event']=='SCAN'){
				if($data['Event']=='subscribe'){
				    $qrscene=preg_split("/[_]+/s", $data['EventKey'],-1,PREG_SPLIT_NO_EMPTY);
					$uid=$qrscene[1];
				}else if($data['Event']=='SCAN'){
					$uid=$data['EventKey'];
				}
				$openid=$data['FromUserName'];
				D('pub/Member')->save(array(
					'id'=>$uid,
					'weixin'=>$openid,
					'weixin_bind_time'=>time()
				));
				$wechat->response('感谢欢迎您关注106网盘，我们网址http://www.'.C('BEN_BZUSR').'，
如发现有人利用106网盘发布一切违反国家法律以及安全版权等产品，可联系客服人员进行投诉，106网盘欢迎您的监督。','text');		
			}

            /**
             * 响应当前请求还有以下方法可以只使用
             * 具体参数格式说明请参考文档
             * 
             * $wechat->replyText($text); //回复文本消息
             * $wechat->replyImage($media_id); //回复图片消息
             * $wechat->replyVoice($media_id); //回复音频消息
             * $wechat->replyVideo($media_id, $title, $discription); //回复视频消息
             * $wechat->replyMusic($title, $discription, $musicurl, $hqmusicurl, $thumb_media_id); //回复音乐消息
             * $wechat->replyNews($news, $news1, $news2, $news3); //回复多条图文消息
             * $wechat->replyNewsOnce($title, $discription, $url, $picurl); //回复单条图文消息
             * 
             */
        }
    }
	
	function menu(){
		/* 加载微信SDK */
		$config = api('Config/lists');
        C($config); 
        $wx = new \weixin\Wxfw(array(
        	'appid'=>$config['WX_APPID'],
			'secret'=>$config['WX_APPSECRET'],
        ));	
		$button=array(
			'button'=>array(
				array(
					"name"=>"106网盘",
					"type"=>"view",
					"url"=>"http://www.".C('BEN_BZUSR')."/"
				),
				array(
					"name"=>"会员中心",
					"sub_button"=>array(
						array(
							"type"=>"view",
							"name"=>"网盘管理",
							"url"=>"http://member.".C('BEN_BZUSR')."/folder"
						),
						array(
							"type"=>"view",
							"name"=>"软件订单",
							"url"=>"http://member.".C('BEN_BZUSR')."/software_order"
						),
						array(
							"type"=>"view",
							"name"=>"网盘升级",
							"url"=>"http://member.".C('BEN_BZUSR')."/wangpan_config"
						),
						array(
							"type"=>"view",
							"name"=>"立即提现",
							"url"=>"http://member.".C('BEN_BZUSR')."/cash"
						),
						array(
							"type"=>"view",
							"name"=>"提现记录",
							"url"=>"http://member.".C('BEN_BZUSR')."/cash"
						),
					)
				),
				array(
					"name"=>"关于我们",
					"sub_button"=>array(
						array(
							"type"=>"view",
							"name"=>"免费注册",
							"url"=>"http://member.".C('BEN_BZUSR')."/reg"
						),
						array(
							"type"=>"click",
							"name"=>"在线投诉",
							"key"=>"zxts"
						),
						array(
							"type"=>"click",
							"name"=>"关于我们",
							"key"=>"gywm"
						),
						array(
							"type"=>"view",
							"name"=>"法律声明",
							"url"=>"http://member.".C('BEN_BZUSR')."/reg"
						),
					)
				)
			)
		);
		$re=$wx->api('menu/create','',$button,'POST');
		dump($re);
	}
	
	
	//登录
	function login(){
		$code=$_REQUEST['code'];
		if(empty($code)){
			header('location:https://open.weixin.qq.com/connect/oauth2/authorize?appid=wx085c91e2df404d87&redirect_uri=http%3A%2F%2Ftest038.523w.cn%2FMobile%2FWeixin%2Flogin&response_type=code&scope=snsapi_base&state=1234#wechat_redirect');
		}
		//$wx = new WechatAuth('wx085c91e2df404d87','4d653c787571cebec18ff14e4f064f89');
		
		$re=wd_http('https://api.weixin.qq.com/sns/oauth2/access_token',array(
			'appid'=>'wx085c91e2df404d87',
			'secret'=>'4d653c787571cebec18ff14e4f064f89',
			'code'=>$code,
			'grant_type'=>'authorization_code'
		));
		$re=json_decode($re,true);
		
		$user = new UserApi;
		$username=$re['openid'];
		$password=substr(md5($openid),8,16);
		if(!empty($username)){
			$uid = $user->login($username, $password);	
			if($uid<1){
				$user->register($username, $password, uniqid().'@qq.com');
				$uid = $user->login($username, $password);	
			}
			$m=D('Home/Member');
			$m->login($uid);
			$gourl=cookie('gourl');

			if(!empty($gourl)){
				$this->redirect($gourl);
			}
		}
		
	}
	
	
	function cs(){
		
		
	}
	
}
