diff --git a/LANCommander.SDK/LANCommander.SDK.csproj b/LANCommander.SDK/LANCommander.SDK.csproj index a937ca14..6ccd8cc1 100644 --- a/LANCommander.SDK/LANCommander.SDK.csproj +++ b/LANCommander.SDK/LANCommander.SDK.csproj @@ -21,12 +21,12 @@ - - + + - + diff --git a/LANCommander.Server.Data.SQLite/LANCommander.Server.Data.SQLite.csproj b/LANCommander.Server.Data.SQLite/LANCommander.Server.Data.SQLite.csproj new file mode 100644 index 00000000..6af5e627 --- /dev/null +++ b/LANCommander.Server.Data.SQLite/LANCommander.Server.Data.SQLite.csproj @@ -0,0 +1,19 @@ + + + + net8.0 + enable + enable + + + + + + + + + + + + + diff --git a/LANCommander.Server/Migrations/20220905222402_InitialSeed.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20220905222402_InitialSeed.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20220905222402_InitialSeed.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20220905222402_InitialSeed.Designer.cs diff --git a/LANCommander.Server/Migrations/20220905222402_InitialSeed.cs b/LANCommander.Server.Data.SQLite/Migrations/20220905222402_InitialSeed.cs similarity index 100% rename from LANCommander.Server/Migrations/20220905222402_InitialSeed.cs rename to LANCommander.Server.Data.SQLite/Migrations/20220905222402_InitialSeed.cs diff --git a/LANCommander.Server/Migrations/20220907043213_AddCompanies.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20220907043213_AddCompanies.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20220907043213_AddCompanies.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20220907043213_AddCompanies.Designer.cs diff --git a/LANCommander.Server/Migrations/20220907043213_AddCompanies.cs b/LANCommander.Server.Data.SQLite/Migrations/20220907043213_AddCompanies.cs similarity index 100% rename from LANCommander.Server/Migrations/20220907043213_AddCompanies.cs rename to LANCommander.Server.Data.SQLite/Migrations/20220907043213_AddCompanies.cs diff --git a/LANCommander.Server/Migrations/20221229082813_AlterGameRequiredFields.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20221229082813_AlterGameRequiredFields.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20221229082813_AlterGameRequiredFields.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20221229082813_AlterGameRequiredFields.Designer.cs diff --git a/LANCommander.Server/Migrations/20221229082813_AlterGameRequiredFields.cs b/LANCommander.Server.Data.SQLite/Migrations/20221229082813_AlterGameRequiredFields.cs similarity index 100% rename from LANCommander.Server/Migrations/20221229082813_AlterGameRequiredFields.cs rename to LANCommander.Server.Data.SQLite/Migrations/20221229082813_AlterGameRequiredFields.cs diff --git a/LANCommander.Server/Migrations/20221230033714_AddGameArchives.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20221230033714_AddGameArchives.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20221230033714_AddGameArchives.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20221230033714_AddGameArchives.Designer.cs diff --git a/LANCommander.Server/Migrations/20221230033714_AddGameArchives.cs b/LANCommander.Server.Data.SQLite/Migrations/20221230033714_AddGameArchives.cs similarity index 100% rename from LANCommander.Server/Migrations/20221230033714_AddGameArchives.cs rename to LANCommander.Server.Data.SQLite/Migrations/20221230033714_AddGameArchives.cs diff --git a/LANCommander.Server/Migrations/20230103064847_RekeyUsers.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20230103064847_RekeyUsers.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20230103064847_RekeyUsers.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230103064847_RekeyUsers.Designer.cs diff --git a/LANCommander.Server/Migrations/20230103064847_RekeyUsers.cs b/LANCommander.Server.Data.SQLite/Migrations/20230103064847_RekeyUsers.cs similarity index 100% rename from LANCommander.Server/Migrations/20230103064847_RekeyUsers.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230103064847_RekeyUsers.cs diff --git a/LANCommander.Server/Migrations/20230103070011_SimplifyUserNavigation.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20230103070011_SimplifyUserNavigation.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20230103070011_SimplifyUserNavigation.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230103070011_SimplifyUserNavigation.Designer.cs diff --git a/LANCommander.Server/Migrations/20230103070011_SimplifyUserNavigation.cs b/LANCommander.Server.Data.SQLite/Migrations/20230103070011_SimplifyUserNavigation.cs similarity index 100% rename from LANCommander.Server/Migrations/20230103070011_SimplifyUserNavigation.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230103070011_SimplifyUserNavigation.cs diff --git a/LANCommander.Server/Migrations/20230105053952_AddUserRefreshToken.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20230105053952_AddUserRefreshToken.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20230105053952_AddUserRefreshToken.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230105053952_AddUserRefreshToken.Designer.cs diff --git a/LANCommander.Server/Migrations/20230105053952_AddUserRefreshToken.cs b/LANCommander.Server.Data.SQLite/Migrations/20230105053952_AddUserRefreshToken.cs similarity index 100% rename from LANCommander.Server/Migrations/20230105053952_AddUserRefreshToken.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230105053952_AddUserRefreshToken.cs diff --git a/LANCommander.Server/Migrations/20230106065219_AddArchiveFileSizes.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20230106065219_AddArchiveFileSizes.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20230106065219_AddArchiveFileSizes.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230106065219_AddArchiveFileSizes.Designer.cs diff --git a/LANCommander.Server/Migrations/20230106065219_AddArchiveFileSizes.cs b/LANCommander.Server.Data.SQLite/Migrations/20230106065219_AddArchiveFileSizes.cs similarity index 100% rename from LANCommander.Server/Migrations/20230106065219_AddArchiveFileSizes.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230106065219_AddArchiveFileSizes.cs diff --git a/LANCommander.Server/Migrations/20230108011351_AddKeyModel.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20230108011351_AddKeyModel.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20230108011351_AddKeyModel.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230108011351_AddKeyModel.Designer.cs diff --git a/LANCommander.Server/Migrations/20230108011351_AddKeyModel.cs b/LANCommander.Server.Data.SQLite/Migrations/20230108011351_AddKeyModel.cs similarity index 100% rename from LANCommander.Server/Migrations/20230108011351_AddKeyModel.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230108011351_AddKeyModel.cs diff --git a/LANCommander.Server/Migrations/20230108014549_AdjustKeyColumnLengths.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20230108014549_AdjustKeyColumnLengths.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20230108014549_AdjustKeyColumnLengths.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230108014549_AdjustKeyColumnLengths.Designer.cs diff --git a/LANCommander.Server/Migrations/20230108014549_AdjustKeyColumnLengths.cs b/LANCommander.Server.Data.SQLite/Migrations/20230108014549_AdjustKeyColumnLengths.cs similarity index 100% rename from LANCommander.Server/Migrations/20230108014549_AdjustKeyColumnLengths.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230108014549_AdjustKeyColumnLengths.cs diff --git a/LANCommander.Server/Migrations/20230109032336_ManifestMigration.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20230109032336_ManifestMigration.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20230109032336_ManifestMigration.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230109032336_ManifestMigration.Designer.cs diff --git a/LANCommander.Server/Migrations/20230109032336_ManifestMigration.cs b/LANCommander.Server.Data.SQLite/Migrations/20230109032336_ManifestMigration.cs similarity index 100% rename from LANCommander.Server/Migrations/20230109032336_ManifestMigration.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230109032336_ManifestMigration.cs diff --git a/LANCommander.Server/Migrations/20230109073520_CascadeGameArchiveDeletion.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20230109073520_CascadeGameArchiveDeletion.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20230109073520_CascadeGameArchiveDeletion.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230109073520_CascadeGameArchiveDeletion.Designer.cs diff --git a/LANCommander.Server/Migrations/20230109073520_CascadeGameArchiveDeletion.cs b/LANCommander.Server.Data.SQLite/Migrations/20230109073520_CascadeGameArchiveDeletion.cs similarity index 100% rename from LANCommander.Server/Migrations/20230109073520_CascadeGameArchiveDeletion.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230109073520_CascadeGameArchiveDeletion.cs diff --git a/LANCommander.Server/Migrations/20230109230618_CascadeGameKeyDeletion.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20230109230618_CascadeGameKeyDeletion.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20230109230618_CascadeGameKeyDeletion.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230109230618_CascadeGameKeyDeletion.Designer.cs diff --git a/LANCommander.Server/Migrations/20230109230618_CascadeGameKeyDeletion.cs b/LANCommander.Server.Data.SQLite/Migrations/20230109230618_CascadeGameKeyDeletion.cs similarity index 100% rename from LANCommander.Server/Migrations/20230109230618_CascadeGameKeyDeletion.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230109230618_CascadeGameKeyDeletion.cs diff --git a/LANCommander.Server/Migrations/20230110023006_AddGameIGDBId.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20230110023006_AddGameIGDBId.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20230110023006_AddGameIGDBId.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230110023006_AddGameIGDBId.Designer.cs diff --git a/LANCommander.Server/Migrations/20230110023006_AddGameIGDBId.cs b/LANCommander.Server.Data.SQLite/Migrations/20230110023006_AddGameIGDBId.cs similarity index 100% rename from LANCommander.Server/Migrations/20230110023006_AddGameIGDBId.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230110023006_AddGameIGDBId.cs diff --git a/LANCommander.Server/Migrations/20230110023249_ChangeGameRequiredFields.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20230110023249_ChangeGameRequiredFields.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20230110023249_ChangeGameRequiredFields.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230110023249_ChangeGameRequiredFields.Designer.cs diff --git a/LANCommander.Server/Migrations/20230110023249_ChangeGameRequiredFields.cs b/LANCommander.Server.Data.SQLite/Migrations/20230110023249_ChangeGameRequiredFields.cs similarity index 100% rename from LANCommander.Server/Migrations/20230110023249_ChangeGameRequiredFields.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230110023249_ChangeGameRequiredFields.cs diff --git a/LANCommander.Server/Migrations/20230113234542_UpdateActionAndMultiplayerModelRequired.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20230113234542_UpdateActionAndMultiplayerModelRequired.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20230113234542_UpdateActionAndMultiplayerModelRequired.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230113234542_UpdateActionAndMultiplayerModelRequired.Designer.cs diff --git a/LANCommander.Server/Migrations/20230113234542_UpdateActionAndMultiplayerModelRequired.cs b/LANCommander.Server.Data.SQLite/Migrations/20230113234542_UpdateActionAndMultiplayerModelRequired.cs similarity index 100% rename from LANCommander.Server/Migrations/20230113234542_UpdateActionAndMultiplayerModelRequired.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230113234542_UpdateActionAndMultiplayerModelRequired.cs diff --git a/LANCommander.Server/Migrations/20230115073716_AddScripts.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20230115073716_AddScripts.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20230115073716_AddScripts.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230115073716_AddScripts.Designer.cs diff --git a/LANCommander.Server/Migrations/20230115073716_AddScripts.cs b/LANCommander.Server.Data.SQLite/Migrations/20230115073716_AddScripts.cs similarity index 100% rename from LANCommander.Server/Migrations/20230115073716_AddScripts.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230115073716_AddScripts.cs diff --git a/LANCommander.Server/Migrations/20230115085220_AddScriptRequiresAdminOption.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20230115085220_AddScriptRequiresAdminOption.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20230115085220_AddScriptRequiresAdminOption.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230115085220_AddScriptRequiresAdminOption.Designer.cs diff --git a/LANCommander.Server/Migrations/20230115085220_AddScriptRequiresAdminOption.cs b/LANCommander.Server.Data.SQLite/Migrations/20230115085220_AddScriptRequiresAdminOption.cs similarity index 100% rename from LANCommander.Server/Migrations/20230115085220_AddScriptRequiresAdminOption.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230115085220_AddScriptRequiresAdminOption.cs diff --git a/LANCommander.Server/Migrations/20230116051528_AddIconField.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20230116051528_AddIconField.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20230116051528_AddIconField.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230116051528_AddIconField.Designer.cs diff --git a/LANCommander.Server/Migrations/20230116051528_AddIconField.cs b/LANCommander.Server.Data.SQLite/Migrations/20230116051528_AddIconField.cs similarity index 100% rename from LANCommander.Server/Migrations/20230116051528_AddIconField.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230116051528_AddIconField.cs diff --git a/LANCommander.Server/Migrations/20230117002451_AddActionSortOrder.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20230117002451_AddActionSortOrder.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20230117002451_AddActionSortOrder.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230117002451_AddActionSortOrder.Designer.cs diff --git a/LANCommander.Server/Migrations/20230117002451_AddActionSortOrder.cs b/LANCommander.Server.Data.SQLite/Migrations/20230117002451_AddActionSortOrder.cs similarity index 100% rename from LANCommander.Server/Migrations/20230117002451_AddActionSortOrder.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230117002451_AddActionSortOrder.cs diff --git a/LANCommander.Server/Migrations/20230118013618_AddGameSaves.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20230118013618_AddGameSaves.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20230118013618_AddGameSaves.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230118013618_AddGameSaves.Designer.cs diff --git a/LANCommander.Server/Migrations/20230118013618_AddGameSaves.cs b/LANCommander.Server.Data.SQLite/Migrations/20230118013618_AddGameSaves.cs similarity index 100% rename from LANCommander.Server/Migrations/20230118013618_AddGameSaves.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230118013618_AddGameSaves.cs diff --git a/LANCommander.Server/Migrations/20230121023958_Add64BitFlagForScripts.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20230121023958_Add64BitFlagForScripts.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20230121023958_Add64BitFlagForScripts.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230121023958_Add64BitFlagForScripts.Designer.cs diff --git a/LANCommander.Server/Migrations/20230121023958_Add64BitFlagForScripts.cs b/LANCommander.Server.Data.SQLite/Migrations/20230121023958_Add64BitFlagForScripts.cs similarity index 100% rename from LANCommander.Server/Migrations/20230121023958_Add64BitFlagForScripts.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230121023958_Add64BitFlagForScripts.cs diff --git a/LANCommander.Server/Migrations/20230123044346_Remove64BitScriptFlag.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20230123044346_Remove64BitScriptFlag.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20230123044346_Remove64BitScriptFlag.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230123044346_Remove64BitScriptFlag.Designer.cs diff --git a/LANCommander.Server/Migrations/20230123044346_Remove64BitScriptFlag.cs b/LANCommander.Server.Data.SQLite/Migrations/20230123044346_Remove64BitScriptFlag.cs similarity index 100% rename from LANCommander.Server/Migrations/20230123044346_Remove64BitScriptFlag.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230123044346_Remove64BitScriptFlag.cs diff --git a/LANCommander.Server/Migrations/20230317234303_AddBasicServerModel.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20230317234303_AddBasicServerModel.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20230317234303_AddBasicServerModel.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230317234303_AddBasicServerModel.Designer.cs diff --git a/LANCommander.Server/Migrations/20230317234303_AddBasicServerModel.cs b/LANCommander.Server.Data.SQLite/Migrations/20230317234303_AddBasicServerModel.cs similarity index 100% rename from LANCommander.Server/Migrations/20230317234303_AddBasicServerModel.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230317234303_AddBasicServerModel.cs diff --git a/LANCommander.Server/Migrations/20230326223408_AddSavePaths.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20230326223408_AddSavePaths.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20230326223408_AddSavePaths.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230326223408_AddSavePaths.Designer.cs diff --git a/LANCommander.Server/Migrations/20230326223408_AddSavePaths.cs b/LANCommander.Server.Data.SQLite/Migrations/20230326223408_AddSavePaths.cs similarity index 100% rename from LANCommander.Server/Migrations/20230326223408_AddSavePaths.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230326223408_AddSavePaths.cs diff --git a/LANCommander.Server/Migrations/20230402013359_AddUserApproval.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20230402013359_AddUserApproval.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20230402013359_AddUserApproval.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230402013359_AddUserApproval.Designer.cs diff --git a/LANCommander.Server/Migrations/20230402013359_AddUserApproval.cs b/LANCommander.Server.Data.SQLite/Migrations/20230402013359_AddUserApproval.cs similarity index 100% rename from LANCommander.Server/Migrations/20230402013359_AddUserApproval.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230402013359_AddUserApproval.cs diff --git a/LANCommander.Server/Migrations/20230811190752_AddServerUseShellExecuteAndAutostartDelay.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20230811190752_AddServerUseShellExecuteAndAutostartDelay.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20230811190752_AddServerUseShellExecuteAndAutostartDelay.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230811190752_AddServerUseShellExecuteAndAutostartDelay.Designer.cs diff --git a/LANCommander.Server/Migrations/20230811190752_AddServerUseShellExecuteAndAutostartDelay.cs b/LANCommander.Server.Data.SQLite/Migrations/20230811190752_AddServerUseShellExecuteAndAutostartDelay.cs similarity index 100% rename from LANCommander.Server/Migrations/20230811190752_AddServerUseShellExecuteAndAutostartDelay.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230811190752_AddServerUseShellExecuteAndAutostartDelay.cs diff --git a/LANCommander.Server/Migrations/20230815021613_LinkGameServers.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20230815021613_LinkGameServers.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20230815021613_LinkGameServers.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230815021613_LinkGameServers.Designer.cs diff --git a/LANCommander.Server/Migrations/20230815021613_LinkGameServers.cs b/LANCommander.Server.Data.SQLite/Migrations/20230815021613_LinkGameServers.cs similarity index 100% rename from LANCommander.Server/Migrations/20230815021613_LinkGameServers.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230815021613_LinkGameServers.cs diff --git a/LANCommander.Server/Migrations/20230815054532_AddServerLogModel.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20230815054532_AddServerLogModel.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20230815054532_AddServerLogModel.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230815054532_AddServerLogModel.Designer.cs diff --git a/LANCommander.Server/Migrations/20230815054532_AddServerLogModel.cs b/LANCommander.Server.Data.SQLite/Migrations/20230815054532_AddServerLogModel.cs similarity index 100% rename from LANCommander.Server/Migrations/20230815054532_AddServerLogModel.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230815054532_AddServerLogModel.cs diff --git a/LANCommander.Server/Migrations/20230818003437_AddRCON.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20230818003437_AddRCON.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20230818003437_AddRCON.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230818003437_AddRCON.Designer.cs diff --git a/LANCommander.Server/Migrations/20230818003437_AddRCON.cs b/LANCommander.Server.Data.SQLite/Migrations/20230818003437_AddRCON.cs similarity index 100% rename from LANCommander.Server/Migrations/20230818003437_AddRCON.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230818003437_AddRCON.cs diff --git a/LANCommander.Server/Migrations/20230818054703_NullRconPort.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20230818054703_NullRconPort.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20230818054703_NullRconPort.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230818054703_NullRconPort.Designer.cs diff --git a/LANCommander.Server/Migrations/20230818054703_NullRconPort.cs b/LANCommander.Server.Data.SQLite/Migrations/20230818054703_NullRconPort.cs similarity index 100% rename from LANCommander.Server/Migrations/20230818054703_NullRconPort.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230818054703_NullRconPort.cs diff --git a/LANCommander.Server/Migrations/20230827172826_AddGameNotes.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20230827172826_AddGameNotes.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20230827172826_AddGameNotes.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230827172826_AddGameNotes.Designer.cs diff --git a/LANCommander.Server/Migrations/20230827172826_AddGameNotes.cs b/LANCommander.Server.Data.SQLite/Migrations/20230827172826_AddGameNotes.cs similarity index 100% rename from LANCommander.Server/Migrations/20230827172826_AddGameNotes.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230827172826_AddGameNotes.cs diff --git a/LANCommander.Server/Migrations/20230914005736_AddServerHTTPSupport.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20230914005736_AddServerHTTPSupport.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20230914005736_AddServerHTTPSupport.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230914005736_AddServerHTTPSupport.Designer.cs diff --git a/LANCommander.Server/Migrations/20230914005736_AddServerHTTPSupport.cs b/LANCommander.Server.Data.SQLite/Migrations/20230914005736_AddServerHTTPSupport.cs similarity index 100% rename from LANCommander.Server/Migrations/20230914005736_AddServerHTTPSupport.cs rename to LANCommander.Server.Data.SQLite/Migrations/20230914005736_AddServerHTTPSupport.cs diff --git a/LANCommander.Server/Migrations/20231017011454_AddPlayerAlias.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20231017011454_AddPlayerAlias.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20231017011454_AddPlayerAlias.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20231017011454_AddPlayerAlias.Designer.cs diff --git a/LANCommander.Server/Migrations/20231017011454_AddPlayerAlias.cs b/LANCommander.Server.Data.SQLite/Migrations/20231017011454_AddPlayerAlias.cs similarity index 100% rename from LANCommander.Server/Migrations/20231017011454_AddPlayerAlias.cs rename to LANCommander.Server.Data.SQLite/Migrations/20231017011454_AddPlayerAlias.cs diff --git a/LANCommander.Server/Migrations/20231018060152_AddRedistributables.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20231018060152_AddRedistributables.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20231018060152_AddRedistributables.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20231018060152_AddRedistributables.Designer.cs diff --git a/LANCommander.Server/Migrations/20231018060152_AddRedistributables.cs b/LANCommander.Server.Data.SQLite/Migrations/20231018060152_AddRedistributables.cs similarity index 100% rename from LANCommander.Server/Migrations/20231018060152_AddRedistributables.cs rename to LANCommander.Server.Data.SQLite/Migrations/20231018060152_AddRedistributables.cs diff --git a/LANCommander.Server/Migrations/20231019005133_AddGameRedistributableRelationship.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20231019005133_AddGameRedistributableRelationship.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20231019005133_AddGameRedistributableRelationship.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20231019005133_AddGameRedistributableRelationship.Designer.cs diff --git a/LANCommander.Server/Migrations/20231019005133_AddGameRedistributableRelationship.cs b/LANCommander.Server.Data.SQLite/Migrations/20231019005133_AddGameRedistributableRelationship.cs similarity index 100% rename from LANCommander.Server/Migrations/20231019005133_AddGameRedistributableRelationship.cs rename to LANCommander.Server.Data.SQLite/Migrations/20231019005133_AddGameRedistributableRelationship.cs diff --git a/LANCommander.Server/Migrations/20231102020229_AddMediaEntity.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20231102020229_AddMediaEntity.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20231102020229_AddMediaEntity.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20231102020229_AddMediaEntity.Designer.cs diff --git a/LANCommander.Server/Migrations/20231102020229_AddMediaEntity.cs b/LANCommander.Server.Data.SQLite/Migrations/20231102020229_AddMediaEntity.cs similarity index 100% rename from LANCommander.Server/Migrations/20231102020229_AddMediaEntity.cs rename to LANCommander.Server.Data.SQLite/Migrations/20231102020229_AddMediaEntity.cs diff --git a/LANCommander.Server/Migrations/20231103010139_AddMediaMimeType.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20231103010139_AddMediaMimeType.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20231103010139_AddMediaMimeType.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20231103010139_AddMediaMimeType.Designer.cs diff --git a/LANCommander.Server/Migrations/20231103010139_AddMediaMimeType.cs b/LANCommander.Server.Data.SQLite/Migrations/20231103010139_AddMediaMimeType.cs similarity index 100% rename from LANCommander.Server/Migrations/20231103010139_AddMediaMimeType.cs rename to LANCommander.Server.Data.SQLite/Migrations/20231103010139_AddMediaMimeType.cs diff --git a/LANCommander.Server/Migrations/20231103052501_RemoveGameIconProperty.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20231103052501_RemoveGameIconProperty.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20231103052501_RemoveGameIconProperty.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20231103052501_RemoveGameIconProperty.Designer.cs diff --git a/LANCommander.Server/Migrations/20231103052501_RemoveGameIconProperty.cs b/LANCommander.Server.Data.SQLite/Migrations/20231103052501_RemoveGameIconProperty.cs similarity index 100% rename from LANCommander.Server/Migrations/20231103052501_RemoveGameIconProperty.cs rename to LANCommander.Server.Data.SQLite/Migrations/20231103052501_RemoveGameIconProperty.cs diff --git a/LANCommander.Server/Migrations/20231104224712_AddServerHttpPaths.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20231104224712_AddServerHttpPaths.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20231104224712_AddServerHttpPaths.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20231104224712_AddServerHttpPaths.Designer.cs diff --git a/LANCommander.Server/Migrations/20231104224712_AddServerHttpPaths.cs b/LANCommander.Server.Data.SQLite/Migrations/20231104224712_AddServerHttpPaths.cs similarity index 100% rename from LANCommander.Server/Migrations/20231104224712_AddServerHttpPaths.cs rename to LANCommander.Server.Data.SQLite/Migrations/20231104224712_AddServerHttpPaths.cs diff --git a/LANCommander.Server/Migrations/20231105210731_RemoveDeprecatedServerHttpOptions.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20231105210731_RemoveDeprecatedServerHttpOptions.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20231105210731_RemoveDeprecatedServerHttpOptions.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20231105210731_RemoveDeprecatedServerHttpOptions.Designer.cs diff --git a/LANCommander.Server/Migrations/20231105210731_RemoveDeprecatedServerHttpOptions.cs b/LANCommander.Server.Data.SQLite/Migrations/20231105210731_RemoveDeprecatedServerHttpOptions.cs similarity index 100% rename from LANCommander.Server/Migrations/20231105210731_RemoveDeprecatedServerHttpOptions.cs rename to LANCommander.Server.Data.SQLite/Migrations/20231105210731_RemoveDeprecatedServerHttpOptions.cs diff --git a/LANCommander.Server/Migrations/20231117064657_DeleteDeprecatedSnippets.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20231117064657_DeleteDeprecatedSnippets.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20231117064657_DeleteDeprecatedSnippets.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20231117064657_DeleteDeprecatedSnippets.Designer.cs diff --git a/LANCommander.Server/Migrations/20231117064657_DeleteDeprecatedSnippets.cs b/LANCommander.Server.Data.SQLite/Migrations/20231117064657_DeleteDeprecatedSnippets.cs similarity index 100% rename from LANCommander.Server/Migrations/20231117064657_DeleteDeprecatedSnippets.cs rename to LANCommander.Server.Data.SQLite/Migrations/20231117064657_DeleteDeprecatedSnippets.cs diff --git a/LANCommander.Server/Migrations/20231117081347_AddPlaySessions.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20231117081347_AddPlaySessions.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20231117081347_AddPlaySessions.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20231117081347_AddPlaySessions.Designer.cs diff --git a/LANCommander.Server/Migrations/20231117081347_AddPlaySessions.cs b/LANCommander.Server.Data.SQLite/Migrations/20231117081347_AddPlaySessions.cs similarity index 100% rename from LANCommander.Server/Migrations/20231117081347_AddPlaySessions.cs rename to LANCommander.Server.Data.SQLite/Migrations/20231117081347_AddPlaySessions.cs diff --git a/LANCommander.Server/Migrations/20231128214406_FixDeletionBehaviors.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20231128214406_FixDeletionBehaviors.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20231128214406_FixDeletionBehaviors.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20231128214406_FixDeletionBehaviors.Designer.cs diff --git a/LANCommander.Server/Migrations/20231128214406_FixDeletionBehaviors.cs b/LANCommander.Server.Data.SQLite/Migrations/20231128214406_FixDeletionBehaviors.cs similarity index 100% rename from LANCommander.Server/Migrations/20231128214406_FixDeletionBehaviors.cs rename to LANCommander.Server.Data.SQLite/Migrations/20231128214406_FixDeletionBehaviors.cs diff --git a/LANCommander.Server/Migrations/20231202235325_AddSavePathRegexFlag.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20231202235325_AddSavePathRegexFlag.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20231202235325_AddSavePathRegexFlag.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20231202235325_AddSavePathRegexFlag.Designer.cs diff --git a/LANCommander.Server/Migrations/20231202235325_AddSavePathRegexFlag.cs b/LANCommander.Server.Data.SQLite/Migrations/20231202235325_AddSavePathRegexFlag.cs similarity index 100% rename from LANCommander.Server/Migrations/20231202235325_AddSavePathRegexFlag.cs rename to LANCommander.Server.Data.SQLite/Migrations/20231202235325_AddSavePathRegexFlag.cs diff --git a/LANCommander.Server/Migrations/20231203202813_FixScriptDisplayBounds.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20231203202813_FixScriptDisplayBounds.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20231203202813_FixScriptDisplayBounds.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20231203202813_FixScriptDisplayBounds.Designer.cs diff --git a/LANCommander.Server/Migrations/20231203202813_FixScriptDisplayBounds.cs b/LANCommander.Server.Data.SQLite/Migrations/20231203202813_FixScriptDisplayBounds.cs similarity index 100% rename from LANCommander.Server/Migrations/20231203202813_FixScriptDisplayBounds.cs rename to LANCommander.Server.Data.SQLite/Migrations/20231203202813_FixScriptDisplayBounds.cs diff --git a/LANCommander.Server/Migrations/20231204044928_AddCollections.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20231204044928_AddCollections.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20231204044928_AddCollections.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20231204044928_AddCollections.Designer.cs diff --git a/LANCommander.Server/Migrations/20231204044928_AddCollections.cs b/LANCommander.Server.Data.SQLite/Migrations/20231204044928_AddCollections.cs similarity index 100% rename from LANCommander.Server/Migrations/20231204044928_AddCollections.cs rename to LANCommander.Server.Data.SQLite/Migrations/20231204044928_AddCollections.cs diff --git a/LANCommander.Server/Migrations/20231211230822_AddAutostartMethod.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20231211230822_AddAutostartMethod.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20231211230822_AddAutostartMethod.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20231211230822_AddAutostartMethod.Designer.cs diff --git a/LANCommander.Server/Migrations/20231211230822_AddAutostartMethod.cs b/LANCommander.Server.Data.SQLite/Migrations/20231211230822_AddAutostartMethod.cs similarity index 100% rename from LANCommander.Server/Migrations/20231211230822_AddAutostartMethod.cs rename to LANCommander.Server.Data.SQLite/Migrations/20231211230822_AddAutostartMethod.cs diff --git a/LANCommander.Server/Migrations/20231220234026_AddServerScripts.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20231220234026_AddServerScripts.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20231220234026_AddServerScripts.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20231220234026_AddServerScripts.Designer.cs diff --git a/LANCommander.Server/Migrations/20231220234026_AddServerScripts.cs b/LANCommander.Server.Data.SQLite/Migrations/20231220234026_AddServerScripts.cs similarity index 100% rename from LANCommander.Server/Migrations/20231220234026_AddServerScripts.cs rename to LANCommander.Server.Data.SQLite/Migrations/20231220234026_AddServerScripts.cs diff --git a/LANCommander.Server/Migrations/20231222184839_AddSavePathWorkingDirectory.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20231222184839_AddSavePathWorkingDirectory.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20231222184839_AddSavePathWorkingDirectory.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20231222184839_AddSavePathWorkingDirectory.Designer.cs diff --git a/LANCommander.Server/Migrations/20231222184839_AddSavePathWorkingDirectory.cs b/LANCommander.Server.Data.SQLite/Migrations/20231222184839_AddSavePathWorkingDirectory.cs similarity index 100% rename from LANCommander.Server/Migrations/20231222184839_AddSavePathWorkingDirectory.cs rename to LANCommander.Server.Data.SQLite/Migrations/20231222184839_AddSavePathWorkingDirectory.cs diff --git a/LANCommander.Server/Migrations/20240108083241_AddGameTypes.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20240108083241_AddGameTypes.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20240108083241_AddGameTypes.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20240108083241_AddGameTypes.Designer.cs diff --git a/LANCommander.Server/Migrations/20240108083241_AddGameTypes.cs b/LANCommander.Server.Data.SQLite/Migrations/20240108083241_AddGameTypes.cs similarity index 100% rename from LANCommander.Server/Migrations/20240108083241_AddGameTypes.cs rename to LANCommander.Server.Data.SQLite/Migrations/20240108083241_AddGameTypes.cs diff --git a/LANCommander.Server/Migrations/20240115061429_AddUserMedia.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20240115061429_AddUserMedia.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20240115061429_AddUserMedia.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20240115061429_AddUserMedia.Designer.cs diff --git a/LANCommander.Server/Migrations/20240115061429_AddUserMedia.cs b/LANCommander.Server.Data.SQLite/Migrations/20240115061429_AddUserMedia.cs similarity index 100% rename from LANCommander.Server/Migrations/20240115061429_AddUserMedia.cs rename to LANCommander.Server.Data.SQLite/Migrations/20240115061429_AddUserMedia.cs diff --git a/LANCommander.Server/Migrations/20240118070708_AddServerActions.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20240118070708_AddServerActions.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20240118070708_AddServerActions.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20240118070708_AddServerActions.Designer.cs diff --git a/LANCommander.Server/Migrations/20240118070708_AddServerActions.cs b/LANCommander.Server.Data.SQLite/Migrations/20240118070708_AddServerActions.cs similarity index 100% rename from LANCommander.Server/Migrations/20240118070708_AddServerActions.cs rename to LANCommander.Server.Data.SQLite/Migrations/20240118070708_AddServerActions.cs diff --git a/LANCommander.Server/Migrations/20240119012444_AddServerConnectionDetails.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20240119012444_AddServerConnectionDetails.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20240119012444_AddServerConnectionDetails.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20240119012444_AddServerConnectionDetails.Designer.cs diff --git a/LANCommander.Server/Migrations/20240119012444_AddServerConnectionDetails.cs b/LANCommander.Server.Data.SQLite/Migrations/20240119012444_AddServerConnectionDetails.cs similarity index 100% rename from LANCommander.Server/Migrations/20240119012444_AddServerConnectionDetails.cs rename to LANCommander.Server.Data.SQLite/Migrations/20240119012444_AddServerConnectionDetails.cs diff --git a/LANCommander.Server/Migrations/20240220064604_AddMediaChecksum.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20240220064604_AddMediaChecksum.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20240220064604_AddMediaChecksum.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20240220064604_AddMediaChecksum.Designer.cs diff --git a/LANCommander.Server/Migrations/20240220064604_AddMediaChecksum.cs b/LANCommander.Server.Data.SQLite/Migrations/20240220064604_AddMediaChecksum.cs similarity index 100% rename from LANCommander.Server/Migrations/20240220064604_AddMediaChecksum.cs rename to LANCommander.Server.Data.SQLite/Migrations/20240220064604_AddMediaChecksum.cs diff --git a/LANCommander.Server/Migrations/20240220154307_CalculateMediaChecksum.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20240220154307_CalculateMediaChecksum.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20240220154307_CalculateMediaChecksum.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20240220154307_CalculateMediaChecksum.Designer.cs diff --git a/LANCommander.Server/Migrations/20240220154307_CalculateMediaChecksum.cs b/LANCommander.Server.Data.SQLite/Migrations/20240220154307_CalculateMediaChecksum.cs similarity index 100% rename from LANCommander.Server/Migrations/20240220154307_CalculateMediaChecksum.cs rename to LANCommander.Server.Data.SQLite/Migrations/20240220154307_CalculateMediaChecksum.cs diff --git a/LANCommander.Server/Migrations/20240223230404_RelaxNullableStrings.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20240223230404_RelaxNullableStrings.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20240223230404_RelaxNullableStrings.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20240223230404_RelaxNullableStrings.Designer.cs diff --git a/LANCommander.Server/Migrations/20240223230404_RelaxNullableStrings.cs b/LANCommander.Server.Data.SQLite/Migrations/20240223230404_RelaxNullableStrings.cs similarity index 100% rename from LANCommander.Server/Migrations/20240223230404_RelaxNullableStrings.cs rename to LANCommander.Server.Data.SQLite/Migrations/20240223230404_RelaxNullableStrings.cs diff --git a/LANCommander.Server/Migrations/20240329204518_AddEngineMetadata.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20240329204518_AddEngineMetadata.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20240329204518_AddEngineMetadata.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20240329204518_AddEngineMetadata.Designer.cs diff --git a/LANCommander.Server/Migrations/20240329204518_AddEngineMetadata.cs b/LANCommander.Server.Data.SQLite/Migrations/20240329204518_AddEngineMetadata.cs similarity index 100% rename from LANCommander.Server/Migrations/20240329204518_AddEngineMetadata.cs rename to LANCommander.Server.Data.SQLite/Migrations/20240329204518_AddEngineMetadata.cs diff --git a/LANCommander.Server/Migrations/20240619231737_AddServerProcessTerminationMethod.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20240619231737_AddServerProcessTerminationMethod.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20240619231737_AddServerProcessTerminationMethod.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20240619231737_AddServerProcessTerminationMethod.Designer.cs diff --git a/LANCommander.Server/Migrations/20240619231737_AddServerProcessTerminationMethod.cs b/LANCommander.Server.Data.SQLite/Migrations/20240619231737_AddServerProcessTerminationMethod.cs similarity index 100% rename from LANCommander.Server/Migrations/20240619231737_AddServerProcessTerminationMethod.cs rename to LANCommander.Server.Data.SQLite/Migrations/20240619231737_AddServerProcessTerminationMethod.cs diff --git a/LANCommander.Server/Migrations/20240620022723_AddMediaThumbnail.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20240620022723_AddMediaThumbnail.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20240620022723_AddMediaThumbnail.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20240620022723_AddMediaThumbnail.Designer.cs diff --git a/LANCommander.Server/Migrations/20240620022723_AddMediaThumbnail.cs b/LANCommander.Server.Data.SQLite/Migrations/20240620022723_AddMediaThumbnail.cs similarity index 100% rename from LANCommander.Server/Migrations/20240620022723_AddMediaThumbnail.cs rename to LANCommander.Server.Data.SQLite/Migrations/20240620022723_AddMediaThumbnail.cs diff --git a/LANCommander.Server/Migrations/20240620023405_AddMediaName.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20240620023405_AddMediaName.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20240620023405_AddMediaName.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20240620023405_AddMediaName.Designer.cs diff --git a/LANCommander.Server/Migrations/20240620023405_AddMediaName.cs b/LANCommander.Server.Data.SQLite/Migrations/20240620023405_AddMediaName.cs similarity index 100% rename from LANCommander.Server/Migrations/20240620023405_AddMediaName.cs rename to LANCommander.Server.Data.SQLite/Migrations/20240620023405_AddMediaName.cs diff --git a/LANCommander.Server/Migrations/20240701040116_AddPlatforms.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20240701040116_AddPlatforms.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20240701040116_AddPlatforms.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20240701040116_AddPlatforms.Designer.cs diff --git a/LANCommander.Server/Migrations/20240701040116_AddPlatforms.cs b/LANCommander.Server.Data.SQLite/Migrations/20240701040116_AddPlatforms.cs similarity index 100% rename from LANCommander.Server/Migrations/20240701040116_AddPlatforms.cs rename to LANCommander.Server.Data.SQLite/Migrations/20240701040116_AddPlatforms.cs diff --git a/LANCommander.Server/Migrations/20240811183216_AddIssues.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20240811183216_AddIssues.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20240811183216_AddIssues.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20240811183216_AddIssues.Designer.cs diff --git a/LANCommander.Server/Migrations/20240811183216_AddIssues.cs b/LANCommander.Server.Data.SQLite/Migrations/20240811183216_AddIssues.cs similarity index 100% rename from LANCommander.Server/Migrations/20240811183216_AddIssues.cs rename to LANCommander.Server.Data.SQLite/Migrations/20240811183216_AddIssues.cs diff --git a/LANCommander.Server/Migrations/20240817070904_AddPages.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20240817070904_AddPages.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20240817070904_AddPages.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20240817070904_AddPages.Designer.cs diff --git a/LANCommander.Server/Migrations/20240817070904_AddPages.cs b/LANCommander.Server.Data.SQLite/Migrations/20240817070904_AddPages.cs similarity index 100% rename from LANCommander.Server/Migrations/20240817070904_AddPages.cs rename to LANCommander.Server.Data.SQLite/Migrations/20240817070904_AddPages.cs diff --git a/LANCommander.Server/Migrations/20240819003946_AddPageHierarchy.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20240819003946_AddPageHierarchy.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20240819003946_AddPageHierarchy.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20240819003946_AddPageHierarchy.Designer.cs diff --git a/LANCommander.Server/Migrations/20240819003946_AddPageHierarchy.cs b/LANCommander.Server.Data.SQLite/Migrations/20240819003946_AddPageHierarchy.cs similarity index 100% rename from LANCommander.Server/Migrations/20240819003946_AddPageHierarchy.cs rename to LANCommander.Server.Data.SQLite/Migrations/20240819003946_AddPageHierarchy.cs diff --git a/LANCommander.Server/Migrations/20240820022611_AddUserCustomFields.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20240820022611_AddUserCustomFields.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20240820022611_AddUserCustomFields.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20240820022611_AddUserCustomFields.Designer.cs diff --git a/LANCommander.Server/Migrations/20240820022611_AddUserCustomFields.cs b/LANCommander.Server.Data.SQLite/Migrations/20240820022611_AddUserCustomFields.cs similarity index 100% rename from LANCommander.Server/Migrations/20240820022611_AddUserCustomFields.cs rename to LANCommander.Server.Data.SQLite/Migrations/20240820022611_AddUserCustomFields.cs diff --git a/LANCommander.Server/Migrations/20240822013436_AddPageSortOrder.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20240822013436_AddPageSortOrder.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20240822013436_AddPageSortOrder.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20240822013436_AddPageSortOrder.Designer.cs diff --git a/LANCommander.Server/Migrations/20240822013436_AddPageSortOrder.cs b/LANCommander.Server.Data.SQLite/Migrations/20240822013436_AddPageSortOrder.cs similarity index 100% rename from LANCommander.Server/Migrations/20240822013436_AddPageSortOrder.cs rename to LANCommander.Server.Data.SQLite/Migrations/20240822013436_AddPageSortOrder.cs diff --git a/LANCommander.Server/Migrations/20240828021125_AddPageSlug.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20240828021125_AddPageSlug.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20240828021125_AddPageSlug.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20240828021125_AddPageSlug.Designer.cs diff --git a/LANCommander.Server/Migrations/20240828021125_AddPageSlug.cs b/LANCommander.Server.Data.SQLite/Migrations/20240828021125_AddPageSlug.cs similarity index 100% rename from LANCommander.Server/Migrations/20240828021125_AddPageSlug.cs rename to LANCommander.Server.Data.SQLite/Migrations/20240828021125_AddPageSlug.cs diff --git a/LANCommander.Server/Migrations/20240904002809_AddGameKeyAllocationMethod.Designer.cs b/LANCommander.Server.Data.SQLite/Migrations/20240904002809_AddGameKeyAllocationMethod.Designer.cs similarity index 100% rename from LANCommander.Server/Migrations/20240904002809_AddGameKeyAllocationMethod.Designer.cs rename to LANCommander.Server.Data.SQLite/Migrations/20240904002809_AddGameKeyAllocationMethod.Designer.cs diff --git a/LANCommander.Server/Migrations/20240904002809_AddGameKeyAllocationMethod.cs b/LANCommander.Server.Data.SQLite/Migrations/20240904002809_AddGameKeyAllocationMethod.cs similarity index 100% rename from LANCommander.Server/Migrations/20240904002809_AddGameKeyAllocationMethod.cs rename to LANCommander.Server.Data.SQLite/Migrations/20240904002809_AddGameKeyAllocationMethod.cs diff --git a/LANCommander.Server/Migrations/DatabaseContextModelSnapshot.cs b/LANCommander.Server.Data.SQLite/Migrations/DatabaseContextModelSnapshot.cs similarity index 100% rename from LANCommander.Server/Migrations/DatabaseContextModelSnapshot.cs rename to LANCommander.Server.Data.SQLite/Migrations/DatabaseContextModelSnapshot.cs diff --git a/LANCommander.Server/Data/DatabaseContext.cs b/LANCommander.Server.Data/DatabaseContext.cs similarity index 100% rename from LANCommander.Server/Data/DatabaseContext.cs rename to LANCommander.Server.Data/DatabaseContext.cs diff --git a/LANCommander.Server.Data/LANCommander.Server.Data.csproj b/LANCommander.Server.Data/LANCommander.Server.Data.csproj new file mode 100644 index 00000000..6e1e422c --- /dev/null +++ b/LANCommander.Server.Data/LANCommander.Server.Data.csproj @@ -0,0 +1,19 @@ + + + + net8.0 + enable + enable + + + + + + + + + + + + + diff --git a/LANCommander.Server/Data/ModelBuilderExtensions.cs b/LANCommander.Server.Data/ModelBuilderExtensions.cs similarity index 100% rename from LANCommander.Server/Data/ModelBuilderExtensions.cs rename to LANCommander.Server.Data/ModelBuilderExtensions.cs diff --git a/LANCommander.Server/Data/Models/Action.cs b/LANCommander.Server.Data/Models/Action.cs similarity index 100% rename from LANCommander.Server/Data/Models/Action.cs rename to LANCommander.Server.Data/Models/Action.cs diff --git a/LANCommander.Server/Data/Models/Archive.cs b/LANCommander.Server.Data/Models/Archive.cs similarity index 100% rename from LANCommander.Server/Data/Models/Archive.cs rename to LANCommander.Server.Data/Models/Archive.cs diff --git a/LANCommander.Server/Data/Models/BaseModel.cs b/LANCommander.Server.Data/Models/BaseModel.cs similarity index 100% rename from LANCommander.Server/Data/Models/BaseModel.cs rename to LANCommander.Server.Data/Models/BaseModel.cs diff --git a/LANCommander.Server/Data/Models/BaseTaxonomyModel.cs b/LANCommander.Server.Data/Models/BaseTaxonomyModel.cs similarity index 100% rename from LANCommander.Server/Data/Models/BaseTaxonomyModel.cs rename to LANCommander.Server.Data/Models/BaseTaxonomyModel.cs diff --git a/LANCommander.Server/Data/Models/Category.cs b/LANCommander.Server.Data/Models/Category.cs similarity index 100% rename from LANCommander.Server/Data/Models/Category.cs rename to LANCommander.Server.Data/Models/Category.cs diff --git a/LANCommander.Server/Data/Models/Collection.cs b/LANCommander.Server.Data/Models/Collection.cs similarity index 100% rename from LANCommander.Server/Data/Models/Collection.cs rename to LANCommander.Server.Data/Models/Collection.cs diff --git a/LANCommander.Server/Data/Models/Company.cs b/LANCommander.Server.Data/Models/Company.cs similarity index 100% rename from LANCommander.Server/Data/Models/Company.cs rename to LANCommander.Server.Data/Models/Company.cs diff --git a/LANCommander.Server/Data/Models/Engine.cs b/LANCommander.Server.Data/Models/Engine.cs similarity index 100% rename from LANCommander.Server/Data/Models/Engine.cs rename to LANCommander.Server.Data/Models/Engine.cs diff --git a/LANCommander.Server/Data/Models/Game.cs b/LANCommander.Server.Data/Models/Game.cs similarity index 100% rename from LANCommander.Server/Data/Models/Game.cs rename to LANCommander.Server.Data/Models/Game.cs diff --git a/LANCommander.Server/Data/Models/GameSave.cs b/LANCommander.Server.Data/Models/GameSave.cs similarity index 61% rename from LANCommander.Server/Data/Models/GameSave.cs rename to LANCommander.Server.Data/Models/GameSave.cs index 34e38bbc..dd32897e 100644 --- a/LANCommander.Server/Data/Models/GameSave.cs +++ b/LANCommander.Server.Data/Models/GameSave.cs @@ -1,5 +1,4 @@ -using LANCommander.Server.Services; -using System.ComponentModel.DataAnnotations.Schema; +using System.ComponentModel.DataAnnotations.Schema; using System.Text.Json.Serialization; namespace LANCommander.Server.Data.Models @@ -17,12 +16,5 @@ namespace LANCommander.Server.Data.Models [ForeignKey(nameof(UserId))] [InverseProperty("GameSaves")] public virtual User? User { get; set; } - - public string GetUploadPath() - { - var settings = SettingService.GetSettings(); - - return Path.Combine(settings.UserSaves.StoragePath, UserId.ToString(), GameId.ToString(), Id.ToString()); - } } } diff --git a/LANCommander.Server/Data/Models/Genre.cs b/LANCommander.Server.Data/Models/Genre.cs similarity index 100% rename from LANCommander.Server/Data/Models/Genre.cs rename to LANCommander.Server.Data/Models/Genre.cs diff --git a/LANCommander.Server/Data/Models/Issue.cs b/LANCommander.Server.Data/Models/Issue.cs similarity index 100% rename from LANCommander.Server/Data/Models/Issue.cs rename to LANCommander.Server.Data/Models/Issue.cs diff --git a/LANCommander.Server/Data/Models/Key.cs b/LANCommander.Server.Data/Models/Key.cs similarity index 100% rename from LANCommander.Server/Data/Models/Key.cs rename to LANCommander.Server.Data/Models/Key.cs diff --git a/LANCommander.Server/Data/Models/Media.cs b/LANCommander.Server.Data/Models/Media.cs similarity index 100% rename from LANCommander.Server/Data/Models/Media.cs rename to LANCommander.Server.Data/Models/Media.cs diff --git a/LANCommander.Server/Data/Models/MultiplayerMode.cs b/LANCommander.Server.Data/Models/MultiplayerMode.cs similarity index 100% rename from LANCommander.Server/Data/Models/MultiplayerMode.cs rename to LANCommander.Server.Data/Models/MultiplayerMode.cs diff --git a/LANCommander.Server/Data/Models/Page.cs b/LANCommander.Server.Data/Models/Page.cs similarity index 100% rename from LANCommander.Server/Data/Models/Page.cs rename to LANCommander.Server.Data/Models/Page.cs diff --git a/LANCommander.Server/Data/Models/Platform.cs b/LANCommander.Server.Data/Models/Platform.cs similarity index 100% rename from LANCommander.Server/Data/Models/Platform.cs rename to LANCommander.Server.Data/Models/Platform.cs diff --git a/LANCommander.Server/Data/Models/PlaySession.cs b/LANCommander.Server.Data/Models/PlaySession.cs similarity index 100% rename from LANCommander.Server/Data/Models/PlaySession.cs rename to LANCommander.Server.Data/Models/PlaySession.cs diff --git a/LANCommander.Server/Data/Models/Redistributable.cs b/LANCommander.Server.Data/Models/Redistributable.cs similarity index 100% rename from LANCommander.Server/Data/Models/Redistributable.cs rename to LANCommander.Server.Data/Models/Redistributable.cs diff --git a/LANCommander.Server/Data/Models/Role.cs b/LANCommander.Server.Data/Models/Role.cs similarity index 100% rename from LANCommander.Server/Data/Models/Role.cs rename to LANCommander.Server.Data/Models/Role.cs diff --git a/LANCommander.Server/Data/Models/SavePath.cs b/LANCommander.Server.Data/Models/SavePath.cs similarity index 100% rename from LANCommander.Server/Data/Models/SavePath.cs rename to LANCommander.Server.Data/Models/SavePath.cs diff --git a/LANCommander.Server/Data/Models/Script.cs b/LANCommander.Server.Data/Models/Script.cs similarity index 100% rename from LANCommander.Server/Data/Models/Script.cs rename to LANCommander.Server.Data/Models/Script.cs diff --git a/LANCommander.Server/Data/Models/Server.cs b/LANCommander.Server.Data/Models/Server.cs similarity index 100% rename from LANCommander.Server/Data/Models/Server.cs rename to LANCommander.Server.Data/Models/Server.cs diff --git a/LANCommander.Server/Data/Models/ServerConsole.cs b/LANCommander.Server.Data/Models/ServerConsole.cs similarity index 100% rename from LANCommander.Server/Data/Models/ServerConsole.cs rename to LANCommander.Server.Data/Models/ServerConsole.cs diff --git a/LANCommander.Server/Data/Models/ServerHttpPath.cs b/LANCommander.Server.Data/Models/ServerHttpPath.cs similarity index 100% rename from LANCommander.Server/Data/Models/ServerHttpPath.cs rename to LANCommander.Server.Data/Models/ServerHttpPath.cs diff --git a/LANCommander.Server/Data/Models/Tag.cs b/LANCommander.Server.Data/Models/Tag.cs similarity index 100% rename from LANCommander.Server/Data/Models/Tag.cs rename to LANCommander.Server.Data/Models/Tag.cs diff --git a/LANCommander.Server/Data/Models/User.cs b/LANCommander.Server.Data/Models/User.cs similarity index 88% rename from LANCommander.Server/Data/Models/User.cs rename to LANCommander.Server.Data/Models/User.cs index fed5ed72..f94ba35c 100644 --- a/LANCommander.Server/Data/Models/User.cs +++ b/LANCommander.Server.Data/Models/User.cs @@ -1,5 +1,4 @@ -using LANCommander.Server.Services; -using Microsoft.AspNetCore.Identity; +using Microsoft.AspNetCore.Identity; using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; using System.Text.Json.Serialization; @@ -61,12 +60,5 @@ namespace LANCommander.Server.Data.Models public DateTime? ApprovedOn { get; set; } public string? Alias { get; set; } - - public string GetGameSaveUploadPath() - { - var settings = SettingService.GetSettings(); - - return Path.Combine(settings.UserSaves.StoragePath, Id.ToString()); - } } } diff --git a/LANCommander.Server/Data/Models/UserCustomField.cs b/LANCommander.Server.Data/Models/UserCustomField.cs similarity index 100% rename from LANCommander.Server/Data/Models/UserCustomField.cs rename to LANCommander.Server.Data/Models/UserCustomField.cs diff --git a/LANCommander.Server/Data/Repository.cs b/LANCommander.Server.Data/Repository.cs similarity index 87% rename from LANCommander.Server/Data/Repository.cs rename to LANCommander.Server.Data/Repository.cs index a93ad2e5..893f07fd 100644 --- a/LANCommander.Server/Data/Repository.cs +++ b/LANCommander.Server.Data/Repository.cs @@ -1,4 +1,5 @@ using LANCommander.Server.Data.Models; +using Microsoft.AspNetCore.Http; using Microsoft.EntityFrameworkCore; using System.Linq.Expressions; @@ -7,12 +8,10 @@ namespace LANCommander.Server.Data public class Repository : IDisposable where T : BaseModel { private DbContext Context; - private HttpContext HttpContext; - public Repository(DatabaseContext context, HttpContext httpContext) + public Repository(DatabaseContext context) { Context = context; - HttpContext = httpContext; } private DbSet DbSet @@ -79,7 +78,7 @@ namespace LANCommander.Server.Data private User GetCurrentUser() { - if (HttpContext != null && HttpContext.User != null && HttpContext.User.Identity != null && HttpContext.User.Identity.IsAuthenticated) + /*if (HttpContext != null && HttpContext.User != null && HttpContext.User.Identity != null && HttpContext.User.Identity.IsAuthenticated) { var user = GetUser(HttpContext.User.Identity.Name); @@ -88,7 +87,7 @@ namespace LANCommander.Server.Data else return user; } - else + else*/ return null; } diff --git a/LANCommander.Server/Services/ArchiveService.cs b/LANCommander.Server.Services/ArchiveService.cs similarity index 97% rename from LANCommander.Server/Services/ArchiveService.cs rename to LANCommander.Server.Services/ArchiveService.cs index 8486e0e5..23a3f81b 100644 --- a/LANCommander.Server/Services/ArchiveService.cs +++ b/LANCommander.Server.Services/ArchiveService.cs @@ -1,6 +1,5 @@ using LANCommander.Server.Data; using LANCommander.Server.Data.Models; -using LANCommander.Server.Extensions; using LANCommander.Helpers; using LANCommander.Server.Models; using LANCommander.SDK; @@ -9,6 +8,8 @@ using System.Linq.Expressions; using YamlDotNet.Serialization; using YamlDotNet.Serialization.NamingConventions; using ZiggyCreatures.Caching.Fusion; +using LANCommander.Server.Services.Models; +using Microsoft.Extensions.Logging; namespace LANCommander.Server.Services { @@ -19,8 +20,7 @@ namespace LANCommander.Server.Services public ArchiveService( ILogger logger, DatabaseContext dbContext, - IHttpContextAccessor httpContextAccessor, - IFusionCache cache) : base(logger, dbContext, httpContextAccessor) + IFusionCache cache) : base(logger, dbContext) { Cache = cache; } diff --git a/LANCommander.Server/Services/BeaconService.cs b/LANCommander.Server.Services/BeaconService.cs similarity index 93% rename from LANCommander.Server/Services/BeaconService.cs rename to LANCommander.Server.Services/BeaconService.cs index 575c5dd3..30dbc781 100644 --- a/LANCommander.Server/Services/BeaconService.cs +++ b/LANCommander.Server.Services/BeaconService.cs @@ -1,5 +1,7 @@ using BeaconLib; using LANCommander.Server.Models; +using Microsoft.Extensions.Hosting; +using Microsoft.Extensions.Logging; namespace LANCommander.Server.Services { diff --git a/LANCommander.Server/Services/CategoryService.cs b/LANCommander.Server.Services/CategoryService.cs similarity index 65% rename from LANCommander.Server/Services/CategoryService.cs rename to LANCommander.Server.Services/CategoryService.cs index c5945915..3b2a9798 100644 --- a/LANCommander.Server/Services/CategoryService.cs +++ b/LANCommander.Server.Services/CategoryService.cs @@ -1,5 +1,6 @@ using LANCommander.Server.Data; using LANCommander.Server.Data.Models; +using Microsoft.Extensions.Logging; namespace LANCommander.Server.Services { @@ -7,7 +8,6 @@ namespace LANCommander.Server.Services { public CategoryService( ILogger logger, - DatabaseContext dbContext, - IHttpContextAccessor httpContextAccessor) : base(logger, dbContext, httpContextAccessor) { } + DatabaseContext dbContext) : base(logger, dbContext) { } } } diff --git a/LANCommander.Server/Services/CollectionService.cs b/LANCommander.Server.Services/CollectionService.cs similarity index 65% rename from LANCommander.Server/Services/CollectionService.cs rename to LANCommander.Server.Services/CollectionService.cs index e99245d9..e9cfe32b 100644 --- a/LANCommander.Server/Services/CollectionService.cs +++ b/LANCommander.Server.Services/CollectionService.cs @@ -1,5 +1,6 @@ using LANCommander.Server.Data; using LANCommander.Server.Data.Models; +using Microsoft.Extensions.Logging; namespace LANCommander.Server.Services { @@ -7,7 +8,6 @@ namespace LANCommander.Server.Services { public CollectionService( ILogger logger, - DatabaseContext dbContext, - IHttpContextAccessor httpContextAccessor) : base(logger, dbContext, httpContextAccessor) { } + DatabaseContext dbContext) : base(logger, dbContext) { } } } diff --git a/LANCommander.Server/Services/CompanyService.cs b/LANCommander.Server.Services/CompanyService.cs similarity index 65% rename from LANCommander.Server/Services/CompanyService.cs rename to LANCommander.Server.Services/CompanyService.cs index 18f81d16..7fc74955 100644 --- a/LANCommander.Server/Services/CompanyService.cs +++ b/LANCommander.Server.Services/CompanyService.cs @@ -1,5 +1,6 @@ using LANCommander.Server.Data; using LANCommander.Server.Data.Models; +using Microsoft.Extensions.Logging; namespace LANCommander.Server.Services { @@ -7,7 +8,6 @@ namespace LANCommander.Server.Services { public CompanyService( ILogger logger, - DatabaseContext dbContext, - IHttpContextAccessor httpContextAccessor) : base(logger, dbContext, httpContextAccessor) { } + DatabaseContext dbContext) : base(logger, dbContext) { } } } diff --git a/LANCommander.Server/Services/EngineService.cs b/LANCommander.Server.Services/EngineService.cs similarity index 64% rename from LANCommander.Server/Services/EngineService.cs rename to LANCommander.Server.Services/EngineService.cs index e889cd94..f3b234a5 100644 --- a/LANCommander.Server/Services/EngineService.cs +++ b/LANCommander.Server.Services/EngineService.cs @@ -1,5 +1,6 @@ using LANCommander.Server.Data; using LANCommander.Server.Data.Models; +using Microsoft.Extensions.Logging; namespace LANCommander.Server.Services { @@ -7,7 +8,6 @@ namespace LANCommander.Server.Services { public EngineService( ILogger logger, - DatabaseContext dbContext, - IHttpContextAccessor httpContextAccessor) : base(logger, dbContext, httpContextAccessor) { } + DatabaseContext dbContext) : base(logger, dbContext) { } } } diff --git a/LANCommander.Server.Services/Extensions/StringExtensions.cs b/LANCommander.Server.Services/Extensions/StringExtensions.cs new file mode 100644 index 00000000..0cf930d3 --- /dev/null +++ b/LANCommander.Server.Services/Extensions/StringExtensions.cs @@ -0,0 +1,53 @@ +using System.Globalization; +using System.Text; +using System.Text.RegularExpressions; + +namespace LANCommander.Server.Services.Extensions +{ + public static class StringExtensions + { + static readonly Regex WordDelimiters = new Regex(@"[\s—–_]", RegexOptions.Compiled); + static readonly Regex InvalidChars = new Regex(@"[^a-z0-9\-]", RegexOptions.Compiled); + static readonly Regex MultipleHyphens = new Regex(@"-{2,}", RegexOptions.Compiled); + + public static string ToUrlSlug(this string value) + { + value = value.ToLowerInvariant(); + + value = RemoveDiacritics(value); + value = WordDelimiters.Replace(value, "-"); + value = InvalidChars.Replace(value, ""); + value = MultipleHyphens.Replace(value, "-"); + + return value.Trim('-'); + } + + private static string RemoveDiacritics(string stIn) + { + string stFormD = stIn.Normalize(NormalizationForm.FormD); + StringBuilder sb = new StringBuilder(); + + for (int ich = 0; ich < stFormD.Length; ich++) + { + UnicodeCategory uc = CharUnicodeInfo.GetUnicodeCategory(stFormD[ich]); + + if (uc != UnicodeCategory.NonSpacingMark) + sb.Append(stFormD[ich]); + } + + return (sb.ToString().Normalize(NormalizationForm.FormC)); + } + + public static string SanitizeFilename(this string filename, string replacement = "") + { + var removeInvalidChars = new Regex($"[{Regex.Escape(new string(Path.GetInvalidFileNameChars()))}]", RegexOptions.Singleline | RegexOptions.Compiled | RegexOptions.CultureInvariant); + + return removeInvalidChars.Replace(filename, replacement); + } + + public static string ToPath(this string path) + { + return Path.Combine(path.Split("/")); + } + } +} diff --git a/LANCommander.Server/Extensions/ZipArchiveExtensions.cs b/LANCommander.Server.Services/Extensions/ZipArchiveExtensions.cs similarity index 86% rename from LANCommander.Server/Extensions/ZipArchiveExtensions.cs rename to LANCommander.Server.Services/Extensions/ZipArchiveExtensions.cs index 8cc7465e..514f7ef3 100644 --- a/LANCommander.Server/Extensions/ZipArchiveExtensions.cs +++ b/LANCommander.Server.Services/Extensions/ZipArchiveExtensions.cs @@ -1,8 +1,6 @@ -using Microsoft.AspNetCore.Mvc; -using Microsoft.EntityFrameworkCore.Metadata.Conventions; -using System.IO.Compression; +using System.IO.Compression; -namespace LANCommander.Server.Extensions +namespace LANCommander.Server.Services.Extensions { public static class ZipArchiveExtensions { diff --git a/LANCommander.Server/Services/GameSaveService.cs b/LANCommander.Server.Services/GameSaveService.cs similarity index 89% rename from LANCommander.Server/Services/GameSaveService.cs rename to LANCommander.Server.Services/GameSaveService.cs index 056cfd3b..b8099a88 100644 --- a/LANCommander.Server/Services/GameSaveService.cs +++ b/LANCommander.Server.Services/GameSaveService.cs @@ -2,6 +2,7 @@ using LANCommander.Server.Data.Models; using LANCommander.Helpers; using LANCommander.Server.Models; +using Microsoft.Extensions.Logging; namespace LANCommander.Server.Services { @@ -9,8 +10,7 @@ namespace LANCommander.Server.Services { public GameSaveService( ILogger logger, - DatabaseContext dbContext, - IHttpContextAccessor httpContextAccessor) : base(logger, dbContext, httpContextAccessor) { } + DatabaseContext dbContext) : base(logger, dbContext) { } public override Task Delete(GameSave entity) { diff --git a/LANCommander.Server/Services/GameService.cs b/LANCommander.Server.Services/GameService.cs similarity index 96% rename from LANCommander.Server/Services/GameService.cs rename to LANCommander.Server.Services/GameService.cs index 4c0a7e0a..da306a1c 100644 --- a/LANCommander.Server/Services/GameService.cs +++ b/LANCommander.Server.Services/GameService.cs @@ -1,16 +1,18 @@ using AutoMapper; using LANCommander.Server.Data; using LANCommander.Server.Data.Models; -using LANCommander.Server.Extensions; +using LANCommander.Server.Services.Extensions; using LANCommander.Server.Models; using LANCommander.SDK; using LANCommander.SDK.Enums; using LANCommander.SDK.Helpers; -using NuGet.Packaging; using System.IO; using System.IO.Compression; using System.Linq.Expressions; using ZiggyCreatures.Caching.Fusion; +using LANCommander.Server.Services.Models; +using Microsoft.Extensions.Logging; +using System.Data.SqlClient; namespace LANCommander.Server.Services { @@ -28,7 +30,6 @@ namespace LANCommander.Server.Services public GameService( ILogger logger, DatabaseContext dbContext, - IHttpContextAccessor httpContextAccessor, IMapper mapper, ArchiveService archiveService, MediaService mediaService, @@ -36,7 +37,7 @@ namespace LANCommander.Server.Services TagService tagService, CompanyService companyService, GenreService genreService, - IFusionCache cache) : base(logger, dbContext, httpContextAccessor) + IFusionCache cache) : base(logger, dbContext) { Mapper = mapper; ArchiveService = archiveService; @@ -295,15 +296,18 @@ namespace LANCommander.Server.Services game.Actions = new List(); if (manifest.Actions != null && manifest.Actions.Count() > 0) - game.Actions.AddRange(manifest.Actions.Select(a => new Data.Models.Action() + foreach (var action in manifest.Actions) { - Name = a.Name, - Arguments = a.Arguments, - Path = a.Path, - WorkingDirectory = a.WorkingDirectory, - PrimaryAction = a.IsPrimaryAction, - SortOrder = a.SortOrder, - })); + game.Actions.Add(new Data.Models.Action() + { + Name = action.Name, + Arguments = action.Arguments, + Path = action.Path, + WorkingDirectory = action.WorkingDirectory, + PrimaryAction = action.IsPrimaryAction, + SortOrder = action.SortOrder, + }); + } #endregion #region Engine diff --git a/LANCommander.Server/Services/GenreService.cs b/LANCommander.Server.Services/GenreService.cs similarity index 64% rename from LANCommander.Server/Services/GenreService.cs rename to LANCommander.Server.Services/GenreService.cs index ab4027b4..0cac5a14 100644 --- a/LANCommander.Server/Services/GenreService.cs +++ b/LANCommander.Server.Services/GenreService.cs @@ -1,5 +1,6 @@ using LANCommander.Server.Data; using LANCommander.Server.Data.Models; +using Microsoft.Extensions.Logging; namespace LANCommander.Server.Services { @@ -7,7 +8,6 @@ namespace LANCommander.Server.Services { public GenreService( ILogger logger, - DatabaseContext dbContext, - IHttpContextAccessor httpContextAccessor) : base(logger, dbContext, httpContextAccessor) { } + DatabaseContext dbContext) : base(logger, dbContext) { } } } diff --git a/LANCommander.Server.Services/Helpers/DirectoryHelpers.cs b/LANCommander.Server.Services/Helpers/DirectoryHelpers.cs new file mode 100644 index 00000000..d087892d --- /dev/null +++ b/LANCommander.Server.Services/Helpers/DirectoryHelpers.cs @@ -0,0 +1,17 @@ +namespace LANCommander.Helpers +{ + public static class DirectoryHelpers + { + public static void DeleteIfExists(string path, bool recursive = true) + { + if (Directory.Exists(path)) + Directory.Delete(path, recursive); + } + + public static void CreateIfMissing(string path) + { + if (!Directory.Exists(path)) + Directory.CreateDirectory(path); + } + } +} diff --git a/LANCommander.Server.Services/Helpers/FileHelpers.cs b/LANCommander.Server.Services/Helpers/FileHelpers.cs new file mode 100644 index 00000000..367c259e --- /dev/null +++ b/LANCommander.Server.Services/Helpers/FileHelpers.cs @@ -0,0 +1,11 @@ +namespace LANCommander.Helpers +{ + public static class FileHelpers + { + public static void DeleteIfExists(string path) + { + if (File.Exists(path)) + File.Delete(path); + } + } +} diff --git a/LANCommander.Server/Services/IGDBService.cs b/LANCommander.Server.Services/IGDBService.cs similarity index 98% rename from LANCommander.Server/Services/IGDBService.cs rename to LANCommander.Server.Services/IGDBService.cs index b3e6249e..319294cb 100644 --- a/LANCommander.Server/Services/IGDBService.cs +++ b/LANCommander.Server.Services/IGDBService.cs @@ -1,5 +1,6 @@ using IGDB; using IGDB.Models; +using Microsoft.Extensions.Logging; using System.Text; namespace LANCommander.Server.Services diff --git a/LANCommander.Server/Services/IMediaGrabberService.cs b/LANCommander.Server.Services/IMediaGrabberService.cs similarity index 71% rename from LANCommander.Server/Services/IMediaGrabberService.cs rename to LANCommander.Server.Services/IMediaGrabberService.cs index fcea703c..d5ed0115 100644 --- a/LANCommander.Server/Services/IMediaGrabberService.cs +++ b/LANCommander.Server.Services/IMediaGrabberService.cs @@ -1,5 +1,5 @@ -using LANCommander.Server.Models; -using LANCommander.SDK.Enums; +using LANCommander.SDK.Enums; +using LANCommander.Server.Services.Models; namespace LANCommander.Server.Services { diff --git a/LANCommander.Server/Services/IPXRelayService.cs b/LANCommander.Server.Services/IPXRelayService.cs similarity index 95% rename from LANCommander.Server/Services/IPXRelayService.cs rename to LANCommander.Server.Services/IPXRelayService.cs index b2b26aa3..02d12e22 100644 --- a/LANCommander.Server/Services/IPXRelayService.cs +++ b/LANCommander.Server.Services/IPXRelayService.cs @@ -1,4 +1,5 @@ using IPXRelayDotNet; +using Microsoft.Extensions.Logging; namespace LANCommander.Server.Services { diff --git a/LANCommander.Server/Services/IssueService.cs b/LANCommander.Server.Services/IssueService.cs similarity index 53% rename from LANCommander.Server/Services/IssueService.cs rename to LANCommander.Server.Services/IssueService.cs index 4df55031..821c478a 100644 --- a/LANCommander.Server/Services/IssueService.cs +++ b/LANCommander.Server.Services/IssueService.cs @@ -1,27 +1,24 @@ using LANCommander.Server.Data; using LANCommander.Server.Data.Models; -using LANCommander.Server.Extensions; using LANCommander.SDK.Helpers; using System.IO.Compression; using System.Security.Cryptography.X509Certificates; using YamlDotNet.Serialization; using YamlDotNet.Serialization.NamingConventions; using Microsoft.AspNetCore.Identity; +using Microsoft.Extensions.Logging; namespace LANCommander.Server.Services { public class IssueService : BaseDatabaseService { - private readonly HttpContext HttpContext; private readonly UserManager UserManager; public IssueService( ILogger logger, DatabaseContext dbContext, - IHttpContextAccessor httpContextAccessor, - UserManager userManager) : base(logger, dbContext, httpContextAccessor) + UserManager userManager) : base(logger, dbContext) { - HttpContext = httpContextAccessor.HttpContext; UserManager = userManager; } @@ -30,24 +27,9 @@ namespace LANCommander.Server.Services var issue = await Get(issueId); issue.ResolvedOn = DateTime.Now; - issue.ResolvedBy = await GetCurrentUserAsync(); + // issue.ResolvedBy = await GetCurrentUserAsync(); await Update(issue); } - - private async Task GetCurrentUserAsync() - { - if (HttpContext != null && HttpContext.User != null && HttpContext.User.Identity != null && HttpContext.User.Identity.IsAuthenticated) - { - var user = await UserManager.FindByNameAsync(HttpContext.User.Identity.Name); - - if (user == null) - return null; - else - return user; - } - else - return null; - } } } diff --git a/LANCommander.Server/Services/KeyService.cs b/LANCommander.Server.Services/KeyService.cs similarity index 89% rename from LANCommander.Server/Services/KeyService.cs rename to LANCommander.Server.Services/KeyService.cs index 1bc8f685..35edce31 100644 --- a/LANCommander.Server/Services/KeyService.cs +++ b/LANCommander.Server.Services/KeyService.cs @@ -1,15 +1,15 @@ using LANCommander.SDK.Enums; using LANCommander.Server.Data; using LANCommander.Server.Data.Models; +using Microsoft.Extensions.Logging; namespace LANCommander.Server.Services { public class KeyService : BaseDatabaseService { public KeyService( - ILogger logger, - DatabaseContext dbContext, - IHttpContextAccessor httpContextAccessor) : base(logger, dbContext, httpContextAccessor) { } + ILogger logger, + DatabaseContext dbContext) : base(logger, dbContext) { } public async Task Allocate(Key key, User user) { diff --git a/LANCommander.Server.Services/LANCommander.Server.Services.csproj b/LANCommander.Server.Services/LANCommander.Server.Services.csproj new file mode 100644 index 00000000..ffb225d1 --- /dev/null +++ b/LANCommander.Server.Services/LANCommander.Server.Services.csproj @@ -0,0 +1,32 @@ + + + + net8.0 + enable + enable + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/LANCommander.Server/Services/MediaGrabbers/SteamGridDBMediaGrabber.cs b/LANCommander.Server.Services/MediaGrabbers/SteamGridDBMediaGrabber.cs similarity index 99% rename from LANCommander.Server/Services/MediaGrabbers/SteamGridDBMediaGrabber.cs rename to LANCommander.Server.Services/MediaGrabbers/SteamGridDBMediaGrabber.cs index 8c877959..b8c54ff2 100644 --- a/LANCommander.Server/Services/MediaGrabbers/SteamGridDBMediaGrabber.cs +++ b/LANCommander.Server.Services/MediaGrabbers/SteamGridDBMediaGrabber.cs @@ -3,6 +3,7 @@ using LANCommander.Server.Models; using LANCommander.SDK.Enums; using LANCommander.Steam; using System.Net.Mime; +using LANCommander.Server.Services.Models; namespace LANCommander.Server.Services.MediaGrabbers { diff --git a/LANCommander.Server/Services/MediaService.cs b/LANCommander.Server.Services/MediaService.cs similarity index 91% rename from LANCommander.Server/Services/MediaService.cs rename to LANCommander.Server.Services/MediaService.cs index 5332a438..677a0430 100644 --- a/LANCommander.Server/Services/MediaService.cs +++ b/LANCommander.Server.Services/MediaService.cs @@ -2,10 +2,9 @@ using LANCommander.Server.Data; using LANCommander.Server.Data.Models; using LANCommander.Helpers; -using LANCommander.Server.Models; -using Microsoft.AspNetCore.Components.Forms; using Syncfusion.PdfToImageConverter; using System.Net.Mime; +using Microsoft.Extensions.Logging; namespace LANCommander.Server.Services { @@ -13,8 +12,7 @@ namespace LANCommander.Server.Services { public MediaService( ILogger logger, - DatabaseContext dbContext, - IHttpContextAccessor httpContextAccessor) : base(logger, dbContext, httpContextAccessor) { } + DatabaseContext dbContext) : base(logger, dbContext) { } public override Task Delete(Media entity) { @@ -51,10 +49,11 @@ namespace LANCommander.Server.Services return Path.Combine(settings.Media.StoragePath, entity.FileId.ToString()); } - public async Task UploadMediaAsync(IBrowserFile file, Media media) + /*public async Task UploadMediaAsync(Stream stream, Media media) { - return await UploadMediaAsync(file.OpenReadStream(maxAllowedSize: Settings.Media.MaxSize * 1024 * 1024), media); - } + return await UploadMediaAsync(stream, media); + // return await UploadMediaAsync(file.OpenReadStream(maxAllowedSize: Settings.Media.MaxSize * 1024 * 1024), media); + }*/ public async Task UploadMediaAsync(Stream stream, Media media) { diff --git a/LANCommander.Server/Models/ExistingEntityResult.cs b/LANCommander.Server.Services/Models/ExistingEntityResult.cs similarity index 81% rename from LANCommander.Server/Models/ExistingEntityResult.cs rename to LANCommander.Server.Services/Models/ExistingEntityResult.cs index 6e654d6f..40f0a075 100644 --- a/LANCommander.Server/Models/ExistingEntityResult.cs +++ b/LANCommander.Server.Services/Models/ExistingEntityResult.cs @@ -1,6 +1,6 @@ using LANCommander.Server.Data.Models; -namespace LANCommander.Server.Models +namespace LANCommander.Server.Services.Models { public class ExistingEntityResult where T : BaseModel { diff --git a/LANCommander.Server/Models/GameLookupResult.cs b/LANCommander.Server.Services/Models/GameLookupResult.cs similarity index 83% rename from LANCommander.Server/Models/GameLookupResult.cs rename to LANCommander.Server.Services/Models/GameLookupResult.cs index d6c2ffbc..fee36ee9 100644 --- a/LANCommander.Server/Models/GameLookupResult.cs +++ b/LANCommander.Server.Services/Models/GameLookupResult.cs @@ -1,6 +1,6 @@ using LANCommander.Server.Data.Models; -namespace LANCommander.Server.Models +namespace LANCommander.Server.Services.Models { public class GameLookupResult { diff --git a/LANCommander.Server/Models/MediaGrabberOptions.cs b/LANCommander.Server.Services/Models/MediaGrabberOptions.cs similarity index 79% rename from LANCommander.Server/Models/MediaGrabberOptions.cs rename to LANCommander.Server.Services/Models/MediaGrabberOptions.cs index 6cbff507..07f60acc 100644 --- a/LANCommander.Server/Models/MediaGrabberOptions.cs +++ b/LANCommander.Server.Services/Models/MediaGrabberOptions.cs @@ -1,6 +1,6 @@ using LANCommander.SDK.Enums; -namespace LANCommander.Server.Models +namespace LANCommander.Server.Services.Models { public class MediaGrabberOptions { diff --git a/LANCommander.Server/Models/MediaGrabberResult.cs b/LANCommander.Server.Services/Models/MediaGrabberResult.cs similarity index 88% rename from LANCommander.Server/Models/MediaGrabberResult.cs rename to LANCommander.Server.Services/Models/MediaGrabberResult.cs index 41ceb294..9d89fd3f 100644 --- a/LANCommander.Server/Models/MediaGrabberResult.cs +++ b/LANCommander.Server.Services/Models/MediaGrabberResult.cs @@ -1,6 +1,6 @@ using LANCommander.SDK.Enums; -namespace LANCommander.Server.Models +namespace LANCommander.Server.Services.Models { public class MediaGrabberResult { diff --git a/LANCommander.Server/Models/Settings.cs b/LANCommander.Server.Services/Models/Settings.cs similarity index 94% rename from LANCommander.Server/Models/Settings.cs rename to LANCommander.Server.Services/Models/Settings.cs index a0ff80f3..3d781a7c 100644 --- a/LANCommander.Server/Models/Settings.cs +++ b/LANCommander.Server.Services/Models/Settings.cs @@ -1,6 +1,4 @@ -using Serilog; - -namespace LANCommander.Server.Models +namespace LANCommander.Server.Models { public enum LANCommanderTheme { @@ -8,6 +6,16 @@ namespace LANCommander.Server.Models Dark } + public enum LogInterval + { + Infinite, + Year, + Month, + Day, + Hour, + Minute + } + public class LANCommanderSettings { public int Port { get; set; } = 1337; @@ -112,7 +120,7 @@ namespace LANCommander.Server.Models public class LANCommanderLogSettings { public string StoragePath { get; set; } = "Logs"; - public RollingInterval ArchiveEvery { get; set; } = RollingInterval.Day; + public LogInterval ArchiveEvery { get; set; } = LogInterval.Day; public int MaxArchiveFiles { get; set; } = 10; } } diff --git a/LANCommander.Server/Models/Snippet.cs b/LANCommander.Server.Services/Models/Snippet.cs similarity index 100% rename from LANCommander.Server/Models/Snippet.cs rename to LANCommander.Server.Services/Models/Snippet.cs diff --git a/LANCommander.Server/Services/PageService.cs b/LANCommander.Server.Services/PageService.cs similarity index 95% rename from LANCommander.Server/Services/PageService.cs rename to LANCommander.Server.Services/PageService.cs index 4d03c027..4c8f17b3 100644 --- a/LANCommander.Server/Services/PageService.cs +++ b/LANCommander.Server.Services/PageService.cs @@ -1,8 +1,9 @@ using JetBrains.Annotations; using LANCommander.Server.Data; using LANCommander.Server.Data.Models; -using LANCommander.Server.Extensions; +using LANCommander.Server.Services.Extensions; using Microsoft.EntityFrameworkCore; +using Microsoft.Extensions.Logging; using System.Text; using YamlDotNet.Core.Tokens; using ZiggyCreatures.Caching.Fusion; @@ -16,8 +17,7 @@ namespace LANCommander.Server.Services public PageService( ILogger logger, DatabaseContext dbContext, - IHttpContextAccessor httpContextAccessor, - IFusionCache cache) : base(logger, dbContext, httpContextAccessor) + IFusionCache cache) : base(logger, dbContext) { Cache = cache; } diff --git a/LANCommander.Server/Services/PlatformService.cs b/LANCommander.Server.Services/PlatformService.cs similarity index 65% rename from LANCommander.Server/Services/PlatformService.cs rename to LANCommander.Server.Services/PlatformService.cs index 25213341..32f03165 100644 --- a/LANCommander.Server/Services/PlatformService.cs +++ b/LANCommander.Server.Services/PlatformService.cs @@ -1,5 +1,6 @@ using LANCommander.Server.Data; using LANCommander.Server.Data.Models; +using Microsoft.Extensions.Logging; namespace LANCommander.Server.Services { @@ -7,7 +8,6 @@ namespace LANCommander.Server.Services { public PlatformService( ILogger logger, - DatabaseContext dbContext, - IHttpContextAccessor httpContextAccessor) : base(logger, dbContext, httpContextAccessor) { } + DatabaseContext dbContext) : base(logger, dbContext) { } } } diff --git a/LANCommander.Server/Services/PlaySessionService.cs b/LANCommander.Server.Services/PlaySessionService.cs similarity index 96% rename from LANCommander.Server/Services/PlaySessionService.cs rename to LANCommander.Server.Services/PlaySessionService.cs index 0c2f57d7..78107047 100644 --- a/LANCommander.Server/Services/PlaySessionService.cs +++ b/LANCommander.Server.Services/PlaySessionService.cs @@ -4,6 +4,7 @@ using LANCommander.Helpers; using LANCommander.Server.Models; using Microsoft.EntityFrameworkCore; using LANCommander.SDK.Enums; +using Microsoft.Extensions.Logging; namespace LANCommander.Server.Services { @@ -15,9 +16,8 @@ namespace LANCommander.Server.Services public PlaySessionService( ILogger logger, DatabaseContext dbContext, - IHttpContextAccessor httpContextAccessor, ServerService serverService, - ServerProcessService serverProcessService) : base(logger, dbContext, httpContextAccessor) + ServerProcessService serverProcessService) : base(logger, dbContext) { ServerService = serverService; ServerProcessService = serverProcessService; diff --git a/LANCommander.Server/Services/RedistributableService.cs b/LANCommander.Server.Services/RedistributableService.cs similarity index 96% rename from LANCommander.Server/Services/RedistributableService.cs rename to LANCommander.Server.Services/RedistributableService.cs index 6d8c3918..790edca5 100644 --- a/LANCommander.Server/Services/RedistributableService.cs +++ b/LANCommander.Server.Services/RedistributableService.cs @@ -1,12 +1,13 @@ using LANCommander.Server.Data; using LANCommander.Server.Data.Models; -using LANCommander.Server.Extensions; +using LANCommander.Server.Services.Extensions; using LANCommander.SDK.Helpers; using System.IO.Compression; using System.Security.Cryptography.X509Certificates; using YamlDotNet.Serialization; using YamlDotNet.Serialization.NamingConventions; using LANCommander.SDK.Enums; +using Microsoft.Extensions.Logging; namespace LANCommander.Server.Services { @@ -14,8 +15,7 @@ namespace LANCommander.Server.Services { public RedistributableService( ILogger logger, - DatabaseContext dbContext, - IHttpContextAccessor httpContextAccessor) : base(logger, dbContext, httpContextAccessor) { } + DatabaseContext dbContext) : base(logger, dbContext) { } public async Task Import(Guid objectKey) { diff --git a/LANCommander.Server/Services/SavePathService.cs b/LANCommander.Server.Services/SavePathService.cs similarity index 60% rename from LANCommander.Server/Services/SavePathService.cs rename to LANCommander.Server.Services/SavePathService.cs index 10e1573e..1111b9de 100644 --- a/LANCommander.Server/Services/SavePathService.cs +++ b/LANCommander.Server.Services/SavePathService.cs @@ -1,6 +1,6 @@ using LANCommander.Server.Data; using LANCommander.Server.Data.Models; -using Microsoft.AspNetCore.Mvc; +using Microsoft.Extensions.Logging; namespace LANCommander.Server.Services { @@ -8,7 +8,6 @@ namespace LANCommander.Server.Services { public SavePathService( ILogger logger, - DatabaseContext dbContext, - IHttpContextAccessor httpContextAccessor) : base(logger, dbContext, httpContextAccessor) { } + DatabaseContext dbContext) : base(logger, dbContext) { } } } diff --git a/LANCommander.Server/Services/ScriptService.cs b/LANCommander.Server.Services/ScriptService.cs similarity index 86% rename from LANCommander.Server/Services/ScriptService.cs rename to LANCommander.Server.Services/ScriptService.cs index b9acf2e4..f2cc4d7d 100644 --- a/LANCommander.Server/Services/ScriptService.cs +++ b/LANCommander.Server.Services/ScriptService.cs @@ -1,6 +1,7 @@ using LANCommander.Server.Data; using LANCommander.Server.Data.Models; using LANCommander.Server.Models; +using Microsoft.Extensions.Logging; using System.Security.Cryptography.X509Certificates; namespace LANCommander.Server.Services @@ -9,8 +10,7 @@ namespace LANCommander.Server.Services { public ScriptService( ILogger logger, - DatabaseContext dbContext, - IHttpContextAccessor httpContextAccessor) : base(logger, dbContext, httpContextAccessor) { } + DatabaseContext dbContext) : base(logger, dbContext) { } public static IEnumerable GetSnippets() { diff --git a/LANCommander.Server/Services/ServerLogService.cs b/LANCommander.Server.Services/ServerLogService.cs similarity index 83% rename from LANCommander.Server/Services/ServerLogService.cs rename to LANCommander.Server.Services/ServerLogService.cs index c5d91556..73430fc6 100644 --- a/LANCommander.Server/Services/ServerLogService.cs +++ b/LANCommander.Server.Services/ServerLogService.cs @@ -2,6 +2,7 @@ using LANCommander.SDK.Enums; using LANCommander.Server.Data; using LANCommander.Server.Data.Models; +using Microsoft.Extensions.Logging; using System.Diagnostics; using System.Net; @@ -11,8 +12,7 @@ namespace LANCommander.Server.Services { public ServerConsoleService( ILogger logger, - DatabaseContext dbContext, - IHttpContextAccessor httpContextAccessor) : base(logger, dbContext, httpContextAccessor) { } + DatabaseContext dbContext) : base(logger, dbContext) { } public async Task ReadLog(Guid logId) { diff --git a/LANCommander.Server/Services/ServerProcessService.cs b/LANCommander.Server.Services/ServerProcessService.cs similarity index 96% rename from LANCommander.Server/Services/ServerProcessService.cs rename to LANCommander.Server.Services/ServerProcessService.cs index 252240dd..708d5b61 100644 --- a/LANCommander.Server/Services/ServerProcessService.cs +++ b/LANCommander.Server.Services/ServerProcessService.cs @@ -1,14 +1,14 @@ using AutoMapper; using CoreRCON; using LANCommander.Server.Data.Models; -using LANCommander.Server.Hubs; using LANCommander.SDK.Enums; using LANCommander.SDK.PowerShell; -using Microsoft.AspNetCore.SignalR; using Microsoft.EntityFrameworkCore; using System.Diagnostics; using System.Net; using LANCommander.SDK; +using Microsoft.Extensions.Logging; +using Microsoft.Extensions.DependencyInjection; namespace LANCommander.Server.Services { @@ -58,7 +58,7 @@ namespace LANCommander.Server.Services private FileStream FileStream; private FileSystemWatcher FileSystemWatcher; - public LogFileMonitor(Data.Models.Server server, ServerConsole serverConsole, IHubContext hubContext) + public LogFileMonitor(Data.Models.Server server, ServerConsole serverConsole) { var logPath = Path.Combine(server.WorkingDirectory, serverConsole.Path); @@ -95,7 +95,7 @@ namespace LANCommander.Server.Services while ((line = sr.ReadLine()) != null) { - hubContext.Clients.All.SendAsync("Log", serverConsole.ServerId, line); + // hubContext.Clients.All.SendAsync("Log", serverConsole.ServerId, line); //OnLog?.Invoke(this, new ServerLogEventArgs(line, log)); } @@ -145,19 +145,16 @@ namespace LANCommander.Server.Services public event OnStatusUpdateHandler OnStatusUpdate; private readonly IMapper Mapper; - private readonly IHubContext HubContext; private readonly IServiceProvider ServiceProvider; private readonly SDK.Client Client; public ServerProcessService( ILogger logger, IMapper mapper, - IHubContext hubContext, IServiceProvider serviceProvider, SDK.Client client) : base(logger) { Mapper = mapper; - HubContext = hubContext; ServiceProvider = serviceProvider; Client = client; } @@ -220,13 +217,11 @@ namespace LANCommander.Server.Services process.OutputDataReceived += new DataReceivedEventHandler((sender, e) => { - HubContext.Clients.All.SendAsync("Log", e.Data); Logger?.LogInformation("Game Server {ServerName} ({ServerId}) Info: {Message}", server.Name, server.Id, e.Data); }); process.ErrorDataReceived += new DataReceivedEventHandler((sender, e) => { - HubContext.Clients.All.SendAsync("Log", e.Data); Logger?.LogError("Game Server {ServerName} ({ServerId}) Error: {Message}", server.Name, server.Id, e.Data); }); } @@ -356,7 +351,7 @@ namespace LANCommander.Server.Services { if (!LogFileMonitors.ContainsKey(server.Id)) { - LogFileMonitors[server.Id] = new LogFileMonitor(server, log, HubContext); + LogFileMonitors[server.Id] = new LogFileMonitor(server, log); } } diff --git a/LANCommander.Server/Services/ServerService.cs b/LANCommander.Server.Services/ServerService.cs similarity index 98% rename from LANCommander.Server/Services/ServerService.cs rename to LANCommander.Server.Services/ServerService.cs index f21411be..9b097147 100644 --- a/LANCommander.Server/Services/ServerService.cs +++ b/LANCommander.Server.Services/ServerService.cs @@ -1,10 +1,11 @@ using LANCommander.Server.Data; using LANCommander.Server.Data.Models; -using LANCommander.Server.Extensions; using LANCommander.SDK.Helpers; using System.Diagnostics; using System.IO.Compression; using LANCommander.SDK.Enums; +using Microsoft.Extensions.Logging; +using LANCommander.Server.Services.Extensions; namespace LANCommander.Server.Services { @@ -15,8 +16,7 @@ namespace LANCommander.Server.Services public ServerService( ILogger logger, DatabaseContext dbContext, - IHttpContextAccessor httpContextAccessor, - GameService gameService) : base(logger, dbContext, httpContextAccessor) + GameService gameService) : base(logger, dbContext) { GameService = gameService; } diff --git a/LANCommander.Server/Services/SettingService.cs b/LANCommander.Server.Services/SettingService.cs similarity index 100% rename from LANCommander.Server/Services/SettingService.cs rename to LANCommander.Server.Services/SettingService.cs diff --git a/LANCommander.Server/Services/TagService.cs b/LANCommander.Server.Services/TagService.cs similarity index 63% rename from LANCommander.Server/Services/TagService.cs rename to LANCommander.Server.Services/TagService.cs index 9a214589..f62d422b 100644 --- a/LANCommander.Server/Services/TagService.cs +++ b/LANCommander.Server.Services/TagService.cs @@ -1,5 +1,6 @@ using LANCommander.Server.Data; using LANCommander.Server.Data.Models; +using Microsoft.Extensions.Logging; namespace LANCommander.Server.Services { @@ -7,7 +8,6 @@ namespace LANCommander.Server.Services { public TagService( ILogger logger, - DatabaseContext dbContext, - IHttpContextAccessor httpContextAccessor) : base(logger, dbContext, httpContextAccessor) { } + DatabaseContext dbContext) : base(logger, dbContext) { } } } diff --git a/LANCommander.Server/Services/UpdateService.cs b/LANCommander.Server.Services/UpdateService.cs similarity index 98% rename from LANCommander.Server/Services/UpdateService.cs rename to LANCommander.Server.Services/UpdateService.cs index 52fdfcf8..4025c033 100644 --- a/LANCommander.Server/Services/UpdateService.cs +++ b/LANCommander.Server.Services/UpdateService.cs @@ -1,4 +1,6 @@ using LANCommander.Server.Models; +using Microsoft.Extensions.Hosting; +using Microsoft.Extensions.Logging; using Octokit; using Semver; using System; diff --git a/LANCommander.Server/Services/UserService.cs b/LANCommander.Server.Services/UserService.cs similarity index 91% rename from LANCommander.Server/Services/UserService.cs rename to LANCommander.Server.Services/UserService.cs index 16873b02..04e754bc 100644 --- a/LANCommander.Server/Services/UserService.cs +++ b/LANCommander.Server.Services/UserService.cs @@ -1,6 +1,7 @@ using LANCommander.Server.Data; using LANCommander.Server.Data.Models; using Microsoft.AspNetCore.Identity; +using Microsoft.Extensions.Logging; namespace LANCommander.Server.Services { @@ -8,17 +9,14 @@ namespace LANCommander.Server.Services { private readonly DatabaseContext DatabaseContext; private readonly UserManager UserManager; - private readonly HttpContext HttpContext; public UserService( ILogger logger, DatabaseContext databaseContext, - IHttpContextAccessor httpContextAccessor, UserManager userManager) : base(logger) { DatabaseContext = databaseContext; UserManager = userManager; - HttpContext = httpContextAccessor.HttpContext; } public async Task Get(Guid id) @@ -33,7 +31,7 @@ namespace LANCommander.Server.Services public async Task GetCustomField(Guid userId, string name) { - using (var repo = new Repository(DatabaseContext, HttpContext)) + using (var repo = new Repository(DatabaseContext)) { return repo.FirstOrDefault(cf => cf.UserId == userId && cf.Name == name); } @@ -47,7 +45,7 @@ namespace LANCommander.Server.Services if (value.Length > 1024) throw new ArgumentException("Field value must be 1024 characters or less"); - using (var repo = new Repository(DatabaseContext, HttpContext)) + using (var repo = new Repository(DatabaseContext)) { var existing = repo.FirstOrDefault(cf => cf.UserId == userId && cf.Name == name); @@ -81,7 +79,7 @@ namespace LANCommander.Server.Services public async Task DeleteCustomField(Guid userId, string name) { - using (var repo = new Repository(DatabaseContext, HttpContext)) + using (var repo = new Repository(DatabaseContext)) { var existing = repo.FirstOrDefault(cf => cf.UserId == userId && cf.Name == name); @@ -92,7 +90,7 @@ namespace LANCommander.Server.Services public async Task DeleteCustomField(Guid userId, Guid id) { - using (var repo = new Repository(DatabaseContext, HttpContext)) + using (var repo = new Repository(DatabaseContext)) { var existing = repo.FirstOrDefault(cf => cf.UserId == userId && cf.Id == id); diff --git a/LANCommander.Server/Services/_BaseDatabaseService.cs b/LANCommander.Server.Services/_BaseDatabaseService.cs similarity index 82% rename from LANCommander.Server/Services/_BaseDatabaseService.cs rename to LANCommander.Server.Services/_BaseDatabaseService.cs index 2bab67eb..e7620b88 100644 --- a/LANCommander.Server/Services/_BaseDatabaseService.cs +++ b/LANCommander.Server.Services/_BaseDatabaseService.cs @@ -1,7 +1,9 @@ using LANCommander.Server.Data; using LANCommander.Server.Data.Models; using LANCommander.Server.Models; +using LANCommander.Server.Services.Models; using Microsoft.EntityFrameworkCore; +using Microsoft.Extensions.Logging; using System.Linq.Expressions; namespace LANCommander.Server.Services @@ -9,12 +11,10 @@ namespace LANCommander.Server.Services public abstract class BaseDatabaseService : BaseService where T : BaseModel { public DatabaseContext Context { get; set; } - public HttpContext HttpContext { get; set; } - public BaseDatabaseService(ILogger logger, DatabaseContext dbContext, IHttpContextAccessor httpContextAccessor) : base(logger) + public BaseDatabaseService(ILogger logger, DatabaseContext dbContext) : base(logger) { Context = dbContext; - HttpContext = httpContextAccessor.HttpContext; } public virtual async Task> Get() @@ -24,7 +24,7 @@ namespace LANCommander.Server.Services public virtual async Task Get(Guid id) { - using (var repo = new Repository(Context, HttpContext)) + using (var repo = new Repository(Context)) { return await repo.Find(id); } @@ -32,7 +32,7 @@ namespace LANCommander.Server.Services public virtual IQueryable Get(Expression> predicate) { - using (var repo = new Repository(Context, HttpContext)) + using (var repo = new Repository(Context)) { return repo.Get(predicate); } @@ -45,7 +45,7 @@ namespace LANCommander.Server.Services public virtual async Task Add(T entity) { - using (var repo = new Repository(Context, HttpContext)) + using (var repo = new Repository(Context)) { entity = await repo.Add(entity); await repo.SaveChanges(); @@ -62,7 +62,7 @@ namespace LANCommander.Server.Services /// Newly created or existing entity public virtual async Task> AddMissing(Expression> predicate, T entity) { - using (var repo = new Repository(Context, HttpContext)) + using (var repo = new Repository(Context)) { var existing = repo.Get(predicate).FirstOrDefault(); @@ -91,7 +91,7 @@ namespace LANCommander.Server.Services public virtual async Task Update(T entity) { - using (var repo = new Repository(Context, HttpContext)) + using (var repo = new Repository(Context)) { var existing = await repo.Find(entity.Id); @@ -106,7 +106,7 @@ namespace LANCommander.Server.Services public virtual async Task Delete(T entity) { - using (var repo = new Repository(Context, HttpContext)) + using (var repo = new Repository(Context)) { repo.Delete(entity); await repo.SaveChanges(); diff --git a/LANCommander.Server/Services/_BaseService.cs b/LANCommander.Server.Services/_BaseService.cs similarity index 91% rename from LANCommander.Server/Services/_BaseService.cs rename to LANCommander.Server.Services/_BaseService.cs index 3ee8dcde..b2652dcc 100644 --- a/LANCommander.Server/Services/_BaseService.cs +++ b/LANCommander.Server.Services/_BaseService.cs @@ -1,4 +1,5 @@ using LANCommander.Server.Models; +using Microsoft.Extensions.Logging; namespace LANCommander.Server.Services { diff --git a/LANCommander.Server/Controllers/Api/ArchivesController.cs b/LANCommander.Server/Controllers/Api/ArchivesController.cs index 78a36ca5..0e2a9234 100644 --- a/LANCommander.Server/Controllers/Api/ArchivesController.cs +++ b/LANCommander.Server/Controllers/Api/ArchivesController.cs @@ -26,7 +26,7 @@ namespace LANCommander.Server.Controllers.Api [HttpGet] public async Task>> Get() { - using (var repo = new Repository(Context, HttpContext)) + using (var repo = new Repository(Context)) { return Ok(await repo.Get(a => true).ToListAsync()); } @@ -35,7 +35,7 @@ namespace LANCommander.Server.Controllers.Api [HttpGet("{id}")] public async Task> Get(Guid id) { - using (var repo = new Repository(Context, HttpContext)) + using (var repo = new Repository(Context)) { var archive = await repo.Find(id); @@ -49,7 +49,7 @@ namespace LANCommander.Server.Controllers.Api [HttpGet("Download/{id}")] public async Task Download(Guid id) { - using (var repo = new Repository(Context, HttpContext)) + using (var repo = new Repository(Context)) { var archive = await repo.Find(id); diff --git a/LANCommander.Server/Extensions/GameSaveExtensions.cs b/LANCommander.Server/Extensions/GameSaveExtensions.cs new file mode 100644 index 00000000..9a8977c6 --- /dev/null +++ b/LANCommander.Server/Extensions/GameSaveExtensions.cs @@ -0,0 +1,22 @@ +using LANCommander.Server.Services; +using Steamworks.Data; + +namespace LANCommander.Server.Extensions +{ + public static class GameSaveExtensions + { + public static string GetUploadPath(this Data.Models.GameSave gameSave) + { + var settings = SettingService.GetSettings(); + + return Path.Combine(settings.UserSaves.StoragePath, gameSave.UserId.ToString(), gameSave.GameId.ToString(), gameSave.Id.ToString()); + } + + public static string GetGameSaveUploadPath(this Data.Models.User user) + { + var settings = SettingService.GetSettings(); + + return Path.Combine(settings.UserSaves.StoragePath, user.Id.ToString()); + } + } +} diff --git a/LANCommander.Server/Extensions/HttpContextExtensions.cs b/LANCommander.Server/Extensions/HttpContextExtensions.cs new file mode 100644 index 00000000..0d63e8b8 --- /dev/null +++ b/LANCommander.Server/Extensions/HttpContextExtensions.cs @@ -0,0 +1,27 @@ +using Microsoft.AspNetCore.Authentication; + +namespace LANCommander.Server.Extensions +{ + public static class HttpContextExtensions + { + public static async Task GetExternalProvidersAsync(this HttpContext context) + { + ArgumentNullException.ThrowIfNull(context); + + var schemes = context.RequestServices.GetRequiredService(); + + return (from scheme in await schemes.GetAllSchemesAsync() + where !string.IsNullOrEmpty(scheme.DisplayName) + select scheme).ToArray(); + } + + public static async Task IsProviderSupportedAsync(this HttpContext context, string provider) + { + ArgumentNullException.ThrowIfNull(context); + + return (from scheme in await context.GetExternalProvidersAsync() + where string.Equals(scheme.Name, provider, StringComparison.OrdinalIgnoreCase) + select scheme).Any(); + } + } +} diff --git a/LANCommander.Server/Extensions/StringExtensions.cs b/LANCommander.Server/Extensions/StringExtensions.cs index 726d2397..9f73d680 100644 --- a/LANCommander.Server/Extensions/StringExtensions.cs +++ b/LANCommander.Server/Extensions/StringExtensions.cs @@ -10,18 +10,6 @@ namespace LANCommander.Server.Extensions static readonly Regex InvalidChars = new Regex(@"[^a-z0-9\-]", RegexOptions.Compiled); static readonly Regex MultipleHyphens = new Regex(@"-{2,}", RegexOptions.Compiled); - public static string ToUrlSlug(this string value) - { - value = value.ToLowerInvariant(); - - value = RemoveDiacritics(value); - value = WordDelimiters.Replace(value, "-"); - value = InvalidChars.Replace(value, ""); - value = MultipleHyphens.Replace(value, "-"); - - return value.Trim('-'); - } - private static string RemoveDiacritics(string stIn) { string stFormD = stIn.Normalize(NormalizationForm.FormD); diff --git a/LANCommander.Server/LANCommander.Server.csproj b/LANCommander.Server/LANCommander.Server.csproj index 6d6ca973..c30b773d 100644 --- a/LANCommander.Server/LANCommander.Server.csproj +++ b/LANCommander.Server/LANCommander.Server.csproj @@ -69,7 +69,6 @@ - @@ -111,12 +110,15 @@ - - + + + + + diff --git a/LANCommander.Server/Program.cs b/LANCommander.Server/Program.cs index 70ee8161..5cb6ba22 100644 --- a/LANCommander.Server/Program.cs +++ b/LANCommander.Server/Program.cs @@ -46,7 +46,7 @@ namespace LANCommander.Server builder.Services.AddSerilogHub(); builder.Services.AddSerilog((serviceProvider, config) => config .WriteTo.Console() - .WriteTo.File(Path.Combine(settings.Logs.StoragePath, "log-.txt"), rollingInterval: settings.Logs.ArchiveEvery) + .WriteTo.File(Path.Combine(settings.Logs.StoragePath, "log-.txt"), rollingInterval: (RollingInterval)(int)settings.Logs.ArchiveEvery) .WriteTo.SignalR( serviceProvider, (context, message, logEvent) => LoggingHub.Log(context, message, logEvent) diff --git a/LANCommander.Server/UI/Components/AvatarUploader.razor b/LANCommander.Server/UI/Components/AvatarUploader.razor index 7edd055f..cbe444d0 100644 --- a/LANCommander.Server/UI/Components/AvatarUploader.razor +++ b/LANCommander.Server/UI/Components/AvatarUploader.razor @@ -1,4 +1,5 @@ -@inject UserService UserService +@using LANCommander.Server.Models +@inject UserService UserService @inject MediaService MediaService @inject IMessageService MessageService @@ -26,6 +27,8 @@ [Parameter] public Guid UserId { get; set; } [Parameter] public string Width { get; set; } = "104px"; + LANCommanderSettings Settings = SettingService.GetSettings(); + string AvatarUrl; User User = new User(); @@ -81,14 +84,14 @@ if (media.Id == Guid.Empty) { - media = await MediaService.UploadMediaAsync(e.File, media); + media = await MediaService.UploadMediaAsync(e.File.OpenReadStream(maxAllowedSize: Settings.Media.MaxSize * 1024 * 1024), media); await MediaService.Add(media); } else { MediaService.DeleteLocalMediaFile(media.FileId); - media = await MediaService.UploadMediaAsync(e.File, media); + media = await MediaService.UploadMediaAsync(e.File.OpenReadStream(maxAllowedSize: Settings.Media.MaxSize * 1024 * 1024), media); await MediaService.Update(media); } diff --git a/LANCommander.Server/UI/Components/MediaGrabberDialog.razor b/LANCommander.Server/UI/Components/MediaGrabberDialog.razor index becc2594..1ecfa4fd 100644 --- a/LANCommander.Server/UI/Components/MediaGrabberDialog.razor +++ b/LANCommander.Server/UI/Components/MediaGrabberDialog.razor @@ -1,6 +1,7 @@ @inherits FeedbackComponent @using LANCommander.Server.Models; @using LANCommander.SDK.Enums +@using LANCommander.Server.Services.Models @inject IMediaGrabberService MediaGrabberService @inject IMessageService MessageService @inject ILogger Logger diff --git a/LANCommander.Server/UI/Pages/Games/Components/GameMetadataLookup.razor b/LANCommander.Server/UI/Pages/Games/Components/GameMetadataLookup.razor index f5d983be..208d21a9 100644 --- a/LANCommander.Server/UI/Pages/Games/Components/GameMetadataLookup.razor +++ b/LANCommander.Server/UI/Pages/Games/Components/GameMetadataLookup.razor @@ -2,6 +2,7 @@ @using LANCommander.Server.Models @using LANCommander.PCGamingWiki @using LANCommander.SDK.Enums +@using LANCommander.Server.Services.Models @inject IGDBService IGDBService @inject CompanyService CompanyService @inject GenreService GenreService diff --git a/LANCommander.Server/UI/Pages/Games/Components/MediaEditor.razor b/LANCommander.Server/UI/Pages/Games/Components/MediaEditor.razor index 08631b58..a13eb940 100644 --- a/LANCommander.Server/UI/Pages/Games/Components/MediaEditor.razor +++ b/LANCommander.Server/UI/Pages/Games/Components/MediaEditor.razor @@ -1,6 +1,7 @@ @using LANCommander.Server.Models; @using LANCommander.SDK.Enums @using System.Net.Mime +@using LANCommander.Server.Services.Models @inject MediaService MediaService @inject ModalService ModalService @inject IMessageService MessageService @@ -215,14 +216,14 @@ if (media.Id == Guid.Empty) { - media = await MediaService.UploadMediaAsync(e.File, media); + media = await MediaService.UploadMediaAsync(e.File.OpenReadStream(maxAllowedSize: Settings.Media.MaxSize * 1024 * 1024), media); await MediaService.Add(media); } else { MediaService.DeleteLocalMediaFile(media.FileId); - media = await MediaService.UploadMediaAsync(e.File, media); + media = await MediaService.UploadMediaAsync(e.File.OpenReadStream(maxAllowedSize: Settings.Media.MaxSize * 1024 * 1024), media); await MediaService.Update(media); } diff --git a/LANCommander.Server/UI/Pages/Games/Edit.razor b/LANCommander.Server/UI/Pages/Games/Edit.razor index 8b5176d7..135dd824 100644 --- a/LANCommander.Server/UI/Pages/Games/Edit.razor +++ b/LANCommander.Server/UI/Pages/Games/Edit.razor @@ -3,6 +3,7 @@ @page "/Games/Add" @using LANCommander.SDK.Enums @using LANCommander.Server.Extensions +@using LANCommander.Server.Services.Models @using LANCommander.Server.UI.Pages.Games.Components; @using LANCommander.Server.Models; @using System.IO.Compression; diff --git a/LANCommander.Server/UI/Pages/Pages/Components/SlugEditorInput.razor b/LANCommander.Server/UI/Pages/Pages/Components/SlugEditorInput.razor index 4d4cad7d..ceb80a2f 100644 --- a/LANCommander.Server/UI/Pages/Pages/Components/SlugEditorInput.razor +++ b/LANCommander.Server/UI/Pages/Pages/Components/SlugEditorInput.razor @@ -1,4 +1,4 @@ -@using LANCommander.Server.Extensions +@using LANCommander.Server.Services.Extensions @inject PageService PageService diff --git a/LANCommander.Server/UI/Pages/Pages/Edit.razor b/LANCommander.Server/UI/Pages/Pages/Edit.razor index 75d8da59..da12bdc3 100644 --- a/LANCommander.Server/UI/Pages/Pages/Edit.razor +++ b/LANCommander.Server/UI/Pages/Pages/Edit.razor @@ -1,6 +1,7 @@ @page "/Pages/Edit" @page "/Pages/Edit/{id:guid}" @using LANCommander.Server.UI.Pages.Pages.Components +@using LANCommander.Server.Services.Extensions @using Microsoft.EntityFrameworkCore @using PSC.Blazor.Components.MarkdownEditor @using System.Text.RegularExpressions diff --git a/LANCommander.Server/UI/Pages/Settings/Logs/Index.razor b/LANCommander.Server/UI/Pages/Settings/Logs/Index.razor index 16ba5d74..78c3f6aa 100644 --- a/LANCommander.Server/UI/Pages/Settings/Logs/Index.razor +++ b/LANCommander.Server/UI/Pages/Settings/Logs/Index.razor @@ -16,7 +16,7 @@ - @Value.GetDisplayName() @Value.GetDisplayName() diff --git a/LANCommander.Server/UI/Pages/Settings/Users/Index.razor b/LANCommander.Server/UI/Pages/Settings/Users/Index.razor index 50a85a77..f2ea4f41 100644 --- a/LANCommander.Server/UI/Pages/Settings/Users/Index.razor +++ b/LANCommander.Server/UI/Pages/Settings/Users/Index.razor @@ -1,4 +1,5 @@ @page "/Settings/Users" +@using LANCommander.Server.Extensions @using LANCommander.Server.Models; @using LANCommander.Server.UI.Pages.Settings.Users.Components @layout SettingsLayout diff --git a/LANCommander.Steam/LANCommander.Steam.csproj b/LANCommander.Steam/LANCommander.Steam.csproj index 4f581309..e62162d5 100644 --- a/LANCommander.Steam/LANCommander.Steam.csproj +++ b/LANCommander.Steam/LANCommander.Steam.csproj @@ -5,7 +5,7 @@ - + diff --git a/LANCommander.sln b/LANCommander.sln index 9811c0ae..532bc41a 100644 --- a/LANCommander.sln +++ b/LANCommander.sln @@ -30,6 +30,13 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Microsoft.Common.props = Microsoft.Common.props EndProjectSection EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "LANCommander.Sandbox", "LANCommander.Sandbox\LANCommander.Sandbox.csproj", "{63FCF7D2-28C1-465B-A208-5FA612E969FC}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "LANCommander.Server.Data", "LANCommander.Server.Data\LANCommander.Server.Data.csproj", "{EB7227DA-BCC5-464F-800A-BB0D9A2FAD0D}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "LANCommander.Server.Data.SQLite", "LANCommander.Server.Data.SQLite\LANCommander.Server.Data.SQLite.csproj", "{6FE4891A-7B44-4768-89D9-2CA3D61E906B}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "LANCommander.Server.Services", "LANCommander.Server.Services\LANCommander.Server.Services.csproj", "{4F7C36A2-6F3F-440B-BEAE-148DA7DA6856}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -81,6 +88,22 @@ Global {D69FF032-2013-4C4A-8719-44B79E48F898}.Debug|Any CPU.Build.0 = Debug|Any CPU {D69FF032-2013-4C4A-8719-44B79E48F898}.Release|Any CPU.ActiveCfg = Release|Any CPU {D69FF032-2013-4C4A-8719-44B79E48F898}.Release|Any CPU.Build.0 = Release|Any CPU + {63FCF7D2-28C1-465B-A208-5FA612E969FC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {63FCF7D2-28C1-465B-A208-5FA612E969FC}.Debug|Any CPU.Build.0 = Debug|Any CPU + {63FCF7D2-28C1-465B-A208-5FA612E969FC}.Release|Any CPU.ActiveCfg = Release|Any CPU + {63FCF7D2-28C1-465B-A208-5FA612E969FC}.Release|Any CPU.Build.0 = Release|Any CPU + {EB7227DA-BCC5-464F-800A-BB0D9A2FAD0D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {EB7227DA-BCC5-464F-800A-BB0D9A2FAD0D}.Debug|Any CPU.Build.0 = Debug|Any CPU + {EB7227DA-BCC5-464F-800A-BB0D9A2FAD0D}.Release|Any CPU.ActiveCfg = Release|Any CPU + {EB7227DA-BCC5-464F-800A-BB0D9A2FAD0D}.Release|Any CPU.Build.0 = Release|Any CPU + {6FE4891A-7B44-4768-89D9-2CA3D61E906B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {6FE4891A-7B44-4768-89D9-2CA3D61E906B}.Debug|Any CPU.Build.0 = Debug|Any CPU + {6FE4891A-7B44-4768-89D9-2CA3D61E906B}.Release|Any CPU.ActiveCfg = Release|Any CPU + {6FE4891A-7B44-4768-89D9-2CA3D61E906B}.Release|Any CPU.Build.0 = Release|Any CPU + {4F7C36A2-6F3F-440B-BEAE-148DA7DA6856}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {4F7C36A2-6F3F-440B-BEAE-148DA7DA6856}.Debug|Any CPU.Build.0 = Debug|Any CPU + {4F7C36A2-6F3F-440B-BEAE-148DA7DA6856}.Release|Any CPU.ActiveCfg = Release|Any CPU + {4F7C36A2-6F3F-440B-BEAE-148DA7DA6856}.Release|Any CPU.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE