diff options
Diffstat (limited to 'public/admin/model/extension/dashboard/online.php')
-rw-r--r-- | public/admin/model/extension/dashboard/online.php | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/public/admin/model/extension/dashboard/online.php b/public/admin/model/extension/dashboard/online.php new file mode 100644 index 0000000..6cf7415 --- /dev/null +++ b/public/admin/model/extension/dashboard/online.php @@ -0,0 +1,24 @@ +<?php +class ModelExtensionDashboardOnline extends Model { + public function getTotalOnline($data = array()) { + $sql = "SELECT COUNT(*) AS total FROM `" . DB_PREFIX . "customer_online` co LEFT JOIN " . DB_PREFIX . "customer c ON (co.customer_id = c.customer_id)"; + + $implode = array(); + + if (!empty($data['filter_ip'])) { + $implode[] = "co.ip LIKE '" . $this->db->escape($data['filter_ip']) . "'"; + } + + if (!empty($data['filter_customer'])) { + $implode[] = "co.customer_id > 0 AND CONCAT(c.firstname, ' ', c.lastname) LIKE '" . $this->db->escape($data['filter_customer']) . "'"; + } + + if ($implode) { + $sql .= " WHERE " . implode(" AND ", $implode); + } + + $query = $this->db->query($sql); + + return $query->row['total']; + } +}
\ No newline at end of file |