diff --git a/app/database_transactions/database_transaction_edit.php b/app/database_transactions/database_transaction_edit.php
index 0e95a04819..0351f92651 100644
--- a/app/database_transactions/database_transaction_edit.php
+++ b/app/database_transactions/database_transaction_edit.php
@@ -180,10 +180,7 @@
echo " ".$text['label-transaction_old']."\n";
echo "\n";
echo "
\n";
- //echo " \n";
echo " \n";
- //echo " \n";
- //echo $text['description-transaction_old']."\n";
echo " | \n";
echo "\n";
@@ -192,10 +189,7 @@
echo " ".$text['label-transaction_new']."\n";
echo "\n";
echo "\n";
- //echo " \n";
echo " \n";
- //echo " \n";
- //echo $text['description-transaction_new']."\n";
echo " | \n";
echo "\n";
@@ -204,10 +198,7 @@
echo " ".$text['label-transaction_result']."\n";
echo "\n";
echo "\n";
- //echo " \n";
echo " \n";
- //echo " \n";
- //echo $text['description-transaction_result']."\n";
echo " | \n";
echo "\n";
echo "";
@@ -216,35 +207,36 @@
//define the array _difference function
//this adds old and new values to the array
function array_difference($array1, $array2) {
- $difference = array();
+ $array = array();
if (is_array($array1)) {
foreach($array1 as $key => $value) {
- if(is_array($array2[$key])) {
- $difference[$key] = array_difference($array1[$key], $array2[$key]);
+ if (is_array($array2[$key])) {
+ $array[$key] = array_difference($array1[$key], $array2[$key]);
}
else {
- $difference[$key]['old'] = $value;
+ $array[$key]['old'] = $value;
}
}
}
if (is_array($array2)) {
foreach($array2 as $key => $value) {
- if(is_array($value)) {
- $difference[$key] = array_difference($array1[$key], $array2[$key]);
+ if (is_array($value)) {
+ $array[$key] = array_difference($array1[$key], $array2[$key]);
}
else {
- $difference[$key]['new'] = $value;
+ $array[$key]['new'] = $value;
}
}
}
- return $difference;
+ return $array;
}
//show the content from the difference array as a list
function show_difference($array) {
+
//loop through the array
- foreach($array as $key => $value) {
- if(is_array($value) && !isset($value['old']) && !isset($value['new'])) {
+ foreach ($array as $key => $value) {
+ if (is_array($value) && !isset($value['old']) && !isset($value['new'])) {
if (!is_numeric($key)) {
//get the table name
$_SESSION['name'] = $key;
@@ -269,7 +261,7 @@
$color = "#ff0000";
}
//set the table header
- if ($_SESSION['previous_name'] != $_SESSION['name'] || $_SESSION['previous_row'] != $_SESSION['row']) {
+ if ($_SESSION['previous_name'] !== $_SESSION['name'] || $_SESSION['previous_row'] !== $_SESSION['row']) {
echo str_replace("name | ","".$_SESSION['name']." | ",$_SESSION['table_header']);
//echo $_SESSION['table_header'];
}
@@ -277,14 +269,13 @@
$_SESSION['previous_row'] = $_SESSION['row'];
//show the results
echo "\n";
- //echo " | ".$_SESSION['name']." | \n";
- //echo " ".$_SESSION['row']." | \n";
- echo " $key | \n";
+ echo " ".$key." | \n";
echo " ".$old." | \n";
echo " ".$new." | ";
echo "
\n";
//echo "\n";
}
+ unset($key,$old,$new,$value);
}
}
@@ -296,23 +287,91 @@
unset($_SESSION['previous_name']);
unset($_SESSION['previous_row']);
-//show the add or update
+//show the add
if ($transaction_type == "add") {
- echo "
\n";
- echo " \n";
- print_r($after);
- echo "
\n";
+
+ //multiple dimensional array into a 2 dimensional array
+ if (is_array($after)) {
+ $x = 0;
+ foreach($after as $key => $value) {
+ $id = 0;
+ foreach($value as $row) {
+ $sub_id = 0;
+ foreach($row as $sub_key => $val) {
+ if (is_array($val)) {
+ foreach($val as $sub_row) {
+ foreach($sub_row as $k => $v) {
+ $array[$x]['schema'] = $sub_key;
+ $array[$x]['row'] = $sub_id;
+ $array[$x]['name'] = $k;
+ $array[$x]['value'] = htmlentities($v);
+ $x++;
+ }
+ $sub_id++;
+ }
+ }
+ else {
+ $array[$x]['schema'] = $key;
+ $array[$x]['row'] = $id;
+ $array[$x]['name'] = $sub_key;
+ $array[$x]['value'] = htmlentities($val);
+ $x++;
+ }
+ }
+ $id++;
+ }
+ }
+ }
+
+ echo "\n";
+ foreach($array as $row) {
+ if ($row['schema'] !== $previous_schema || $row['row'] !== $previous_row) {
+ echo "| |
\n";
+ echo "\n";
+ echo " | ".$row['schema']." | \n";
+ echo " value | \n";
+ echo "
\n";
+ }
+ echo "\n";
+ //echo " | ".$row['schema']." | \n";
+ //echo " ".$row['row']." | \n";
+ echo " ".$row['name']." | \n";
+ echo " ".$row['value']." | \n";
+ echo "
\n";
+
+ $previous_schema = $row['schema'];
+ $previous_row = $row['row'];
+ }
+ echo "
\n";
+
+ /*
+ if (is_array($after)) {
+ //create the table header
+ $array = array_difference(null, $after, 1);
+ $table_header = "| |
\n";
+ $table_header .= "\n";
+ $table_header .= " | name | \n";
+ $table_header .= " | \n";
+ $table_header .= " new | \n";
+ $table_header .= "
\n";
+ $_SESSION['table_header'] = $table_header;
+
+ //show the difference
+ echo "\n";
+ show_difference($array);
+ echo "
\n";
+ }
+ */
}
-//show the add or update
+//show the update
if ($transaction_type == "update") {
if (count($before) > 0 && count($after) > 0) {
+
//create the table header
$array = array_difference($before, $after, 1);
$table_header = "| |
\n";
$table_header .= "\n";
- //$table_header .= " | Table | \n";
- //$table_header .= " Row | \n";
$table_header .= " name | \n";
$table_header .= " old | \n";
$table_header .= " new | \n";
@@ -320,7 +379,7 @@
$_SESSION['table_header'] = $table_header;
//show the difference
- echo "\n";
+ echo "\n";
show_difference($array);
echo "
\n";
}
@@ -330,9 +389,9 @@
if ($transaction_type == "delete") {
//echo "Record Deleted
\n";
echo "
\n";
- echo " \n";
+ echo "\n";
print_r($before);
- echo "
\n";
+ echo "
\n";
}
//add a few lines at the end