diff --git a/gaseous-server/Classes/RomMediaGroup.cs b/gaseous-server/Classes/RomMediaGroup.cs index 706d3d2..0cc5859 100644 --- a/gaseous-server/Classes/RomMediaGroup.cs +++ b/gaseous-server/Classes/RomMediaGroup.cs @@ -269,21 +269,47 @@ namespace gaseous_server.Classes // build m3u romItems.Sort((a, b) => { - var firstCompare = a.MediaDetail.Number.ToString().CompareTo(b.MediaDetail.Number.ToString()); - return firstCompare != 0 ? firstCompare : a.MediaDetail.Side.CompareTo(b.MediaDetail.Side); + if (a.MediaDetail != null) + { + if (a.MediaDetail.Number != null && a.MediaDetail.Side != null) + { + var firstCompare = a.MediaDetail.Number.ToString().CompareTo(b.MediaDetail.Number.ToString()); + return firstCompare != 0 ? firstCompare : a.MediaDetail.Side.CompareTo(b.MediaDetail.Side); + } + else if (a.MediaDetail.Number != null && a.MediaDetail.Side == null) + { + return a.MediaDetail.Number.ToString().CompareTo(b.MediaDetail.Number.ToString()); + } + else if (a.MediaDetail.Number == null && a.MediaDetail.Side != null) + { + return a.MediaDetail.Side.ToString().CompareTo(b.MediaDetail.Side.ToString()); + } + else + { + return a.Name.CompareTo(b.Name); + } + } + else + { + return a.Name.CompareTo(b.Name); + } } ); foreach (Roms.GameRomItem romItem in romItems) { string M3UFileContent = ""; M3UFileContent += romItem.Name; - if (romItem.MediaLabel != null) + if (romItem.MediaLabel.Length == 0) { - if (romItem.MediaLabel.Length > 0) + if (romItem.RomTypeMedia.Length > 0) { - M3UFileContent += "|" + romItem.MediaLabel; + M3UFileContent += "|" + romItem.RomTypeMedia; } } + else + { + M3UFileContent += "|" + romItem.MediaLabel; + } M3UFileContents.Add(M3UFileContent); } diff --git a/gaseous-server/ProcessQueue.cs b/gaseous-server/ProcessQueue.cs index 406cc2c..66cdee3 100644 --- a/gaseous-server/ProcessQueue.cs +++ b/gaseous-server/ProcessQueue.cs @@ -124,7 +124,7 @@ namespace gaseous_server case QueueItemType.MetadataRefresh: Logging.Log(Logging.LogType.Debug, "Timered Event", "Starting Metadata Refresher"); - Classes.MetadataManagement.RefreshMetadata(true); + Classes.MetadataManagement.RefreshMetadata(); _SaveLastRunTime = true; diff --git a/gaseous-server/wwwroot/pages/game.html b/gaseous-server/wwwroot/pages/game.html index 1bf8752..cab951e 100644 --- a/gaseous-server/wwwroot/pages/game.html +++ b/gaseous-server/wwwroot/pages/game.html @@ -66,7 +66,7 @@
-