aboutsummaryrefslogtreecommitdiffstats
path: root/public/admin/model/extension/fraud/ip.php
diff options
context:
space:
mode:
Diffstat (limited to 'public/admin/model/extension/fraud/ip.php')
-rw-r--r--public/admin/model/extension/fraud/ip.php50
1 files changed, 50 insertions, 0 deletions
diff --git a/public/admin/model/extension/fraud/ip.php b/public/admin/model/extension/fraud/ip.php
new file mode 100644
index 0000000..3e01bdf
--- /dev/null
+++ b/public/admin/model/extension/fraud/ip.php
@@ -0,0 +1,50 @@
+<?php
+class ModelExtensionFraudIp extends Model {
+ public function install() {
+ $this->db->query("
+ CREATE TABLE IF NOT EXISTS `" . DB_PREFIX . "fraud_ip` (
+ `ip` varchar(40) NOT NULL,
+ `date_added` datetime NOT NULL,
+ PRIMARY KEY (`ip`)
+ ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci;
+ ");
+ }
+
+ public function uninstall() {
+ $this->db->query("DROP TABLE IF EXISTS `" . DB_PREFIX . "ip`");
+ }
+
+ public function addIp($ip) {
+ $this->db->query("INSERT INTO `" . DB_PREFIX . "fraud_ip` SET `ip` = '" . $this->db->escape($ip) . "', date_added = NOW()");
+ }
+
+ public function removeIp($ip) {
+ $this->db->query("DELETE FROM `" . DB_PREFIX . "fraud_ip` WHERE `ip` = '" . $this->db->escape($ip) . "'");
+ }
+
+ public function getIps($start = 0, $limit = 10) {
+ if ($start < 0) {
+ $start = 0;
+ }
+
+ if ($limit < 1) {
+ $limit = 10;
+ }
+
+ $query = $this->db->query("SELECT * FROM `" . DB_PREFIX . "fraud_ip` ORDER BY `ip` ASC LIMIT " . (int)$start . "," . (int)$limit);
+
+ return $query->rows;
+ }
+
+ public function getTotalIps() {
+ $query = $this->db->query("SELECT COUNT(*) AS total FROM `" . DB_PREFIX . "fraud_ip`");
+
+ return $query->row['total'];
+ }
+
+ public function getTotalIpsByIp($ip) {
+ $query = $this->db->query("SELECT COUNT(*) AS total FROM `" . DB_PREFIX . "fraud_ip` WHERE ip = '" . $this->db->escape($ip) . "'");
+
+ return $query->row['total'];
+ }
+}