diff --git a/broadcast/favicon.ico b/broadcast/favicon.ico
new file mode 100644
index 0000000..64f57c4
Binary files /dev/null and b/broadcast/favicon.ico differ
diff --git a/broadcast/index.frm.php b/broadcast/index.frm.php
index bc0ebe3..3a6b53f 100644
--- a/broadcast/index.frm.php
+++ b/broadcast/index.frm.php
@@ -53,9 +53,11 @@
-
+
〜
-
+
diff --git a/broadcast/index.php b/broadcast/index.php
index 12773e8..2e69fab 100644
--- a/broadcast/index.php
+++ b/broadcast/index.php
@@ -12,6 +12,9 @@ $length = (int) ($_GET['max'] ?? 20);
$asc = ($_GET['asc'] ?? 0) != 0;
$keyword = trim ($_GET['q'] ?? '');
+$date_start = $_GET['start'] ?: null;
+$date_end = $_GET['end'] ?: null;
+
$f = fopen (LOG_PATH, 'r');
if ($f !== false)
@@ -40,6 +43,18 @@ if ($keyword != '')
!== false));
}
+if ($date_start)
+ {
+ $log_data = array_filter ($log_data, fn ($row) => (
+ substr ($row['date_time'], 0, 10) >= $date_start));
+ }
+
+if ($date_end)
+ {
+ $log_data = array_filter ($log_data, fn ($row) => (
+ substr ($row['date_time'], 0, 10) <= $date_end));
+ }
+
$pages_max = (int) ((count ($log_data) - 1) / $length) + 1;
if (!($asc))
diff --git a/broadcast/script.js b/broadcast/script.js
index 447cf8e..101b14d 100644
--- a/broadcast/script.js
+++ b/broadcast/script.js
@@ -4,8 +4,11 @@ Script
static
main ()
{
- $ ('#filter-date-start').datepicker ();
- $ ('#filter-date-end').datepicker ();
+ const dateOptions = {dateFormat: 'yy-mm-dd',
+ firstDay: 6};
+
+ $ ('#filter-date-start').datepicker (dateOptions);
+ $ ('#filter-date-end').datepicker (dateOptions);
const url = new URL (window.location.href);
@@ -17,6 +20,14 @@ Script
const filter = (
function (e)
{
+ let dateStart = $ ('#filter-date-start').val ();
+ let dateEnd = $ ('#filter-date-end').val ();
+
+ if ((dateStart !== '')
+ && (dateEnd !== '')
+ && (dateStart > dateEnd))
+ [dateStart, dateEnd] = [dateEnd, dateStart];
+
url.searchParams.delete ('p');
url.searchParams.delete ('asc');
@@ -25,6 +36,15 @@ Script
url.searchParams.delete ('q');
url.searchParams.append ('q', filterKeyword.value);
+ url.searchParams.delete ('start');
+ url.searchParams.delete ('end');
+
+ if (dateStart !== '')
+ url.searchParams.append ('start', dateStart);
+
+ if (dateEnd !== '')
+ url.searchParams.append ('end', dateEnd);
+
window.location.href = url;
});