Beispiel #1
0
 public function action_best_solutions()
 {
     if (Auth::has_access('reports.best_solutions')) {
         $client_list = GAB\Debtsolv::get_best_solutions_disposition_report()->as_array();
         $pack_in_clients = array();
         $packs_in = array();
         foreach ($client_list as $single_result) {
             if ($single_result['Pack In Date'] != 'Dec 30 1899 12:00:00:000AM') {
                 $pack_ins[] = $single_result;
                 $total_values['pack_in'] = isset($total_values['pack_in']) ? $total_values['pack_in'] + $single_result['DI'] : $single_result['DI'];
                 $pack_in_clients[$single_result['ID']] = $single_result['Pack In Date'];
             }
         }
         $payments = GAB\Debtsolv::get_best_solutions_paid_in_report($pack_in_clients)->as_array();
         foreach ($payments as $payment) {
             $total_values['payments'] = isset($total_values['payments']) ? $total_values['payments'] + $payment['Total Payed'] : $payment['Total Payed'];
         }
         $client_list_headings = array();
         $exclude_headings = array('Pack In Date', 'DatePackSent', 'status');
         if (count($client_list) > 0) {
             $col1 = reset($client_list);
             foreach ($col1 as $column_head => $column_text) {
                 if (!in_array($column_head, $exclude_headings)) {
                     $client_list_headings[] = $column_head;
                 }
             }
         }
         $pack_in_headings = array();
         $exclude_headings = array('DatePackSent');
         if (count($pack_ins) > 0) {
             $col1 = reset($pack_ins);
             foreach ($col1 as $column_head => $column_text) {
                 if (!in_array($column_head, $exclude_headings)) {
                     $pack_in_headings[] = $column_head;
                 }
             }
         }
         $payment_headings = array();
         $exclude_headings = array();
         if (count($payments) > 0) {
             $col1 = reset($payments);
             foreach ($col1 as $column_head => $column_text) {
                 if (!in_array($column_head, $exclude_headings)) {
                     $payment_headings[] = $column_head;
                 }
             }
         }
         /*
         			foreach ($payment_headings AS $head)
         			{
         				print $head.",";
         			}
         			print "\n";
         foreach ($payments AS $client)
         			{
         				foreach ($client AS $cl)
         				{
         					print $cl.",";
         				}
         				print "\n";
         			}
         */
         $this->template->title = 'Best Solution Report » ';
         $this->template->content = View::forge('reports/best_solutions', array('all_clients' => array('headings' => $client_list_headings, 'data' => $client_list), 'pack_ins' => array('headings' => $pack_in_headings, 'data' => $pack_ins), 'payments' => array('headings' => $payment_headings, 'data' => $payments), 'total_values' => $total_values, 'list_title' => 'Best Solutions'));
     } else {
         Session::set_flash('fail', 'You do not have access to that section: This has been logged!');
         Response::redirect('/');
     }
 }