diff --git a/DiscImageChef.Server/Areas/Admin/Views/TestedMedias/Details.cshtml b/DiscImageChef.Server/Areas/Admin/Views/TestedMedias/Details.cshtml
index 5cce5f8a..2474e498 100644
--- a/DiscImageChef.Server/Areas/Admin/Views/TestedMedias/Details.cshtml
+++ b/DiscImageChef.Server/Areas/Admin/Views/TestedMedias/Details.cshtml
@@ -34,14 +34,22 @@
// ****************************************************************************/
}
-
TestedMedia
+
Tested media
-
@Html.DisplayNameFor(model => model.IdentifyData)
-
- @Html.DisplayFor(model => model.IdentifyData)
+ @if (Model.IdentifyData != null)
+ {
+ @Model.IdentifyData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.Blocks)
@@ -245,7 +253,14 @@
@Html.DisplayNameFor(model => model.Density)
-
- @Html.DisplayFor(model => model.Density)
+ @if (Model.Density is null)
+ {
+ @("")
+ }
+ else
+ {
+ @Html.DisplayFor(model => model.Density)
+ }
-
@Html.DisplayNameFor(model => model.LongBlockSize)
@@ -269,7 +284,14 @@
@Html.DisplayNameFor(model => model.MediumType)
-
- @Html.DisplayFor(model => model.MediumType)
+ @if (Model.MediumType is null)
+ {
+ @("")
+ }
+ else
+ {
+ @Html.DisplayFor(model => model.MediumType)
+ }
-
@Html.DisplayNameFor(model => model.MediumTypeName)
@@ -395,13 +417,29 @@
@Html.DisplayNameFor(model => model.ModeSense6Data)
-
- @Html.DisplayFor(model => model.ModeSense6Data)
+ @if (Model.ModeSense6Data != null)
+ {
+ @Model.ModeSense6Data.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.ModeSense10Data)
-
- @Html.DisplayFor(model => model.ModeSense10Data)
+ @if (Model.ModeSense10Data != null)
+ {
+ @Model.ModeSense10Data.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.LBASectors)
@@ -443,13 +481,27 @@
@Html.DisplayNameFor(model => model.UnformattedBPT)
-
- @Html.DisplayFor(model => model.UnformattedBPT)
+ @if (Model.UnformattedBPT is null)
+ {
+ @("")
+ }
+ else
+ {
+ @Html.DisplayFor(model => model.UnformattedBPT)
+ }
-
@Html.DisplayNameFor(model => model.UnformattedBPS)
-
- @Html.DisplayFor(model => model.UnformattedBPS)
+ @if (Model.UnformattedBPS is null)
+ {
+ @("")
+ }
+ else
+ {
+ @Html.DisplayFor(model => model.UnformattedBPS)
+ }
-
@Html.DisplayNameFor(model => model.SupportsReadDmaLba)
@@ -557,385 +609,897 @@
@Html.DisplayNameFor(model => model.IntersessionLeadInData)
-
- @Html.DisplayFor(model => model.IntersessionLeadInData)
+ @if (Model.IntersessionLeadInData != null)
+ {
+ @Model.IntersessionLeadInData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.IntersessionLeadOutData)
-
- @Html.DisplayFor(model => model.IntersessionLeadOutData)
+ @if (Model.IntersessionLeadOutData != null)
+ {
+ @Model.IntersessionLeadOutData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.Read6Data)
-
- @Html.DisplayFor(model => model.Read6Data)
+ @if (Model.Read6Data != null)
+ {
+ @Model.Read6Data.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.Read10Data)
-
- @Html.DisplayFor(model => model.Read10Data)
+ @if (Model.Read10Data != null)
+ {
+ @Model.Read10Data.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.Read12Data)
-
- @Html.DisplayFor(model => model.Read12Data)
+ @if (Model.Read12Data != null)
+ {
+ @Model.Read12Data.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.Read16Data)
-
- @Html.DisplayFor(model => model.Read16Data)
+ @if (Model.Read16Data != null)
+ {
+ @Model.Read16Data.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.ReadLong10Data)
-
- @Html.DisplayFor(model => model.ReadLong10Data)
+ @if (Model.ReadLong10Data != null)
+ {
+ @Model.ReadLong10Data.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.ReadLong16Data)
-
- @Html.DisplayFor(model => model.ReadLong16Data)
+ @if (Model.ReadLong16Data != null)
+ {
+ @Model.ReadLong16Data.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.ReadSectorsData)
-
- @Html.DisplayFor(model => model.ReadSectorsData)
+ @if (Model.ReadSectorsData != null)
+ {
+ @Model.ReadSectorsData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.ReadSectorsRetryData)
-
- @Html.DisplayFor(model => model.ReadSectorsRetryData)
+ @if (Model.ReadSectorsRetryData != null)
+ {
+ @Model.ReadSectorsRetryData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.ReadDmaData)
-
- @Html.DisplayFor(model => model.ReadDmaData)
+ @if (Model.ReadDmaData != null)
+ {
+ @Model.ReadDmaData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.ReadDmaRetryData)
-
- @Html.DisplayFor(model => model.ReadDmaRetryData)
+ @if (Model.ReadDmaRetryData != null)
+ {
+ @Model.ReadDmaRetryData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.ReadLbaData)
-
- @Html.DisplayFor(model => model.ReadLbaData)
+ @if (Model.ReadLbaData != null)
+ {
+ @Model.ReadLbaData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.ReadRetryLbaData)
-
- @Html.DisplayFor(model => model.ReadRetryLbaData)
+ @if (Model.ReadRetryLbaData != null)
+ {
+ @Model.ReadRetryLbaData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.ReadDmaLbaData)
-
- @Html.DisplayFor(model => model.ReadDmaLbaData)
+ @if (Model.ReadDmaLbaData != null)
+ {
+ @Model.ReadDmaLbaData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.ReadDmaRetryLbaData)
-
- @Html.DisplayFor(model => model.ReadDmaRetryLbaData)
+ @if (Model.ReadDmaRetryLbaData != null)
+ {
+ @Model.ReadDmaRetryLbaData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.ReadLba48Data)
-
- @Html.DisplayFor(model => model.ReadLba48Data)
+ @if (Model.ReadLba48Data != null)
+ {
+ @Model.ReadLba48Data.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.ReadDmaLba48Data)
-
- @Html.DisplayFor(model => model.ReadDmaLba48Data)
+ @if (Model.ReadDmaLba48Data != null)
+ {
+ @Model.ReadDmaLba48Data.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.ReadLongData)
-
- @Html.DisplayFor(model => model.ReadLongData)
+ @if (Model.ReadLongData != null)
+ {
+ @Model.ReadLongData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.ReadLongRetryData)
-
- @Html.DisplayFor(model => model.ReadLongRetryData)
+ @if (Model.ReadLongRetryData != null)
+ {
+ @Model.ReadLongRetryData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.ReadLongLbaData)
-
- @Html.DisplayFor(model => model.ReadLongLbaData)
+ @if (Model.ReadLongLbaData != null)
+ {
+ @Model.ReadLongLbaData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.ReadLongRetryLbaData)
-
- @Html.DisplayFor(model => model.ReadLongRetryLbaData)
+ @if (Model.ReadLongRetryLbaData != null)
+ {
+ @Model.ReadLongRetryLbaData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.TocData)
-
- @Html.DisplayFor(model => model.TocData)
+ @if (Model.TocData != null)
+ {
+ @Model.TocData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.FullTocData)
-
- @Html.DisplayFor(model => model.FullTocData)
+ @if (Model.FullTocData != null)
+ {
+ @Model.FullTocData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.AtipData)
-
- @Html.DisplayFor(model => model.AtipData)
+ @if (Model.AtipData != null)
+ {
+ @Model.AtipData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.PmaData)
-
- @Html.DisplayFor(model => model.PmaData)
+ @if (Model.PmaData != null)
+ {
+ @Model.PmaData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.ReadCdData)
-
- @Html.DisplayFor(model => model.ReadCdData)
+ @if (Model.ReadCdData != null)
+ {
+ @Model.ReadCdData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.ReadCdMsfData)
-
- @Html.DisplayFor(model => model.ReadCdMsfData)
+ @if (Model.ReadCdMsfData != null)
+ {
+ @Model.ReadCdMsfData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.ReadCdFullData)
-
- @Html.DisplayFor(model => model.ReadCdFullData)
+ @if (Model.ReadCdFullData != null)
+ {
+ @Model.ReadCdFullData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.ReadCdMsfFullData)
-
- @Html.DisplayFor(model => model.ReadCdMsfFullData)
+ @if (Model.ReadCdMsfFullData != null)
+ {
+ @Model.ReadCdMsfFullData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.Track1PregapData)
-
- @Html.DisplayFor(model => model.Track1PregapData)
+ @if (Model.Track1PregapData != null)
+ {
+ @Model.Track1PregapData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.LeadInData)
-
- @Html.DisplayFor(model => model.LeadInData)
+ @if (Model.LeadInData != null)
+ {
+ @Model.LeadInData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.LeadOutData)
-
- @Html.DisplayFor(model => model.LeadOutData)
+ @if (Model.LeadOutData != null)
+ {
+ @Model.LeadOutData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.C2PointersData)
-
- @Html.DisplayFor(model => model.C2PointersData)
+ @if (Model.C2PointersData != null)
+ {
+ @Model.C2PointersData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.PQSubchannelData)
-
- @Html.DisplayFor(model => model.PQSubchannelData)
+ @if (Model.PQSubchannelData != null)
+ {
+ @Model.PQSubchannelData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.RWSubchannelData)
-
- @Html.DisplayFor(model => model.RWSubchannelData)
+ @if (Model.RWSubchannelData != null)
+ {
+ @Model.RWSubchannelData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.CorrectedSubchannelData)
-
- @Html.DisplayFor(model => model.CorrectedSubchannelData)
+ @if (Model.CorrectedSubchannelData != null)
+ {
+ @Model.CorrectedSubchannelData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.PQSubchannelWithC2Data)
-
- @Html.DisplayFor(model => model.PQSubchannelWithC2Data)
+ @if (Model.PQSubchannelWithC2Data != null)
+ {
+ @Model.PQSubchannelWithC2Data.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.RWSubchannelWithC2Data)
-
- @Html.DisplayFor(model => model.RWSubchannelWithC2Data)
+ @if (Model.RWSubchannelWithC2Data != null)
+ {
+ @Model.RWSubchannelWithC2Data.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.CorrectedSubchannelWithC2Data)
-
- @Html.DisplayFor(model => model.CorrectedSubchannelWithC2Data)
+ @if (Model.CorrectedSubchannelWithC2Data != null)
+ {
+ @Model.CorrectedSubchannelWithC2Data.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.PfiData)
-
- @Html.DisplayFor(model => model.PfiData)
+ @if (Model.PfiData != null)
+ {
+ @Model.PfiData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.DmiData)
-
- @Html.DisplayFor(model => model.DmiData)
+ @if (Model.DmiData != null)
+ {
+ @Model.DmiData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.CmiData)
-
- @Html.DisplayFor(model => model.CmiData)
+ @if (Model.CmiData != null)
+ {
+ @Model.CmiData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.DvdBcaData)
-
- @Html.DisplayFor(model => model.DvdBcaData)
+ @if (Model.DvdBcaData != null)
+ {
+ @Model.DvdBcaData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.DvdAacsData)
-
- @Html.DisplayFor(model => model.DvdAacsData)
+ @if (Model.DvdAacsData != null)
+ {
+ @Model.DvdAacsData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.DvdDdsData)
-
- @Html.DisplayFor(model => model.DvdDdsData)
+ @if (Model.DvdDdsData != null)
+ {
+ @Model.DvdDdsData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.DvdSaiData)
-
- @Html.DisplayFor(model => model.DvdSaiData)
+ @if (Model.DvdSaiData != null)
+ {
+ @Model.DvdSaiData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.PriData)
-
- @Html.DisplayFor(model => model.PriData)
+ @if (Model.PriData != null)
+ {
+ @Model.PriData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.EmbossedPfiData)
-
- @Html.DisplayFor(model => model.EmbossedPfiData)
+ @if (Model.EmbossedPfiData != null)
+ {
+ @Model.EmbossedPfiData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.AdipData)
-
- @Html.DisplayFor(model => model.AdipData)
+ @if (Model.AdipData != null)
+ {
+ @Model.AdipData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.DcbData)
-
- @Html.DisplayFor(model => model.DcbData)
+ @if (Model.DcbData != null)
+ {
+ @Model.DcbData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.HdCmiData)
-
- @Html.DisplayFor(model => model.HdCmiData)
+ @if (Model.HdCmiData != null)
+ {
+ @Model.HdCmiData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.DvdLayerData)
-
- @Html.DisplayFor(model => model.DvdLayerData)
+ @if (Model.DvdLayerData != null)
+ {
+ @Model.DvdLayerData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.BluBcaData)
-
- @Html.DisplayFor(model => model.BluBcaData)
+ @if (Model.BluBcaData != null)
+ {
+ @Model.BluBcaData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.BluDdsData)
-
- @Html.DisplayFor(model => model.BluDdsData)
+ @if (Model.BluDdsData != null)
+ {
+ @Model.BluDdsData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.BluSaiData)
-
- @Html.DisplayFor(model => model.BluSaiData)
+ @if (Model.BluSaiData != null)
+ {
+ @Model.BluSaiData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.BluDiData)
-
- @Html.DisplayFor(model => model.BluDiData)
+ @if (Model.BluDiData != null)
+ {
+ @Model.BluDiData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.BluPacData)
-
- @Html.DisplayFor(model => model.BluPacData)
+ @if (Model.PlextorReadCddaData != null)
+ {
+ @Model.PlextorReadCddaData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.PlextorReadCddaData)
-
- @Html.DisplayFor(model => model.PlextorReadCddaData)
+ @if (Model.PlextorReadCddaData != null)
+ {
+ @Model.PlextorReadCddaData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.PioneerReadCddaData)
-
- @Html.DisplayFor(model => model.PioneerReadCddaData)
+ @if (Model.PioneerReadCddaData != null)
+ {
+ @Model.PioneerReadCddaData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.PioneerReadCddaMsfData)
-
- @Html.DisplayFor(model => model.PioneerReadCddaMsfData)
+ @if (Model.PioneerReadCddaMsfData != null)
+ {
+ @Model.PioneerReadCddaMsfData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.NecReadCddaData)
-
- @Html.DisplayFor(model => model.NecReadCddaData)
+ @if (Model.NecReadCddaData != null)
+ {
+ @Model.NecReadCddaData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.PlextorReadRawDVDData)
-
- @Html.DisplayFor(model => model.PlextorReadRawDVDData)
+ @if (Model.PlextorReadRawDVDData != null)
+ {
+ @Model.PlextorReadRawDVDData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }
-
@Html.DisplayNameFor(model => model.HLDTSTReadRawDVDData)
-
- @Html.DisplayFor(model => model.HLDTSTReadRawDVDData)
+ @if (Model.HLDTSTReadRawDVDData != null)
+ {
+ @Model.HLDTSTReadRawDVDData.Length bytes
+ }
+ else
+ {
+ @("")
+ ;
+ }