|
1 | | -<?php namespace App\Libraries; |
| 1 | +<?php |
| 2 | +(defined('BASEPATH') || defined('SYSPATH')) or die('No direct access allowed.'); |
2 | 3 |
|
3 | 4 | // Web Service Settings |
4 | 5 | if(!defined('IP2PROXY_API_KEY')) { |
|
13 | 14 | define('IP2PROXY_USESSL', false); |
14 | 15 | } |
15 | 16 |
|
16 | | -require_once('ip2proxy/class.IP2Proxy.php'); |
| 17 | +require_once('ip2proxy/Database.php'); |
| 18 | +require_once('ip2proxy/WebService.php'); |
17 | 19 |
|
18 | 20 | class IP2Proxy_lib { |
19 | 21 | private $database; |
20 | 22 |
|
21 | 23 | protected static $ip2proxy; |
22 | 24 |
|
| 25 | + public function __construct() { |
| 26 | + self::$ip2proxy = new \IP2Proxy\Database(IP2PROXY_DATABASE, \IP2Proxy\Database::FILE_IO); |
| 27 | + } |
| 28 | + |
23 | 29 | public function getCountryShort($ip=NULL) { |
24 | | - self::$ip2proxy = new \IP2Proxy\Database(); |
25 | | - self::$ip2proxy->open(IP2PROXY_DATABASE, \IP2Proxy\Database::FILE_IO); |
26 | | - $countryShort = self::$ip2proxy->getCountryShort(self::getIP($ip)); |
27 | | - self::$ip2proxy->close(); |
28 | | - return $countryShort; |
| 30 | + return self::$ip2proxy->lookup(self::getIP($ip), \IP2Proxy\Database::COUNTRY_CODE); |
29 | 31 | } |
30 | 32 |
|
31 | 33 | public function getCountryLong($ip=NULL) { |
32 | | - self::$ip2proxy = new \IP2Proxy\Database(); |
33 | | - self::$ip2proxy->open(IP2PROXY_DATABASE, \IP2Proxy\Database::FILE_IO); |
34 | | - $countryLong = self::$ip2proxy->getCountryLong(self::getIP($ip)); |
35 | | - self::$ip2proxy->close(); |
36 | | - return $countryLong; |
| 34 | + return self::$ip2proxy->lookup(self::getIP($ip), \IP2Proxy\Database::COUNTRY_NAME); |
37 | 35 | } |
38 | 36 |
|
39 | 37 | public function getRegion($ip=NULL) { |
40 | | - self::$ip2proxy = new \IP2Proxy\Database(); |
41 | | - self::$ip2proxy->open(IP2PROXY_DATABASE, \IP2Proxy\Database::FILE_IO); |
42 | | - $region = self::$ip2proxy->getRegion(self::getIP($ip)); |
43 | | - self::$ip2proxy->close(); |
44 | | - return $region; |
| 38 | + return self::$ip2proxy->lookup(self::getIP($ip), \IP2Proxy\Database::REGION_NAME); |
45 | 39 | } |
46 | 40 |
|
47 | 41 | public function getCity($ip=NULL) { |
48 | | - self::$ip2proxy = new \IP2Proxy\Database(); |
49 | | - self::$ip2proxy->open(IP2PROXY_DATABASE, \IP2Proxy\Database::FILE_IO); |
50 | | - $city = self::$ip2proxy->getCity(self::getIP($ip)); |
51 | | - self::$ip2proxy->close(); |
52 | | - return $city; |
| 42 | + return self::$ip2proxy->lookup(self::getIP($ip), \IP2Proxy\Database::CITY_NAME); |
53 | 43 | } |
54 | 44 |
|
55 | 45 | public function getISP($ip=NULL) { |
56 | | - self::$ip2proxy = new \IP2Proxy\Database(); |
57 | | - self::$ip2proxy->open(IP2PROXY_DATABASE, \IP2Proxy\Database::FILE_IO); |
58 | | - $isp = self::$ip2proxy->getISP(self::getIP($ip)); |
59 | | - self::$ip2proxy->close(); |
60 | | - return $isp; |
| 46 | + return self::$ip2proxy->lookup(self::getIP($ip), \IP2Proxy\Database::ISP); |
61 | 47 | } |
62 | 48 |
|
63 | 49 | public function getDomain($ip=NULL) { |
64 | | - self::$ip2proxy = new \IP2Proxy\Database(); |
65 | | - self::$ip2proxy->open(IP2PROXY_DATABASE, \IP2Proxy\Database::FILE_IO); |
66 | | - $domain = self::$ip2proxy->getDomain(self::getIP($ip)); |
67 | | - self::$ip2proxy->close(); |
68 | | - return $domain; |
| 50 | + return self::$ip2proxy->lookup(self::getIP($ip), \IP2Proxy\Database::DOMAIN_NAME); |
69 | 51 | } |
70 | 52 |
|
71 | 53 | public function getUsageType($ip=NULL) { |
72 | | - self::$ip2proxy = new \IP2Proxy\Database(); |
73 | | - self::$ip2proxy->open(IP2PROXY_DATABASE, \IP2Proxy\Database::FILE_IO); |
74 | | - $usageType = self::$ip2proxy->getUsageType(self::getIP($ip)); |
75 | | - self::$ip2proxy->close(); |
76 | | - return $usageType; |
| 54 | + return self::$ip2proxy->lookup(self::getIP($ip), \IP2Proxy\Database::USAGE_TYPE); |
77 | 55 | } |
78 | 56 |
|
79 | 57 | public function getProxyType($ip=NULL) { |
80 | | - self::$ip2proxy = new \IP2Proxy\Database(); |
81 | | - self::$ip2proxy->open(IP2PROXY_DATABASE, \IP2Proxy\Database::FILE_IO); |
82 | | - $proxyType = self::$ip2proxy->getProxyType(self::getIP($ip)); |
83 | | - self::$ip2proxy->close(); |
84 | | - return $proxyType; |
| 58 | + return self::$ip2proxy->lookup(self::getIP($ip), \IP2Proxy\Database::PROXY_NAME); |
85 | 59 | } |
86 | 60 |
|
87 | 61 | public function getASN($ip=NULL) { |
88 | | - self::$ip2proxy = new \IP2Proxy\Database(); |
89 | | - self::$ip2proxy->open(IP2PROXY_DATABASE, \IP2Proxy\Database::FILE_IO); |
90 | | - $asn = self::$ip2proxy->getASN(self::getIP($ip)); |
91 | | - self::$ip2proxy->close(); |
92 | | - return $asn; |
| 62 | + return self::$ip2proxy->lookup(self::getIP($ip), \IP2Proxy\Database::ASN); |
93 | 63 | } |
94 | 64 |
|
95 | 65 | public function getAS($ip=NULL) { |
96 | | - self::$ip2proxy = new \IP2Proxy\Database(); |
97 | | - self::$ip2proxy->open(IP2PROXY_DATABASE, \IP2Proxy\Database::FILE_IO); |
98 | | - $as = self::$ip2proxy->getAS(self::getIP($ip)); |
99 | | - self::$ip2proxy->close(); |
100 | | - return $as; |
| 66 | + return self::$ip2proxy->lookup(self::getIP($ip), \IP2Proxy\Database::_AS); |
101 | 67 | } |
102 | 68 |
|
103 | 69 | public function getLastSeen($ip=NULL) { |
104 | | - self::$ip2proxy = new \IP2Proxy\Database(); |
105 | | - self::$ip2proxy->open(IP2PROXY_DATABASE, \IP2Proxy\Database::FILE_IO); |
106 | | - $lastSeen = self::$ip2proxy->getLastSeen(self::getIP($ip)); |
107 | | - self::$ip2proxy->close(); |
108 | | - return $lastSeen; |
| 70 | + return self::$ip2proxy->lookup(self::getIP($ip), \IP2Proxy\Database::LAST_SEEN); |
109 | 71 | } |
110 | 72 |
|
111 | 73 | public function getThreat($ip=NULL) { |
112 | | - self::$ip2proxy = new \IP2Proxy\Database(); |
113 | | - self::$ip2proxy->open(IP2PROXY_DATABASE, \IP2Proxy\Database::FILE_IO); |
114 | | - $threat = self::$ip2proxy->getThreat(self::getIP($ip)); |
115 | | - self::$ip2proxy->close(); |
116 | | - return $threat; |
| 74 | + return self::$ip2proxy->lookup(self::getIP($ip), \IP2Proxy\Database::THREAT); |
| 75 | + } |
| 76 | + |
| 77 | + public function getProvider($ip=NULL) { |
| 78 | + return self::$ip2proxy->lookup(self::getIP($ip), \IP2Proxy\Database::PROVIDER); |
117 | 79 | } |
118 | 80 |
|
119 | 81 | public function isProxy($ip=NULL) { |
120 | | - self::$ip2proxy = new \IP2Proxy\Database(); |
121 | | - self::$ip2proxy->open(IP2PROXY_DATABASE, \IP2Proxy\Database::FILE_IO); |
122 | | - $isProxy = self::$ip2proxy->isProxy(self::getIP($ip)); |
123 | | - self::$ip2proxy->close(); |
124 | | - return $isProxy; |
| 82 | + return self::$ip2proxy->lookup(self::getIP($ip), \IP2Proxy\Database::IS_PROXY); |
125 | 83 | } |
126 | 84 |
|
127 | 85 | public function getAll($ip=NULL) { |
128 | | - self::$ip2proxy = new \IP2Proxy\Database(); |
129 | | - self::$ip2proxy->open(IP2PROXY_DATABASE, \IP2Proxy\Database::FILE_IO); |
130 | | - $all = self::$ip2proxy->getAll(self::getIP($ip)); |
131 | | - self::$ip2proxy->close(); |
132 | | - return $all; |
| 86 | + return self::$ip2proxy->lookup(self::getIP($ip), \IP2Proxy\Database::ALL); |
133 | 87 | } |
134 | 88 |
|
135 | 89 | public function getWebService($ip=NULL) { |
|
0 commit comments