Repository navigation
Conversation
Adds a "Net-7.org sync" button to the Accounts window. It signs in to www.net-7.org with the user's forum login, reads the Avatar Transfer page (each slot carries its data as JSON in a data-avatar attribute) and each avatar's page for race and profession, then previews the changes before applying them. - Only the game accounts on that Net-7.org login are changed; missing ones are added and their pilots made to match the site exactly, including removals. Other accounts are left untouched. - Pilots keep their Id when found again by name, so saved launches still resolve; stored game passwords are never touched. - With "Remember login" ticked, only the site's sign-in cookies are kept (DPAPI-protected, net7-site-session.json); the password never is. Nothing changes unless the user opens the dialog and clicks Apply. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The main screen's Accounts section gets a primary "Net-7.org sync" button under Manage; it opens the same dialog and saves the result. In the Accounts window the sync button is now primary and sits next to Add. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Replace the cpanel/apanel HTML scraping with one request to /api/account, which lists game accounts and avatars with slot, race and profession. The API's 401 reply now detects a rejected or expired login. "Tradesman" from the site maps to Client Manager's "Trader". Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
dan51588
marked this pull request as ready for review
October 31, 2026 01:30
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds Net-7.org sync: Client Manager reads the game accounts and pilots of a Net-7.org (forum) login and brings its Accounts list in line with them, instead of entering every account and pilot by hand.
It is on the main screen under Accounts & tools → Manage, and next to Add in the Accounts window.
How it works
login/uname/pwd, plusrememberwhen ticked).https://www.net-7.org/api/accountwith the resulting PHP session cookie. One request returns every game account (id,username) and avatar (slot,account_id,name,race,prof). A 401 from that endpoint is how a rejected or expired login is detected.The Net-7 web team confirmed that the API and the PHP session cookie are the intended way to use it for now.
What the sync changes
Net7SiteAccountSync.Merge:Idwhen its name is found again, so profiles and launches that refer to it keep working.The site calls the Terran trade class "Tradesman"; it is mapped to the manager's "Trader". A race or profession the manager does not know is left unset, and the pilot's existing value is kept.
Login storage
%AppData%\Net7ClientManager\net7-site-session.json, protected for the Windows user like stored game passwords. Forget login deletes the file. An expired session is deleted and the password is asked for again.Files
Net7Site/:Net7SiteClient(sign-in, API request, cookies),Net7SiteApiParser,Net7SiteAccountSync,Net7SiteSessionStore, and small records.Forms/Net7SiteSyncForm.cs: the sync window.AccountsForm,MainFormandMainForm.TopPanel: the buttons.Documentation/UserGuide/fleet-setup.md: a "Sync from Net-7.org" section.Testing
dotnet build: 0 errors, no new analyzer warnings in the new files./api/accountreply: 9 accounts and 33 avatars, all in the right slots, every race and profession recognised.🤖 Generated with Claude Code