diff --git a/weather/routes/index.js b/weather/routes/index.js
index d53923daa..a3cbcc4c6 100644
--- a/weather/routes/index.js
+++ b/weather/routes/index.js
@@ -3,6 +3,7 @@ const router = express.Router();
const fetch = require("node-fetch");
require('dotenv').config();
const OWM_API_KEY = process.env.OWM_API_KEY || 'invalid_key';
+const UNITS = process.env.UNITS || 'metric';
/* GET home page. */
router.get('/', function(req, res) {
@@ -11,7 +12,7 @@ router.get('/', function(req, res) {
router.post('/get_weather', async function (req,res) {
let city = req.body.city;
- let url = `http://api.openweathermap.org/data/2.5/weather?q=${city}&units=metric&appid=${OWM_API_KEY}`;
+ let url = `http://api.openweathermap.org/data/2.5/weather?q=${city}&units=${UNITS}&appid=${OWM_API_KEY}`;
try {
let data = await fetch(url);
@@ -24,7 +25,8 @@ router.post('/get_weather', async function (req,res) {
res.render('index', {weather: null, error: 'Error: Invalid API Key. Please see http://openweathermap.org/faq#error401 for more info.'});
}
else {
- res.render('index', {weather: weather, error: null});
+ let unit_hex = (UNITS == 'imperial') ? '℉' : '℃';
+ res.render('index', {weather: weather, error: null, units: unit_hex});
}
}
catch (err) {
diff --git a/weather/views/index.pug b/weather/views/index.pug
index 32cb7cee0..6ed604a1d 100644
--- a/weather/views/index.pug
+++ b/weather/views/index.pug
@@ -24,7 +24,7 @@ block content
.panel.panel-primary
.panel-heading Weather for: #{weather.name}, #{weather.sys.country}
.panel-body
- p Current Temperature => #{weather.main.temp} ℃, #{weather.weather[0].description}
- p Humidity => #{weather.main.humidity} %
- p Min => #{weather.main.temp_min} ℃
- p Max => #{weather.main.temp_max} ℃
\ No newline at end of file
+ p Current Temperature = #{weather.main.temp} !{units}, #{weather.weather[0].description}
+ p Humidity = #{weather.main.humidity} %
+ p Min = #{weather.main.temp_min} !{units}
+ p Max = #{weather.main.temp_max} !{units}
\ No newline at end of file