This commit is contained in:
2025-11-29 09:35:18 +00:00
parent c1667681e7
commit 1c2d8a3b6d
8 changed files with 351 additions and 382 deletions

View File

@@ -1,13 +1,22 @@
Start Time UTC End Time UTC Duration Max Out Cause Lat Lon County State
------------------- ------------------- ---------- --------- ------------------------------------------------------------ ------- -------- --------- -------
2025-11-27 19:54:00 2025-11-27 21:25:14 1:31:14 101 WEATHER 38.5224 -81.5713 Kanawha WV
2025-11-29 04:09:00 2025-11-29 08:20:15 4:11:15 4 TREE CONTACT 37.678 -82.2978 Mingo WV
2025-11-29 01:50:00 2025-11-29 06:55:10 5:05:10 52 TREE CONTACT 38.3169 -82.86 Carter KY
2025-11-28 16:34:00 2025-11-28 21:35:14 5:01:14 4 TREE CONTACT 38.131 -82.1747 Lincoln WV
2025-11-28 16:34:00 2025-11-28 20:05:17 3:31:17 4 TREE CONTACT 38.1293 -82.1748 Lincoln WV
2025-11-28 13:57:00 2025-11-28 16:35:15 2:38:15 4 TREE CONTACT 38.4543 -81.5406 Kanawha WV
2025-11-28 04:43:00 2025-11-28 11:35:10 6:52:10 129 TREE CONTACT 37.9899 -81.929 Boone WV
2025-11-28 00:05:10 2025-11-28 04:00:10 3:54:59 19 Tree Damage 39.0265 -79.9577 Barbour WV
2025-11-27 20:15:00 2025-11-27 22:20:08 2:05:08 9 TREE CONTACT 39.198 -82.6978 Jackson OH
2025-11-27 19:54:00 2025-11-27 22:20:08 2:26:08 101 WEATHER 38.5224 -81.5713 Kanawha WV
2025-11-27 19:54:00 2025-11-27 22:35:11 2:41:11 28 WEATHER 38.5159 -81.5703 Kanawha WV
2025-11-27 16:01:00 2025-11-27 17:20:14 1:19:14 524 TREE CONTACT 37.8594 -81.225 Raleigh WV
2025-11-27 13:27:00 2025-11-27 17:20:14 3:53:14 22 TREE CONTACT 37.6263 -81.1044 Raleigh WV
2025-11-27 04:52:00 2025-11-27 09:20:21 4:28:21 13 TREE CONTACT 38.373 -82.4103 Cabell WV
2025-11-27 04:52:00 2025-11-27 08:50:18 3:58:18 34 TREE CONTACT 38.3747 -82.4084 Cabell WV
2025-11-27 04:52:00 2025-11-27 09:20:21 4:28:21 13 TREE CONTACT 38.373 -82.4103 Cabell WV
2025-11-27 03:09:15 2025-11-27 07:05:20 3:56:05 422 TREE CONTACT 38.5068 -81.864 Putnam WV
2025-11-27 03:09:15 2025-11-27 04:55:24 1:46:09 809 TREE CONTACT 38.5091 -81.868 Putnam WV
2025-11-27 03:09:15 2025-11-27 04:20:21 1:11:06 1414 TREE CONTACT 38.494 -81.8585 Putnam WV
2025-11-27 03:09:15 2025-11-27 07:05:20 3:56:05 422 TREE CONTACT 38.5068 -81.864 Putnam WV
2025-11-27 02:59:00 2025-11-27 05:05:23 2:06:23 5 TREE CONTACT 37.6812 -81.5491 Wyoming WV
2025-11-27 01:40:35 2025-11-27 21:05:12 19:24:37 6 TREE CONTACT 38.3987 -81.2739 Kanawha WV
2025-11-26 23:22:31 2025-11-27 00:20:20 0:57:49 6 TREE CONTACT 37.1947 -82.3321 Dickenson VA
@@ -45,12 +54,12 @@ Start Time UTC End Time UTC Duration Max Out Cause
2025-11-26 13:57:00 2025-11-26 16:35:25 2:38:25 12 TREE CONTACT 38.4535 -82.2759 Cabell WV
2025-11-26 13:51:00 2025-11-26 15:50:27 1:59:27 8 WEATHER 38.5198 -82.5185 Lawrence OH
2025-11-26 13:25:00 2025-11-26 16:05:23 2:40:23 69 TREE CONTACT 38.4246 -81.5101 Kanawha WV
2025-11-26 12:14:00 2025-11-26 16:35:25 4:21:25 4 TREE CONTACT 38.2595 -81.9982 Lincoln WV
2025-11-26 12:14:00 2025-11-26 13:35:15 1:21:15 4 TREE CONTACT 38.2604 -81.998 Lincoln WV
2025-11-26 12:14:00 2025-11-26 16:35:25 4:21:25 4 TREE CONTACT 38.2595 -81.9982 Lincoln WV
2025-11-26 11:59:00 2025-11-27 01:35:27 13:36:27 4 TREE CONTACT 38.2722 -82.28 Cabell WV
2025-11-26 11:32:00 2025-11-26 15:35:26 4:03:26 25 TREE CONTACT 37.0754 -82.3701 Dickenson VA
2025-11-26 10:51:00 2025-11-26 16:35:25 5:44:25 852 TREE CONTACT 39.6226 -82.0824 Perry OH
2025-11-26 10:51:00 2025-11-26 16:50:25 5:59:25 342 TREE CONTACT 39.5817 -82.0624 Perry OH
2025-11-26 10:51:00 2025-11-26 16:35:25 5:44:25 852 TREE CONTACT 39.6226 -82.0824 Perry OH
2025-11-26 10:05:10 2025-11-26 12:00:12 1:55:02 19 Tree Damage 39.2096 -81.2004 Ritchie WV
2025-11-26 08:16:00 2025-11-26 13:35:15 5:19:15 78 TREE CONTACT 38.2826 -81.7308 Kanawha WV
2025-11-26 04:20:00 2025-11-26 08:05:12 3:45:12 4 TREE CONTACT 38.487 -81.3294 Kanawha WV
@@ -71,37 +80,7 @@ Start Time UTC End Time UTC Duration Max Out Cause
2025-11-25 12:14:00 2025-11-25 19:35:17 7:21:17 151 TREE CONTACT 37.0442 -82.3947 Dickenson VA
2025-11-25 11:23:00 2025-11-25 13:50:21 2:27:21 27 TREE CONTACT 38.5702 -81.7033 Kanawha WV
2025-11-25 10:10:00 2025-11-25 14:35:23 4:25:23 4 TREE CONTACT 38.0477 -82.0809 Lincoln WV
2025-11-24 15:44:00 2025-11-24 20:35:24 4:51:24 264 TREE CONTACT 37.5226 -81.8099 Wyoming WV
2025-11-24 15:44:00 2025-11-24 21:05:22 5:21:22 27 TREE CONTACT 37.5141 -81.8072 Wyoming WV
2025-11-24 15:44:00 2025-11-24 20:35:24 4:51:24 264 TREE CONTACT 37.5226 -81.8099 Wyoming WV
2025-11-24 12:29:00 2025-11-24 18:40:34 6:11:34 19 TREE CONTACT 38.4707 -82.6995 Boyd KY
2025-11-24 12:29:00 2025-11-24 14:55:42 2:26:42 18 TREE CONTACT 38.4706 -82.6993 Boyd KY
2025-11-24 08:58:00 2025-11-24 13:35:24 4:37:24 7 TREE CONTACT 39.6278 -82.0292 Morgan OH
2025-11-24 08:24:00 2025-11-24 15:05:25 6:41:25 35 TREE CONTACT 38.1802 -81.9185 Lincoln WV
2025-11-24 08:15:00 2025-11-24 16:05:28 7:50:28 40 TREE CONTACT 37.3616 -81.7316 McDowell WV
2025-11-24 04:39:00 2025-11-24 15:20:26 10:41:26 15 TREE CONTACT 37.9783 -82.3569 Wayne WV
2025-11-24 01:20:11 2025-11-24 03:30:10 2:09:59 19 Tree Damage 38.5826 -80.8991 Braxton WV
2025-11-24 00:22:00 2025-11-24 04:05:13 3:43:13 13 TREE CONTACT 39.6128 -81.9686 Morgan OH
2025-11-23 23:37:00 2025-11-24 08:05:09 8:28:09 7 TREE CONTACT 38.4702 -81.3939 Kanawha WV
2025-11-23 17:58:00 2025-11-23 21:40:17 3:42:17 12 TREE CONTACT 37.9447 -82.6866 Lawrence KY
2025-11-23 16:05:00 2025-11-23 19:35:15 3:30:15 76 TREE CONTACT 38.5411 -81.416 Kanawha WV
2025-11-23 16:05:00 2025-11-23 22:20:16 6:15:16 36 TREE CONTACT 38.5476 -81.4174 Roane WV
2025-11-23 16:05:00 2025-11-23 20:20:18 4:15:18 61 TREE CONTACT 38.5417 -81.4191 Kanawha WV
2025-11-23 13:34:00 2025-11-23 19:50:18 6:16:18 177 TREE CONTACT 38.9096 -81.7926 Jackson WV
2025-11-23 10:42:00 2025-11-23 19:05:18 8:23:18 806 TREE CONTACT 38.2266 -81.413 Kanawha WV
2025-11-23 09:21:00 2025-11-23 20:35:18 11:14:18 4 TREE CONTACT 38.0339 -81.4554 Kanawha WV
2025-11-23 07:38:00 2025-11-23 15:35:11 7:57:11 195 TREE CONTACT 37.2019 -82.4628 Dickenson VA
2025-11-23 06:48:00 2025-11-23 16:05:12 9:17:12 4 TREE CONTACT 38.6302 -81.3645 Roane WV
2025-11-23 04:46:00 2025-11-23 08:40:15 3:54:15 58 TREE CONTACT 38.4178 -82.7328 Boyd KY
2025-11-23 04:46:00 2025-11-23 11:40:14 6:54:14 40 TREE CONTACT 38.4156 -82.7356 Boyd KY
2025-11-23 02:31:14 2025-11-23 10:05:12 7:33:58 623 TREE CONTACT 38.2149 -81.4187 Kanawha WV
2025-11-23 02:31:14 2025-11-23 08:35:16 6:04:02 621 TREE CONTACT 38.2146 -81.4188 Kanawha WV
2025-11-23 02:31:14 2025-11-23 11:05:13 8:33:59 624 TREE CONTACT 38.2149 -81.4188 Kanawha WV
2025-11-23 01:18:00 2025-11-23 17:50:18 16:32:18 42 TREE CONTACT 38.1792 -81.4666 Kanawha WV
2025-11-23 01:18:00 2025-11-23 19:50:18 18:32:18 157 TREE CONTACT 38.1814 -81.4555 Kanawha WV
2025-11-23 01:18:00 2025-11-23 18:50:19 17:32:19 88 TREE CONTACT 38.1807 -81.4583 Kanawha WV
2025-11-23 01:18:00 2025-11-23 18:05:12 16:47:12 67 TREE CONTACT 38.1791 -81.4657 Kanawha WV
2025-11-23 00:13:00 2025-11-23 04:50:13 4:37:13 4 TREE CONTACT 38.3593 -82.4886 Wayne WV
2025-11-23 00:07:00 2025-11-23 14:20:16 14:13:16 5 TREE CONTACT 38.4733 -81.2042 Clay WV
2025-11-22 22:39:00 2025-11-23 05:20:14 6:41:14 6 TREE CONTACT 37.9014 -81.2874 Fayette WV
2025-11-22 22:27:00 2025-11-23 00:35:12 2:08:12 10 TREE CONTACT 38.5029 -81.5277 Kanawha WV
2025-11-22 22:07:00 2025-11-23 01:35:13 3:28:13 4 TREE CONTACT 38.0685 -82.0728 Lincoln WV

