Пример #1
0
 public static function get_structur_with_session($session_id)
 {
     $report_list = report::get_list_with_session($session_id);
     if (count($report_list) > 0) {
         $rn = new report_navigation();
         $report_nav_list = $rn->get_list();
         //Turn Report Navigation List into Report Navigation Structur List
         $rns_list = array();
         for ($i = 0; $i < count($report_nav_list); $i++) {
             $rns_list[] = $report_nav_list[$i]->to_report_navigation_structur();
         }
         //Create Structur
         for ($i = 0; $i < count($rns_list); $i++) {
             $rns = $rns_list[$i];
             for ($j = 0; $j < count($rns_list); $j++) {
                 if ($i != $j) {
                     if ($rns->add_navigation($rns_list[$j])) {
                         array_splice($rns_list, $j, 1);
                         $j--;
                     }
                 }
             }
         }
         $rnr = new report_navigation_report();
         $rnr_list = $rnr->get_list();
         for ($i = 0; $i < count($rnr_list); $i++) {
             for ($j = 0; $j < count($report_list); $j++) {
                 if ($report_list[$j]->id === $rnr_list[$i]->report_id) {
                     for ($k = 0; $k < count($rns_list); $k++) {
                         $rns_list[$k]->add_navigation(new report_navigation_structur(0, $report_list[$j]->name, $rnr_list[$i]->report_navigation_id, $report_list[$j]->id, $report_list[$j]->description));
                     }
                     $j = count($report_list);
                 }
             }
         }
         return $rns_list;
     } else {
         return null;
     }
 }
Пример #2
0
<?php

if (!defined('INTERFACE_ACCESS')) {
    die('Direct access not premitted');
}
echo json_encode(report_navigation::get_structur_with_session($_REQUEST["session_id"]));