Företagslogg - Serverlagring

Serverlagring: All data sparas nu på servern i stället för i webbläsaren.

Uppdragsgivare denna vecka
0 tim
Egna projekt denna vecka
0 tim
Tidsfördelning denna vecka
Uppdrag
Egna projekt
Uppdragsgivare 1
Egna projekt
Senaste inloggade aktiviteterna
$timestamp, 'type' => $type, 'project' => $project, 'task' => $task, 'time' => $time, 'weekKey' => $weekKey ]) . "\n"; file_put_contents($logFile, $entry, FILE_APPEND | LOCK_EX); echo "OK"; exit; } // Hantera GET-förfrågan (hämta loggposter) if (isset($_GET['action']) && $_GET['action'] === 'get_entries') { if (file_exists($logFile)) { $entries = array_reverse(file($logFile, FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES)); foreach ($entries as $entry) { $data = json_decode($entry, true); if ($data) { $entryDate = new DateTime($data['timestamp']); $timeString = $entryDate->format('H:i'); $dateString = $entryDate->format('Y-m-d'); echo "
"; echo "
"; echo ""; echo "" . htmlspecialchars($data['project']) . ""; echo "
"; echo "
"; echo "
" . htmlspecialchars($data['task']) . "
"; echo "
" . $data['time'] . " timmar
"; echo "
"; echo "
"; } } } else { echo "

Inga loggade aktiviteter ännu

"; } exit; } // Hantera GET-förfrågan (hämta sammanställning) if (isset($_GET['action']) && $_GET['action'] === 'get_summary') { $currentWeek = date('W'); $clientTime = 0; $ownTime = 0; if (file_exists($logFile)) { $entries = file($logFile, FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES); foreach ($entries as $entry) { $data = json_decode($entry, true); if ($data && $data['weekKey'] == $currentWeek) { if ($data['type'] === 'client') { $clientTime += $data['time']; } else { $ownTime += $data['time']; } } } } header('Content-Type: application/json'); echo json_encode(['clientTime' => $clientTime, 'ownTime' => $ownTime]); exit; } ?>