10
log.txt
View File

@@ -2505,3 +2505,13 @@ Corrupt JPEG data: premature end of data segment
Corrupt JPEG data: premature end of data segment
Corrupt JPEG data: premature end of data segment
Corrupt JPEG data: premature end of data segment
Corrupt JPEG data: premature end of data segment
Corrupt JPEG data: premature end of data segment
Corrupt JPEG data: premature end of data segment
Corrupt JPEG data: premature end of data segment
Corrupt JPEG data: premature end of data segment
[hls @ 0x7fd0d401d780] Error when loading first segment 'https://vstream.command.verkada.com/filter/transcode/v2_3d547075b72a8b1bf8568139b3deb04a/caa01520-0f08-4f5c-bdd7-1929ec5767dd/high_res/camera1764395276.m4s?codec=hevc'
[ WARN:11@86.034] global cap_ffmpeg_impl.hpp:453 _opencv_ffmpeg_interrupt_callback Stream timeout triggered after 30016.938249 ms
[ WARN:11@86.034] global cap_ffmpeg_impl.hpp:453 _opencv_ffmpeg_interrupt_callback Stream timeout triggered after 30017.072812 ms
[ WARN:11@86.035] global cap_ffmpeg_impl.hpp:453 _opencv_ffmpeg_interrupt_callback Stream timeout triggered after 30018.131860 ms
[ WARN:11@86.035] global cap_ffmpeg_impl.hpp:453 _opencv_ffmpeg_interrupt_callback Stream timeout triggered after 30018.566415 ms

126
lsr.php
View File

