function capture_user_authenticate($from_sso = false, $origin = false) { global $vbulletin; $redirect_uri = $from_sso && $origin ? $vbulletin->options['bburl'] . "/?from_sso=true&origin=" . urlencode($origin) : $vbulletin->options['bburl'] . "/"; $auth_code = $_GET["code"]; new_access_token($auth_code, $redirect_uri); $profile = load_user_entity(); if (isset($profile)) { if ($vbulletin->userinfo = $vbulletin->db->query_first("\n SELECT userid, usergroupid, membergroupids, username\n FROM " . TABLE_PREFIX . "user\n WHERE userid IN (\n SELECT userid FROM " . TABLE_PREFIX . "userfield WHERE {$vbulletin->options['janrain_capture_uuid']} = '{$profile['result']['uuid']}'\n )\n ")) { capture_user_sync($profile); capture_user_login(); } elseif ($vbulletin->userinfo = $vbulletin->db->query_first("\n SELECT userid, usergroupid, membergroupids, username\n FROM " . TABLE_PREFIX . "user\n WHERE email = '{$profile['result']['email']}'\n ")) { capture_user_sync($profile, true); capture_user_login(); } else { capture_create_user($profile); } } else { die("Could not load user profile. Please try again"); } }
} elseif ($orders['pay_status'] == 2) { $pay_status = '支付状态:已付款'; } $http_ret1 = stristr($cfg_order['image'], 'http://'); $http_ret2 = stristr($cfg_order['image'], 'http:\\'); if ($http_ret1 or $http_ret2) { $w_picurl = $cfg_order['image']; } else { $w_picurl = $cfg_baseurl . $cfg_order['image']; } $post_msg = '{ "touser":"******", "msgtype":"news", "news":{ "articles": [ { "title":"' . $w_title . '", "description":"' . $w_description . '", "url":"' . $w_url . '", "picurl":"' . $w_picurl . '" } ] } }'; $ret_json = curl_grab_page($url, $post_msg); $ret = json_decode($ret_json); if ($ret->errmsg != 'ok') { $access_token = new_access_token($db); $url = 'https://api.weixin.qq.com/cgi-bin/message/custom/send?access_token=' . $access_token; curl_grab_page($url, $post_msg); }
function create_menu($db) { access_token($db); $ret = $db->getRow("SELECT `access_token` FROM `wxch_config`"); $access_token = $ret['access_token']; if (strlen($access_token) >= 64) { $url = 'https://api.weixin.qq.com/cgi-bin/menu/create?access_token=' . $access_token; $data = array(); $sql = "SELECT * FROM `wxch_menu` WHERE `aid` =0"; $data['first'] = $db->getAll($sql); foreach ($data['first'] as $k => $v) { if (empty($data['first'][$k]['name'])) { unset($data['first'][$k]); } else { $data['first'][$k]['name'] = urlencode($v['name']); if ($v['menu_type'] == 'click') { $data['first'][$k]['array'] = array('type' => $v['menu_type'], 'name' => $data['first'][$k]['name'], 'key' => $v['value']); } elseif ($v['menu_type'] == 'view') { $data['first'][$k]['array'] = array('type' => $v['menu_type'], 'name' => $data['first'][$k]['name'], 'url' => $v['value']); } } } $sql = "SELECT * FROM `wxch_menu` WHERE `aid` =1"; $data['second1'] = $db->getAll($sql); $second1 = 'no'; foreach ($data['second1'] as $k => $v) { if (empty($data['second1'][$k]['name'])) { unset($data['second1'][$k]); } else { $v['value'] = urlencode($v['value']); $v['name'] = urlencode($v['name']); if ($v['menu_type'] == 'click') { $array1[] = array('type' => $v['menu_type'], 'name' => $v['name'], 'key' => $v['value']); } elseif ($v['menu_type'] == 'view') { $array1[] = array('type' => $v['menu_type'], 'name' => $v['name'], 'url' => $v['value']); } $second1 = 'yes'; } } $sql = "SELECT * FROM `wxch_menu` WHERE `aid` =2"; $data['second2'] = $db->getAll($sql); $second2 = 'no'; foreach ($data['second2'] as $k => $v) { if (empty($data['second2'][$k]['name'])) { unset($data['second2'][$k]); } else { $v['value'] = urlencode($v['value']); $v['name'] = urlencode($v['name']); if ($v['menu_type'] == 'click') { $array2[] = array('type' => $v['menu_type'], 'name' => $v['name'], 'key' => $v['value']); } elseif ($v['menu_type'] == 'view') { $array2[] = array('type' => $v['menu_type'], 'name' => $v['name'], 'url' => $v['value']); } $second2 = 'yes'; } } $sql = "SELECT * FROM `wxch_menu` WHERE `aid` =3"; $data['second3'] = $db->getAll($sql); $second3 = 'no'; foreach ($data['second3'] as $k => $v) { if (empty($data['second3'][$k]['name'])) { unset($data['second3'][$k]); } else { $v['value'] = urlencode($v['value']); $v['name'] = urlencode($v['name']); if ($v['menu_type'] == 'click') { $array3[] = array('type' => $v['menu_type'], 'name' => $v['name'], 'key' => $v['value']); } elseif ($v['menu_type'] == 'view') { $array3[] = array('type' => $v['menu_type'], 'name' => $v['name'], 'url' => $v['value']); } $second3 = 'yes'; } } if ($second1 == 'yes') { $sarr1 = array('name' => $data['first'][0]['name'], 'sub_button' => $array1); } elseif ($second1 == 'no') { $sarr1 = $data['first'][0]['array']; } if ($second2 == 'yes') { $sarr2 = array('name' => $data['first'][1]['name'], 'sub_button' => $array2); } elseif ($second2 == 'no') { $sarr2 = $data['first'][1]['array']; } if ($second3 == 'yes') { $sarr3 = array('name' => $data['first'][2]['name'], 'sub_button' => $array3); } elseif ($second3 == 'no') { $sarr3 = $data['first'][2]['array']; } $arr = array('button' => array($sarr1, $sarr2, $sarr3)); $menu = urldecode(json_encode($arr)); $ret_json = curl_grab_page($url, $menu); $ret = json_decode($ret_json); if (!$ret->errcode == '0') { $access_token = new_access_token($db); $url = 'https://api.weixin.qq.com/cgi-bin/menu/create?access_token=' . $access_token; $ret_json = curl_grab_page($url, $menu); $ret = json_decode($ret_json); } return $ret; } else { $access_token = new_access_token($db); return FALSE; } }