mirror of
https://gitlab.silvrtree.co.uk/martind2000/censis-archive.git
synced 2025-01-27 12:06:17 +00:00
”2016-09-16”
This commit is contained in:
parent
8b205091db
commit
5305418f5e
1838
mdot/mDotServer.censis/mDotServer.censis/app/css/weather-icons.css
Normal file
1838
mdot/mDotServer.censis/mDotServer.censis/app/css/weather-icons.css
Normal file
File diff suppressed because it is too large
Load Diff
125
mdot/mDotServer.censis/mDotServer.censis/app/js/clock.js
Normal file
125
mdot/mDotServer.censis/mDotServer.censis/app/js/clock.js
Normal file
@ -0,0 +1,125 @@
|
|||||||
|
'use strict';
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* User: Martin Donnelly
|
||||||
|
* Date: 2016-07-27
|
||||||
|
* Time: 09:23
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
var WeatherModel = Backbone.Model.extend({
|
||||||
|
initialize: function() {
|
||||||
|
this.set('url','https://api.forecast.io/forecast/342205f1e6b0281ee3ec89a4eff8a568/' + this.get('lat').toString() + ',' + this.get('long').toString() + '?units=uk2&exclude=minutely,hourly,daily,alerts,flags');
|
||||||
|
|
||||||
|
console.log(this.get('url'));
|
||||||
|
this.update();
|
||||||
|
},
|
||||||
|
update: function() {
|
||||||
|
this.getWeather();
|
||||||
|
var now = new Date;
|
||||||
|
var mod = 1800000 - (now.getTime() % 1800000);
|
||||||
|
var weatherTrigger = function() {
|
||||||
|
this.update();
|
||||||
|
};
|
||||||
|
|
||||||
|
setTimeout(weatherTrigger.bind(this), mod + 10);
|
||||||
|
},
|
||||||
|
getWeather: function() {
|
||||||
|
var self = this;
|
||||||
|
$.ajax({
|
||||||
|
type: 'GET',
|
||||||
|
url: self.get('url'),
|
||||||
|
data: '',
|
||||||
|
dataType: 'jsonp',
|
||||||
|
timeout: 30000,
|
||||||
|
context: $('body'),
|
||||||
|
contentType: ('application/json'),
|
||||||
|
headers: {
|
||||||
|
'Access-Control-Allow-Origin': '*',
|
||||||
|
'Access-Control-Allow-Methods': 'PUT, GET, POST, DELETE, OPTIONS',
|
||||||
|
'Access-Control-Allow-Headers': 'Content-Type'
|
||||||
|
},
|
||||||
|
success: function(data) {
|
||||||
|
var stored = {
|
||||||
|
temperature: data.currently.temperature,
|
||||||
|
icon: data.currently.icon
|
||||||
|
};
|
||||||
|
self.set('data',stored);
|
||||||
|
},
|
||||||
|
error: function(xhr, type) {
|
||||||
|
console.error('ajax error');
|
||||||
|
console.error(xhr);
|
||||||
|
console.error(type);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
var ClockModel = Backbone.Model.extend({
|
||||||
|
initialize: function() {
|
||||||
|
this.set('now',new Date);
|
||||||
|
this.update();
|
||||||
|
},
|
||||||
|
update: function() {
|
||||||
|
var now = new Date;
|
||||||
|
var mod = 60000 - (now.getTime() % 60000);
|
||||||
|
this.set('now',now);
|
||||||
|
|
||||||
|
var clockFn = function() {
|
||||||
|
this.update();
|
||||||
|
};
|
||||||
|
|
||||||
|
setTimeout(clockFn.bind(this), mod + 10);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
var Clock = Backbone.View.extend({
|
||||||
|
tagName: 'div',
|
||||||
|
initialize: function() {
|
||||||
|
_.bindAll(this, 'render');
|
||||||
|
this.model.bind('change', this.render);
|
||||||
|
this.$date = $('#date');
|
||||||
|
this.$time = $('#time');
|
||||||
|
this.render();
|
||||||
|
},
|
||||||
|
render: function() {
|
||||||
|
var now = this.model.get('now');
|
||||||
|
var curTime = now.format('<span class="hour">{24hr}</span>{mm}');
|
||||||
|
var curDate = now.format('{yyyy}-{MM}-{dd}');
|
||||||
|
if (this.prevTime !== curTime) {
|
||||||
|
this.$time.html(curTime);
|
||||||
|
this.prevTime = curTime;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (this.prevDate !== curDate) {
|
||||||
|
this.$date.html(now.format(
|
||||||
|
//'<span class="wd-{do}">{Weekday}</span><br><span class="mo mo-{M}">{Month} {dd}</span><br>{yyyy}'));
|
||||||
|
'<span class="wd-{do}">{Weekday}</span><br><span class="mo mo-{M}">{Month} {dd}</span>'));
|
||||||
|
this.prevDate = curDate;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
var Weather = Backbone.View.extend({
|
||||||
|
tagName: 'div',
|
||||||
|
initialize: function() {
|
||||||
|
_.bindAll(this, 'render');
|
||||||
|
this.model.bind('change', this.render);
|
||||||
|
this.$weatherText = $('#weatherText');
|
||||||
|
this.$weatherIcon = $('#weatherIcon');
|
||||||
|
},
|
||||||
|
render: function() {
|
||||||
|
console.log('Weather:Render');
|
||||||
|
|
||||||
|
var data = this.model.get('data');
|
||||||
|
let newElm = $('<i></i>').addClass('wi mui--align-middle');
|
||||||
|
newElm.addClass('wi-forecast-io-'.concat(data.icon));
|
||||||
|
console.log(parseInt(data.temperature) + '°c');
|
||||||
|
this.$weatherText.html(parseInt(data.temperature) + '°c');
|
||||||
|
console.log ('Weather icon should be ', data.icon);
|
||||||
|
this.$weatherIcon.empty().html(newElm);
|
||||||
|
// skycons.remove('icon1');
|
||||||
|
// skycons.add('icon1', data.icon);
|
||||||
|
}
|
||||||
|
|
||||||
|
});
|
@ -116,6 +116,37 @@
|
|||||||
var skipOccupancy = false;
|
var skipOccupancy = false;
|
||||||
console.time('processAdd');
|
console.time('processAdd');
|
||||||
var tempCollection = new Backbone.Collection();
|
var tempCollection = new Backbone.Collection();
|
||||||
|
var minmaxes = {
|
||||||
|
'1':{low:578,high:656, mp:617},
|
||||||
|
'2':{low:657,high:709, mp:695},
|
||||||
|
'3':{low:710,high:737, mp:723},
|
||||||
|
'4':{low:738,high:778, mp:752},
|
||||||
|
'5':{low:779,high:824, mp:804},
|
||||||
|
'6':{low:825,high:860, mp:844},
|
||||||
|
'7':{low:861,high:892, mp:876},
|
||||||
|
'8':{low:0,high:0, mp:0},
|
||||||
|
'9':{low:0,high:0, mp:0},
|
||||||
|
'10':{low:0,high:0, mp:0},
|
||||||
|
'11':{low:0,high:0, mp:0},
|
||||||
|
'12':{low:0,high:0, mp:0},
|
||||||
|
'13':{low:0,high:0, mp:0},
|
||||||
|
'14':{low:0,high:0, mp:0},
|
||||||
|
'15':{low:0,high:0, mp:0},
|
||||||
|
'16':{low:0,high:0, mp:0},
|
||||||
|
'17':{low:0,high:0, mp:0},
|
||||||
|
'18':{low:0,high:0, mp:0},
|
||||||
|
'19':{low:0,high:0, mp:0},
|
||||||
|
};
|
||||||
|
|
||||||
|
var minmaxesA = [
|
||||||
|
{low:578,high:656, mp:617, count:1},
|
||||||
|
{low:657,high:709, mp:695, count:2},
|
||||||
|
{low:710,high:737, mp:723, count:3},
|
||||||
|
{low:738,high:778, mp:752, count:4},
|
||||||
|
{low:779,high:824, mp:804, count:5},
|
||||||
|
{low:825,high:860, mp:844, count:6},
|
||||||
|
{low:861,high:892, mp:876, count:7}
|
||||||
|
];
|
||||||
|
|
||||||
var events;
|
var events;
|
||||||
|
|
||||||
@ -134,6 +165,13 @@
|
|||||||
|
|
||||||
if (!skipOccupancy) {
|
if (!skipOccupancy) {
|
||||||
_occupancy = this.findOccupancy(i.timestamp, events.occupancy);
|
_occupancy = this.findOccupancy(i.timestamp, events.occupancy);
|
||||||
|
} else {
|
||||||
|
for(let _of=0;_of < 7;_of++)
|
||||||
|
{
|
||||||
|
if ((i.co2 >= minmaxesA[_of].low) && (i.co2 <= minmaxesA[_of].high)) {
|
||||||
|
_occupancy = minmaxesA[_of].count;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
tempCollection.add({
|
tempCollection.add({
|
||||||
@ -145,14 +183,34 @@
|
|||||||
noise: i.sound,
|
noise: i.sound,
|
||||||
occupancy: _occupancy
|
occupancy: _occupancy
|
||||||
});
|
});
|
||||||
}, this);
|
|
||||||
|
|
||||||
|
if (_occupancy !== 0) {
|
||||||
|
let mm = minmaxes[_occupancy.toString()];
|
||||||
|
if (mm.low === 0 && mm.high === 0) {
|
||||||
|
mm.low = i.co2;
|
||||||
|
mm.high = i.co2;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (mm.low > i.co2) {
|
||||||
|
mm.low = i.co2;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (mm.high < i.co2) {
|
||||||
|
mm.high = i.co2;
|
||||||
|
}
|
||||||
|
|
||||||
|
mm.mp = ~~((mm.low + mm.high) / 2);
|
||||||
|
minmaxes[_occupancy.toString()] = mm;
|
||||||
|
}
|
||||||
|
}, this);
|
||||||
|
console.log(minmaxes);
|
||||||
|
console.log(JSON.stringify(minmaxes));
|
||||||
DeviceCollection.models = tempCollection.models;
|
DeviceCollection.models = tempCollection.models;
|
||||||
|
|
||||||
console.timeEnd('processAdd');
|
console.timeEnd('processAdd');
|
||||||
DeviceCollection.trigger('update');
|
DeviceCollection.trigger('update');
|
||||||
|
|
||||||
notification.notify('success', 'Data loaded');
|
// Notification.notify('success', 'Data loaded');
|
||||||
|
|
||||||
}, decoder: function() {
|
}, decoder: function() {
|
||||||
return {};
|
return {};
|
||||||
@ -256,11 +314,11 @@
|
|||||||
this.socketHandler.turnOff();
|
this.socketHandler.turnOff();
|
||||||
}
|
}
|
||||||
|
|
||||||
notification.clearAll();
|
// Notification.clearAll();
|
||||||
if (this.model.has('device')) {
|
if (this.model.has('device')) {
|
||||||
this.collection.url = '/apiv2/mdot/' + this.model.get('device');
|
this.collection.url = '/apiv2/mdot/' + this.model.get('device');
|
||||||
$('#output').empty();
|
$('#output').empty();
|
||||||
notification.notify('info', 'Loading...');
|
// Notification.notify('info', 'Loading...');
|
||||||
this.collection.fetch(fetchObj);
|
this.collection.fetch(fetchObj);
|
||||||
} else {
|
} else {
|
||||||
console.error('Nothing to get!');
|
console.error('Nothing to get!');
|
||||||
@ -287,7 +345,7 @@
|
|||||||
this.categoryAxesSettings = new AmCharts.CategoryAxesSettings();
|
this.categoryAxesSettings = new AmCharts.CategoryAxesSettings();
|
||||||
this.dataSet = new AmCharts.DataSet();
|
this.dataSet = new AmCharts.DataSet();
|
||||||
|
|
||||||
_.bindAll(this, 'render', 'updateGraphV2', 'setupChart');
|
_.bindAll(this, 'render', 'updateGraphV2', 'setupChart','getLastChunk');
|
||||||
this.collection.on('update', function() {
|
this.collection.on('update', function() {
|
||||||
// Trigger the redraw
|
// Trigger the redraw
|
||||||
this.updateGraphV2();
|
this.updateGraphV2();
|
||||||
@ -512,49 +570,17 @@
|
|||||||
chart.panelsSettings = panelsSettings;
|
chart.panelsSettings = panelsSettings;
|
||||||
|
|
||||||
|
|
||||||
// PERIOD SELECTOR ///////////////////////////////////
|
|
||||||
// var periodSelector = new AmCharts.PeriodSelector();
|
|
||||||
// periodSelector.position = "bottom";
|
|
||||||
// periodSelector.inputFieldsEnabled = false;
|
|
||||||
// periodSelector.width = 20;
|
|
||||||
// //periodSelector.dateFormat = "YYYY-MM-DD JJ:NN"
|
|
||||||
// periodSelector.periods = [
|
|
||||||
// {
|
|
||||||
// period: "hh",
|
|
||||||
// count: 1,
|
|
||||||
// label: "1 hour",
|
|
||||||
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// period: "hh",
|
|
||||||
// count: 12,
|
|
||||||
// label: "12 hours",
|
|
||||||
|
|
||||||
// },
|
|
||||||
// {
|
|
||||||
// period: "DD",
|
|
||||||
// count: 5,
|
|
||||||
// label: "10 days",
|
|
||||||
// selected: true
|
|
||||||
// },
|
|
||||||
//];
|
|
||||||
// chart.periodSelector = periodSelector;
|
|
||||||
|
|
||||||
//$('#chartdiv').empty();
|
|
||||||
chart.write('chartdiv');
|
chart.write('chartdiv');
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
console.timeEnd('doChartV2');
|
console.timeEnd('doChartV2');
|
||||||
}, updateGraphV2: function() {
|
}, updateGraphV2: function() {
|
||||||
console.time('updateGraphV2');
|
console.time('updateGraphV2');
|
||||||
var self = this;
|
var self = this;
|
||||||
var chartData = [];
|
var chartData = [];
|
||||||
var filter = [];
|
var filter = [];
|
||||||
console.time('chartData');
|
|
||||||
var step = 0;
|
var step = 0;
|
||||||
const max = 20;
|
const max = 20;
|
||||||
|
this.socketHandler.set({data: this.getLastChunk()});
|
||||||
_(this.collection.models).each(function(i) {
|
_(this.collection.models).each(function(i) {
|
||||||
const co2 = i.get('co2');
|
const co2 = i.get('co2');
|
||||||
let chunk = {
|
let chunk = {
|
||||||
@ -572,8 +598,6 @@
|
|||||||
}
|
}
|
||||||
filter.push(co2);
|
filter.push(co2);
|
||||||
|
|
||||||
|
|
||||||
//If (step % 100 === 0) {
|
|
||||||
if (filter.length >= max) {
|
if (filter.length >= max) {
|
||||||
let sub100 = filter.reduce((prev, cur) => prev + cur);
|
let sub100 = filter.reduce((prev, cur) => prev + cur);
|
||||||
chunk.sub100 = sub100 / max;
|
chunk.sub100 = sub100 / max;
|
||||||
@ -582,7 +606,6 @@
|
|||||||
chartData.push(chunk);
|
chartData.push(chunk);
|
||||||
step++;
|
step++;
|
||||||
});
|
});
|
||||||
console.timeEnd('chartData');
|
|
||||||
|
|
||||||
self.doChartV2(chartData);
|
self.doChartV2(chartData);
|
||||||
console.timeEnd('updateGraphV2');
|
console.timeEnd('updateGraphV2');
|
||||||
@ -593,7 +616,19 @@
|
|||||||
console.log('Model updated:', this.get('data'));
|
console.log('Model updated:', this.get('data'));
|
||||||
});
|
});
|
||||||
|
|
||||||
}
|
},
|
||||||
|
getLastChunk: function() {
|
||||||
|
let lastItem = this.collection.models[this.collection.models.length - 1];
|
||||||
|
return {
|
||||||
|
date: lastItem.get('dt'),
|
||||||
|
co2: lastItem.get('co2'),
|
||||||
|
humidity: lastItem.get('humid'),
|
||||||
|
lux: lastItem.get('lux'),
|
||||||
|
noise: lastItem.get('noise'),
|
||||||
|
temp: lastItem.get('temp'),
|
||||||
|
occupancy: lastItem.get('occupancy')
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -614,11 +649,11 @@
|
|||||||
this.suffix = this.suffixList[this.modes.indexOf(this.widgetMode)];
|
this.suffix = this.suffixList[this.modes.indexOf(this.widgetMode)];
|
||||||
this.render();
|
this.render();
|
||||||
}, render: function() {
|
}, render: function() {
|
||||||
let data = this.model.get('data');
|
let html;
|
||||||
// console.log(data);
|
const data = this.model.get('data');
|
||||||
let value = (typeof data !== 'undefined') ? data[this.widgetMode] : 0;
|
let value = (typeof data !== 'undefined') ? data[this.widgetMode] : 0;
|
||||||
value = value.toString().concat(this.suffix);
|
value = value.toString().concat(this.suffix);
|
||||||
var html = this.template({value: value});
|
html = this.template({value: value});
|
||||||
this.$el.html(html);
|
this.$el.html(html);
|
||||||
|
|
||||||
return this;
|
return this;
|
||||||
@ -637,6 +672,7 @@
|
|||||||
|
|
||||||
var mainSettings = new MainModel();
|
var mainSettings = new MainModel();
|
||||||
var views = {};
|
var views = {};
|
||||||
|
views.clock = new Clock({model: new ClockModel()});
|
||||||
views.mainview = new MainView({
|
views.mainview = new MainView({
|
||||||
collection: mdotCollection, model: mainSettings
|
collection: mdotCollection, model: mainSettings
|
||||||
});
|
});
|
||||||
@ -656,5 +692,15 @@
|
|||||||
views.luxWidget = new Widget({model: webSocketModel, id: 'widget-lux', el: $('#widget-lux')});
|
views.luxWidget = new Widget({model: webSocketModel, id: 'widget-lux', el: $('#widget-lux')});
|
||||||
|
|
||||||
|
|
||||||
|
navigator.geolocation.getCurrentPosition(function(position) {
|
||||||
|
var latitude = position.coords.latitude;
|
||||||
|
var longitude = position.coords.longitude;
|
||||||
|
|
||||||
|
views.weather = new Weather({model: new WeatherModel({lat: latitude, long: longitude})});
|
||||||
|
},
|
||||||
|
function(e) {console.error(e.code + ' / ' + e.message);});
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
})(jQuery);
|
})(jQuery);
|
||||||
|
@ -27,7 +27,6 @@ var SOCKETMANAGER = (function() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
},
|
},
|
||||||
turnOn: function() {
|
turnOn: function() {
|
||||||
this.listening = true;
|
this.listening = true;
|
||||||
@ -43,6 +42,7 @@ var SOCKETMANAGER = (function() {
|
|||||||
// Ticks are ignored
|
// Ticks are ignored
|
||||||
} else {
|
} else {
|
||||||
if (item.data.deviceid === this.listeningID) {
|
if (item.data.deviceid === this.listeningID) {
|
||||||
|
console.log('Updated', item.data);
|
||||||
this.set({data: item.data});
|
this.set({data: item.data});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -10,8 +10,9 @@
|
|||||||
<link href="css/mui.css" rel="stylesheet" type="text/css"/>
|
<link href="css/mui.css" rel="stylesheet" type="text/css"/>
|
||||||
<link href="css/test.css" rel="stylesheet" type="text/css"/>
|
<link href="css/test.css" rel="stylesheet" type="text/css"/>
|
||||||
<link href="css/style.css" rel="stylesheet" type="text/css"/>
|
<link href="css/style.css" rel="stylesheet" type="text/css"/>
|
||||||
|
<link href="css/weather-icons.css" rel="stylesheet" type="text/css"/>
|
||||||
<link rel="stylesheet" href="css/notification.css">
|
<link rel="stylesheet" href="css/notification.css">
|
||||||
<link href="css/flipclock.css" rel="stylesheet" />
|
|
||||||
<link href="css/flatWeatherPlugin.css" rel="stylesheet" />
|
<link href="css/flatWeatherPlugin.css" rel="stylesheet" />
|
||||||
<!-- endbuild -->
|
<!-- endbuild -->
|
||||||
|
|
||||||
@ -53,6 +54,68 @@
|
|||||||
margin-bottom: 0px;
|
margin-bottom: 0px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
.item_content {
|
||||||
|
height: 100px;
|
||||||
|
/* border: 1px solid grey;*/
|
||||||
|
min-height: 100px;
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
.item_content a.title {
|
||||||
|
overflow: hidden;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
white-space: nowrap;
|
||||||
|
color: #ffffff;
|
||||||
|
}
|
||||||
|
|
||||||
|
.item_content div.body, .item_content div.site, .item_content div.tags {
|
||||||
|
overflow: hidden;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
white-space: nowrap;
|
||||||
|
color: #313131;
|
||||||
|
}
|
||||||
|
|
||||||
|
.time, .date, .temp, .weather {
|
||||||
|
text-align: center;
|
||||||
|
font-family: 'Ubuntu Condensed', sans-serif;
|
||||||
|
font-size: 40px;
|
||||||
|
color: #ff0063;
|
||||||
|
width:100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
.time span.hour:after {
|
||||||
|
content: ":";
|
||||||
|
}
|
||||||
|
|
||||||
|
.time {margin-top:10%;}
|
||||||
|
.date {
|
||||||
|
font-size: 18px;
|
||||||
|
line-height: 1;
|
||||||
|
margin-top:10%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.temp::after {
|
||||||
|
content: "°c";
|
||||||
|
}
|
||||||
|
|
||||||
|
.item_content div.tags {
|
||||||
|
color: blue;
|
||||||
|
}
|
||||||
|
|
||||||
|
.noConnection {
|
||||||
|
color: rgb(244, 150, 26);
|
||||||
|
}
|
||||||
|
|
||||||
|
#caltext {
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
.fourpcNudge {
|
||||||
|
margin-top:4% !important;
|
||||||
|
}
|
||||||
|
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
</head>
|
</head>
|
||||||
@ -71,24 +134,31 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="mui-col-md-12 panel" style="height:10%; border-width:10px;border-style:solid;border-color:black; background-color:#404040">
|
<div class="mui-col-md-12 panel" style="height:10%; border-width:10px;border-style:solid;border-color:black; background-color:#404040">
|
||||||
<span id="date_time"></span>
|
|
||||||
|
<!--<div class="mui-row">-->
|
||||||
|
<div class="mui-col-xs-6 ">
|
||||||
|
<div id="time" class="mui--text-center time"></div>
|
||||||
|
</div>
|
||||||
|
<div class="mui-col-xs-6 item_content">
|
||||||
|
<div id="date" class="mui--text-center date"></div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!--</div>-->
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class="mui-col-md-12 panel" style="height:10%; border-width:10px;border-style:solid;border-color:black; background-color:#404040">
|
||||||
|
|
||||||
<div class="mui-col-md-12 panel" style="height:30%; border-width:10px;border-style:solid;border-color:black; background-color:#404040">
|
<div id="weather" class="mui--text-center weather">
|
||||||
|
<div id="weatherIcon" class="mui-col-xs-6 mui--text-center mui--align-middle fourpcNudge">
|
||||||
|
|
||||||
<!--<iframe id="forecast_embed" type="text/html" frameborder="0" height="245" width="100%" src="http://forecast.io/embed/#lat=42.3583&lon=-71.0603&name=Downtown Boston&color=#00aaff&units=uk"> </iframe>-->
|
</div>
|
||||||
<div class="mui-row" style="margin:5%" >
|
<div class="mui-col-xs-6 mui--text-center mui--align-middle fourpcNudge" id="weatherText"></div>
|
||||||
|
</div>
|
||||||
<div id="example"></div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
</div>
|
|
||||||
|
|
||||||
|
|
||||||
</div>
|
|
||||||
<div class="mui-col-md-12 panel" style="height:10%; border-width:10px;border-style:solid;border-color:black; background-color:#000">
|
<div class="mui-col-md-12 panel" style="height:10%; border-width:10px;border-style:solid;border-color:black; background-color:#000">
|
||||||
<img src="lib/images/censis_logo_white.png" style="height:70%; width:80%;margin-top:5%;margin-left:10%" />
|
<img src="lib/images/censis_logo_white.png" style="height:70%; width:80%;margin-top:5%;margin-left:10%" />
|
||||||
</div>
|
</div>
|
||||||
@ -334,13 +404,12 @@
|
|||||||
<script src="lib/serial.js"></script>
|
<script src="lib/serial.js"></script>
|
||||||
<script src="lib/amstock.js"></script>
|
<script src="lib/amstock.js"></script>
|
||||||
<script src="lib/themes/dark.js"></script>
|
<script src="lib/themes/dark.js"></script>
|
||||||
<script src="lib/dateTime.js"></script>
|
|
||||||
<script src="lib/flipclock.min.js"></script>
|
|
||||||
|
|
||||||
<!--<script src="lib/jquery.flatWeatherPlugin.min.js"></script>-->
|
<!--<script src="lib/jquery.flatWeatherPlugin.min.js"></script>-->
|
||||||
<script src="lib/jquery.flatWeatherPlugin.js"></script>
|
<script src="lib/jquery.flatWeatherPlugin.js"></script>
|
||||||
<!-- endbuild -->
|
<!-- endbuild -->
|
||||||
<!-- build:js -->
|
<!-- build:js -->
|
||||||
|
<script src="js/clock.js"></script>
|
||||||
<script src="js/websocket.js"></script>
|
<script src="js/websocket.js"></script>
|
||||||
<script src="js/socketmanager.js"></script>
|
<script src="js/socketmanager.js"></script>
|
||||||
<script src="js/mdot.js"></script>
|
<script src="js/mdot.js"></script>
|
||||||
@ -348,30 +417,3 @@
|
|||||||
<!-- endbuild -->
|
<!-- endbuild -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|
||||||
<script type="text/javascript">window.onload = date_time('date_time');</script>
|
|
||||||
|
|
||||||
<script type="text/javascript">
|
|
||||||
var clock = $('.clock').FlipClock({
|
|
||||||
clockFace: 'TwentyFourHourClock'
|
|
||||||
});
|
|
||||||
|
|
||||||
$(document).ready(function () {
|
|
||||||
|
|
||||||
//Setup the plugin, see readme for more examples
|
|
||||||
var example = $("#example").flatWeatherPlugin({
|
|
||||||
location: "Glasgow, UK", //city and region *required
|
|
||||||
country: "UK", //country *required
|
|
||||||
//optional:
|
|
||||||
api: "openweathermap", //default: openweathermap (openweathermap or yahoo)
|
|
||||||
apikey: "72c7b00d1918c6cdd5f2d11a5a6fc0b8", //optional api key for openweather
|
|
||||||
view: "full", //default: full (partial, full, simple, today or forecast)
|
|
||||||
displayCityNameOnly: true, //default: false (true/false) if you want to display only city name
|
|
||||||
forecast: 4, //default: 5 (0 -5) how many days you want forecast
|
|
||||||
render: true, //default: true (true/false) if you want plugin to generate markup
|
|
||||||
loadingAnimation: true //default: true (true/false) if you want plugin to show loading animation
|
|
||||||
//units : "metric", //or "imperial" default: "auto"
|
|
||||||
});
|
|
||||||
|
|
||||||
});
|
|
||||||
</script>
|
|
||||||
|
Loading…
Reference in New Issue
Block a user