$_alive[\'refresh\'] = ' . $alive_now . '; ?>'); // send to client echo '{"ok":true,"data":' . $data . '}'; exit; break; case 'load': if (!is_file($file)) { echo '{"ok":true,"mode":"' . session_value('mode') . '","data":{"tasks":[],"selectedRow":0,"deletedTaskIds":[],"resources":[{"id":"tmp_1","name":"Resource 1"},{"id":"tmp_2","name":"Resource 2"},{"id":"tmp_3","name":"Resource 3"},{"id":"tmp_4","name":"Resource 4"},{"id":"tmp_5","name":"Resource 5"},{"id":"tmp_6","name":"Resource 6"},{"id":"tmp_7","name":"Resource 7"},{"id":"tmp_8","name":"Resource 8"},{"id":"tmp_9","name":"Resource 9"},{"id":"tmp_10","name":"Resource 10"}],"canWrite":true,"canWriteOnParent":true}}'; exit; } //$data = '{"tasks":[{"id":-1,"name":"Gantt editor","code":"","level":0,"status":"STATUS_ACTIVE","start":1363060800000,"duration":21,"end":1365566399999,"startIsMilestone":true,"endIsMilestone":false,"collapsed":false,"assigs":[]},{"id":-2,"name":"coding","code":"","level":1,"status":"STATUS_ACTIVE","start":1363060800000,"duration":10,"end":1364270399999,"startIsMilestone":false,"endIsMilestone":false,"collapsed":false,"assigs":[],"description":"","progress":0},{"id":-3,"name":"gant part","code":"","level":2,"status":"STATUS_ACTIVE","start":1363060800000,"duration":2,"end":1363233599999,"startIsMilestone":false,"endIsMilestone":false,"collapsed":false,"assigs":[],"depends":""},{"id":-4,"name":"editor part","code":"","level":2,"status":"STATUS_SUSPENDED","start":1363233600000,"duration":4,"end":1363751999999,"startIsMilestone":false,"endIsMilestone":false,"collapsed":false,"assigs":[],"depends":"3"},{"id":-5,"name":"testing","code":"","level":1,"status":"STATUS_SUSPENDED","start":1364875200000,"duration":6,"end":1365566399999,"startIsMilestone":false,"endIsMilestone":false,"collapsed":false,"assigs":[],"depends":"2:5","description":"","progress":0},{"id":-6,"name":"test on safari","code":"","level":2,"status":"STATUS_SUSPENDED","start":1364875200000,"duration":2,"end":1365047999999,"startIsMilestone":false,"endIsMilestone":false,"collapsed":false,"assigs":[],"depends":""},{"id":-7,"name":"test on ie","code":"","level":2,"status":"STATUS_SUSPENDED","start":1365048000000,"duration":3,"end":1365479999999,"startIsMilestone":false,"endIsMilestone":false,"collapsed":false,"assigs":[],"depends":"6"},{"id":-8,"name":"test on chrome","code":"","level":2,"status":"STATUS_SUSPENDED","start":1365048000000,"duration":2,"end":1365220799999,"startIsMilestone":false,"endIsMilestone":false,"collapsed":false,"assigs":[],"depends":"6"}],"selectedRow":0,"deletedTaskIds":[],"resources":[{"id":"tmp_1","name":"Resource 1"},{"id":"tmp_2","name":"Resource 2"},{"id":"tmp_3","name":"Resource 3"},{"id":"tmp_4","name":"Resource 4"},{"id":"tmp_5","name":"Resource 5"},{"id":"tmp_6","name":"Resource 6"},{"id":"tmp_7","name":"Resource 7"},{"id":"tmp_8","name":"Resource 8"},{"id":"tmp_9","name":"Resource 9"},{"id":"tmp_10","name":"Resource 10"}],"roles":[{"id":"tmp_1","name":"Project Manager"},{"id":"tmp_2","name":"Worker"},{"id":"tmp_3","name":"Stakeholder/Customer"}],"canWrite":true,"canWriteOnParent":true}'; $data = file_get_contents($file); // remove lock $data = str_replace($lock, '', $data); echo '{"ok":true,"mode":"' . session_value('mode') . '","data":' . $data . '}'; exit; break; case 'export': // write to data $file_contents = $_POST['data']; $file_name = $project_name . '_planner_' . date('Y-m-d_h\\hi') . '.js'; // Set headers header("Cache-Control: public"); header("Content-Description: File Transfer"); header("Content-Disposition: attachment; filename={$file_name}"); header("Content-Type: application/js"); header("Content-Transfer-Encoding: binary"); echo $file_contents; exit; break;
function stream_cast(&$track_data) { global $isMaster, $client_frame_size, $server_frame_fps, $cache, $buffer, $icy_metaint, $shm_var, $longtitle, $a, $time_wake_up; while (strlen($track_data) >= $client_frame_size) { validate_connection(); if (!$isMaster) { echo substr($track_data, 0, $client_frame_size); if ($icy_metaint) { if ($longtitle) { $metaint = sprintf("StreamTitle='%s';", substr(str_replace(array(';', "'"), array(';', "`"), $longtitle), 0, 4064)); $metaint_prefix = ceil(strlen($metaint) / 16); $metaint_len = $metaint_prefix * 16; echo chr($metaint_prefix) . str_pad($metaint, $metaint_len, "", STR_PAD_RIGHT); $longtitle = NULL; } else { echo ""; } } } $track_data = substr($track_data, $client_frame_size); if ($isMaster) { $a += $client_frame_size; $shm_var['config']['pivot'] = $a; session_value('update', 'config'); //usleep($client_frame_usec); $time_wake_up += $server_frame_fps; @time_sleep_until($time_wake_up); } else { if ($buffer > 0) { $buffer--; } else { //usleep($client_frame_usec); $time_wake_up += $server_frame_fps; if (time() > $time_wake_up + $cache * 2) { exit; } @time_sleep_until($time_wake_up); } } } }