-
Notifications
You must be signed in to change notification settings - Fork 163
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Before entering Main, check for showPolicy query param to show policy #4609
Before entering Main, check for showPolicy query param to show policy #4609
Conversation
this should allow us to send links to people directly to any of our policies
to.query?.showPolicy && | ||
Object.values(policies).includes(to.query.showPolicy) && | ||
!from.name // Prevents the modal from showing when navigating back |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Any simpler/better conditions here?
The issue suggests this is particularly to accommodate users who have not signed up yet. I considered maybe using a route name (ie, is this only on the account sign in page?)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The simpler solution would probably involve a bit more of a rewrite of the state - and just have the policy query parameter be the thing that determines whether the modal is shown or not.
Then closing the policy modal would just mean removing the query parameter, so you shouldn't get into this situation where you need to check the from route etc.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code makes sense, manual testing of new functionality checks out, and original functionality has no apparent regressions.
Manual QA on the |
Summary
Description of the change(s) you made
In
beforeRouteEnter
inMain.vue
we check theto.query.showPolicy
- if it's a valid policy it'll be shown to the user. Includes a check to help be sure this is the first page load.The URLs would be:
https://studio.learningequality.org/en/accounts?showPolicy=privacy_policy
https://studio.learningequality.org/ar/accounts?showPolicy=privacy_policy
https://studio.learningequality.org/es-es/accounts?showPolicy=privacy_policy
https://studio.learningequality.org/fr-fr/accounts?showPolicy=privacy_policy
https://studio.learningequality.org/pt-br/accounts?showPolicy=privacy_policy
https://studio.learningequality.org/en/accounts?showPolicy=terms_of_service
https://studio.learningequality.org/ar/accounts?showPolicy=terms_of_service
https://studio.learningequality.org/es-es/accounts?showPolicy=terms_of_service
https://studio.learningequality.org/fr-fr/accounts?showPolicy=terms_of_service
https://studio.learningequality.org/pt-br/accounts?showPolicy=terms_of_service
https://studio.learningequality.org/en/accounts?showPolicy=community_standards
https://studio.learningequality.org/ar/accounts?showPolicy=community_standards
https://studio.learningequality.org/es-es/accounts?showPolicy=community_standards
https://studio.learningequality.org/fr-fr/accounts?showPolicy=community_standards
https://studio.learningequality.org/pt-br/accounts?showPolicy=community_standards
Reviewer guidance
How can a reviewer test these changes?
Run the changes, then replace
studio.learningequality.org
in the URLs listed above with the one you use to access your testing instance and see that they work.Are there any risky areas that deserve extra testing?
Go back & forth. Sign in, out, etc. It should only show the policy if it is the initial load of the page.
References
Closes #4133
Comments
Contributor's Checklist
PR process:
CHANGELOG
label been added to this PR. Note: items with this label will be added to the CHANGELOG at a later timedocs
label has been added if this introduces a change that needs to be updated in the user docs?requirements.txt
files also included in this PRStudio-specifc:
notranslate
class been added to elements that shouldn't be translated by Google Chrome's automatic translation feature (e.g. icons, user-generated text)pages
,components
, andlayouts
directories as described in the docsTesting:
Reviewer's Checklist
This section is for reviewers to fill out.
yarn
andpip
)