View file xmyx.ru/auth/inc/odnoklassniki.php

File size: 2.58Kb
<?php
/*
API aвтopизaции чepeз coц.ceти
Aвтop: Neo
*/

//==================================================//
function AuthUrl($redirect=""){
global $api;
if(empty($api["scope"]))$scope=""; else $scope=$api["scope"];
if($scope)$scope=trim(strtoupper($scope));
$url="https://connect.ok.ru/oauth/authorize?client_id=".$api["client_id"]."&redirect_uri=".urlencode($redirect)."&response_type=code&scope=".urlencode($scope)."&layout=m";
return $url;
};
//==================================================//
function GetOAuthToken($code,$redirect=""){
global $api;
$data=array();
$url="http://api.ok.ru/oauth/token.do";
$param["client_id"]=$api["client_id"];
$param["client_secret"]=$api["client_secret"];
$param["redirect_uri"]=$redirect;
$param["code"]=$code;
$param["grant_type"]="authorization_code";

$params=http_build_query($param);
$resp=GetAPI($url,$params,"post");

if(isset($resp["access_token"]))$data["token"]=$resp["access_token"];
if(isset($resp["token_type"]))$data["type"]=$resp["token_type"];
if(isset($resp["error"]))$data["error"]=$resp["error"];
if(isset($resp["refresh_token"]))$data["refresh"]=$resp["refresh_token"];

return $data;
};
//==================================================//
function UserInfo($access){
global $api;
$method="users.getCurrentUser";
$param=array();
$sing=md5("application_key={$api["client_key"]}format=jsonmethod=".$method.md5("{$access["token"]}{$api["client_secret"]}"));

$url="http://api.ok.ru/fb.do";
$param["method"]=$method;
$param["format"]="json";
$param["application_key"]=$api["client_key"];
//$param["fields"]="";
$param["sig"]=$sing;
$param["access_token"]=$access["token"];

$params=http_build_query($param);
$resp=GetAPI($url,$params);

$data=array();
if(isset($resp["uid"])){
$info=$resp;
$data["id"]=$info["uid"];

if((isset($info["first_name"]))&&(isset($info["last_name"]))){
$data["name"]=$info["first_name"]." ".$info["last_name"];
}
elseif((isset($info["first_name"]))&&(!isset($info["last_name"]))){
$data["name"]=$info["first_name"];
}
elseif((!isset($info["first_name"]))&&(isset($info["last_name"]))){
$data["name"]=$info["last_name"];
};

$data["link"]="http://ok.ru/profile/".$info["uid"];
$data["sex"]=$info["gender"]=="female"?1:2;
if(isset($info["birthday"])){
$data["birthday"]=date("Y-m-d", strtotime($info["birthday"]));
};
if(isset($info["pic_3"])){
$data["photo"]=$info["pic_3"];
};
$data["let"]=$info["age"];
$location=$info["location"];
$data["city"]=$location["city"];
$data["country"]=$location["country"];
$data["country_name"]=$location["countryName"];
};

return $data;
};
//==================================================//
?>