if (session_value('mode') != 'edit') { $alive['take_control'] = 'yea!'; } } // execute modes if (session_value('mode') == 'edit') { // edit mode // set global alive file file_put_contents(alive_file(), '<?php $_alive[\'save\'] = ' . (alive_file_value('save') ? (int) alive_file_value('save') : 0) . '; $_alive[\'refresh\'] = ' . $alive_now . '; ?>'); } else { // read mode // is there a new version? if (alive_file_value('save') > session_value('alive') - 10) { $alive['reload'] = true; } } // set current time $_SESSION['alive'] = $alive_now; // send to client echo json_encode($alive, JSON_NUMERIC_CHECK); exit; break; case 'notif': foreach ($_SESSION['emails'] as $email) { mail($email, $_SESSION['project_title'] . ': Planner update', "\r\n" . $_SESSION['project_title'] . "\r\n\r\nAn update to the planner was made:\r\n\r\n" . "http://www.yourGantt.com/?project=" . $_SESSION['project_name']); } break; case 'save':
$_SESSION['project_name'] = $username; $_SESSION['project_title'] = $logins[$username]['title']; $_SESSION['emails'] = $logins[$username]['emails']; // Wich mode? $set_mode = 'read'; // first check if a global alive file exists, if not, we are in edit mode if (!is_file(alive_file())) { $set_mode = 'edit'; dbug('no alive file found'); } else { // not sure yet, does the file is active, or old? // load file dbug('alive file found'); include alive_file(); dbug($_alive); if ($alive_now - alive_file_value('refresh') > $alive_timeout) { // file is OLD $set_mode = 'edit'; alive_file_delete(); dbug('alive file is old, deleting...'); } } dbug(array('set_mode' => $set_mode)); $_SESSION['mode'] = $set_mode; $_SESSION['alive'] = $alive_now; // redirect header('Location: ../gantt.html'); } else { // wrong login $msg[] = 'Please Sign IN'; }