diff --git a/ajax/ajax_asset_details.php b/ajax/ajax_asset_details.php new file mode 100644 index 00000000..f5ea387c --- /dev/null +++ b/ajax/ajax_asset_details.php @@ -0,0 +1,735 @@ +$contact_name"; +} else { + $contact_name_display = $contact_name; +} +$location_name = nullable_htmlentities($row['location_name']); +if (empty($location_name)) { + $location_name = "-"; +} +$location_archived_at = nullable_htmlentities($row['location_archived_at']); +if ($location_archived_at) { + $location_name_display = "$location_name"; +} else { + $location_name_display = $location_name; +} + +// Network Interfaces +$sql_related_interfaces = mysqli_query($mysqli, " + SELECT + ai.interface_id, + ai.interface_name, + ai.interface_description, + ai.interface_type, + ai.interface_mac, + ai.interface_ip, + ai.interface_nat_ip, + ai.interface_ipv6, + ai.interface_primary, + ai.interface_notes, + n.network_name, + n.network_id, + connected_interfaces.interface_id AS connected_interface_id, + connected_interfaces.interface_name AS connected_interface_name, + connected_assets.asset_name AS connected_asset_name, + connected_assets.asset_id AS connected_asset_id, + connected_assets.asset_type AS connected_asset_type + FROM asset_interfaces AS ai + LEFT JOIN networks AS n + ON n.network_id = ai.interface_network_id + LEFT JOIN asset_interface_links AS ail + ON (ail.interface_a_id = ai.interface_id OR ail.interface_b_id = ai.interface_id) + LEFT JOIN asset_interfaces AS connected_interfaces + ON ( + (ail.interface_a_id = ai.interface_id AND ail.interface_b_id = connected_interfaces.interface_id) + OR + (ail.interface_b_id = ai.interface_id AND ail.interface_a_id = connected_interfaces.interface_id) + ) + LEFT JOIN assets AS connected_assets + ON connected_assets.asset_id = connected_interfaces.interface_asset_id + WHERE + ai.interface_asset_id = $asset_id + AND ai.interface_archived_at IS NULL + ORDER BY ai.interface_name ASC +"); +$interface_count = mysqli_num_rows($sql_related_interfaces); + +// Related Credentials Query +$sql_related_credentials = mysqli_query($mysqli, " + SELECT + logins.login_id AS login_id, + logins.login_name, + logins.login_description, + logins.login_uri, + logins.login_username, + logins.login_password, + logins.login_otp_secret, + logins.login_note, + logins.login_important, + logins.login_contact_id, + logins.login_vendor_id, + logins.login_asset_id, + logins.login_software_id + FROM logins + LEFT JOIN login_tags ON login_tags.login_id = logins.login_id + LEFT JOIN tags ON tags.tag_id = login_tags.tag_id + WHERE login_asset_id = $asset_id + AND login_archived_at IS NULL + GROUP BY logins.login_id + ORDER BY login_name DESC +"); +$credential_count = mysqli_num_rows($sql_related_credentials); + +// Related Tickets Query +$sql_related_tickets = mysqli_query($mysqli, "SELECT * FROM tickets + LEFT JOIN users on ticket_assigned_to = user_id + LEFT JOIN ticket_statuses ON ticket_status_id = ticket_status + WHERE ticket_asset_id = $asset_id + ORDER BY ticket_number DESC" +); +$ticket_count = mysqli_num_rows($sql_related_tickets); + +// Related Recurring Tickets Query +$sql_related_recurring_tickets = mysqli_query($mysqli, "SELECT * FROM scheduled_tickets + WHERE scheduled_ticket_asset_id = $asset_id + ORDER BY scheduled_ticket_next_run DESC" +); +$recurring_ticket_count = mysqli_num_rows($sql_related_recurring_tickets); + +// Related Documents +$sql_related_documents = mysqli_query($mysqli, "SELECT * FROM asset_documents + LEFT JOIN documents ON asset_documents.document_id = documents.document_id + WHERE asset_documents.asset_id = $asset_id + AND document_archived_at IS NULL + ORDER BY document_name DESC" +); +$document_count = mysqli_num_rows($sql_related_documents); + +// Related Files +$sql_related_files = mysqli_query($mysqli, "SELECT * FROM asset_files + LEFT JOIN files ON asset_files.file_id = files.file_id + WHERE asset_files.asset_id = $asset_id + AND file_archived_at IS NULL + ORDER BY file_name DESC" +); +$file_count = mysqli_num_rows($sql_related_files); + +// Related Software Query +$sql_related_software = mysqli_query( + $mysqli, + "SELECT * FROM software_assets + LEFT JOIN software ON software_assets.software_id = software.software_id + WHERE software_assets.asset_id = $asset_id + AND software_archived_at IS NULL + ORDER BY software_name DESC" +); + +$software_count = mysqli_num_rows($sql_related_software); + + + +// Generate the HTML form content using output buffering. +ob_start(); +?> + + + + + + + 0) { - +