⚝
One Hat Cyber Team
⚝
Your IP:
216.73.217.70
Server IP:
209.74.65.82
Server:
Linux 209-74-65-82.cprapid.com 5.14.0-427.42.1.el9_4.x86_64 #1 SMP PREEMPT_DYNAMIC Fri Nov 1 14:58:02 EDT 2024 x86_64
PHP Version:
8.1.34
Buat File
|
Buat Folder
Eksekusi
Dir :
~
/
home
/
ivsoxidh
/
petko.atmedia.live
/
Edit File: api.php
<?php require_once __DIR__ . '/db.php'; header('Content-Type: application/json; charset=utf-8'); $token = $_GET['token'] ?? ''; if ($token !== API_TOKEN) { http_response_code(401); echo json_encode(['error'=>'unauthorized']); exit; } $action = $_GET['action'] ?? 'summary'; if ($action === 'summary') { $year = (int)($_GET['year'] ?? date('Y')); $sql = "SELECT u.id,u.name,u.email,u.team_id, COUNT(l.id) AS taken FROM users u LEFT JOIN leave_days l ON l.user_id=u.id AND YEAR(l.date)=? WHERE u.role='employee' GROUP BY u.id ORDER BY u.name"; $stmt = $pdo->prepare($sql); $stmt->execute([$year]); $data = []; while ($r = $stmt->fetch()) { $data[] = [ 'user_id' => (int)$r['id'], 'name' => $r['name'], 'email' => $r['email'], 'team' => $r['team_id'], 'taken' => (int)$r['taken'], 'remaining' => MAX_LEAVE_DAYS_PER_YEAR - (int)$r['taken'], ]; } echo json_encode(['year'=>$year, 'data'=>$data]); exit; } if ($action === 'pending_count') { $c = (int)$pdo->query("SELECT COUNT(*) FROM leave_requests WHERE status='pending'")->fetchColumn(); echo json_encode(['pending'=>$c]); exit; } http_response_code(404); echo json_encode(['error'=>'not_found']);
Simpan