function update($arr) { if (isset($arr['alarm'])) { $alarm = new Alarm(); if ($arr['alarm'] == 'true') { $val = true; $alarm->on(); } else { $val = false; $alarm->off(); } if ($alarm->isOn() == $val) { http_response_code(202); } else { http_response_code(400); } } if (isset($arr['mode'])) { $mode_value = $arr['mode']; $mode = new Mode(); switch ($mode_value) { case Mode::DAY: case Mode::NIGHT: case Mode::AWAY: $mode->setMode($mode_value); http_response_code(202); return array('mode' => $mode_value); } } }
function checkModeHours() { $settings = new Settings(); if ($settings->getSettings('Mode', 'nightAuto')) { $mode = new Mode(); $from = $settings->getSettings('Mode', 'nightFrom'); $to = $settings->getSettings('Mode', 'nightTo'); if (time() > strtotime($from) && $mode->getMode() == Mode::DAY) { $mode->setMode(Mode::NIGHT); } else { if (time() < strtotime($from) && time() > strtotime($to) && $mode->getMode() == Mode::NIGHT) { $mode->setMode(Mode::DAY); } } } }