jitsiComponents($jitsi_component, $component_id, $event_type, $from_time, $until_time, $offset, $items_per_page);
    $search_all = $componentObject->jitsiComponents($jitsi_component, $component_id, $event_type, $from_time, $until_time);
    if (!empty($search)) {
        // we get total items and number of pages
        $item_count = count($search_all);
        $page_count = ceil($item_count / $items_per_page);
        $components = array();
        $components['records'] = array();
        foreach ($search as $item) {
            extract($item);
            $component_record = array(
                // assign title to the field in the array record
                'component'		=> $jitsi_component,
                'loglevel'		=> $loglevel,
                'time'		=> $time,
                'component ID'	=> $component_id,
                'event'		=> $event_type,
                'param'		=> $event_param,
            );
            // populate the result array
            array_push($components['records'], $component_record);
        }
    }
    // prepare the widget
    $widget['full'] = false;
    $widget['name'] = 'AllComponents';
    $widget['filter'] = true;
    $widget['pagination'] = true;
    // widget title
    if (isset($_REQUEST['name']) && $_REQUEST['name'] != '') {
        $widget['title'] = 'Jitsi events for component ' . $_REQUEST['name'] . '';
    } elseif (isset($_REQUEST['id']) && $_REQUEST['id'] != '') {
        $widget['title'] = 'Jitsi events for component ID ' . $_REQUEST['id'] . '';
    } else {
        $widget['title'] = 'Jitsi events for all components';
    }
    // widget records
    if (!empty($components['records'])) {
        $widget['full'] = true;
        $widget['table_headers'] = array_keys($components['records'][0]);
        $widget['table_records'] = $components['records'];
    }
    // display the widget
    include '../app/templates/event-list-components.php';
}
?>