diff --git a/cp/app/Controllers/HomeController.php b/cp/app/Controllers/HomeController.php index 7948ee0..59d093d 100644 --- a/cp/app/Controllers/HomeController.php +++ b/cp/app/Controllers/HomeController.php @@ -15,11 +15,13 @@ class HomeController extends Controller $whois_server = $db->selectValue("SELECT value FROM settings WHERE name = 'whois_server'"); $rdap_server = $db->selectValue("SELECT value FROM settings WHERE name = 'rdap_server'"); $company_name = $db->selectValue("SELECT value FROM settings WHERE name = 'company_name'"); + $email = $db->selectValue("SELECT value FROM settings WHERE name = 'email'"); return view($response, 'index.twig', [ 'whois_server' => $whois_server, 'rdap_server' => $rdap_server, 'company_name' => $company_name, + 'email' => $email ]); } @@ -41,26 +43,34 @@ class HomeController extends Controller } if ($clid !== null) { - $domains = $db->selectRow('SELECT count(id) as domains FROM domain WHERE clid = ?', [$clid]); - $hosts = $db->selectRow('SELECT count(id) as hosts FROM host WHERE clid = ?', [$clid]); - $contacts = $db->selectRow('SELECT count(id) as contacts FROM contact WHERE clid = ?', [$clid]); + $domains = $db->selectValue('SELECT count(id) as domains FROM domain WHERE clid = ?', [$clid]); + $latest_domains = $db->select('SELECT name, crdate FROM domain WHERE clid = ? ORDER BY crdate DESC LIMIT 10', [$clid]); + $tickets = $db->select('SELECT id, subject, status, priority FROM support_tickets WHERE user_id = ? ORDER BY date_created DESC LIMIT 10', [$clid]); + $hosts = $db->selectValue('SELECT count(id) as hosts FROM host WHERE clid = ?', [$clid]); + $contacts = $db->selectValue('SELECT count(id) as contacts FROM contact WHERE clid = ?', [$clid]); return view($response, 'admin/dashboard/index.twig', [ - 'domains' => $domains['domains'], - 'hosts' => $hosts['hosts'], - 'contacts' => $contacts['contacts'], + 'domains' => $domains, + 'hosts' => $hosts, + 'contacts' => $contacts, + 'latest_domains' => $latest_domains, + 'tickets' => $tickets, ]); } else { - $domains = $db->selectRow('SELECT count(id) as domains FROM domain'); - $hosts = $db->selectRow('SELECT count(id) as hosts FROM host'); - $contacts = $db->selectRow('SELECT count(id) as contacts FROM contact'); - $registrars = $db->selectRow('SELECT count(id) as registrars FROM registrar'); + $domains = $db->selectValue('SELECT count(id) as domains FROM domain'); + $latest_domains = $db->select('SELECT name, crdate FROM domain ORDER BY crdate DESC LIMIT 10'); + $tickets = $db->select('SELECT id, subject, status, priority FROM support_tickets ORDER BY date_created DESC LIMIT 10'); + $hosts = $db->selectValue('SELECT count(id) as hosts FROM host'); + $contacts = $db->selectValue('SELECT count(id) as contacts FROM contact'); + $registrars = $db->selectValue('SELECT count(id) as registrars FROM registrar'); return view($response, 'admin/dashboard/index.twig', [ - 'domains' => $domains['domains'], - 'hosts' => $hosts['hosts'], - 'contacts' => $contacts['contacts'], - 'registrars' => $registrars['registrars'], + 'domains' => $domains, + 'hosts' => $hosts, + 'contacts' => $contacts, + 'registrars' => $registrars, + 'latest_domains' => $latest_domains, + 'tickets' => $tickets, ]); } } diff --git a/cp/resources/views/admin/dashboard/index.twig b/cp/resources/views/admin/dashboard/index.twig index 16896ea..9008dc3 100644 --- a/cp/resources/views/admin/dashboard/index.twig +++ b/cp/resources/views/admin/dashboard/index.twig @@ -22,6 +22,7 @@
+ {{ __('View Reports') }} @@ -165,6 +166,64 @@
{% endif %} +
+

Recent Domains

+
+
+ + + + + + + + + {% if latest_domains|length > 0 %} + {% for domain in latest_domains %} + + + + + {% endfor %} + {% else %} + + {% endif %} + +
{{ __('Name') }}{{ __('Creation Date') }}
{{ domain.name }}{{ domain.crdate }}
{{ __('No Data') }}
+
+
+
+
+

Recent Support Tickets

+
+
+ + + + + + + + + + {% if tickets|length > 0 %} + {% for ticket in tickets %} + + + + + + {% endfor %} + {% else %} + + {% endif %} + +
{{ __('Subject') }}{{ __('Status') }}{{ __('Priority') }}
{{ ticket.subject }}{{ ticket.status }}{{ ticket.priority }}
{{ __('No Data') }}
+
+
+
diff --git a/cp/resources/views/index.twig b/cp/resources/views/index.twig index b934588..3002c98 100644 --- a/cp/resources/views/index.twig +++ b/cp/resources/views/index.twig @@ -70,8 +70,8 @@ @@ -88,7 +88,7 @@ Personalize this template to fit the unique needs and branding of your registry by editing `resources/views/index.twig`