123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100 |
- <?php
- /**
- * 站外分享绑定
- *
-
- */
- defined('InShopNC') or exit('Access Invalid!');
- class sns_bindingModel extends Model{
- public function __construct(){
- parent::__construct('member');
- }
- /**
- * 获得可显示的绑定接口数组
- */
- public function getUsableApp($member_id){
- if (empty($member_id)){
- return false;
- }
- $app_arr = $this->getApps();
- $app_arrnew = array();
- //判断系统是否开启站外分享功能
- foreach ($app_arr as $k=>$v){
- if (C('share_'.$k.'_isuse') == 1){
- $v['isbind'] = false;
- $app_arrnew[$k] = $v;
- }
- }
- if(empty($app_arrnew)) return false;
- //查询该用户的绑定信息
- $bind_list = $this->table('sns_binding')->where(array('snsbind_memberid'=>$member_id))->select();
- if (!empty($bind_list)){
- foreach ($bind_list as $k=>$v){
- if (intval($v['snsbind_updatetime'])+intval($v['snsbind_expiresin']) > time()){
- $app_arrnew[$v['snsbind_appsign']] = array_merge($app_arrnew[$v['snsbind_appsign']],$v);
- $app_arrnew[$v['snsbind_appsign']]['isbind'] = true;
- }
- }
- }
- return $app_arrnew;
- }
- /**
- * 获得某用户已经绑定某接口详细信息
- */
- public function getUsableOneApp($member_id,$appkey){
- $bind_info = array();
- if (empty($member_id) || empty($appkey)){
- return $bind_info;
- }
- $app_arr = $this->getApps();
- $appkey_arr = array_keys($app_arr);
- if (!in_array($appkey,$appkey_arr)){
- return $bind_info;
- }
- //查询该用户是否已经绑定
- $where_arr = array();
- $where_arr['snsbind_memberid'] = $member_id;
- $where_arr['snsbind_appsign'] = $appkey;
- $bind_info = $this->table('sns_binding')->where($where_arr)->find();
- if (intval($bind_info['snsbind_updatetime'])+intval($bind_info['snsbind_expiresin']) <= time()){
- $bind_info = array();
- }
- return $bind_info;
- }
- /**
- * 分享接口数组
- */
- public function getApps(){
- $app_arr = array();
- $app_arr['qqweibo'] = array('name'=>Language::get('nc_shareset_qqweibo'),'url'=>"http://t.qq.com",'applyurl'=>'http://dev.t.qq.com');
- $app_arr['sinaweibo'] = array('name'=>Language::get('nc_shareset_sinaweibo'),'url'=>"http://www.weibo.com",'applyurl'=>'http://open.weibo.com/developers');
- return $app_arr;
- }
- /**
- * qqweibo用图片URL发表带图片的微博
- */
- public function addQQWeiboPic($bindinfo,$params){
- $_SESSION['qqweibo']['t_access_token'] = $bindinfo['snsbind_accesstoken'];
- $_SESSION['qqweibo']['t_openid'] = $bindinfo['snsbind_openid'];
- include_once(BASE_DATA_PATH.DS.'api'.DS.'snsapi'.DS.'qqweibo'.DS.'tencent.php');
- $params_qqweibo['content'] = $params['title'].$params['comment'].$params['url'];
- $params_qqweibo['pic_url'] = $params['images'];
- Tencent::api('t/add_pic_url', $params_qqweibo, 'POST');
- }
- /**
- * sinaweibo上传图片并发布一条新微博
- */
- public function addSinaWeiboUpload($bindinfo,$params){
- include_once(BASE_DATA_PATH.DS.'api'.DS.'snsapi'.DS.'sinaweibo'.DS.'config.php');
- include_once(BASE_DATA_PATH.DS.'api'.DS.'snsapi'.DS.'sinaweibo'.DS.'saetv2.ex.class.php');
- $c = new SaeTClientV2( C('share_sinaweibo_appid') , C('share_sinaweibo_appkey') , $bindinfo['snsbind_accesstoken']);
- if($params['images']) {
- $c->upload($params['title'].$params['comment'].$params['url'],$params['images']);
- } else {
- $c->update($params['title'].$params['comment'].$params['url']);
- }
- }
- }
|