diff --git a/agent/asset_details.php b/agent/asset_details.php index 8a5848ca..bdbc3452 100644 --- a/agent/asset_details.php +++ b/agent/asset_details.php @@ -118,6 +118,28 @@ if (isset($_GET['asset_id'])) { ); $document_count = mysqli_num_rows($sql_related_documents); + // Tags - many to many relationship + $asset_tag_name_display_array = array(); + $asset_tag_id_array = array(); + $sql_asset_tags = mysqli_query($mysqli, "SELECT * FROM asset_tags LEFT JOIN tags ON asset_tag_tag_id = tag_id WHERE asset_tag_asset_id = $asset_id ORDER BY tag_name ASC"); + while ($row = mysqli_fetch_array($sql_asset_tags)) { + + $asset_tag_id = intval($row['tag_id']); + $asset_tag_name = nullable_htmlentities($row['tag_name']); + $asset_tag_color = nullable_htmlentities($row['tag_color']); + if (empty($asset_tag_color)) { + $asset_tag_color = "dark"; + } + $asset_tag_icon = nullable_htmlentities($row['tag_icon']); + if (empty($asset_tag_icon)) { + $asset_tag_icon = "tag"; + } + + $asset_tag_id_array[] = $asset_tag_id; + $asset_tag_name_display_array[] = "$asset_tag_name"; + } + $asset_tags_display = implode('', $asset_tag_name_display_array); + // Network Interfaces $sql_related_interfaces = mysqli_query($mysqli, " SELECT @@ -257,8 +279,13 @@ if (isset($_GET['asset_id'])) {
+ +
+ +
+ -
+
diff --git a/agent/assets.php b/agent/assets.php index 04c33732..237ed926 100644 --- a/agent/assets.php +++ b/agent/assets.php @@ -358,6 +358,7 @@ $num_rows = mysqli_fetch_row(mysqli_query($mysqli, "SELECT FOUND_ROWS()")); data-bulk="true"> Assign Location + @@ -413,6 +442,12 @@ if (isset($_GET['contact_id'])) {
+ +
+ +
+ diff --git a/agent/modals/asset/asset_details.php b/agent/modals/asset/asset_details.php index 85f59640..f7e771e2 100644 --- a/agent/modals/asset/asset_details.php +++ b/agent/modals/asset/asset_details.php @@ -70,6 +70,28 @@ if ($location_archived_at) { $location_name_display = $location_name; } +// Tags - many to many relationship +$asset_tag_name_display_array = array(); +$asset_tag_id_array = array(); +$sql_asset_tags = mysqli_query($mysqli, "SELECT * FROM asset_tags LEFT JOIN tags ON asset_tag_tag_id = tag_id WHERE asset_tag_asset_id = $asset_id ORDER BY tag_name ASC"); +while ($row = mysqli_fetch_array($sql_asset_tags)) { + + $asset_tag_id = intval($row['tag_id']); + $asset_tag_name = nullable_htmlentities($row['tag_name']); + $asset_tag_color = nullable_htmlentities($row['tag_color']); + if (empty($asset_tag_color)) { + $asset_tag_color = "dark"; + } + $asset_tag_icon = nullable_htmlentities($row['tag_icon']); + if (empty($asset_tag_icon)) { + $asset_tag_icon = "tag"; + } + + $asset_tag_id_array[] = $asset_tag_id; + $asset_tag_name_display_array[] = "
$asset_tag_name"; +} +$asset_tags_display = implode('', $asset_tag_name_display_array); + // Network Interfaces $sql_related_interfaces = mysqli_query($mysqli, " SELECT @@ -262,8 +284,13 @@ ob_start();
+ +
+ +
+ -
+
diff --git a/agent/modals/contact/contact_details.php b/agent/modals/contact/contact_details.php index 59e4ff11..a6121544 100644 --- a/agent/modals/contact/contact_details.php +++ b/agent/modals/contact/contact_details.php @@ -51,7 +51,14 @@ $auth_method = nullable_htmlentities($row['user_auth_method']); $contact_client_id = intval($row['contact_client_id']); // Related Assets Query - 1 to 1 relationship -$sql_related_assets = mysqli_query($mysqli, "SELECT * FROM assets LEFT JOIN asset_interfaces ON interface_asset_id = asset_id AND interface_primary = 1 WHERE asset_contact_id = $contact_id ORDER BY asset_name DESC"); +$sql_related_assets = mysqli_query($mysqli, "SELECT * FROM assets + LEFT JOIN asset_interfaces ON interface_asset_id = asset_id AND interface_primary = 1 + LEFT JOIN asset_tags ON asset_tag_asset_id = asset_id + LEFT JOIN tags ON tag_id = asset_tag_tag_id + WHERE asset_contact_id = $contact_id + GROUP BY asset_id + ORDER BY asset_name ASC" +); $asset_count = mysqli_num_rows($sql_related_assets); // Linked Software Licenses @@ -77,7 +84,7 @@ $sql_related_credentials = mysqli_query($mysqli, " LEFT JOIN tags ON tags.tag_id = credential_tags.tag_id WHERE credential_contact_id = $contact_id GROUP BY credentials.credential_id - ORDER BY credential_name DESC + ORDER BY credential_name ASC "); $credential_count = mysqli_num_rows($sql_related_credentials); @@ -376,6 +383,27 @@ ob_start(); $asset_notes = nullable_htmlentities($row['asset_notes']); $asset_created_at = nullable_htmlentities($row['asset_created_at']); $device_icon = getAssetIcon($asset_type); + // Tags + $asset_tag_name_display_array = array(); + $asset_tag_id_array = array(); + $sql_asset_tags = mysqli_query($mysqli, "SELECT * FROM asset_tags LEFT JOIN tags ON asset_tag_tag_id = tag_id WHERE asset_tag_asset_id = $asset_id ORDER BY tag_name ASC"); + while ($row = mysqli_fetch_array($sql_asset_tags)) { + + $asset_tag_id = intval($row['tag_id']); + $asset_tag_name = nullable_htmlentities($row['tag_name']); + $asset_tag_color = nullable_htmlentities($row['tag_color']); + if (empty($asset_tag_color)) { + $asset_tag_color = "dark"; + } + $asset_tag_icon = nullable_htmlentities($row['tag_icon']); + if (empty($asset_tag_icon)) { + $asset_tag_icon = "tag"; + } + + $asset_tag_id_array[] = $asset_tag_id; + $asset_tag_name_display_array[] = "$asset_tag_name"; + } + $asset_tags_display = implode('', $asset_tag_name_display_array); ?> @@ -389,6 +417,12 @@ ob_start();
+ +
+ +
+