@@ -4,10 +4,6 @@ $dbconn = pg_connect("host=localhost dbname=nws user=nws password=nws")
or die('Could not connect: ' . pg_last_error());
if (isset($_GET['ohgo'])) {
$query = "SELECT jsonb_build_object(
'type', 'FeatureCollection',
@@ -56,8 +52,6 @@ if (isset($_GET['ohgo'])) {
}
if (isset($_GET['ohgotable'])) {
// Performing SQL query
$query = "SELECT CASE WHEN COALESCE(lsr, FALSE) THEN 'true' ELSE 'false' END AS lsr,
@@ -84,18 +78,15 @@ ORDER BY start ASC
// Free resultset
pg_free_result($result);
// Closing connection (uncomment if needed)
// pg_close($dbconn);
}
if (isset($_GET['lsrohgo'])) {
if ($_GET['lsrohgo'] == 'true') {
$lsrflag = 'true';
} else {
$lsrflag = 'false';
}
$lsrflag = 'true';
} else {
$lsrflag = 'false';
}
$id = (int) $_GET['id'];
$query = "UPDATE ohgo SET lsr = $1 WHERE id = $2";
$result = pg_query_params($dbconn, $query, array($lsrflag, $id)) or die('Query failed: ' . pg_last_error());
@@ -105,10 +96,10 @@ if (isset($_GET['lsrohgo'])) {
if (isset($_GET['ohgohide'])) {
if ($_GET['ohgohide'] == 'true') {
$lsrflag = 'true';
} else {
$lsrflag = 'false';
}
$lsrflag = 'true';
} else {
$lsrflag = 'false';
}
$id = (int) $_GET['id'];
$query = "UPDATE ohgo SET hide = $1 WHERE id = $2";
$result = pg_query_params($dbconn, $query, array($lsrflag, $id)) or die('Query failed: ' . pg_last_error());
@@ -169,11 +160,11 @@ if (isset($_GET['preflagreports'])) {
$vtec = $_GET['preflagreports'];
$query = "SELECT * from reports WHERE severe = $1";
$result = pg_query_params($dbconn, $query, array($vtec)) or die('Query failed: ' . pg_last_error());
while ($line = pg_fetch_array($result, null, PGSQL_ASSOC)) {
while ($line = pg_fetch_array($result, null, PGSQL_ASSOC)) {
$array[] = $line;
}
echo json_encode($array);
echo json_encode($array);
pg_free_result($result);
}
@@ -183,20 +174,20 @@ if (isset($_GET['preflagreports'])) {
if (isset($_GET['reports'])) {
$vtec = $_GET['reports'];
if (isset($_GET['hours'])) {
$hours = $_GET['hours'];
} else {
$hours = 6;
}
$hours = $_GET['hours'];
} else {
$hours = 6;
}
//echo $hours;
//echo $hours;
$query = "SELECT * from reports,svr where ST_Contains(svr.nwspoly, reports.geom) and vtec = $1 and reports.initialdtg AT TIME ZONE 'America/New_York' > svr.issue AND reports.initialdtg AT TIME ZONE 'America/New_York' < svr.issue + (INTERVAL '1 h' * $2)";
$result = pg_query_params($dbconn, $query, array($vtec,$hours)) or die('Query failed: ' . pg_last_error());
while ($line = pg_fetch_array($result, null, PGSQL_ASSOC)) {
while ($line = pg_fetch_array($result, null, PGSQL_ASSOC)) {
$array[] = $line;
}
echo json_encode($array);
echo json_encode($array);
pg_free_result($result);
}
@@ -206,30 +197,24 @@ if (isset($_GET['hours'])) {
if (isset($_GET['outages'])) {
$vtec = $_GET['outages'];
if (isset($_GET['hours'])) {
$hours = $_GET['hours'];
} else {
$hours = 1;
}
$hours = $_GET['hours'];
} else {
$hours = 1;
}
//echo $hours;
//echo $hours;
$query = "SELECT power.lat,power.lon,power.peakoutage,power.cause,power.derivedstart,power.lastchange from power,svr where ST_Contains(svr.nwspoly, power.realgeom) and vtec = $1 and derivedstart > svr.issue AND derivedstart < svr.issue + (INTERVAL '1 h' * $2)";
$result = pg_query_params($dbconn, $query, array($vtec,$hours)) or die('Query failed: ' . pg_last_error());
while ($line = pg_fetch_array($result, null, PGSQL_ASSOC)) {
while ($line = pg_fetch_array($result, null, PGSQL_ASSOC)) {
$array[] = $line;
}
echo json_encode($array);
echo json_encode($array);
pg_free_result($result);
}
//no gets, curent point outage info
if(empty($_GET)) {
$result = pg_query_params($dbconn,
@@ -241,15 +226,6 @@ pg_free_result($result);
}
//For real time mapping
if($_GET['verify'] ?? null) {
@@ -318,9 +294,6 @@ pg_free_result($result);
}
//Stats
if (isset($_GET['stats'])) {
$query = "SELECT county, state, MAX(emailtime), count(*) FROM reports where county is not null and (state = 'WV' or state = 'VA' or state = 'KY' or state = 'OH') GROUP BY county, state";
@@ -340,27 +313,25 @@ pg_free_result($result);
if (isset($_GET['metars'])) {
if (isset($_GET['start'])) {
$start = $_GET['start'];
}
$start = $_GET['start'];
}
if (isset($_GET['end'])) {
$end = $_GET['end'];
}
$end = $_GET['end'];
}
$query = "SELECT icao,temp,dewp,wx,precip1,precip3,precip6,raw,obtime,stationname,lat,lon from metars where obtime - interval '45 minutes' > $1 and obtime < $2 order by lon asc";
$result = pg_query_params($dbconn, $query, array($start,$end)) or die('Query failed: ' . pg_last_error());
while ($line = pg_fetch_array($result, null, PGSQL_ASSOC)) {
while ($line = pg_fetch_array($result, null, PGSQL_ASSOC)) {
$array[] = $line;
} //echo($array);
echo json_encode($array);
echo json_encode($array);
pg_free_result($result);
}
if (isset($_GET['news'])) {
//$query = "SELECT headline, summary, imageurl, source, storylink, updated from news where notrelevant is not true";
$query = "
@@ -469,7 +440,7 @@ if (isset($_GET['news3'])) {
}
// --- FIXED SECTION: newsarchive ---
if (isset($_GET['newsarchive'])) {
// Initialize variables
$start = isset($_GET['start']) ? $_GET['start'] : null;
@@ -492,7 +463,8 @@ if (isset($_GET['newsarchive'])) {
// Build parameter placeholders
$placeholders = [];
for ($i = 1; $i <= count($patterns); $i++) {
$placeholders[] = "\${$i}::text";
// FIXED: Use concatenation to create "$1::text"
$placeholders[] = '$' . $i . '::text';
}
$placeholder_string = implode(',', $placeholders);
@@ -514,12 +486,14 @@ if (isset($_GET['newsarchive'])) {
$param_count = count($patterns);
if ($start) {
$param_count++;
$query .= " AND timeutc >= $${param_count}";
// FIXED: Use concatenation instead of deprecated interpolation
$query .= " AND timeutc >= $" . $param_count;
$params[] = $start;
}
if ($end) {
$param_count++;
$query .= " AND timeutc <= $${param_count}";
// FIXED: Use concatenation instead of deprecated interpolation
$query .= " AND timeutc <= $" . $param_count;
$params[] = $end;
}
@@ -537,8 +511,6 @@ if (isset($_GET['newsarchive'])) {
}
if (isset($_GET['wv511'])) {
$query = "SELECT jsonb_build_object(
'type', 'FeatureCollection',
@@ -588,7 +560,6 @@ if (isset($_GET['wv511'])) {
}
if (isset($_GET['ky511'])) {
$query = "SELECT jsonb_build_object(
'type', 'FeatureCollection',
@@ -637,7 +608,6 @@ if (isset($_GET['ky511'])) {
}
if (isset($_GET['getCombinedTable'])) {
// Combined SQL query using UNION ALL with CAST for 'id'
@@ -692,7 +662,7 @@ if (isset($_GET['getCombinedTable'])) {
wv511.name !~ 'Vehicle' and wv511.name !~ 'Dead Animal' and wv511.name !~ 'Debris in Roadway' and wv511.name !~ 'Congestion-Delay' and
wv511.name !~ 'Pot hole' and wv511.name !~ 'Debris On Bridge' and wv511.name !~ 'Attenuator' and wv511.name !~ 'Pedestrian' and
wv511.name !~ 'Bridge Closed' and wv511.name !~ 'Truck on escape' and wv511.name !~ 'Bridge Incident' and wv511.name !~ 'Escape Ramp' AND
wv511.name !~ 'Signal'
wv511.name !~ 'Signal'
UNION ALL
-- KY511 Query
@@ -761,9 +731,6 @@ if (isset($_GET['getCombinedTable'])) {
// Add more table names here as needed in the future.
if (isset($_GET['updater'])) {
$allowedTables = ['wv511', 'ky511.ky511', 'ohgo'];
if (isset($_GET['lsr']) && isset($_GET['id']) && isset($_GET['table'])) {
@@ -784,9 +751,7 @@ if (isset($_GET['lsr']) && isset($_GET['id']) && isset($_GET['table'])) {
$tableNameEscaped = $requestedTable;
// **** IMPORTANT: Ensure your ID column is actually TEXT/VARCHAR if you're not casting to int ****
// If 'id' is numeric, you MUST validate/cast it like in the 'hide' block.
// Assuming 'id' is text for now based on your original code for LSR:
// Note: {$tableNameEscaped} is VALID complex syntax. The issue was with ${var}
$query = "UPDATE {$tableNameEscaped} SET lsr = $1 WHERE id = $2";
$result = pg_query_params($dbconn, $query, array($lsrflag, $id));
@@ -818,7 +783,6 @@ if (isset($_GET['lsr']) && isset($_GET['id']) && isset($_GET['table'])) {
$tableNameEscaped = $requestedTable;
// Assuming 'id' is numeric based on your validation here
$query = "UPDATE {$tableNameEscaped} SET hide = $1 WHERE id = $2";
$result = pg_query_params($dbconn, $query, array($hideflag, $id));
@@ -857,17 +821,5 @@ if (isset($_GET['lsr']) && isset($_GET['id']) && isset($_GET['table'])) {
}
pg_close($dbconn);
?>

File diff suppressed because one or more lines are too long

360
news.txt
View File

@@ -11,10 +11,23 @@ Fetching from: https://wcyb.com
Fetching from: https://wvnstv.com
Collected 293 stories. Processing and inserting...
- Impact[0] NLP[0.12]: Two WV National Guard members critical after D.C. shooting; victims identified
- Impact[75] NLP[0.29]: Woodward Drive closed due to ATV crash
- Impact[50] NLP[0.0]: Vigil held in honor of U.S. Army Spc. Sarah Beckstrom
- Impact[5] NLP[0.0]: Two teams are heading to states
- Impact[22] NLP[0.13]: Name released in deadly crash; Route 7 back open
- Impact[25] NLP[0.0]: W.Va. Gov. addresses National Guard shooting from D.C.
- Impact[0] NLP[0.12]: First Alert Weather | Wintry Conditions Ahead
- Impact[65] NLP[0.5]: One dead after four-wheeler crash
- Impact[50] NLP[0.0]: Tree lighting ceremony held in Charleston
- Impact[57] NLP[0.0]: St. Albans Festival of Lights big holiday draw
- Impact[0] NLP[0.0]: W.Va. National Guard member dies after D.C. shooting
- Impact[50] NLP[0.0]: Model railroad show held in Huntington
- Impact[0] NLP[0.0]: Suspect in shooting of National Guard members faces murder charge as US halts all asylum decisions
- Impact[50] NLP[0.0]: Black Friday shoppers line up at Huntington Mall
- Impact[0] NLP[0.0]: WSAZ Gives Thanks
- Impact[0] NLP[0.0]: Afghan national charged in Guard ambush shooting drove across US to carry out attack, officials say
- Impact[75] NLP[0.29]: Woodward Drive closed due to ATV crash
- Impact[0] NLP[0.0]: Thanksgiving foods to avoid for your pets
- Impact[0] NLP[0.22]: First Alert Weather | Friday, Nov. 28, 2026
- Impact[0] NLP[0.0]: Trump says one of the two West Virginia National Guard members shot by Afghan national has died
- Impact[0] NLP[0.0]: Trump administration orders 500 more National Guard troops to DC after shooting of soldiers
- Impact[0] NLP[0.0]: First Alert Weather+ | Thanksgiving weekend
- Impact[0] NLP[0.0]: 2 National Guard members shot in an ambush attack just blocks from the White House
@@ -29,25 +42,23 @@ Collected 293 stories. Processing and inserting...
- Impact[50] NLP[0.0]: Man charged with attacking city workers on sidewalk
- Impact[0] NLP[0.0]: US 23 Country Music Highway Museum
- Impact[7] NLP[0.0]: Cooking safety tips from the American Red Cross
- Impact[0] NLP[0.12]: Two WV National Guard members critical after D.C. shooting; victims identified
- Impact[50] NLP[0.0]: Cabell-Huntington Health Department to end needle exchange program
- Impact[0] NLP[0.0]: WSAZ Sports+ | State Semi-Finals in WV, KY & OH
- Impact[0] NLP[0.0]: Christmas gift ideas at Twelvepole Trading Post
- Impact[50] NLP[0.0]: Small Business Saturday Vendor Craft Showcase
- Impact[50] NLP[0.0]: Elks Lodge annual Thanksgiving dinner
- Impact[55] NLP[0.0]: Christmas lights at Gallipolis City Park slated Wednesday night
- Impact[0] NLP[0.0]: This Day in History - 11/26/25
- Impact[18] NLP[0.47]: First Alert Weather Day: How will rain and wind impact your holiday travel?
- Impact[57] NLP[0.0]: Ashland Christmas parade tonight
- Impact[0] NLP[0.0]: Mayor: Man arrested after unprovoked attack on city workers
- Impact[62] NLP[0.33]: New details emerge about ATV crash that killed one teen
- Impact[50] NLP[0.0]: AD Lewis Community Center gives out Thanksgiving food boxes
- Impact[50] NLP[0.0]: Holly Jolly Brawley Trolly ready for service
- Impact[0] NLP[0.0]: Holiday shopping tips to avoid online scams
- Impact[0] NLP[0.11]: Rate hike settlement proposed in Kentucky
- Impact[50] NLP[0.0]: Holiday safety: Avoiding porch pirates
- Impact[0] NLP[0.0]: Gov. Morrisey kicks off holiday toy drive
- Impact[0] NLP[0.0]: Afghan national charged in Guard ambush shooting drove across US to carry out attack, officials say
- Impact[50] NLP[0.0]: Belpre holds annual Christmas tree lighting at Civitan Park
- Impact[0] NLP[0.0]: WV State Police pursuit in Parkesburg
- Impact[50] NLP[0.0]: This Is Home: Parkersburg spa promotes wellness and community support for Small Business Saturday
- Impact[15] NLP[0.4]: One person dead and two others taken to hospital after four-vehicle crash on SR-7
- Impact[22] NLP[0.29]: Rainy and snowy stretch ahead
- Impact[0] NLP[0.0]: Heddleston completes Northwestern University Police Staff and Command Program
- Impact[30] NLP[0.62]: Quiet for now before rain and snow arrives Sunday
- Impact[50] NLP[0.0]: Tips for shopping safely this holiday season
- Impact[22] NLP[0.0]: House to Home Day Shelter serves Thanksgiving meals to unhoused community
- Impact[7] NLP[0.29]: 75th anniversary of the Great Appalachian Storm of 1950
- Impact[0] NLP[0.0]: Trump says one of the two West Virginia National Guard members shot by Afghan national has died
- Impact[0] NLP[0.0]: Arts and entertainment events happening November 27th-30th across the Mid-Ohio Valley
- Impact[50] NLP[0.0]: Wood County Board of Education receives forensic audit report
- Impact[0] NLP[0.0]: Cold and breezy Thanksgiving
- Impact[50] NLP[0.0]: Parkersburg Police investigating hit and run
- Impact[0] NLP[0.0]: List of Thanksgiving meals offered around the Mid-Ohio Valley
@@ -59,7 +70,6 @@ Collected 293 stories. Processing and inserting...
- Impact[0] NLP[0.0]: Black Friday preview from Grand Central Mall
- Impact[0] NLP[0.0]: MOVHD on Thanksgiving food safety
- Impact[50] NLP[0.0]: 2nd annual Meals for Veterans by Marietta Noon Rotary
- Impact[50] NLP[0.0]: Wood County Board of Education receives forensic audit report
- Impact[50] NLP[0.0]: This Day in History: Nov. 26, 2025
- Impact[50] NLP[0.22]: St. Marys water rates increase for residents and businesses
- Impact[0] NLP[0.0]: Whooping cough in the Mid-Ohio Valley
@@ -71,19 +81,11 @@ Collected 293 stories. Processing and inserting...
- Impact[50] NLP[0.0]: MCF completes Stock the Shelves Challenge
- Impact[0] NLP[0.0]: Thunderbolt Running and Timing promotes community fitness through group runs
- Impact[50] NLP[0.0]: Groundbreaking ceremony for New Lincoln Elementary
- Impact[0] NLP[0.0]: This Day in History: Nov. 25, 2025
- Impact[0] NLP[0.13]: MOV Regional Airport ready for holiday travel
- Impact[50] NLP[0.0]: K9 Kuky from Belpre got a donation for protective vest
- Impact[5] NLP[0.08]: Chilly Thanksgiving for the MOV
- Impact[5] NLP[0.2]: Messy Thanksgiving Travel
- Impact[0] NLP[0.0]: Ohio man facing multiple charges of rape involving a minor
- Impact[0] NLP[0.0]: West Virginias largest Christmas shop prepares for Small Business Saturday
- Impact[50] NLP[0.0]: Salvation Army of Parkersburg kettle bell campaign raises $13,000 in two weeks
- Impact[0] NLP[0.0]: White Picket Farm makes top 10 for Best of West Virginia 2025
- Impact[50] NLP[0.0]: WCVSC holds thanksgiving giveaway for veteran families
- Impact[50] NLP[0.0]: Community prayer vigils set for National Guard member from Webster Springs
- Impact[0] NLP[0.0]: Afghan national charged in Guard ambush shooting drove across US to carry out attack, officials say
- Impact[30] NLP[0.31]: Rain could begin as snow on Sunday, but is there another chance next week?
- Impact[75] NLP[0.0]: Candlelight vigil held for National Guard Specialist from Webster County
- Impact[0] NLP[0.0]: Suspect in shooting of National Guard members faces murder charge as US halts all asylum decisions
- Impact[22] NLP[0.25]: A wintry mess of precipitation could cause you problems on Sunday. Another storm could do the same next week.
- Impact[0] NLP[0.0]: UPDATE: Morrisey requests statewide moment of silence for National Guard members shot in D.C.
- Impact[0] NLP[0.0]: Trump says one of the two West Virginia National Guard members shot by Afghan national has died
- Impact[0] NLP[0.0]: Trump administration orders 500 more National Guard troops to DC after shooting of soldiers
- Impact[10] NLP[0.0]: Morgantown man arrested for sexually abusing 9-year-old daughter in 2004
- Impact[50] NLP[0.0]: UPDATE: 17-year-old juvenile found safe
@@ -100,6 +102,7 @@ Collected 293 stories. Processing and inserting...
- Impact[50] NLP[0.0]: Salem University looking to start new Psychedelic Education program
- Impact[50] NLP[0.0]: State Police accepts donations for State Troopers for West Virginia Needy campaign
- Impact[0] NLP[0.0]: WVU Medicine Childrens holding community toy drive for holiday donations
- Impact[30] NLP[0.31]: Rain could begin as snow on Sunday, but is there another chance next week?
- Impact[50] NLP[0.0]: UPDATE: Runaway teen from Upshur County has now been found
- Impact[0] NLP[0.0]: Jennifer Garner visits schools and homes in her native W.Va.
- Impact[0] NLP[0.0]: Big changes are coming just as Thanksgiving is arriving, but what are they?
@@ -113,199 +116,196 @@ Collected 293 stories. Processing and inserting...
- Impact[0] NLP[0.2]: If youre traveling for the holiday, will you need to worry about any weather-related travel problems?
- Impact[50] NLP[0.0]: Kings Hands Boxing Club holds ribbon cutting in Stonewood
- Impact[0] NLP[0.0]: Canaan Valley Wildlife Refuge giving away free, real Christmas trees this holiday season
- Impact[0] NLP[0.0]: Town of White Hall preparing for holiday events
- Impact[0] NLP[0.0]: Gov. Morrisey grants state employees a half-day off before Thanksgiving
- Impact[0] NLP[0.0]: Market in the Park kicks off the Celebration of Lights
- Impact[0] NLP[0.17]: Pulaski County mother, children lose home to fire just before Thanksgiving
- Impact[0] NLP[0.0]: Floyd County community, church leader dies
- Impact[50] NLP[0.0]: Somerset church uses numerous donations to help community after TikTok challenge
- Impact[0] NLP[0.0]: FIRST ALERT FORECAST: Freezing Black Friday temperatures
- Impact[0] NLP[0.0]: B-Robs Christmas in the Mountains underway
- Impact[0] NLP[0.0]: Bereas Artisan Village preparing for Shop Small Business Saturday
- Impact[0] NLP[0.0]: Shoppers show up, line up for Black Friday deals
- Impact[50] NLP[0.0]: Country star Tyler Childers spotted at Paintsville Walmart on Black Friday
- Impact[0] NLP[0.0]: Local real estate broker analyzes how a proposed 50-year mortgage plan would impact in the mountains
- Impact[50] NLP[0.0]: Somerset couple charged with child sexual exploitation
- Impact[0] NLP[0.0]: Former Breathitt County Sheriff dies
- Impact[0] NLP[0.3]: Morehead duplex catches on fire Thanksgiving evening
- Impact[50] NLP[0.0]: Communities honor West Virginia National Guard members shot in Washington
- Impact[0] NLP[0.16]: London deputy fire chief dies at 85
- Impact[65] NLP[0.5]: One dead after four-wheeler crash
- Impact[0] NLP[0.0]: Boars Head products sold in Kentucky recalled over possible listeria contamination
- Impact[0] NLP[0.0]: Black Friday weekend projected to reach record number of shoppers
- Impact[37] NLP[0.22]: Death toll rises to 128 in Hong Kong residential fire; 8 more arrested over towers renovation
- Impact[0] NLP[0.0]: Walgreens recalls nasal spray over possible contamination
- Impact[0] NLP[0.0]: Tennessee business supports Logans Law
- Impact[15] NLP[0.19]: Juveniles injured in Pike Co. shooting
- Impact[0] NLP[0.0]: Coroner rules woman found unresponsive died of natural causes
- Impact[0] NLP[0.0]: 2 National Guard members shot in an ambush attack just blocks from the White House
- Impact[0] NLP[0.0]: FIRST ALERT FORECAST: Cold temperatures for your Turkey Day
- Impact[0] NLP[0.0]: Vice President Vance arrives in downtown Lexington; motorcade causing some traffic delays
- Impact[50] NLP[0.0]: Authorities searching for missing man
- Impact[0] NLP[0.0]: Kentucky State Police launch sale of trooper teddy bears to support children in crisis
- Impact[0] NLP[0.0]: Better Business Bureau warns shoppers of holiday scams
- Impact[50] NLP[0.0]: Authorities searching for missing man
- Impact[0] NLP[0.0]: Hazard Turkey Trot brings community together on Thanksgiving morning
- Impact[0] NLP[0.0]: FIRST ALERT FORECAST: Cold temperatures for your Turkey Day
- Impact[5] NLP[0.13]: FIRST ALERT FORECAST: Chilly temperatures start today
- Impact[25] NLP[0.1]: Hit-and-run survivor thanks community for support
- Impact[0] NLP[0.0]: Man sentenced for money laundering conspiracy involving COVID relief loans
- Impact[0] NLP[0.0]: Man charged after reportedly firing shots toward wife
- Impact[0] NLP[0.11]: Gov. Beshear announces funding to improve water service for homes in Powell Co.
- Impact[50] NLP[0.0]: Students face food insecurity, school provides resources
- Impact[0] NLP[0.0]: This Day in History - November 26, 2010
- Impact[0] NLP[0.0]: Thanksgiving grief: Coping with loss during the holidays
- Impact[0] NLP[0.0]: Thanksgiving grocery costs down 5%, but menu matters
- Impact[37] NLP[0.13]: Pike man arraigned in connection to April shooting death
- Impact[37] NLP[0.22]: Kentucky man accepts plea deal in babys death
- Impact[0] NLP[0.0]: Child pornography warrants issued for missing high school coach, authorities say
- Impact[0] NLP[0.0]: Kentucky counties struggle to find skilled plumbers and electricians
- Impact[0] NLP[0.11]: Rate hike settlement proposed in Kentucky
- Impact[0] NLP[0.0]: Thanksgiving Eve poses heightened drunk driving risks as millions travel
- Impact[0] NLP[0.0]: E. KY sheriff to meet with KHSAA officials about possible sports betting
- Impact[0] NLP[0.11]: London Fire Department urges holiday celebration safety
- Impact[0] NLP[0.0]: Holiday travelers split on transportation secretarys call to dress up for flights
- Impact[50] NLP[0.0]: Perry Co. students sponsor more than 170 peers for Angel Tree project
- Impact[0] NLP[0.0]: FIRST ALERT FORECAST: Shower Chances Continue This Evening
- Impact[0] NLP[0.09]: Berea police crack down on dangerous school pickup parking
- Impact[0] NLP[0.0]: Blue Grass Airport expects thousands of daily passengers during holiday rush
- Impact[0] NLP[0.0]: Man arrested after throwing rocks at passing vehicles
- Impact[0] NLP[0.0]: Man crashes after hitting mailboxes, charged with DUI
- Impact[0] NLP[0.0]: Lexington restaurant owner defends employee after customers personal attack in online review
- Impact[0] NLP[0.0]: Emmy-winning artist performs 50 hours straight for coat drive
- Impact[0] NLP[0.0]: Capito honors memory of U.S. Army Spc. Beckstrom
- Impact[0] NLP[0.0]: Meadowbrook Malls hands out Black Friday prizes, swag bags
- Impact[0] NLP[0.0]: GHSP asks families to speak to older drivers about safety
- Impact[0] NLP[0.0]: President considers attending Beckstrom's funeral
- Impact[0] NLP[0.0]: West Virginia Ranks 2nd in homes without internet: Study
- Impact[0] NLP[0.0]: Gov. Morrisey requests moment of silence for WVNG members
- Impact[0] NLP[0.0]: Morrisey speaks on shooting of two WVNG members
- Impact[10] NLP[0.0]: Runners in Morgantown's Turkey Trot gobble to finish line
- Impact[65] NLP[0.21]: Webster Co rallies behind WVNG member injured in shooting
- Impact[0] NLP[0.0]: Restaurant Road Trip: Smashers Sweets-N-Eats
- Impact[0] NLP[0.0]: WV "Heirloom" app launched to encourage logging off social media
- Impact[50] NLP[0.15]: Clarksburg FD provides tips on Thanksgiving safety
- Impact[50] NLP[0.0]: Salvation Army hosts Thanksgiving meal in Clarksburg
- Impact[50] NLP[0.0]: Missing Harrison County teen located
- Impact[0] NLP[0.0]: MCHD offers free services for Healthy Smiles Day
- Impact[7] NLP[0.0]: RCB marching band to perform in DC's Independence Day parade
- Impact[0] NLP[0.0]: WV State Parks announce 2025 Black Friday deals
- Impact[0] NLP[0.0]: WVNG members shot in DC in 'critical condition': FBI Director Kash Patel
- Impact[0] NLP[0.0]: Man allegedly sexually assaulted 9-year-old in 2004: WVSP
- Impact[0] NLP[0.0]: Permanent injunction issued in favor of vaccine exemptions
- Impact[90] NLP[0.5]: Truck driver in Cheat Lake fatal arrested by ICE
- Impact[0] NLP[0.0]: Authorities identify WVNG members shot in DC
- Impact[0] NLP[0.0]: WVNG's U.S. Army Spc. Sarah Beckstrom passes away
- Impact[0] NLP[0.0]: Hundreds eat Thanksgiving meals at WV state parks
- Impact[0] NLP[0.0]: Annual Gobble Gallop sees highest attendance yet
- Impact[65] NLP[0.33]: Person facing charges in Kanawha County side-by-side crash
- Impact[50] NLP[0.0]: Kanawha Charleston Humane Association hosts 10th annual Furry Feast
- Impact[0] NLP[0.0]: DC shooting suspect worked for CIA in Afghanistan; drove across country before attack
- Impact[0] NLP[0.0]: Judge rules West Virginia parents can cite religious beliefs for vaccine exemptions
- Impact[50] NLP[0.0]: Huntington City Mission prepares for Thanksgiving
- Impact[0] NLP[0.0]: Volunteers continue Frank Veltris mission of giving this Thanksgiving
- Impact[15] NLP[0.0]: West Virginia Turnpike Authority expecting 740,000 drivers through holiday weekend
- Impact[50] NLP[0.0]: Charleston police misconduct allegations cleared
- Impact[0] NLP[0.0]: Earl Wilson Community Thanksgiving passes out hundreds of Thanksgiving meals for kids
- Impact[0] NLP[0.0]: Ohio State likely to end eight majors, over 350 courses in Senate Bill 1 compliance
- Impact[0] NLP[0.29]: Major weather changes across Thanksgiving and next week
- Impact[50] NLP[0.0]: Rats and Rams face off in Dunbars 77th Commode Bowl
- Impact[0] NLP[0.0]: Morrisey speaks on shooting of two WVNG members
- Impact[37] NLP[0.22]: Childrens pajamas sold on Amazon recalled for risk of death from burn hazard
- Impact[65] NLP[0.18]: Webster County rallies behind West Virginia National Guard member injured in shooting
- Impact[0] NLP[0.0]: What we do and dont know about the National Guard members shot in DC
- Impact[50] NLP[0.0]: Two West Virginia National Guard members hospitalized after shooting in Washington, D.C.
- Impact[50] NLP[0.0]: Webster Co gathers for second vigil honoring Beckstrom
- Impact[50] NLP[0.0]: Youth USA Boxing Team 412 visits Clarksburg
- Impact[60] NLP[0.33]: Home heavily damaged after overnight fire in Clarksburg
- Impact[0] NLP[0.0]: Ohio Senate passes Averys Law to crack down on dangerous dogs and their owners
- Impact[22] NLP[0.29]: Snow alerts across USA: slow travel ahead
- Impact[80] NLP[0.75]: One person dead, two injured in Gallia County 4-vehicle crash
- Impact[0] NLP[0.0]: A peacekeeper: Senator Shelley Moore Capito honors memory of fallen U.S. Army Specialist Sarah Beckstrom
- Impact[37] NLP[0.0]: Fallen Soldier Procession motorcade escorts body of WVNG member Spc. Sarah Beckstrom shot, killed in DC
- Impact[0] NLP[0.0]: Ohio man sentenced for posing as teenage boy to coerce young girls into self-harm, sexual activity
- Impact[87] NLP[0.0]: Webster Springs community mourns West Virginia National Guard member killed in attack
- Impact[0] NLP[0.0]: Suspect in shooting of West Virginia National Guard members now facing a first-degree murder charge after Spc. Beckstrom dies
- Impact[0] NLP[0.0]: President considers attending U.S. Army Spc. Beckstroms funeral
- Impact[0] NLP[0.0]: Trump vows to permanently pause migration from Third World Countries after DC shooting
- Impact[0] NLP[0.0]: West Virginia National Guards U.S. Army Spc. Sarah Beckstrom passes away
- Impact[50] NLP[0.0]: Annual Model Railroad Show returns to Huntington
- Impact[7] NLP[0.0]: Raceland advances to state championship game with win over Pikeville
- Impact[50] NLP[0.0]: Holly Jolly Brawley offers opportunities for small businesses in Kanawha County
- Impact[50] NLP[0.0]: Kanawha Charleston Humane Association hosts annual Black Friday adoption event to find animals forever homes
- Impact[0] NLP[0.0]: On the Record: Remembering Spc. Sarah Beckstrom
- Impact[50] NLP[0.0]: Kanawha County Sheriff's Office seeking assistance in finding missing teenager
- Impact[50] NLP[0.0]: Charleston man charged with DUI after allegedly hitting pedestrian with vehicle
- Impact[0] NLP[0.0]: Man accused of theft, damaging property at Raleigh County cell tower, deputies say
- Impact[50] NLP[0.0]: Man faces nearly 20 charges after leading pursuit through Kanawha County in stolen vehicle
- Impact[117] NLP[0.42]: Man killed, 2 injured in 4-vehicle crash in Gallia County, Ohio
- Impact[0] NLP[0.0]: Law enforcement respond to home of U.S. Sen. Shelley Moore Capito after online comment
- Impact[50] NLP[0.0]: Gallipolis police asking for assistance in finding 3 missing Gallia County teens
- Impact[50] NLP[0.0]: One person in custody after standoff in Huntington
- Impact[50] NLP[0.0]: Kanawha County teen located after being reported missing, deputies say
- Impact[60] NLP[0.09]: Vigils planned for West Virginia National Guard member shot in D.C.
- Impact[87] NLP[0.11]: Logan murder victim remembered as devoted father, outgoing friend
- Impact[50] NLP[0.0]: State leaders react to shooting of two West Virginia National Guard members
- Impact[0] NLP[0.0]: WVSSAC announces semifinal high school football games for Nov. 28-29
- Impact[0] NLP[0.0]: West Virginia National Guard member Sarah Beckstrom dies after DC shooting, governor says
- Impact[0] NLP[0.0]: High School Football Scores: Week 15
- Impact[50] NLP[0.0]: 'There will be justice': W.Va. governor addresses state's National Guard troops in DC
- Impact[0] NLP[0.0]: What we know about the suspect in the shooting of two WVNG members in D.C.
- Impact[0] NLP[0.0]: Refugee vetting under renewed scrutiny after D.C. shooting
- Impact[50] NLP[0.0]: Police: Ohio man accused of breaking into the restaurant he worked at, stealing cash
- Impact[0] NLP[0.0]: Trump calls for migration pause after D.C. shooting, targets MN governor with slur
- Impact[50] NLP[0.0]: Deployment of WVNG under additional scrutiny following D.C. shooting
- Impact[87] NLP[0.09]: Kanawha teen's tragic death highlights the rising threat of sextortion across the country
- Impact[87] NLP[0.07]: State officials react to shooting death of W.Va. National Guard member Sarah Beckstrom
- Impact[35] NLP[0.0]: MSHA releases preliminary report on deadly mine accident in Nicholas County
- Impact[0] NLP[0.0]: Hundreds of churches across eastern Ky. join forces to fix 12,000 Thanksgiving meals
- Impact[50] NLP[0.0]: Child psychiatric treatment facility in Barboursville to close in early 2026
- Impact[75] NLP[0.1]: Man accused of Logan stabbing denied bond after charge upgraded to murder
- Impact[50] NLP[0.0]: Charleston police chief defends officers against misconduct allegations in council letter
- Impact[50] NLP[0.0]: Webster Springs holds vigil for local National Guard members shot in Washington, D.C.
- Impact[50] NLP[0.0]: Barboursville School to close in February, widens mental health placement gaps in W.Va.
- Impact[50] NLP[0.0]: D.C. National Guard shooter confirmed to have connection to Washington state
- Impact[87] NLP[0.42]: Emergency crews respond to crash involving ATV and car in Logan County
- Impact[50] NLP[0.09]: Child reportedly falls from miniature train at Light the Night in Charleston
- Impact[50] NLP[0.0]: 2 National Guard members shot near White House identified, gunman faces several charges
- Impact[50] NLP[0.0]: Charleston police officer cleared of misconduct allegations after attorneys demand probe
- Impact[10] NLP[0.0]: Black Friday planning: What stores are open, closed on Thanksgiving Day
- Impact[0] NLP[0.0]: Shooting prompts 500 more National Guard troops deployed to DC amid ongoing legal battle
- Impact[0] NLP[0.0]: Trump administration announces savings with new drug price negotiations
- Impact[50] NLP[0.0]: Kanawha County teen located after being reported missing, deputies say
- Impact[0] NLP[0.0]: Project Prevention pays addicts to get on long-term birth control or sterilized
- Impact[50] NLP[0.0]: Gallipolis police asking for assistance in finding 3 missing Gallia County teens
- Impact[87] NLP[0.11]: Logan murder victim remembered as devoted father, outgoing friend
- Impact[0] NLP[0.0]: Asteroid YR4 poses 4% chance of hitting moon in 2032, NASA explores deflection plan
- Impact[0] NLP[0.0]: Holiday of Lights Mistletoe Market sparks excitement with outdoor shopping
- Impact[0] NLP[0.0]: West Virginia governor asks for prayers after National Guard shooting
- Impact[0] NLP[0.0]: Tazewell Police Department launches inaugural Stuff-a-Cruiser toy drive
- Impact[0] NLP[0.0]: What we do and dont know about the shooting of 2 National Guard members in DC
- Impact[0] NLP[0.0]: Coaltown Tavern hosted a community Thanksgiving dinner
- Impact[0] NLP[0.0]: WVU researchers bring community-led drug prevention to 36 rural counties
- Impact[0] NLP[0.0]: Labor force participation in 2025: what Virginians and West Virginians need to know
- Impact[0] NLP[0.0]: Interview @ Noon: The Village Market Pop-Up comes to Bluefield, WV
- Impact[0] NLP[0.0]: Interview @ Noon: Cast of Cryptid to discuss filming in Mercer County, WV
- Impact[0] NLP[0.0]: Walmart recalls Ozark Trail camping stoves after reports of explosions and burn injuries
- Impact[50] NLP[0.0]: One WV National Guard member passes away after being shot in D.C. in targeted attack; Suspect charged
- Impact[0] NLP[0.0]: More than 3 dozen sickened in infant botulism outbreak tied to contaminated formula
- Impact[0] NLP[0.0]: VA Capitol Christmas Tree preparing to glow
- Impact[0] NLP[0.0]: Tis the season to beware of scammers: AAA offers tips to avoid getting scrooged online
- Impact[0] NLP[0.0]: New study: WV among top 10 states for pregnancy-related high blood pressure
- Impact[0] NLP[0.0]: Giftflation explained: budget tips for holiday shoppers
- Impact[7] NLP[0.0]: Westside cheerleaders crowned state champions; victory parade set for Dec. 1
- Impact[0] NLP[0.0]: Man arrested after larceny investigation at Harper Heights telecom site
- Impact[0] NLP[0.0]: Suspect in shooting of National Guard members faces murder charge as US halts all asylum decisions
- Impact[0] NLP[0.0]: JMU researcher shares diabetes prevention tips amid holiday season
- Impact[0] NLP[0.0]: Families urged to discuss driving safety as population of older drivers grows
- Impact[50] NLP[0.0]: November Athlete of the Month: Oak Hills Bella Holly
- Impact[22] NLP[0.27]: A few flurries this morning, with a bit more snow for the western mountains
- Impact[0] NLP[0.0]: Holiday of Lights opens for 2025-2026 season
- Impact[50] NLP[0.0]: Beckley Salvation Army celebrates first Thanksgiving in new facility
- Impact[0] NLP[0.0]: Dollys Diner provides free Thanksgiving meals to Mercer County community
- Impact[0] NLP[0.0]: Bluefield Union Mission feeds community on Thanksgiving Day
- Impact[0] NLP[0.0]: Hometown Hero: Dr. Eric Shrader
- Impact[0] NLP[0.0]: WVVAs Pigskin Prophet: Week 13
- Impact[50] NLP[0.0]: Warriors Ready to Take the Next Step
- Impact[0] NLP[0.0]: See some of your results from WVVA's '20 Days of Giving'
- Impact[0] NLP[0.4]: Chilly and windy for Thanksgiving, with colder weather tonight
- Impact[50] NLP[0.0]: Two West Virginia National Guard members shot in D.C. in targeted attack; suspect identified
- Impact[0] NLP[0.0]: Small Business Administration urges shoppers to support local businesses
- Impact[0] NLP[0.0]: Restaurant gives back to McDowell County community on Thanksgiving
- Impact[0] NLP[0.0]: AAA shares safety tips for busy holiday shopping areas
- Impact[0] NLP[0.0]: Bluefield Union Mission distributes 300 Thanksgiving food bags to community
- Impact[0] NLP[0.0]: 2 National Guard members shot in an ambush attack just blocks from the White House
- Impact[0] NLP[0.17]: Public Service Commission continues current rates for Black Diamond Power Co. during investigation
- Impact[0] NLP[0.0]: Several cheese products recalled due to listeria risk
- Impact[0] NLP[0.0]: Town of Tazewell gears up for Christmas festivities
- Impact[15] NLP[0.07]: CodeRED platform attack affects thousands of organizations nationwide
- Impact[0] NLP[0.0]: 100+ attend free tri-annual Father/Daughter Dance in Greenbrier County
- Impact[0] NLP[0.0]: Virginia Troopers asks you to make buckling up a Thanksgiving tradition
- Impact[50] NLP[0.0]: Two sought in Campbell County armed robbery
- Impact[0] NLP[0.0]: Red Cross offers steps to keep your Thanksgiving cooking safe
- Impact[50] NLP[0.0]: Lady Warriors Hungry for Another Trip to States
- Impact[9] NLP[0.18]: Boil Water advisory lifted for parts of Raleigh County
- Impact[0] NLP[0.0]: Will politics dominate your Thanksgiving? New poll shows partisan motivation ahead of midterms
- Impact[0] NLP[0.0]: Richlands man granted early release from supervised probation
- Impact[0] NLP[0.0]: Dominion customers face higher bills despite reduced rate request
- Impact[0] NLP[0.0]: Shooting into home leads to two arrests and guns seized
- Impact[65] NLP[0.1]: Chase ends with WVSP cruiser crash
- Impact[0] NLP[0.0]: Judge issues permanent injunction; West Virginia must allow religious vaccine exemptions under state law
- Impact[0] NLP[0.0]: New fee plan asks international visitors to pay fair share to make national parks beautiful again
- Impact[0] NLP[0.0]: Deputies searching for suspects after shooting in parking lot at FedEx facility
- Impact[0] NLP[0.0]: Dont let unsafe driving behaviors or theft ruin Black Friday shopping
- Impact[50] NLP[0.0]: Fill the truck today: Pineville VFD food drive at Sav A Lot, prize drawing at 5pm
- Impact[0] NLP[0.0]: WV students - Win up to $5,000 for college savings with the When I Grow Up essay contest
- Impact[37] NLP[0.1]: Richmond FBI offers $20k reward for information on Florida womans death
- Impact[50] NLP[0.0]: Waynesboro man charged with abduction, rape
- Impact[10] NLP[0.0]: Morgantown man arrested for sexually abusing 9-year-old daughter in 2004
- Impact[0] NLP[0.0]: Bristol Rhythm & Roots announces more of its 2026 lineup
- Impact[0] NLP[0.0]: KPT small businesses prep for holiday weekend shoppers
- Impact[0] NLP[0.0]: VSP: Warrants issued for missing Union football coach
- Impact[0] NLP[0.0]: Over 5,000 runners compete in 20th annual Turkey Trot
- Impact[0] NLP[0.0]: Haven of Mercy Ministries feeds 4,000 community members
- Impact[0] NLP[0.0]: Fern & Fable Collective to open Friday in Jonesborough
- Impact[50] NLP[0.0]: Feast of Sharing provides warm meal & clothes
- Impact[0] NLP[0.0]: USPS JC site moving from East Main to North Roan St.
- Impact[7] NLP[0.0]: Preparations underway for Union HS game as search continues
- Impact[0] NLP[0.0]: DC shooting suspect worked for CIA in Afghanistan: CIA
- Impact[0] NLP[0.0]: Ladies Raising Livestock Conference to be held on Feb. 21
- Impact[0] NLP[0.0]: Christmas tree farms open for the season
- Impact[0] NLP[0.0]: Kingsport store prepares for the holiday rush
- Impact[0] NLP[0.0]: Turkey Trot Thanksgiving a tradition for many families
- Impact[0] NLP[0.0]: Haven of Mercy volunteers prepare to feed thousands
- Impact[0] NLP[0.33]: Family and friends of double homicide victims speak out
- Impact[0] NLP[0.0]: Timeline: The search for fugitive coach Travis Turner
- Impact[0] NLP[0.0]: Restaurants prepare to serve on Thanksgiving
- Impact[0] NLP[0.0]: VSP: Warrants issued for missing Union football coach
- Impact[0] NLP[0.33]: Sheriff: Man found dead in Lee County
- Impact[0] NLP[0.27]: Passing clouds, windy and cold tonight
- Impact[0] NLP[0.0]: National Guard members shot near WH, in critical condition
- Impact[0] NLP[0.0]: Over 5,000 runners compete in 20th annual Turkey Trot
- Impact[0] NLP[0.0]: Fern & Fable Collective to open Friday in Jonesborough
- Impact[5] NLP[0.67]: Clouds and cold overnight, sun and clouds Saturday
- Impact[37] NLP[0.27]: Brights Zoo announces death of rare giraffe Kipekee
- Impact[0] NLP[0.0]: 1 of 2 National Guard members shot near White House dies
- Impact[0] NLP[0.0]: Jonesborough shines with Christmas tree lighting
- Impact[0] NLP[0.35]: Candle near combustible cause of fire in Bristol, Va.
- Impact[0] NLP[0.0]: Residents discuss why they shop in-person on Black Friday
- Impact[10] NLP[0.12]: Older brother recounts rescuing 10-year-old in ATV accident
- Impact[0] NLP[0.0]: Family of Travis Turner claims Turner left residence with firearm
- Impact[0] NLP[0.0]: Local couple faces raises concerns about local dealership
- Impact[0] NLP[0.0]: High School Football Scores: November 28, 2025
- Impact[0] NLP[0.0]: Manhunt continues for fugitive Southwest Virginia high school football coach
- Impact[0] NLP[0.0]: UPDATE: Man surrenders after tense standoff with Greene County deputies
- Impact[0] NLP[0.0]: Shoppers flock to The Pinnacle for Black Friday bargains, kicking off holiday season early
- Impact[0] NLP[0.0]: Bristol community mourns after double homicide on Lily Street
- Impact[0] NLP[0.0]: Missing Virginia high school coach charged with child pornography, police say
- Impact[0] NLP[0.0]: Tennessee launches winter trout stocking with over 70,000 fish at 40 local fishing spots
- Impact[0] NLP[0.0]: Spotless giraffe Kipekee passes away at Brights Zoo
- Impact[0] NLP[0.0]: Tennessee inmate who killed Chattanooga State student declines to choose execution method
- Impact[10] NLP[0.0]: Black Friday planning: What stores are open, closed on Thanksgiving Day
- Impact[0] NLP[0.0]: Lee County Sheriff's Office investigating body found in St Charles
- Impact[0] NLP[0.0]: Virginia State Police continue search for missing football coach
- Impact[0] NLP[0.0]: Bristol, Tennessee police investigating double homicide, victims identified
- Impact[0] NLP[0.0]: Ceremony to remember homeless people who died in our region
- Impact[0] NLP[0.0]: High School Basketball Scores and Highlights: November 26, 2025
- Impact[0] NLP[0.0]: We Salute You: October 2025
- Impact[0] NLP[0.0]: Downtown Johnson City bars to host Santacon
- Impact[0] NLP[0.0]: UPDATE: Virginia State Police searching for Union head football coach Travis Turner
- Impact[0] NLP[0.0]: Scooters Coffee to open new drive-thru in Bristol, Tenn. next month
- Impact[8] NLP[0.0]: Virginia State Police warn citizens of scam calls in the area
- Impact[0] NLP[0.1]: Bristol, Tenn. homicide victims' loved ones speak out
- Impact[0] NLP[0.0]: Bristol Rhythm & Roots Reunion unveils initial 25th anniversary lineup
- Impact[0] NLP[0.0]: New $80M resort opens in Pigeon Forge, a big draw for Tennessee vacationers
- Impact[0] NLP[0.0]: We Salute You: September 2025
- Impact[50] NLP[0.0]: Virginia Tech beats Colorado State to move into the winners bracket at Battle 4 Atlantis
- Impact[0] NLP[0.0]: Thanksgiving's journey: How it landed on the fourth Thursday of November
- Impact[50] NLP[0.0]: Neighbors: Man involved in Carter County standoff may have had mental issues
- Impact[0] NLP[0.0]: Tri-Cities shelters prep for Thanksgiving as concerns grow over unhoused population
- Impact[0] NLP[0.0]: Hintons Ritz Theatre to show free holiday movies leading up to Christmas
- Impact[0] NLP[0.0]: Trump: Animal who shot National Guard members will pay a very steep price
- Impact[50] NLP[0.0]: Governor Morrisey releases statement after two West Virginia National Guard members reportedly shot in Washington D.C.
- Impact[0] NLP[0.0]: 2 National Guard members shot near White House, suspect in custody
- Impact[0] NLP[0.0]: Bluefield West Virginia Police Department releases bench warrant list
- Impact[0] NLP[0.5]: Dozens dead, nearly 300 missing in Hong Kong high-rise fire
- Impact[0] NLP[0.0]: Major Cooldown Tonight as our Showers Exit, Thanksgiving Will Be a Chilly One!
- Impact[0] NLP[0.0]: Will mail come this weekend? USPS delivery changes, post office closures planned for Thanksgiving holiday
- Impact[0] NLP[0.0]: Which grocery stores are open for Thanksgiving 2025?
- Impact[15] NLP[0.33]: Dont let food poisoning crash your Thanksgiving dinner
- Impact[0] NLP[0.0]: 7 women facing contraband-related charges in Washington County, Tennessee, authorities say
- Impact[0] NLP[0.0]: 3 local football teams play Friday: a closer look
- Impact[0] NLP[0.43]: Bristol Virginia Fire Department responds to Thanksgiving house fire
- Impact[0] NLP[0.0]: Wreaths Across America coming up in December in Johnson City
- Impact[0] NLP[0.0]: Missing Virginia high school coach charged with child pornography, police say
- Impact[0] NLP[0.0]: Tennessee inmate who killed Chattanooga State student declines to choose execution method
- Impact[0] NLP[0.0]: Rye Cove advances to state semifinals, Eastside and Greeneville's seasons come to an end
- Impact[0] NLP[0.0]: Eastside and Rye Cove gear up for region championship rematch
- Impact[0] NLP[0.0]: Bristol, Tennessee police investigating double homicide, victims identified
- Impact[0] NLP[0.0]: Bristol, Virginia church serves holiday spirit with annual Thanksgiving meal for community
- Impact[0] NLP[0.0]: Coaches weigh in ahead of postseason weekend
- Impact[0] NLP[0.0]: Tennessee's 7th District race draws national spotlight as election nears
- Impact[0] NLP[0.0]: Stateline Sports Reporters Podcast: Ridgeview vs Union Preview
- Impact[0] NLP[0.0]: Spotless giraffe Kipekee passes away at Brights Zoo
- Impact[0] NLP[0.0]: Lee County Sheriff's Office investigating after body found in St. Charles
- Impact[0] NLP[0.0]: High School Basketball Scores and Highlights: November 28, 2025
- Impact[87] NLP[0.0]: Webster Springs community mourns West Virginia National Guard member killed in attack
- Impact[0] NLP[0.0]: Is giftflation blowing up your holiday budget? Heres how to fight it.
- Impact[65] NLP[0.33]: Person facing charges in Kanawha County side-by-side crash
- Impact[0] NLP[0.0]: Pretended to be 14-year-old boy and coerced young girls into self-harm, sexual activity online for years 53-year-old Ohio man sentenced
- Impact[0] NLP[0.0]: West Virginia National Guards U.S. Army Spc. Sarah Beckstrom passes away
- Impact[0] NLP[0.0]: StormTracker 59s 2025-26 Winter Season Outlook for the two-Virginias
- Impact[20] NLP[0.25]: Brutal wind chills arrive for Thanksgiving, cold temperatures to continue
- Impact[0] NLP[0.0]: Tips on keeping up with your packages this holiday season
- Impact[0] NLP[0.0]: Tips on staying ahead of travel delays this holiday season
- Impact[0] NLP[0.0]: Thanksgiving Travel projections expect busy week on highways, at airports
- Impact[0] NLP[0.0]: Lifeline Church Hinton Youth Group serves up holiday cheer and clean windshields
- Impact[50] NLP[0.0]: Beckley psychiatrist gives advice on dealing with family drama during the holidays
- Impact[48] NLP[0.5]: Preliminary report released on fatal Rolling Thunder Mine accident
- Impact[0] NLP[0.0]: How artificial intelligence is impacting modern healthcare
- Impact[0] NLP[0.0]: What a federal ban on THC-infused drinks and snacks could mean for the hemp industry
- Impact[0] NLP[0.0]: Trump says hes canceling all executive orders Biden didnt personally sign
- Impact[0] NLP[0.0]: Holiday shoppers looking for ways to stretch a dollar
- Impact[0] NLP[0.0]: Gas prices drop below $3 per gallon, lowest since 2021
- Impact[0] NLP[0.0]: President considers attending U.S. Army Spc. Beckstroms funeral
- Impact[0] NLP[0.0]: A peacekeeper: Senator Shelley Moore Capito honors memory of fallen U.S. Army Specialist Sarah Beckstrom
- Impact[0] NLP[0.0]: Walmart recalls 200K camp stoves over burn risk
- Impact[0] NLP[0.0]: Quilts of Valor honor unique stories of service
Database insertion/update complete. 293 stories were processed and inserted/updated.
Cleaning duplicate summaries from the database...
Cleaned 14 duplicate entries.
Cleaned 16 duplicate entries.
Process finished and connection closed.

View File

@@ -422,7 +422,7 @@ function format_date_with_ordinal(date) {
// Format today's date as YYYY-MM-DD to match the API response keys
const todayFormatted = `${year}-${month}-${day}`;
const url = 'https://wx.stoat.org/calendar/wikimedia_onthisday.json';
const url = 'https://calendar.wx4rlx.org/wikimedia_onthisday.json';
const cacheBustingUrl = url; //`${url}?v=${formattedDate}`;
return $.getJSON(cacheBustingUrl)

View File

@@ -1,16 +1,28 @@
<?php
// Tell the browser/client that we are sending JSON data
header('Content-Type: application/json');
// Connecting, selecting database
$dbconn = pg_connect("host=localhost dbname=nws user=nws password=nws")
or die('Could not connect: ' . pg_last_error());
$camid=$_GET['camid'];
// Check if camid is actually set to avoid warnings
if (!isset($_GET['camid'])) {
echo json_encode(array("error" => "No camid specified"));
exit;
}
$camid = $_GET['camid'];
// Performing SQL query
// Always treat hydro and airport as booleans - convert to true/false
$query = "SELECT *, COALESCE(hydro, false) as hydro, COALESCE(airport, false) as airport FROM cams WHERE camid = '{$camid}'";
$result = pg_query($query) or die('Query failed: ' . pg_last_error());
// SECURITY FIX: Changed to use $1 placeholder instead of direct variable injection
$query = "SELECT *, COALESCE(hydro, false) as hydro, COALESCE(airport, false) as airport FROM cams WHERE camid = $1";
// Printing results in HTML
// SECURITY FIX: Use pg_query_params to safely bind the $camid variable
$result = pg_query_params($dbconn, $query, array($camid))
or die('Query failed: ' . pg_last_error());
// Processing results
$array = array();
while ($line = pg_fetch_array($result, null, PGSQL_ASSOC)) {
// Ensure hydro is a proper boolean
@@ -20,9 +32,25 @@ while ($line = pg_fetch_array($result, null, PGSQL_ASSOC)) {
$array[] = $line;
}
// Debug: log the data being sent
error_log("Single.php response for camid $camid: " . json_encode($array));
// --- LOGGING SECTION START ---
// 1. Create a temporary copy for the logs
$logData = $array;
// 2. Remove the clutter fields from the copy
foreach ($logData as &$row) {
unset($row['errorcode']);
// You can also uncomment the line below if you want to hide the long 'geom' string from logs
unset($row['geom']);
}
unset($row); // Break the reference
// 3. Log the clean data
// error_log("Single.php response for camid $camid: " . json_encode($logData));
// --- LOGGING SECTION END ---
// Output the ORIGINAL full array (including errorcode) to the client
echo json_encode($array);
// Free resultset
@@ -31,4 +59,3 @@ pg_free_result($result);
// Closing connection
pg_close($dbconn);
?>

117
today.txt
View File

@@ -1,59 +1,60 @@
Date/Time of Ob (Z) Station Number Station Name New Precip New Snow Snow Depth Comments
2025-11-27 12:39 PM WV-MA-10 Rivesville 1.7 N 0.18 NA NA
2025-11-27 11:09 AM WV-KN-5 St. Albans 1.0 WNW 0.07 0.0 0.0 Showers yesterday and partly cloudy at observation this morning.
2025-11-27 11:27 AM WV-DD-2 West Union 8.2 NE 0.07 NA NA
2025-11-27 11:21 AM WV-RT-4 Harrisville 3.9 NNE 0.08 0.0 0.0
2025-11-27 11:24 AM WV-HN-9 New Cumberland 2.7 NNE 0.06 T NA
2025-11-27 11:27 AM WV-MA-14 Fairmont 0.8 SSW 0.11 NA NA Cloudy and 30.
2025-11-27 11:57 AM WV-MH-5 Moundsville 3.6 SSW 0.05 T NA
2025-11-27 11:59 AM WV-KN-55 Charleston 4.0 SSE 0.07 NA NA
2025-11-27 12:01 PM WV-PC-4 Cass 3.7 SW 0.00 0.0 NA Partly cloudy with colder temperatures.
2025-11-27 12:02 PM WV-MG-7 Morgantown 6.4 WSW 0.12 NA NA
2025-11-27 12:04 PM WV-BY-16 Bunker Hill 1.5 SW 0.03 0.0 0.0
2025-11-27 12:10 PM WV-MG-16 Morgantown 5.9 SW 0.15 T 0.0 Showers turned to snow flurries after dark yesterday.
2025-11-27 12:15 PM WV-OH-6 Valley Grove 3.5 NNE 0.06 T NA Temp fell all day yesterday. Dusting of snow. Currently 31.3F. High 50.8 T 7:07 AM (26th); low 31.3 at 6:15 am (27th); bar 30.03 r
2025-11-27 12:23 PM WV-PR-11 Thomas 7.4 N 0.11 0.0 0.0 High 52.6 Low 26.9 Wind gust 21.4
2025-11-27 12:24 PM WV-PR-20 Bruceton Mills 2.8 S 0.26 0.0 0.0
2025-11-27 12:44 PM WV-NC-3 Runa 0.1 W T 0.0 NA
2025-11-27 12:45 PM WV-KN-53 South Charleston 0.3 SSW 0.05 0.0 0.0 Maximum temperature: 59.0F minimum temperature: 33.0F
2025-11-27 12:49 PM WV-NC-4 Craigsville 0.6 NE 0.12 T 0.0 Temperature 28F degrees. Cloudy
2025-11-27 12:51 PM WV-JC-3 Ripley 5.8 S 0.10 NA NA
2025-11-27 12:52 PM WV-RT-2 Pennsboro 1.2 ESE 0.06 NA NA
2025-11-27 12:55 PM WV-HS-11 Lost Creek 1.3 NW 0.03 T NA Cloudy 32°F measured a trace of snow because of a few flurries last night
2025-11-27 12:59 PM WV-KN-1 Alum Creek 3.0 E 0.09 0.0 0.0
2025-11-27 01:18 PM WV-KN-33 Charleston 2.6 W 0.03 0.0 0.0
2025-11-27 01:28 PM WV-PT-10 Hurricane 1.6 SSW 0.01 0.0 0.0 A few high clouds 33F at ob. A few showers yesterday morning.
2025-11-27 01:51 PM WV-GL-4 Glenville 5.9 W 0.17 NA NA
2025-11-27 02:23 PM WV-RL-16 Mount Hope 3.6 WSW 0.02 NA NA
2025-11-27 02:25 PM WV-DD-1 Center Point 2.2 NNW 0.06 T 0.0
2025-11-27 02:33 PM WV-CY-3 Clay 0.2 WSW T NA NA
2025-11-27 02:44 PM WV-HM-2 Slanesville 2.1 SE 0.02 NA NA
2025-11-27 03:18 PM WV-WD-7 Williamstown 0.4 WNW 0.03 T NA
2025-11-27 03:45 PM WV-RL-15 Beckley 0.7 SE T NA NA
2025-11-27 04:52 PM WV-PC-7 Green Bank 1.2 ESE 0.00 0.0 NA
2025-11-27 05:44 PM WV-MC-11 Princeton 0.3 NNW 0.01 NA NA
2025-11-27 12:10 PM WV-MR-3 Union 2.4 SSE 0.00 0.0 NA
2025-11-27 12:49 PM WV-JF-15 Harpers Ferry 12.8 SSW 0.01 0.0 NA Brief shower from 2:40 - 2:45 PM.
2025-11-27 12:55 PM WV-LN-3 Branchland 5.6 ESE 0.00 0.0 NA
2025-11-27 12:51 PM WV-BY-13 Martinsburg 2.9 SE 0.03 NA NA
2025-11-27 12:52 PM WV-CB-17 Huntington 1.7 ESE 0.00 0.0 0.0
2025-11-27 12:57 PM WV-WN-5 Fort Gay 3.3 ENE 0.00 0.0 NA
2025-11-27 01:01 PM WV-GL-3 Auburn 4.0 E 0.09 NA NA
2025-11-27 01:02 PM WV-HN-10 Chester 3.0 SSE 0.09 NA NA
2025-11-27 03:07 PM WV-KN-50 Charleston 5.9 SE 0.04 0.0 NA
2025-11-27 02:01 PM WV-WT-1 New Martinsville 6.5 E 0.04 0.0 0.0 Prior Day: Temperatures max 55°, min 34°. Sunshine 1.3 kWh/m2/Day. Humidity 34%. Wind,9, gust 37, SW.
Cloudy, hazy to cloudy. Cloudy, 30° this morning. Weather station reads 0.07 inches.
2025-11-27 01:24 PM WV-PR-14 Bruceton Mills 9.3 SE 0.23 NA NA
2025-11-27 01:42 PM WV-DD-4 Auburn 8.3 ENE 0.07 NA NA
2025-11-27 02:07 PM WV-PT-14 Buffalo 0.7 NE 0.00 0.0 0.0 32F at ob
2025-11-27 02:22 PM WV-PT-16 Fraziers Bottom 4.2 SSW 0.00 0.0 NA
2025-11-27 04:02 PM WV-GB-8 Rupert 0.3 ENE 0.00 0.0 NA
2025-11-27 12:00 PM OH-AT-1 Athens 1.3 N 0.02 NA NA
2025-11-27 12:12 PM OH-MS-7 Albany 3.0 SSE 0.08 0.0 0.0 ~90% overcast, W 1.8 mph, 31°F, 1036.1 mb, rh 48%, dp 13°F
2025-11-27 12:40 PM OH-AT-9 Glouster 3.6 SW 0.06 NA NA
2025-11-27 01:11 PM OH-AT-21 Athens 4.6 ESE 0.08 NA NA
2025-11-27 02:05 PM OH-JC-6 Wellston 0.7 NNE T NA NA
2025-11-27 02:19 PM OH-AT-16 Athens 2.3 SSE 0.05 NA NA
2025-11-27 04:59 PM OH-MG-3 Glouster 5.7 NE 0.05 T NA
2025-11-27 05:19 PM OH-AT-3 Stewart 4.6 NNE 0.04 NA NA
2025-11-27 01:12 PM KY-CT-4 Grayson 4.8 NNE T 0.0 0.0 8:00 OBS: partly cloudy, wind W 1 to 5 mph, temp 33F, wind chill 30F, dewpt 22F, RH 65%, bar 30.19” & rising (+ 0.01” last 3 hrs)
2025-11-28 10:36 AM WV-NC-3 Runa 0.1 W T T T Flurries at dark. With skiff on ground this am . 25 degrees.
2025-11-28 10:51 AM WV-LN-3 Branchland 5.6 ESE T NA NA flurries
2025-11-28 02:12 PM WV-MA-10 Rivesville 1.7 N NA NA NA
2025-11-28 11:21 AM WV-LW-6 Weston 5.1 NW T T NA
2025-11-28 11:42 AM WV-DD-2 West Union 8.2 NE T NA NA Snow
2025-11-28 11:36 AM WV-MA-14 Fairmont 0.8 SSW 0.01 0.2 NA Cloudy and 25. Roads are sheets of ice.
2025-11-28 11:38 AM WV-HN-9 New Cumberland 2.7 NNE 0.02 0.2 0.0
2025-11-28 11:57 AM WV-PR-20 Bruceton Mills 2.8 S T 0.3 T
2025-11-28 12:01 PM WV-PT-10 Hurricane 1.6 SSW T T 0.0 Mostly cloudy 30F at ob. A few flurries late yesterday afternoon and again over the past hour.
2025-11-28 12:01 PM WV-KN-43 South Charleston 1.6 ENE T NA NA
2025-11-28 12:07 PM WV-PC-4 Cass 3.7 SW 0.01 0.0 NA Partly cloudy and breezy and cold with a skiff of snow.
2025-11-28 12:08 PM WV-MG-16 Morgantown 5.9 SW 0.02 0.8 0.5 On/off snow showers during period. There was a light daytime dusting of snow. Snow accumulated overnight.
2025-11-28 12:08 PM WV-BY-16 Bunker Hill 1.5 SW 0.00 0.0 0.0
2025-11-28 12:09 PM WV-KN-55 Charleston 4.0 SSE 0.00 0.0 NA
2025-11-28 12:10 PM WV-OH-6 Valley Grove 3.5 NNE 0.00 0.0 NA Currently 27.7F. High 33.8 at 10:08 am; low 27.5 at 1 am; bar 30.09 r
2025-11-28 12:21 PM WV-RT-4 Harrisville 3.9 NNE 0.00 0.0 0.0
2025-11-28 12:29 PM WV-RT-2 Pennsboro 1.2 ESE 0.00 0.0 NA
2025-11-28 12:34 PM WV-HS-11 Lost Creek 1.3 NW T T NA Cloudy 29°F flurries and light snow showers off and on all day yesterday but nothing in the tube to actually measure
2025-11-28 12:41 PM WV-RL-16 Mount Hope 3.6 WSW 0.00 0.0 NA
2025-11-28 12:43 PM WV-JC-3 Ripley 5.8 S T T NA
2025-11-28 12:45 PM WV-KN-53 South Charleston 0.3 SSW T 0.0 0.0 Maximum temperature: 39.0F minimum temperature: 30.0F
2025-11-28 12:52 PM WV-KN-33 Charleston 2.6 W T 0.0 0.0
2025-11-28 01:01 PM WV-PR-11 Thomas 7.4 N 0.04 0.5 0.5 High 26.9 Low 20.1 Wind gust 17.5
2025-11-28 01:10 PM WV-NC-4 Craigsville 0.6 NE 0.01 T T Temperature 23F degrees Snow Flurries
2025-11-28 01:30 PM WV-HY-2 Rig 0.4 NW T T T
2025-11-28 01:52 PM WV-GL-4 Glenville 5.9 W 0.00 0.0 NA
2025-11-28 01:53 PM WV-WD-7 Williamstown 0.4 WNW T T T
2025-11-28 01:57 PM WV-MC-11 Princeton 0.3 NNW 0.00 0.0 NA
2025-11-28 01:57 PM WV-DD-1 Center Point 2.2 NNW T T T
2025-11-28 01:59 PM WV-HM-2 Slanesville 2.1 SE T NA NA
2025-11-28 02:12 PM WV-BN-4 Danville 1.8 WSW 0.00 0.0 NA
2025-11-28 05:43 PM WV-CY-3 Clay 0.2 WSW 0.00 0.0 NA
2025-11-28 12:30 PM WV-JF-15 Harpers Ferry 12.8 SSW T T NA Almost imperceptible light flurries around 10:30 PM. Wouldn't be sure except multiple people independently noted the flakes in the air.
2025-11-28 12:51 PM WV-MR-3 Union 2.4 SSE 0.00 0.0 NA
2025-11-28 12:33 PM WV-KN-50 Charleston 5.9 SE 0.00 0.0 NA
2025-11-28 12:41 PM WV-BY-13 Martinsburg 2.9 SE 0.00 0.0 NA
2025-11-28 01:04 PM WV-PR-14 Bruceton Mills 9.3 SE T 0.5 0.5
2025-11-28 02:22 PM WV-WT-1 New Martinsville 6.5 E T T T Prior Day: Temperatures max 35°, min 27°. Sunshine 0.5 kWh/m2/Day. Humidity 73%. Wind,9, gust 40, SW.
Cloudy yesterday. A few snowflakes, 27° this morning.
2025-11-28 01:14 PM WV-CB-17 Huntington 1.7 ESE 0.00 0.0 0.0
2025-11-28 01:19 PM WV-WN-5 Fort Gay 3.3 ENE 0.00 0.0 NA
2025-11-28 01:28 PM WV-DD-4 Auburn 8.3 ENE 0.00 0.0 NA
2025-11-28 02:44 PM WV-GL-3 Auburn 4.0 E T NA NA
2025-11-28 03:24 PM WV-WD-22 Walker 6.4 NE 0.00 0.0 NA Standing water had ice over and snow flakes falling but no signs that it will accumulate.
2025-11-28 03:52 PM WV-CB-23 Huntington 3.4 ESE 0.00 0.0 NA
2025-11-28 05:38 PM WV-PT-14 Buffalo 0.7 NE 0.00 0.0 0.0 29F at ob
2025-11-28 01:22 PM WV-HN-10 Chester 3.0 SSE 0.01 NA NA Melted snow
2025-11-28 01:52 PM WV-KN-5 St. Albans 1.0 WNW 0.00 0.0 0.0 Clearing skies this morning.
2025-11-28 04:03 PM WV-KN-1 Alum Creek 3.0 E T T 0.0
2025-11-28 12:04 PM OH-MS-7 Albany 3.0 SSE 0.00 0.0 0.0 ~90% overcast, wsw 1.6mph, 27°F, 1040.5 mb, rh 55%, dp 13°F
2025-11-28 12:12 PM OH-AT-21 Athens 4.6 ESE 0.00 0.0 NA
2025-11-28 12:44 PM OH-AT-9 Glouster 3.6 SW T NA NA
2025-11-28 12:59 PM OH-WS-16 Coolville 5.3 N 0.00 0.0 NA
2025-11-28 01:21 PM OH-AT-6 Albany 4.1 NW 0.00 0.0 NA
2025-11-28 01:57 PM OH-AT-1 Athens 1.3 N 0.00 0.0 NA
2025-11-28 03:33 PM OH-MG-3 Glouster 5.7 NE T T NA
2025-11-28 04:59 PM OH-AT-3 Stewart 4.6 NNE 0.00 0.0 NA
2025-11-28 05:15 PM OH-WS-14 Marietta 3.5 NNW 0.00 0.0 NA
2025-11-28 01:00 PM KY-CT-4 Grayson 4.8 NNE 0.00 0.0 0.0 8:00 OBS: partly cloudy, wind WNW 0-3 mph, temp 29F, dewpt 22F, RH 74%, bar 30.31” & rising (+0.04” last 3 hrs)