Files
old-tfm/app/client/alarm.js
2017-01-06 18:36:57 +01:00

76 lines
1.8 KiB
JavaScript

function sensor_data_collection() {
var controllerId = Session.get('controller_id');
return SensorData.find({
controllerId: controllerId
}, {
sort: {
created_at: -1
},
limit: 3
});
}
function last_sensor_reading() {
var controller = Session.get('controller_id');
var result = null;
if (controller) {
result = sensor_data_collection();
}
if (result && result.count() > 0) {
return result.fetch()[0];
} else {
return {}
}
}
Template.alarm.helpers({
last_reading: last_sensor_reading,
state: function() {
return Meteor.zoblak.client.controller_state().state;
},
pretty_time: function(time) {
return moment(time).format("DD.MM.YYYY, HH:mm")
},
all_temperatures: function() {
var result = "";
var temperatures = last_sensor_reading().temperatures;
for (var i in temperatures) {
var temperature = parseFloat(temperatures[i]).toFixed(1);
var temperatureLabel = (Meteor.zoblak.shared.valid_temperature(temperature)) ? temperature : "XX.X";
result += '' + temperatureLabel + ' °C ';
}
return result;
},
pretty_reasons: function(reasons) {
var results = "";
if(reasons.tooHot) {
results += "Temperatura previsoka!";
}
if(reasons.tooCold) {
results += "Temperatura preniska!";
}
if(reasons.phoneSilent) {
results += "Mobitel nedostupan! Provjerite internet!";
}
if(reasons.boxSilent) {
results += "Zoblak kutija se ne javlja! Provjerite internet!";
}
return results;
}
});
Template.alarm.events({
'click #run_alarm_settings': function() {
Modal.show('alarm_settings');
},
'click #stop_alarm': function() {
let controller_id = Meteor.zoblak.client.controller_state().controller_id;
Meteor.call('stopTheAlarm', controller_id);
}
});
Template.alarm.helpers({
});