Вход Регистрация
Файл: sys/inc/classes/class.OAuth.php
Строк: 55
<?php 

class OAuth
{
    private 
$ident false;
    private 
$settings;
    private 
$token;
    private 
$OAuthMethod = array(
        
'vk' => array(
            
'authorize'  => 'https://oauth.vk.com/authorize',
        ),
    );
    
    public function 
__construct($settings false$token false
    {
        
$this->settings $settings;
        
$this->token $token;
    }
    
    public function 
getData($method 'audio.search'$query ''
    {
        if (
$this->token) {
            
$params = array(
                
'access_token' => $this->token,
            );
            
            
$params array_merge($query$params);
            
            return 
$this->getJsonData('https://api.vk.com/method/' $method '?' urldecode(http_build_query($params)));
        }
    }
    
    public function 
getToken() 
    {
        
$data = array(
            
'client_id'     => $this->settings['vk']['client_id'],
            
'client_secret' => $this->settings['vk']['client_secret'],
            
'code'          => $_GET['code'],
            
'redirect_uri'  => $this->settings['redirect_url'],
        );
        
        
$token $this->getJsonData('https://oauth.vk.com/access_token' '?' urldecode(http_build_query($data)));
        
        return 
$token;
    }
    
    public function 
getLink($scope ''
    {
        
$data = array(
            
'client_id'     => $this->settings['vk']['client_id'],
            
'redirect_uri'  => $this->settings['redirect_url'],
            
'response_type' => 'code'
            
'scope'         => $scope,
        );
        
        return 
$this->OAuthMethod['vk']['authorize'] . '?' urldecode(http_build_query($data));
    }
    
    private function 
getJsonData($url
    {
        
$data = @file_get_contents(str_replace('&amp;''&'$url));
        
        if (
$data)
            return 
json_decode($datatrue);
    }
    
    private function 
getCurlData($url$data
    {
        
$curl curl_init();
        
curl_setopt($curlCURLOPT_URLstr_replace('&amp;''&'$url));
        
curl_setopt($curlCURLOPT_POST1);
        
curl_setopt($curlCURLOPT_POSTFIELDSurldecode(http_build_query($data)));
        
curl_setopt($curlCURLOPT_RETURNTRANSFERtrue);
        
curl_setopt($curlCURLOPT_SSL_VERIFYPEERfalse);
        
$result curl_exec($curl);
        
curl_close($curl);
        
        return 
$result;
    }
    
}
Онлайн: 1
Реклама