Nothing to see here
Go Back";
include_once "footer.php";
exit;
}
$row = mysqli_fetch_array($sql_project);
$project_id = intval($row['project_id']);
$project_prefix = nullable_htmlentities($row['project_prefix']);
$project_number = intval($row['project_number']);
$project_name = nullable_htmlentities($row['project_name']);
$project_description = nullable_htmlentities($row['project_description']);
$project_due = nullable_htmlentities($row['project_due']);
$project_created_at = date("Y-m-d", strtotime($row['project_created_at']));
$project_updated_at = nullable_htmlentities($row['project_updated_at']);
$project_completed_at = nullable_htmlentities($row['project_completed_at']);
$project_archived_at = nullable_htmlentities($row['project_archived_at']);
$client_id = intval($row['client_id']);
$client_name = nullable_htmlentities($row['client_name']);
if ($client_name) {
$client_name_display = "$client_name
";
} else {
$client_name_display = "";
}
$project_manager = intval($row['user_id']);
$project_manager_name = nullable_htmlentities($row['user_name']);
if ($project_manager) {
$project_manager_display = "$project_manager_name
";
} else {
$project_manager_display = "-";
}
if ($project_completed_at) {
$project_status_display = "Closed";
$project_completed_date_display = "" . date('Y-m-d', strtotime($project_completed_at)) . "
";
} else {
$project_status_display = "Open";
$project_completed_date_display = "";
}
// Override Tab Title // No Sanitizing needed as this var will only be used in the tab title
$tab_title = "{$row['project_prefix']}{$row['project_number']}";
$page_title = $row['project_name'];
// Get Tickets
$sql_tickets = mysqli_query($mysqli, "SELECT * FROM tickets
LEFT JOIN ticket_statuses ON ticket_status = ticket_status_id
LEFT JOIN clients ON ticket_client_id = client_id
LEFT JOIN users ON ticket_assigned_to = user_id
WHERE ticket_project_id = $project_id
ORDER BY $sort $order"
);
$ticket_count = mysqli_num_rows($sql_tickets);
// Get Closed Ticket Count
$sql_closed_tickets = mysqli_query($mysqli, "SELECT * FROM tickets WHERE ticket_project_id = $project_id AND ticket_closed_at IS NOT NULL");
$closed_ticket_count = mysqli_num_rows($sql_closed_tickets);
// Get Resolved Ticket Count
$sql_resolved_tickets = mysqli_query($mysqli, "SELECT * FROM tickets WHERE ticket_project_id = $project_id AND ticket_resolved_at IS NOT NULL");
$resolved_ticket_count = mysqli_num_rows($sql_resolved_tickets);
$tickets_closed_percent = 100; //Default
if ($ticket_count) {
$tickets_closed_percent = round(($closed_ticket_count / $ticket_count) * 100);
}
$tickets_resolved_percent = 100; //Default
if ($ticket_count) {
$tickets_resolved_percent = round(($resolved_ticket_count / $ticket_count) * 100);
}
// Get All Tasks
$sql_tasks = mysqli_query($mysqli,
"SELECT * FROM tickets, tasks
WHERE ticket_id = task_ticket_id
AND ticket_project_id = $project_id
ORDER BY task_created_at ASC"
);
$task_count = mysqli_num_rows($sql_tasks);
// Get Completed Task Count
$sql_tasks_completed = mysqli_query($mysqli,
"SELECT * FROM tickets, tasks
WHERE ticket_id = task_ticket_id
AND ticket_project_id = $project_id
AND task_completed_at IS NOT NULL"
);
$completed_task_count = mysqli_num_rows($sql_tasks_completed);
// Tasks Completed Percent
if ($task_count) {
$tasks_completed_percent = round(($completed_task_count / $task_count) * 100);
}
//Get Total Ticket Time
$sql_ticket_total_reply_time = mysqli_query($mysqli, "SELECT SEC_TO_TIME(SUM(TIME_TO_SEC(ticket_reply_time_worked))) AS ticket_total_reply_time FROM ticket_replies
LEFT JOIN tickets ON ticket_id = ticket_reply_ticket_id
WHERE ticket_reply_archived_at IS NULL AND ticket_project_id = $project_id");
$row = mysqli_fetch_array($sql_ticket_total_reply_time);
$ticket_total_reply_time = nullable_htmlentities($row['ticket_total_reply_time']);
// Get all Assigned ticket Users as a comma-separated string
$sql_project_collaborators = mysqli_query($mysqli, "
SELECT GROUP_CONCAT(DISTINCT user_name SEPARATOR ', ') AS user_names
FROM users
LEFT JOIN ticket_replies ON user_id = ticket_reply_by
LEFT JOIN tickets ON ticket_id = ticket_reply_ticket_id
WHERE ticket_reply_archived_at IS NULL AND ticket_project_id = $project_id
");
// Fetch the result
$row = mysqli_fetch_assoc($sql_project_collaborators);
// The user names in a comma-separated string
$ticket_collaborators = nullable_htmlentities($row['user_names']);
?>
-
Projects
- Project Details