From 3e0729c6ccd3e91eb436ac002cdad11ae069e25d Mon Sep 17 00:00:00 2001 From: Yasen Pramatarov Date: Sun, 28 Jul 2024 13:35:09 +0300 Subject: [PATCH] Adds widget to components page --- public_html/pages/components.php | 133 +++++++---------------- public_html/pages/front.php | 7 ++ public_html/templates/results-filter.php | 12 +- public_html/templates/widget.php | 22 +++- 4 files changed, 71 insertions(+), 103 deletions(-) diff --git a/public_html/pages/components.php b/public_html/pages/components.php index ebdbab3..6ab9387 100644 --- a/public_html/pages/components.php +++ b/public_html/pages/components.php @@ -48,103 +48,54 @@ try { // list of all component events (default) -//if ($jitsi_component) { - try { - $component = new Component($db); +$component = new Component($db); - // prepare the result - $search = $component->jitsiComponents($jitsi_component, $component_id, $from_time, $until_time); +// prepare the result +$search = $component->jitsiComponents($jitsi_component, $component_id, $from_time, $until_time); - if (!empty($search)) { - $components = array(); - $components['records'] = array(); +if (!empty($search)) { + $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); - } - } - - } catch (Exception $e) { - $error = 'Error: ' . $e->getMessage(); - include 'templates/message.php'; - exit(); + 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); } +} - // display the result +// prepare the widget +$widget['full'] = false; +$widget['name'] = 'AllComponents'; +$widget['collapsible'] = false; +$widget['collapsed'] = false; +$widget['filter'] = true; - // format the header message - echo "
\n"; - if (isset($_REQUEST['name']) && $_REQUEST['name'] != '') { - echo "
Jitsi events for component " . $_REQUEST['name'] . ""; - } elseif (isset($_REQUEST['id']) && $_REQUEST['id'] != '') { - echo "
Jitsi events for component ID
" . $_REQUEST['id'] . ""; - } else { - echo "
Jitsi events for all components"; - } - if ($time_range_specified) { - echo "
for the time period $from_time - $until_time"; - } - echo "
\n\n"; +// 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']; +} - // filters - time selection and sorting dropdowns - include 'templates/results-filter.php'; - - echo "
\n\n"; - - // results table - echo "
\n"; - - if (!empty($components['records'])) { - - echo "\t\n"; - - echo "\t\t\n"; - echo "\t\t\t\n"; - - // table headers - foreach (array_keys($components['records'][0]) as $header) { - echo "\t\t\t\t\n"; - } - echo "\t\t\t\n"; - echo "\t\t\n"; - - echo "\t\t\n"; - - //table rows - foreach ($components['records'] as $row) { - echo "\t\t\t\n"; - // sometimes $column is empty, we make it '' then - foreach ($row as $key => $column) { - if ($key === 'component ID') { - echo "\t\t\t\t\n"; - } elseif ($key === 'component') { - echo "\t\t\t\t\n"; - } else { - echo "\t\t\t\t\n"; - } - } - echo "\t\t\t\n"; - } - - echo "\t\t\n"; - echo "\t
" . htmlspecialchars($header) . "
" . htmlspecialchars($column ?? '') . "" . htmlspecialchars($column ?? '') . "" . htmlspecialchars($column ?? '') . "
\n"; - - } else { - echo '

No matching Jitsi component events found.

'; - } - echo "\n
\n"; - -//} +// display the widget +include('templates/widget.php'); ?> diff --git a/public_html/pages/front.php b/public_html/pages/front.php index 0323b55..ec061e8 100644 --- a/public_html/pages/front.php +++ b/public_html/pages/front.php @@ -68,6 +68,9 @@ try { $widget['full'] = false; $widget['name'] = 'LastDays'; $widget['title'] = 'Conferences for the last 2 days'; +$widget['collapsible'] = true; +$widget['collapsed'] = false; +$widget['filter'] = false; if (!empty($conferences['records'])) { $widget['full'] = true; $widget['table_headers'] = array_keys($conferences['records'][0]); @@ -138,6 +141,10 @@ try { $widget['full'] = false; $widget['name'] = 'LastConferences'; $widget['title'] = 'The last ' . $conference_number . ' conferences'; +$widget['collapsible'] = true; +$widget['collapsed'] = false; +$widget['filter'] = false; + if (!empty($conferences['records'])) { $widget['full'] = true; $widget['table_headers'] = array_keys($conferences['records'][0]); diff --git a/public_html/templates/results-filter.php b/public_html/templates/results-filter.php index b7ab659..ad919e0 100644 --- a/public_html/templates/results-filter.php +++ b/public_html/templates/results-filter.php @@ -1,5 +1,5 @@ -
+
@@ -17,15 +17,9 @@ maxlength="15" size="15" /> -
+ -
- - - - - -
+
diff --git a/public_html/templates/widget.php b/public_html/templates/widget.php index 527367d..b4f6270 100644 --- a/public_html/templates/widget.php +++ b/public_html/templates/widget.php @@ -1,13 +1,25 @@ - -
+
+ + + + +
+ + +
+ + +

time period: -

- + @@ -24,6 +36,10 @@ + + + +