Move get_ip_address() and get_user_agent() to Request namespace
This commit is contained in:
parent
38b08719da
commit
55e4ab882c
@ -1,3 +1,6 @@
|
|||||||
|
git:
|
||||||
|
depth: 3
|
||||||
|
|
||||||
language: php
|
language: php
|
||||||
sudo: false
|
sudo: false
|
||||||
|
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
[![Build Status](https://travis-ci.org/miniflux/miniflux.svg?branch=master)](https://travis-ci.org/miniflux/miniflux)
|
|
||||||
|
|
||||||
Miniflux - Minimalist News Reader
|
Miniflux - Minimalist News Reader
|
||||||
=================================
|
=================================
|
||||||
|
|
||||||
|
[![Build Status](https://travis-ci.org/miniflux/miniflux.svg?branch=master)](https://travis-ci.org/miniflux/miniflux)
|
||||||
|
|
||||||
Miniflux is a minimalist and web-based RSS reader.
|
Miniflux is a minimalist and web-based RSS reader.
|
||||||
|
|
||||||
Features
|
Features
|
||||||
|
@ -2,6 +2,12 @@
|
|||||||
|
|
||||||
namespace Request;
|
namespace Request;
|
||||||
|
|
||||||
|
function get_server_variable($variable)
|
||||||
|
{
|
||||||
|
return isset($_SERVER[$variable]) ? $_SERVER[$variable] : '';
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
function param($name, $default_value = null)
|
function param($name, $default_value = null)
|
||||||
{
|
{
|
||||||
return isset($_GET[$name]) ? $_GET[$name] : $default_value;
|
return isset($_GET[$name]) ? $_GET[$name] : $default_value;
|
||||||
@ -53,7 +59,6 @@ function file_content($field)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
function uri()
|
function uri()
|
||||||
{
|
{
|
||||||
return $_SERVER['REQUEST_URI'];
|
return $_SERVER['REQUEST_URI'];
|
||||||
@ -64,3 +69,35 @@ function is_post()
|
|||||||
{
|
{
|
||||||
return $_SERVER['REQUEST_METHOD'] === 'POST';
|
return $_SERVER['REQUEST_METHOD'] === 'POST';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function get_user_agent()
|
||||||
|
{
|
||||||
|
return get_server_variable('HTTP_USER_AGENT') ?: t('Unknown');
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function get_ip_address()
|
||||||
|
{
|
||||||
|
$keys = array(
|
||||||
|
'HTTP_X_REAL_IP',
|
||||||
|
'HTTP_CLIENT_IP',
|
||||||
|
'HTTP_X_FORWARDED_FOR',
|
||||||
|
'HTTP_X_FORWARDED',
|
||||||
|
'HTTP_X_CLUSTER_CLIENT_IP',
|
||||||
|
'HTTP_FORWARDED_FOR',
|
||||||
|
'HTTP_FORWARDED',
|
||||||
|
'REMOTE_ADDR'
|
||||||
|
);
|
||||||
|
|
||||||
|
foreach ($keys as $key) {
|
||||||
|
$value = get_server_variable($key);
|
||||||
|
if ($value !== '') {
|
||||||
|
foreach (explode(',', $value) as $ip_address) {
|
||||||
|
return trim($ip_address);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return t('Unknown');
|
||||||
|
}
|
||||||
|
@ -2,36 +2,6 @@
|
|||||||
|
|
||||||
namespace Helper;
|
namespace Helper;
|
||||||
|
|
||||||
// Get the real IP address of the connected user
|
|
||||||
function get_ip_address()
|
|
||||||
{
|
|
||||||
$keys = array(
|
|
||||||
'HTTP_X_REAL_IP',
|
|
||||||
'HTTP_CLIENT_IP',
|
|
||||||
'HTTP_X_FORWARDED_FOR',
|
|
||||||
'HTTP_X_FORWARDED',
|
|
||||||
'HTTP_X_CLUSTER_CLIENT_IP',
|
|
||||||
'HTTP_FORWARDED_FOR',
|
|
||||||
'HTTP_FORWARDED',
|
|
||||||
'REMOTE_ADDR'
|
|
||||||
);
|
|
||||||
|
|
||||||
foreach ($keys as $key) {
|
|
||||||
$value = get_server_variable($key);
|
|
||||||
if ($value !== '') {
|
|
||||||
foreach (explode(',', $value) as $ip_address) {
|
|
||||||
return trim($ip_address);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return t('Unknown');
|
|
||||||
}
|
|
||||||
|
|
||||||
function get_server_variable($variable)
|
|
||||||
{
|
|
||||||
return isset($_SERVER[$variable]) ? $_SERVER[$variable] : '';
|
|
||||||
}
|
|
||||||
|
|
||||||
function is_secure_connection()
|
function is_secure_connection()
|
||||||
{
|
{
|
||||||
|
@ -363,9 +363,3 @@ function reload()
|
|||||||
$_SESSION['config'] = get_all();
|
$_SESSION['config'] = get_all();
|
||||||
Translator\load(get('language'));
|
Translator\load(get('language'));
|
||||||
}
|
}
|
||||||
|
|
||||||
// Get the user agent of the connected user
|
|
||||||
function get_user_agent()
|
|
||||||
{
|
|
||||||
return empty($_SERVER['HTTP_USER_AGENT']) ? t('Unknown') : $_SERVER['HTTP_USER_AGENT'];
|
|
||||||
}
|
|
||||||
|
@ -6,7 +6,7 @@ use SimpleValidator\Validator;
|
|||||||
use SimpleValidator\Validators;
|
use SimpleValidator\Validators;
|
||||||
use PicoDb\Database;
|
use PicoDb\Database;
|
||||||
use Session;
|
use Session;
|
||||||
use Helper;
|
use Request;
|
||||||
use Model\Config;
|
use Model\Config;
|
||||||
use Model\RememberMe;
|
use Model\RememberMe;
|
||||||
use Model\Database as DatabaseModel;
|
use Model\Database as DatabaseModel;
|
||||||
@ -62,7 +62,7 @@ function validate_login(array $values)
|
|||||||
|
|
||||||
// Setup the remember me feature
|
// Setup the remember me feature
|
||||||
if (! empty($values['remember_me'])) {
|
if (! empty($values['remember_me'])) {
|
||||||
$cookie = RememberMe\create(DatabaseModel\select(), $values['username'], Helper\get_ip_address(), Config\get_user_agent());
|
$cookie = RememberMe\create(DatabaseModel\select(), $values['username'], Request\get_ip_address(), Request\get_user_agent());
|
||||||
RememberMe\write_cookie($cookie['token'], $cookie['sequence'], $cookie['expiration']);
|
RememberMe\write_cookie($cookie['token'], $cookie['sequence'], $cookie['expiration']);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
@ -1,13 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
class HelperTest extends PHPUnit_Framework_TestCase
|
|
||||||
{
|
|
||||||
public function testGetIpAddress()
|
|
||||||
{
|
|
||||||
$_SERVER = array('HTTP_X_REAL_IP' => '127.0.0.1');
|
|
||||||
$this->assertEquals('127.0.0.1', Helper\get_ip_address());
|
|
||||||
|
|
||||||
$_SERVER = array('HTTP_FORWARDED_FOR' => ' 127.0.0.1, 192.168.0.1');
|
|
||||||
$this->assertEquals('127.0.0.1', Helper\get_ip_address());
|
|
||||||
}
|
|
||||||
}
|
|
25
tests/unit/RequestTest.php
Normal file
25
tests/unit/RequestTest.php
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
class RequestTest extends PHPUnit_Framework_TestCase
|
||||||
|
{
|
||||||
|
public function testGetIpAddress()
|
||||||
|
{
|
||||||
|
$_SERVER = array('HTTP_X_REAL_IP' => '127.0.0.1');
|
||||||
|
$this->assertEquals('127.0.0.1', Request\get_ip_address());
|
||||||
|
|
||||||
|
$_SERVER = array('HTTP_FORWARDED_FOR' => ' 127.0.0.1, 192.168.0.1');
|
||||||
|
$this->assertEquals('127.0.0.1', Request\get_ip_address());
|
||||||
|
|
||||||
|
$_SERVER = array();
|
||||||
|
$this->assertEquals('Unknown', Request\get_ip_address());
|
||||||
|
}
|
||||||
|
|
||||||
|
public function testGetUserAgent()
|
||||||
|
{
|
||||||
|
$_SERVER = array();
|
||||||
|
$this->assertEquals('Unknown', Request\get_user_agent());
|
||||||
|
|
||||||
|
$_SERVER = array('HTTP_USER_AGENT' => 'foobar');
|
||||||
|
$this->assertEquals('foobar', Request\get_user_agent());
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user