Untitled
6 months ago in Plain Text
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Weather Widget</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<style>
body {
font-family: 'Trebuchet MS', 'Lucida Sans Unicode', 'Lucida Grande', 'Lucida Sans', Arial, sans-serif;
text-align: center;
}
#weather {
margin: 20px;
padding: 20px;
border: 1px solid #333;
display: inline-block;
background-color: rgb(197, 197, 197);
}
#longboard-image-container {
margin: 20px;
padding: 1px;
background-color: #fff;
margin: auto;
}
table, th, td {
border: 1px solid black;
border-collapse: collapse;
margin: auto;
background-color: #fff;
}
</style>
</head>
<body>
<h1>Want to Longboard?</h1>
<div id="weather">
<p>Loading weather...</p>
</div>
<script>
$(document).ready(function(){
const apiKey = 'b2b74200b3004ce29bd15443242704';
const city = 'Charlottesville';
const url = 'http://api.weatherapi.com/v1/forecast.json?key=' + apiKey + '&q=' + city + '&days=1&aqi=no&alerts=no';
$.getJSON(url, function(data) {
const time = data.current.last_updated;
const temp = data.current.temp_f;
const weather = data.current.condition.text;
const icon = data.current.condition.icon;
const past_precip = data.current.precip_in;
const eight_precip = data.forecast.forecastday[0].hour[8].chance_of_rain;
const eight_icon = data.forecast.forecastday[0].hour[8].condition.icon;
const eight_temp = data.forecast.forecastday[0].hour[8].temp_f;
const nine_precip = data.forecast.forecastday[0].hour[9].chance_of_rain;
const nine_icon = data.forecast.forecastday[0].hour[9].condition.icon;
const nine_temp = data.forecast.forecastday[0].hour[9].temp_f;
const four_precip = data.forecast.forecastday[0].hour[16].chance_of_rain;
const four_icon = data.forecast.forecastday[0].hour[16].condition.icon;
const four_temp = data.forecast.forecastday[0].hour[16].temp_f;
const five_precip = data.forecast.forecastday[0].hour[17].chance_of_rain;
const five_icon = data.forecast.forecastday[0].hour[17].condition.icon;
const five_temp = data.forecast.forecastday[0].hour[17].temp_f;
const six_precip = data.forecast.forecastday[0].hour[18].chance_of_rain;
const six_icon = data.forecast.forecastday[0].hour[18].condition.icon;
const six_temp = data.forecast.forecastday[0].hour[18].temp_f;
$('#weather').html(`
<h3>Current Weather</h3>
<p>Time: ${time}</p>
<p>${temp}°F - ${weather}</p>
<p>Rain on ground: ${past_precip} inches</p>
<p><img src="${icon}"></p>
<table>
<tr>
<th>Time</th>
<th>Temperature</th>
<th>Precipitation Chance</th>
<th>Condition</th>
</tr>
<tr>
<td>8am</td>
<td>${eight_temp}°F</td>
<td>${eight_precip}%</td>
<td><img src="${eight_icon}"></td>
</tr>
<tr>
<td>9am</td>
<td>${nine_temp}°F</td>
<td>${nine_precip}%</td>
<td><img src="${nine_icon}"></td>
</tr>
<tr>
<td>4pm</td>
<td>${four_temp}°F</td>
<td>${four_precip}%</td>
<td><img src="${four_icon}"></td>
</tr>
<tr>
<td>5pm</td>
<td>${five_temp}°F</td>
<td>${five_precip}%</td>
<td><img src="${five_icon}"></td>
</tr>
<tr>
<td>6pm</td>
<td>${six_temp}°F</td>
<td>${six_precip}%</td>
<td><img src="${six_icon}"></td>
</tr>
`);
});
});
</script>
</body>
</html>