// check if a valve has been turned on if (isset($_POST['valve' . $valveIndex . '_turnOn'])) { // set teh valve manual time to now $schedule_storedSchedule->valves[$valveIndex]->manualStartTime = operateValves_getCurrentMinutesOffsetIntoWeek(); break; } if (isset($_POST['valve' . $valveIndex . '_turnOff'])) { // reset the valve manual time $schedule_storedSchedule->valves[$valveIndex]->manualStartTime = -1; break; } } // save to file if (schedule_saveScheduleToFile($schedule_storedSchedule, $schedule_configurationFileName)) { // operate the valves now, don't wait for cron operateValves_performActions($schedule_storedSchedule); } } else { // check if valve configuration exists if (!file_exists($schedule_configurationFileName)) { // create new scedule $schedule_storedSchedule = new Schedule(); // initialize the current schedule schedule_initDefaultSchedule($schedule_storedSchedule, $schedule_numberOfValves); // save the current schedule so that the configuration file will always exist schedule_saveScheduleToFile($schedule_storedSchedule, $schedule_configurationFileName); } else { // Try to load the data from the saved configuration schedule_loadScheduleFromFile($schedule_storedSchedule, $schedule_configurationFileName); } }
// command lists $valvesToOpen = array(); $valvesToClose = array(); // get the commands operateValves_getValveCommands($valvesRequiredToBeOpen, $valvesCurrentlyOpen, $valvesToOpen, $valvesToClose); // execute the commands operateValves_executeValveCommands($valvesToOpen, $valvesToClose); // update currently open valves. TODO get from hardware operateValves_updateCurrentlyOpenValves($valvesRequiredToBeOpen); // print logger_logEvent('Currently open valves: ' . arrayToString($valvesCurrentlyOpen, ", ")); logger_logEvent('Valves required to be open: ' . arrayToString($valvesRequiredToBeOpen, ", ")); logger_logEvent('Opening these valves: ' . arrayToString($valvesToOpen, ", ")); logger_logEvent('Closing these valves: ' . arrayToString($valvesToClose, ", ")); } // // Entry // // if run from cli, execute if (php_sapi_name() == 'cli') { // check if valve configuration exists if (file_exists($schedule_configurationFileName)) { // load from file $schedule = unserialize(file_get_contents($schedule_configurationFileName)); // do the operate operateValves_performActions($schedule); } } ?>