fix(web): set locale cookie on language picker change#31577
Open
JustSidus wants to merge 1 commit into
Open
Conversation
Contributor
|
The following comment was made by an LLM, it may be inaccurate: The search results only return the current PR (#31577) and one older PR from 2024 that appears to be about locale routing in general. Since the current PR is fixing a specific issue (#29326) with the language picker not setting the locale cookie, and there are no other open PRs addressing this exact functionality, I can provide the following assessment: No duplicate PRs found |
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.
Issue for this PR
Closes #29326
Type of change
What does this PR do?
The language picker in the docs footer navigates to the correct URL but never sets the
oc_localecookie. So on the next visit to/docs, the middleware readsAccept-Languageinstead of the user's choice and redirects back to whatever language the browser prefers.Added a small
<script>toFooter.astrothat listens for changes on the Starlight language select and writes theoc_localecookie with the same format the middleware expects. It checks the URL path segment against the known locale list so English (which has no path prefix) correctly maps toen.How did you verify your code works?
Ran
astro checkandoxlint, no new errors. Traced the cookie format againstmiddleware.ts:cookie()to confirm they match (same name, encoding, path, max-age, samesite).Screenshots / recordings
N/A, no visual change, just cookie behavior.
Checklist