Move user IP resolution into own class method
git-svn-id: https://semanticscuttle.svn.sourceforge.net/svnroot/semanticscuttle/trunk@747 b3834d28-1941-0410-a4f8-b48e95affb8f
This commit is contained in:
parent
6fb9201996
commit
647a13499e
2 changed files with 51 additions and 18 deletions
48
src/SemanticScuttle/Model/RemoteUser.php
Normal file
48
src/SemanticScuttle/Model/RemoteUser.php
Normal file
|
@ -0,0 +1,48 @@
|
||||||
|
<?php
|
||||||
|
/**
|
||||||
|
* SemanticScuttle - your social bookmark manager.
|
||||||
|
*
|
||||||
|
* PHP version 5.
|
||||||
|
*
|
||||||
|
* @category Bookmarking
|
||||||
|
* @package SemanticScuttle
|
||||||
|
* @author Benjamin Huynh-Kim-Bang <mensonge@users.sourceforge.net>
|
||||||
|
* @author Christian Weiske <cweiske@cweiske.de>
|
||||||
|
* @author Eric Dane <ericdane@users.sourceforge.net>
|
||||||
|
* @license GPL http://www.gnu.org/licenses/gpl.html
|
||||||
|
* @link http://sourceforge.net/projects/semanticscuttle
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Remote User helper methods.
|
||||||
|
*
|
||||||
|
* @category Bookmarking
|
||||||
|
* @package SemanticScuttle
|
||||||
|
* @author Christian Weiske <cweiske@cweiske.de>
|
||||||
|
* @license GPL http://www.gnu.org/licenses/gpl.html
|
||||||
|
* @link http://sourceforge.net/projects/semanticscuttle
|
||||||
|
*/
|
||||||
|
class SemanticScuttle_Model_RemoteUser
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Returns the remote user's IP.
|
||||||
|
*
|
||||||
|
* @return string IP address. NULL if not found.
|
||||||
|
*/
|
||||||
|
public static function getIp()
|
||||||
|
{
|
||||||
|
$ip = null;
|
||||||
|
if (getenv('REMOTE_ADDR')) {
|
||||||
|
$ip = getenv('REMOTE_ADDR');
|
||||||
|
} else if (getenv('HTTP_CLIENT_IP')) {
|
||||||
|
$ip = getenv('HTTP_CLIENT_IP');
|
||||||
|
} else if (getenv('HTTP_X_FORWARDED_FOR')) {
|
||||||
|
$ip = getenv('HTTP_X_FORWARDED_FOR');
|
||||||
|
}
|
||||||
|
|
||||||
|
return $ip;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
?>
|
|
@ -12,6 +12,7 @@
|
||||||
* @license GPL http://www.gnu.org/licenses/gpl.html
|
* @license GPL http://www.gnu.org/licenses/gpl.html
|
||||||
* @link http://sourceforge.net/projects/semanticscuttle
|
* @link http://sourceforge.net/projects/semanticscuttle
|
||||||
*/
|
*/
|
||||||
|
require_once 'SemanticScuttle/Model/RemoteUser.php';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* SemanticScuttle bookmark service.
|
* SemanticScuttle bookmark service.
|
||||||
|
@ -453,14 +454,6 @@ class SemanticScuttle_Service_Bookmark extends SemanticScuttle_DbService
|
||||||
|
|
||||||
$address = $this->normalize($address);
|
$address = $this->normalize($address);
|
||||||
|
|
||||||
if (getenv('HTTP_CLIENT_IP')) {
|
|
||||||
$ip = getenv('HTTP_CLIENT_IP');
|
|
||||||
} else if (getenv('REMOTE_ADDR')) {
|
|
||||||
$ip = getenv('REMOTE_ADDR');
|
|
||||||
} else {
|
|
||||||
$ip = getenv('HTTP_X_FORWARDED_FOR');
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Note that if date is NULL, then it's added with a date and
|
* Note that if date is NULL, then it's added with a date and
|
||||||
* time of now, and if it's present,
|
* time of now, and if it's present,
|
||||||
|
@ -480,7 +473,7 @@ class SemanticScuttle_Service_Bookmark extends SemanticScuttle_DbService
|
||||||
// Set up the SQL insert statement and execute it.
|
// Set up the SQL insert statement and execute it.
|
||||||
$values = array(
|
$values = array(
|
||||||
'uId' => intval($sId),
|
'uId' => intval($sId),
|
||||||
'bIp' => $ip,
|
'bIp' => SemanticScuttle_Model_RemoteUser::getIp(),
|
||||||
'bDatetime' => $datetime,
|
'bDatetime' => $datetime,
|
||||||
'bModified' => $datetime,
|
'bModified' => $datetime,
|
||||||
'bTitle' => $title,
|
'bTitle' => $title,
|
||||||
|
@ -570,15 +563,7 @@ class SemanticScuttle_Service_Bookmark extends SemanticScuttle_DbService
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Get the client's IP address and the date; note that the date is in GMT.
|
// Get the the date; note that the date is in GMT.
|
||||||
if (getenv('HTTP_CLIENT_IP'))
|
|
||||||
$ip = getenv('HTTP_CLIENT_IP');
|
|
||||||
else
|
|
||||||
if (getenv('REMOTE_ADDR'))
|
|
||||||
$ip = getenv('REMOTE_ADDR');
|
|
||||||
else
|
|
||||||
$ip = getenv('HTTP_X_FORWARDED_FOR');
|
|
||||||
|
|
||||||
$moddatetime = gmdate('Y-m-d H:i:s', time());
|
$moddatetime = gmdate('Y-m-d H:i:s', time());
|
||||||
|
|
||||||
$address = $this->normalize($address);
|
$address = $this->normalize($address);
|
||||||
|
|
Loading…
Reference in a new issue