From f48d0ade4a606ab37ea5a8ac292f9ee463b3be0c Mon Sep 17 00:00:00 2001 From: fusionate Date: Mon, 16 Nov 2020 15:06:10 -0700 Subject: [PATCH] Transactions: Add filter by username. --- app/database_transactions/app_languages.php | 21 ++++++++++ .../database_transactions.php | 39 ++++++++++++++++--- 2 files changed, 55 insertions(+), 5 deletions(-) diff --git a/app/database_transactions/app_languages.php b/app/database_transactions/app_languages.php index 66adb0fe7d..2fb88996e0 100644 --- a/app/database_transactions/app_languages.php +++ b/app/database_transactions/app_languages.php @@ -64,6 +64,27 @@ $text['description-database_transactions']['ru-ru'] = "Изменения в б $text['description-database_transactions']['sv-se'] = "Databas Transaktioner"; $text['description-database_transactions']['uk-ua'] = ""; +$text['label-user']['en-us'] = "User"; +$text['label-user']['en-gb'] = "User"; +$text['label-user']['ar-eg'] = ""; +$text['label-user']['de-at'] = "Benutzer"; //copied from de-de +$text['label-user']['de-ch'] = "Benutzer"; //copied from de-de +$text['label-user']['de-de'] = "Benutzer"; +$text['label-user']['es-cl'] = ""; +$text['label-user']['es-mx'] = ""; +$text['label-user']['fr-ca'] = "Utilisateur"; +$text['label-user']['fr-fr'] = "Utilisateur"; +$text['label-user']['he-il'] = ""; +$text['label-user']['it-it'] = ""; +$text['label-user']['nl-nl'] = "Gebruiker"; +$text['label-user']['pl-pl'] = ""; +$text['label-user']['pt-br'] = ""; +$text['label-user']['pt-pt'] = ""; +$text['label-user']['ro-ro'] = ""; +$text['label-user']['ru-ru'] = "Пользователь"; +$text['label-user']['sv-se'] = "Användare"; +$text['label-user']['uk-ua'] = ""; + $text['label-user_uuid']['en-us'] = "User"; $text['label-user_uuid']['en-gb'] = "User"; $text['label-user_uuid']['ar-eg'] = ""; diff --git a/app/database_transactions/database_transactions.php b/app/database_transactions/database_transactions.php index 6970dae29b..4cbdb8932a 100644 --- a/app/database_transactions/database_transactions.php +++ b/app/database_transactions/database_transactions.php @@ -47,7 +47,8 @@ $order_by = $_GET["order_by"]; $order = $_GET["order"]; -//add the search term +//add the user filter and search term + $user_uuid = $_GET['user_uuid']; $search = strtolower($_GET["search"]); if ($search != '') { $sql_search = "and ("; @@ -62,10 +63,14 @@ } //prepare to page the results - $sql = "select count(*) from v_database_transactions as t "; + $sql = "select count(t.database_transaction_uuid) from v_database_transactions as t "; $sql .= "left outer join v_domains as d using (domain_uuid) "; $sql .= "left outer join v_users as u using (user_uuid) "; $sql .= "where t.domain_uuid = :domain_uuid "; + if (is_uuid($user_uuid)) { + $sql .= "and t.user_uuid = :user_uuid "; + $parameters['user_uuid'] = $user_uuid; + } $sql .= $sql_search; $parameters['domain_uuid'] = $_SESSION['domain_uuid']; $database = new database; @@ -81,12 +86,26 @@ $offset = $rows_per_page * $page; //get the list - $sql = str_replace('count(*)','t.database_transaction_uuid, d.domain_name, u.username, t.user_uuid, t.app_name, t.app_uuid, t.transaction_code, t.transaction_address, t.transaction_type, t.transaction_date', $sql); + $sql = str_replace('count(t.database_transaction_uuid)','t.database_transaction_uuid, d.domain_name, u.username, t.user_uuid, t.app_name, t.app_uuid, t.transaction_code, t.transaction_address, t.transaction_type, t.transaction_date', $sql); $sql .= order_by($order_by, $order, 't.transaction_date', 'desc'); $sql .= limit_offset($rows_per_page, $offset); $database = new database; $result = $database->select($sql, $parameters, 'all'); - unset($sql); + unset($sql, $parameters); + +//get users + $sql = "select user_uuid, username from v_users "; + $sql .= "where domain_uuid = :domain_uuid "; + $sql .= "order by username "; + $parameters['domain_uuid'] = $_SESSION['domain_uuid']; + $database = new database; + $rows = $database->select($sql, $parameters, 'all'); + if (is_array($rows) && @sizeof($rows) != 0) { + foreach ($rows as $row) { + $users[$row['user_uuid']] = $row['username']; + } + } + unset($sql, $parameters, $rows, $row); //additional includes $document['title'] = $text['title-database_transactions']; @@ -97,9 +116,19 @@ echo "
".$text['title-database_transactions']." (".$num_rows.")
\n"; echo "
\n"; echo "