mirror of
https://github.com/aaru-dps/Aaru.Server.git
synced 2025-12-16 19:24:27 +00:00
Move real media chart to ChartJS.
This commit is contained in:
@@ -535,5 +535,41 @@ namespace DiscImageChef.Server.Controllers
|
||||
|
||||
return Json(result);
|
||||
}
|
||||
|
||||
public IActionResult GetRealMediaData()
|
||||
{
|
||||
Media[] realMedias = ctx.Medias.Where(o => o.Real).OrderByDescending(o => o.Count).Take(10).ToArray();
|
||||
|
||||
foreach (Media media in realMedias)
|
||||
{
|
||||
try
|
||||
{
|
||||
MediaType.
|
||||
MediaTypeToString((CommonTypes.MediaType)Enum.Parse(typeof(CommonTypes.MediaType), media.Type),
|
||||
out string type, out string subtype);
|
||||
|
||||
media.Type = $"{type} ({subtype})";
|
||||
}
|
||||
catch
|
||||
{
|
||||
// Could not get media type/subtype pair from type, so just leave it as is
|
||||
}
|
||||
}
|
||||
|
||||
string[][] result =
|
||||
{
|
||||
realMedias.Select(v => v.Type).ToArray(),
|
||||
realMedias.Select(x => x.Count.ToString()).ToArray()
|
||||
};
|
||||
|
||||
if(result[0].Length < 10)
|
||||
return Json(result);
|
||||
|
||||
result[0][9] = "Other";
|
||||
|
||||
result[1][9] = (ctx.Medias.Where(o => o.Real).Sum(o => o.Count) - result[1].Take(9).Sum(long.Parse)).ToString();
|
||||
|
||||
return Json(result);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -389,7 +389,8 @@
|
||||
@if (ViewBag.repRealMedia != null)
|
||||
{
|
||||
<div class="container mt-3" id="divRealMedia">
|
||||
<div class="container" id="realMediaChart">
|
||||
<div class="container">
|
||||
<canvas id="realMediaChart"></canvas>
|
||||
</div>
|
||||
<div class="accordion mt-3" id="realMediaAccordion">
|
||||
<div class="card">
|
||||
@@ -601,6 +602,11 @@ function DrawVirtualMediaPie(virtualMediaData)
|
||||
DrawPie("virtualMediaChart", `Top ${virtualMediaData[0].length} media types found in images`, virtualMediaData[0], virtualMediaData[1])
|
||||
}
|
||||
|
||||
function DrawRealMediaPie(realMediaData)
|
||||
{
|
||||
DrawPie("realMediaChart", `Top ${realMediaData[0].length} media types found in devices`, realMediaData[0], realMediaData[1])
|
||||
}
|
||||
|
||||
window.onload = () => {
|
||||
$.ajax({dataType: "json", url: "/Stats/GetOsData", success: DrawOsPie, cache:false});
|
||||
$.ajax({dataType: "json", url: "/Stats/GetLinuxData", success: DrawLinuxPie, cache:false});
|
||||
@@ -613,6 +619,7 @@ window.onload = () => {
|
||||
$.ajax({dataType: "json", url: "/Stats/GetPartitionsData", success: DrawPartitionsPie, cache:false});
|
||||
$.ajax({dataType: "json", url: "/Stats/GetFilesystemsData", success: DrawFilesystemsPie, cache:false});
|
||||
$.ajax({dataType: "json", url: "/Stats/GetVirtualMediaData", success: DrawVirtualMediaPie, cache:false});
|
||||
$.ajax({dataType: "json", url: "/Stats/GetRealMediaData", success: DrawRealMediaPie, cache:false});
|
||||
}
|
||||
|
||||
</script>
|
||||
Reference in New Issue
Block a user