diff --git a/openweathermap.org/WeatherWidgetContents b/openweathermap.org/WeatherWidgetContents new file mode 100644 index 0000000000000000000000000000000000000000..ce717da16daf10e6b7960c2d350477baff3708d7 --- /dev/null +++ b/openweathermap.org/WeatherWidgetContents @@ -0,0 +1,46 @@ +var Contacts_Component_WeatherWidgetContents = VTAP.Component.Core.extend({ + data() { + weather_data : '' + }, + created() { + VTAP.Detail.Record().then( (record) => { + //fetch weather details from openweathermap + VTAP.CustomApi.Get('get_weather', {'city' : record.mailingcity}, + (error, response) => { + if(response && response.content) { + this.weather_data = JSON.parse(response.content); + } + }); + }); + }, + methods : { + getDisplayTime(timestamp) { + let d = new Date(timestamp * 1000).toISOString().slice(0, 19).replace('T', ' ').split(' '); + return d[1]; + }, + getDisplayTemperature(temp) { + return Math.round(temp - 273.15); + } + }, + template : + `
Properties | Value |
---|---|
Current Time | {{getDisplayTime(weather_data.dt+weather_data.timezone)}} |
Sunrise Time | {{getDisplayTime(weather_data.sys.sunrise+weather_data.timezone)}} |
Sunset Time | {{getDisplayTime(weather_data.sys.sunset+weather_data.timezone)}} |
Max Temp | {{getDisplayTemperature(weather_data.main.temp_min)}} C |
Min Temp | {{getDisplayTemperature(weather_data.main.temp_max)}} C |
Weather description | {{weather_data.weather[0].description}} |