46 lines
1.0 KiB
JavaScript
46 lines
1.0 KiB
JavaScript
(function () {
|
|
'use strict';
|
|
|
|
angular.module('app').service('board', Srv);
|
|
|
|
Srv.$inject = ['$q', '$window'];
|
|
|
|
function Srv($q, $window) {
|
|
|
|
this.getBoardState = getBoardState;
|
|
this.setLight = setLight;
|
|
this.setAlarm = setAlarm;
|
|
|
|
function getBoardState() {
|
|
return $q.when(getState())
|
|
}
|
|
|
|
function getState() {
|
|
var string = $window.sessionStorage.getItem('BOARD-STATE');
|
|
return string ? JSON.parse(string) : {};
|
|
}
|
|
|
|
function saveState(state) {
|
|
var string = JSON.stringify(state);
|
|
$window.sessionStorage.setItem('BOARD-STATE', string);
|
|
}
|
|
|
|
|
|
function setLight(isOn) {
|
|
var state = getState();
|
|
state.light = isOn;
|
|
saveState(state);
|
|
return $q.when();
|
|
}
|
|
|
|
function setAlarm(isOn) {
|
|
var state = getState();
|
|
state.alarm = isOn;
|
|
saveState(state);
|
|
return $q.when();
|
|
}
|
|
}
|
|
|
|
|
|
})();
|