Example #1
0
 function index()
 {
     $view = new G2_TwigView('pages/index');
     $test_a = R::findOne('audit');
     $args = [];
     if (!empty($_GET)) {
         $wheres = [];
         foreach ($_GET as $field => $value) {
             if (isset($test_a->{$field}) && trim($value)) {
                 $wheres[] = "{$field} LIKE :{$field}";
                 $args[$field] = $value;
             }
         }
         $where = implode(' AND ', $wheres);
     } else {
         $where = '';
     }
     $audits = Audit::deserialize(Mvc_Db::paginate_findAll('audit', 10, "{$where} ORDER BY id DESC", $args));
     // Sort into entities
     $sorted = [];
     foreach ($audits as $audit) {
         // Limit to 10 entries per entity
         if (count($sorted[$audit->entity]) <= 10) {
             $sorted[$audit->entity][] = $audit;
         }
     }
     $view->set('sorted', $sorted);
     $view->entities = R::getCol('SELECT DISTINCT entity FROM audit');
     $view->set_entity = $_GET['entity'];
     $view->page_count = Mvc_Db::get_last_total_pages();
     $view->current = Mvc_Db::get_current_page();
     unset($_GET['p']);
     $view->current_url = PACKAGE_URL . '?' . http_build_query($_GET);
     $view->render();
 }