mirror of https://github.com/snachodog/mybuddy.git
37 lines
1004 B
JavaScript
37 lines
1004 B
JavaScript
|
/* Baby Buddy Dashboard
|
||
|
*
|
||
|
* Provides a "watch" function to update the dashboard at one minute intervals
|
||
|
* and/or on visibility state changes.
|
||
|
*/
|
||
|
BabyBuddy.Dashboard = function ($) {
|
||
|
var runIntervalId = null;
|
||
|
var dashboardElement = null;
|
||
|
var lastUpdate = moment();
|
||
|
|
||
|
var Dashboard = {
|
||
|
watch: function(element_id) {
|
||
|
dashboardElement = $('#' + element_id);
|
||
|
|
||
|
if (dashboardElement.length == 0) {
|
||
|
console.error('Baby Buddy: Dashboard element not found.');
|
||
|
return false;
|
||
|
}
|
||
|
|
||
|
runIntervalId = setInterval(this.update, 60000);
|
||
|
|
||
|
Visibility.change(function (e, state) {
|
||
|
if (state == 'visible' && moment().diff(lastUpdate) > 60000) {
|
||
|
Dashboard.update();
|
||
|
}
|
||
|
});
|
||
|
},
|
||
|
|
||
|
update: function() {
|
||
|
// TODO: Someday maybe update in place?
|
||
|
location.reload();
|
||
|
}
|
||
|
};
|
||
|
|
||
|
return Dashboard;
|
||
|
}(jQuery);
|