Commit graph

239 commits

Author SHA1 Message Date
Pat Hartl
8daad65cd3 Schedule background process for packaging 2025-08-02 23:27:27 -05:00
Pat Hartl
6c49d9041a Add basic workflow for packaging games via scripts 2025-08-02 00:22:16 -05:00
Pat Hartl
305a6e1b7d Remove antiforgery, fix auth service registration 2025-07-30 20:42:15 -05:00
Pat Hartl
ace43fa09e Revert "Merge branch 'feature/server-process-resource-monitoring'"
This reverts commit 8be2341305, reversing
changes made to cf0fe7c1b6.
2025-07-30 19:29:18 -05:00
Pat Hartl
8be2341305 Merge branch 'feature/server-process-resource-monitoring' 2025-07-30 19:27:38 -05:00
Pat Hartl
6ec919d1be Separate import and export functionality
This refactor splits the import and export functionality out of the ImportContext and adds an ExportContext. This also introduced separate importer and exporter implementations.

Additionally, adding archive, save, scripts, and server files to the final export archive has been implemented at the exporter implementation for each instead of handling it in the context. This should be a good pattern if other files need to be added down the road.
2025-07-27 17:51:50 -05:00
Pat Hartl
1250315110 Mostly-functional selective importer 2025-07-26 19:19:38 -05:00
Pat Hartl
a5dab5c094 Merge branch 'main' into refactor/optional-import-export
# Conflicts:
#	LANCommander.Server.Services/GameService.cs
#	LANCommander.Server.Services/ImportService.cs
#	LANCommander.Server.Services/Importers/GameImporter.cs
#	LANCommander.Server.Services/UserService.cs
#	LANCommander.Server/UI/Components/AvatarUploader.razor
#	LANCommander.Server/UI/Components/ImportUploadDialog.razor
2025-07-25 18:42:39 -05:00
Pat Hartl
c9c7963e46 Fix file-based records not being added to mainfest if files don't exist 2025-07-25 18:19:45 -05:00
Pat Hartl
3edc7f7fae Dispose archive properly to fix corruption issues 2025-07-25 18:19:03 -05:00
Pat Hartl
47d5b0b58a Working selective export (at least for manifest) 2025-07-25 17:57:33 -05:00
Pat Hartl
2e073e9332 Render export dialog, resolve circular DI issues
- Fixed circular DI issues with importers and importer context
- Added additional mappings for data <-> manifest models
- Avoid null reference exceptions when trying to export archives/media where files don't exist
- Consolidate import dialogs
- Render selectable flags in export dialog
- Fixed various media uploaders to use new MediaService.WriteToFile
2025-07-19 17:39:55 -05:00
Pat Hartl
400acd9287 Remove old export routes, build export archive from flags 2025-07-15 20:32:46 -05:00
Pat Hartl
c37ccd494c
Merge pull request #316 from RattleSN4K3/feature/ReworkLoginMessaging
Error messaging for login/register via Launcher
2025-06-29 21:15:11 -05:00
RattleSN4K3
a99703aaf7 Import media with same Id, overwrite on subsequent import 2025-06-22 19:29:45 +02:00
RattleSN4K3
3fad5d3fa5 Generate thumbnails on media import through archive import 2025-06-22 18:58:50 +02:00
RattleSN4K3
83ab404830 Fix deleting upload after failed import
Upload was kept since ArchiveService.DeleteAsync is not called on exception.
2025-06-22 18:52:36 +02:00
RattleSN4K3
5c4e94b150 Reload auth configuration on saving 2025-06-22 01:33:04 +02:00
RattleSN4K3
8d0864e01c Handle errors with specific exceptions, provide error response with message for clients 2025-06-22 01:33:03 +02:00
RattleSN4K3
83f453851f Prevent user account creation if the password does not meet the required criteria 2025-06-22 01:33:03 +02:00
RattleSN4K3
61e0378f12 Bypass password policy on first-time-setup for administrator creation 2025-06-18 00:19:58 +02:00
Pat Hartl
cddf67a613 Resource stats component, better tracking of child processes, fix serialization bugs 2025-06-14 15:33:10 -05:00
Pat Hartl
425bae360b Abstract server state to support other engines, add Docker container stats 2025-05-26 22:19:53 -05:00
Pat Hartl
fd27010a81 Fix status reporting, use private active memory 2025-05-26 21:59:30 -05:00
Pat Hartl
b3371fcd26 Fix obsolete usage of GetStatus, rework server control as siwtch 2025-05-25 21:11:33 -05:00
RattleSN4K3
73ff5f258a Remove-game-library dialog to remove base game + addons 2025-05-25 22:25:17 +02:00
RattleSN4K3
cb0765300b Only remove addon games _recursively_ (keep standalone and full games) 2025-05-24 21:30:30 +02:00
RattleSN4K3
f7d8f4b875 Fix crashing server when base game is removed 2025-05-24 21:26:57 +02:00
Pat Hartl
57bf7a1772
Merge pull request #281 from RattleSN4K3/fix/GameSaveUpload
Fix storing several entities (such as Gamesaves) properly
2025-05-24 14:06:45 -05:00
RattleSN4K3
b09752e458 Fix storing several entities (such as Gamesaves) properly
Referenced properties were not properly loaded causing constraint errors on saving.
2025-05-24 18:22:06 +02:00
RattleSN4K3
086f568f39 Fix importing tags on Lookup from IGDB 2025-05-24 16:32:48 +02:00
Pat Hartl
4d32f574a9 Provide server state instead of just status 2025-05-24 02:34:00 -05:00
Pat Hartl
1e7578772f Put addons (mods/expansions) nested under base game in list 2025-05-23 02:17:06 -05:00
Pat Hartl
84559b6492
Merge pull request #268 from RattleSN4K3/fix/FixExpiringArchivesCache
Expiring Archives cache after recalculating/updating archives
2025-05-17 23:43:41 -05:00
RattleSN4K3
028e3bfe0d Option to delete selected Media entries 2025-05-18 01:02:52 +02:00
RattleSN4K3
81511a9cd3 Clear Archives cache to update client manifest request when validating files 2025-05-17 23:04:54 +02:00
Pat Hartl
2063db8156
Merge pull request #248 from RattleSN4K3/feature/ReduceThumbnailByPercentage
Thumbnail file/image size reduction
2025-05-04 16:54:43 -05:00
Pat Hartl
31d546a5a5 Merge branch 'main' of https://github.com/LANCommander/LANCommander 2025-05-04 16:52:37 -05:00
Pat Hartl
a7172c85af
Merge pull request #243 from RattleSN4K3/fix/ClientRegisterError
Fix Launcher register error
2025-05-04 16:51:52 -05:00
Pat Hartl
a6dbb01e63 Strip punctuation from search
Fixes #240
2025-05-04 16:32:22 -05:00
Pat Hartl
549d45dafa Fix nightly launcher list/download 2025-05-03 16:48:05 -05:00
Pat Hartl
167193deba
Merge pull request #246 from RattleSN4K3/fix/SetupLoginBlock
Block First-Time-Setup after its initial setup being done
2025-04-25 02:31:13 -05:00
RattleSN4K3
946ce1da5a Reduce media thumbnail image size by 40%, clamp new size between min and max 2025-04-24 20:52:23 +02:00
Pat Hartl
89c2e1fe17
Merge pull request #244 from LANCommander/refactor/beacon
Refactor/beacon
2025-04-23 21:24:11 -05:00
Pat Hartl
041a0069ee Add DiscoveryBeacon, DiscoveryProbe, new beacon message
Adds a discovery beacon and probe to the client and removes BeaconService from the server.
2025-04-23 21:23:33 -05:00
RattleSN4K3
c9cb96e9cf Prevent accessing setup pages after initialization 2025-04-24 02:22:18 +02:00
RattleSN4K3
a387202d00 Support old clients with legacy register workflow (with no password confirmation) 2025-04-24 01:39:08 +02:00
Pat Hartl
49cbd1b738 Rewrite BeaconService
Reimplements the BeaconService using standard UDP sockets. Fixes an issue where the beacon was binding to the same port as the web server and was possibly causing disconnections. A socket is bound on each network interface that is up in order to hit all possible networks.
2025-04-13 03:16:19 -05:00
Pat Hartl
8f2772be4d Start laying out hosted service for background importing 2025-04-12 20:05:32 -05:00
RattleSN4K3
78a61f29ed Improve messaging for launcher variants (cloud, pre, nightly) 2025-04-12 22:47:53 +02:00