@if (bios != null)
{
BIOS
Manufacturer
Serial Number
Version
System Version
Release Date
@foreach (var b in bios)
{
@b.Manufacturer
@b.SerialNumber
@b.SMBIOSBIOSVersion @(b.SMBIOSMajorVersion.GetValueOrDefault(0)).@b.SMBIOSMinorVersion
@(b.SystemBiosMajorVersion).@b.SystemBiosMinorVersion
@if (b.ReleaseDate.HasValue)
{
@b.ReleaseDate.Value.ToString("yyyy-MM-dd")
}
}
}
@if (baseBoard != null)
{
Base Board
Manufacturer
Model
Product
Part Number
SKU
Serial Number
Config Options
Version
@foreach (var b in baseBoard)
{
@b.Manufacturer
@b.Model
@b.Product
@b.PartNumber
@b.SKU
@b.SerialNumber
@if (b.ConfigOptions != null)
{
@string.Join("; ", b.ConfigOptions)
}
@b.Version
}
}
@if (computerSystem != null)
{
System
Description
Form Factor
Type
Primary Owner
Chassis SKU
System SKU
OEM Reference
Time Zone
Roles
@foreach (var c in computerSystem)
{
@c.Description
@c.PCSystemType
@c.SystemType
@c.PrimaryOwnerName @c.PrimaryOwnerContact
@c.ChassisSKUNumber
@c.SystemSKUNumber
@if (c.OEMStringArray != null)
{
@string.Join("; ", c.OEMStringArray)
}
@if (c.CurrentTimeZone.HasValue)
{
@((c.CurrentTimeZone.Value / 60).ToString(@"00\:"))@(Math.Abs(c.CurrentTimeZone.Value % 60).ToString("00"))
}
@if (c.Roles != null)
{
@string.Join("; ", c.Roles)
}
}
}
@if (processors != null)
{
Processors
Name
Description
Architecture
Max Clock Speed
Cores
Logical Processors
@foreach (var processor in processors)
{
@processor.Name
@processor.Description
@processor.Architecture
@processor.MaxClockSpeedFriendly()
@processor.NumberOfCores.GetValueOrDefault(0).ToString("N0")
@processor.NumberOfLogicalProcessors.GetValueOrDefault(0).ToString("N0")
}
}
@if (physicalMemory != null)
{
Memory
Location
Manufacturer
Part Number
Serial Number
Capacity
Clock Speed
@foreach (var memory in physicalMemory)
{
@memory.DeviceLocator
@memory.Manufacturer
@memory.PartNumber
@memory.SerialNumber
@memory.CapacityFriendly()
@memory.ConfiguredClockSpeed
}
}
@if (networkAdapters != null)
{
Network Adapters
Connection
Manufacturer
Product
Speed
MAC Address
@foreach (var adapter in networkAdapters)
{
@(adapter.NetConnectionID ?? "N/A") @if (adapter.IsWlanAdapter)
{ }
@adapter.Manufacturer
@adapter.ProductName
@adapter.SpeedFriendly()
@adapter.MACAddress
}
}
else
{
if (lanMacAddress != null)
{
LAN MAC Address
@lanMacAddress
}
if (wlanMacAddress != null)
{
WLAN MAC Address
@wlanMacAddress
}
}
@if (diskDrives != null)
{
Disk Drives
Manufacturer
Model
Serial Number
Firmware
Type
Interface
Size
@foreach (var disk in diskDrives)
{
@disk.Manufacturer
@disk.Model
@disk.SerialNumber
@disk.FirmwareRevision
@disk.MediaType
@disk.InterfaceType
@disk.SizeFriendly()
if (disk.Partitions != null)
{
// calculate stretched offsets
var minPartitionSize = (double)disk.Size * 0.1;
var diskSizeAdjusted = disk.Partitions.Sum(p => Math.Max(minPartitionSize, p.Size.GetValueOrDefault(0)));
var diskAdjustedOffet = (double)0;
@foreach (var partition in disk.Partitions)
{
var logicalDisk = partition.LogicalDisk;
var offsetPercentage = Math.Round(((partition.StartingOffset.GetValueOrDefault(0) + diskAdjustedOffet) / diskSizeAdjusted) * 100, 3);
var widthPercentage = Math.Round((Math.Max(minPartitionSize, partition.Size.GetValueOrDefault(0)) / diskSizeAdjusted) * 100, 3);
var freeSpacePercentage = 0d;
if (partition.Size < minPartitionSize)
{
diskAdjustedOffet += minPartitionSize - partition.Size.GetValueOrDefault(0);
}
var partitionTitle = partition.Type;
var tags = new List();
if (partition.BootPartition.GetValueOrDefault(false))
{
tags.Add("Boot");
}
if (partition.PrimaryParition.GetValueOrDefault(false))
{
tags.Add("Primary");
}
if (logicalDisk != null)
{
partitionTitle = string.Format("{0} {1}", logicalDisk.DeviceID, logicalDisk.VolumeName);
tags.Add(logicalDisk.SizeFriendly());
tags.Add(logicalDisk.FreeSpaceFriendly() + " Free");
tags.Add(logicalDisk.FileSystem);
tags.Add(logicalDisk.DriveType);
freeSpacePercentage = Math.Round(((double)logicalDisk.FreeSpace.GetValueOrDefault(0) / logicalDisk.Size.GetValueOrDefault(0)) * 100, 3);
}
else
{
tags.Add(partition.SizeFriendly());
}
var tag = string.Join(" | ", tags);
@if (freeSpacePercentage > 0.5)
{
}
@partitionTitle
@tag
}
}
}
}
@if (!string.IsNullOrEmpty(mdmHardwareData))
{
MDM Hardware Data
Copy
Show
@mdmHardwareData
}
AC Adapter
@if (canConfig)
{
@Html.TextBox("DeviceDetail_ACAdapter", Model.Device.DeviceDetails.ACAdapter()) @AjaxHelpers.AjaxSave() @AjaxHelpers.AjaxLoader()
}
else
{
@(Model.Device.DeviceDetails.ACAdapter() ?? "Unknown")
}
Battery
@if (canConfig)
{
@Html.TextBox("DeviceDetail_Battery", Model.Device.DeviceDetails.Battery()) @AjaxHelpers.AjaxSave() @AjaxHelpers.AjaxLoader()
}
else
{
@(Model.Device.DeviceDetails.Battery() ?? "Unknown")
}
@if (batteries != null)
{
Name
Description
Availability
Chemistry
Design Voltage
Design Capacity
Capacity
@foreach (var battery in batteries)
{
@battery.Name
@battery.Description
@battery.Availability
@battery.Chemistry
@battery.DesignVoltage.GetValueOrDefault(0).ToString("N0") mV
@battery.DesignCapacity.GetValueOrDefault(0).ToString("N0") mWh
@battery.FullChargeCapacity.GetValueOrDefault(0).ToString("N0") mWh
}
}
Keyboard
@if (canConfig)
{
@Html.TextBox("DeviceDetail_Keyboard", Model.Device.DeviceDetails.Keyboard()) @AjaxHelpers.AjaxSave() @AjaxHelpers.AjaxLoader()
}
else
{
@(Model.Device.DeviceDetails.Keyboard() ?? "Unknown")
}
@if (Model.Device.LastEnrolDate.HasValue)
{
Details collected @CommonHelpers.FriendlyDate(Model.Device.LastEnrolDate) at time of last enrolment
}