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
|
||||
* @link http://sourceforge.net/projects/semanticscuttle
|
||||
*/
|
||||
require_once 'SemanticScuttle/Model/RemoteUser.php';
|
||||
|
||||
/**
|
||||
* SemanticScuttle bookmark service.
|
||||
|
@ -453,14 +454,6 @@ class SemanticScuttle_Service_Bookmark extends SemanticScuttle_DbService
|
|||
|
||||
$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
|
||||
* 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.
|
||||
$values = array(
|
||||
'uId' => intval($sId),
|
||||
'bIp' => $ip,
|
||||
'bIp' => SemanticScuttle_Model_RemoteUser::getIp(),
|
||||
'bDatetime' => $datetime,
|
||||
'bModified' => $datetime,
|
||||
'bTitle' => $title,
|
||||
|
@ -570,15 +563,7 @@ class SemanticScuttle_Service_Bookmark extends SemanticScuttle_DbService
|
|||
return false;
|
||||
}
|
||||
|
||||
// Get the client's IP address and 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');
|
||||
|
||||
// Get the the date; note that the date is in GMT.
|
||||
$moddatetime = gmdate('Y-m-d H:i:s', time());
|
||||
|
||||
$address = $this->normalize($address);
|
||||
|
|
Loading…
Reference in a new issue