function getdata_category_array_organised($category_array_organised, $category_parent = 0) { //reworked get_category_children_array_from_root from category.php to just output required array //recursive array to build an organised array of categories and payments global $database; global $categories_array; global $payments_array; //print_r_pre($categories_array); //print_r_pre($payments_array); //only set the following once (static) static $indent_level = 0; static $grandparents = array(); foreach ($categories_array as $category) { if ($category["category_parent"] == $category_parent) { $grandparents_string = implode(',', $grandparents); // removed square brackets $category_array_organised[] = array("catorpay" => "Category", "indent" => $indent_level, "id" => $category["category_id"], "name" => $category["category_name"], "parent" => $category["category_parent"], "type" => NULL, "value" => NULL, "startdate" => NULL, "dayofweek" => NULL, "dayoffortnight" => NULL, "dayofmonth" => NULL, "active" => NULL, "grandparents" => $grandparents_string); $loop_category_id = $category["category_id"]; //echo $loop_category_id." "; foreach ($payments_array as $payment) { if ($payment["payment_category"] == $category["category_id"]) { $category_array_organised[] = array("catorpay" => "Payment", "indent" => $indent_level + 1, "id" => $payment["payment_id"], "name" => $payment["payment_name"], "parent" => $payment["payment_category"], "type" => $payment["payment_type"], "value" => $payment["payment_value"], "startdate" => $payment['payment_startdate'], "dayofweek" => $payment['payment_dayofweek'], "dayoffortnight" => $payment['payment_dayoffortnight'], "dayofmonth" => $payment['payment_dayofmonth'], "active" => $payment['payment_active']); } } $indent_level++; $grandparents[] = $loop_category_id; $category_array_organised = getdata_category_array_organised($category_array_organised, $loop_category_id); array_pop($grandparents); $indent_level--; } } return $category_array_organised; }
<p id="Response"></p> <div id="tabs-container"> <ul class="tabs-menu"> <li class="current"><a href="#tab-1">Cashflow</a></li> <li><a href="#tab-2">Manage Category Rules</a></li> <li><a href="#tab-3">Manage Transactions</a></li> <li><a href="#tab-4">Import Transactions</a></li> </ul> <div class="tab"> <div id="tab-1" class="tab-content"> <?php $testdate = new DateTime(); $testdate2 = $testdate->format('Y-m-d H:i:s'); //echo $testdate2; $testing = $database->sum("history_transactions", "transaction_amount", ["AND" => ["transaction_category" => 24, "transaction_date[>]" => $date_today_sql]]); $category_array_organised = getdata_category_array_organised($category_array_organised, 0); //print_r_pre($grandparents_array); $cashflow_array = generate_cashflow_array($category_array_organised, $date_today); //print_r_pre($cashflow_array); $headings_main = generate_heading1_array($numdata_cols, $date_today); $temp = generate_heading3_array($cashflow_array); $outgoings_array = $temp[0]; $headings_outgoings = $temp[1]; $headings_balance = generate_heading2_array($outgoings_array); echo output_table_html(array($headings_main, $headings_balance, $headings_outgoings), $cashflow_array); ?> </div> <div id="tab-2" class="tab-content"> </div> <div id="tab-3" class="tab-content">