Вход Регистрация
Файл: sngine-v2.8/Script/includes/libs/HybridAuth/HttpClient/Util.php
Строк: 74
<?php
/*!
* Hybridauth
* https://hybridauth.github.io | https://github.com/hybridauth/hybridauth
*  (c) 2017 Hybridauth authors | https://hybridauth.github.io/license.html
*/

namespace HybridauthHttpClient;

use 
HybridauthData;

/**
 * HttpClientUtil home to a number of utility functions.
 */
class Util
{
    
/**
    * Redirect handler.
    *
    * @var callable|null
    */
    
protected static $redirectHandler;

    
/**
    * Exit handler.
    *
    * @var callable|null
    */
    
protected static $exitHandler;

    
/**
     * Redirect to a given URL.
     *
     * In case your application need to perform certain required actions before Hybridauth redirect users
     * to IDPs websites, the default behaviour can be altered in one of two ways:
     *   If callable $redirectHandler is defined, it will be called instead.
     *   If callable $exitHandler is defined, it will be called instead of exit().
     *
     * @param string $url
     *
     * @return mixed
     */
    
public static function redirect($url)
    {
        if (static::
$redirectHandler) {
            return 
call_user_func(static::$redirectHandler$url);
        }

        
header(sprintf('Location: %s'$url));

        if (static::
$exitHandler) {
            return 
call_user_func(static::$exitHandler);
        }

        exit(
1);
    }

    
/**
    * Redirect handler to which the regular redirect() will yield the action of redirecting users.
    *
    * @param callable $callback
    */
    
public static function setRedirectHandler($callback)
    {
        
self::$redirectHandler $callback;
    }

    
/**
    * Exit handler will be called instead of regular exit() when calling Util::redirect() method.
    *
    * @param callable $callback
    */
    
public static function setExitHandler($callback)
    {
        
self::$exitHandler $callback;
    }

    
/**
    * Returns the Current URL.
    *
    * @param bool $requestUri TRUE to use $_SERVER['REQUEST_URI'], FALSE for $_SERVER['PHP_SELF']
    *
    * @return string
    */
    
public static function getCurrentUrl($requestUri false)
    {
        
$collection = new DataCollection($_SERVER);

        
$protocol 'http://';

        if ((
$collection->get('HTTPS') && $collection->get('HTTPS') !== 'off') ||
            
$collection->get('HTTP_X_FORWARDED_PROTO') === 'https') {
            
$protocol 'https://';
        }

        return 
$protocol.
               
$collection->get('HTTP_HOST').
               
$collection->get($requestUri 'REQUEST_URI' 'PHP_SELF');
    }
}
Онлайн: 1
Реклама