Skip to content
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

[Port dspace-7_x] ORCID Login flow for private emails #3347

Open
wants to merge 1 commit into
base: dspace-7_x
Choose a base branch
from

Conversation

vins01-4science
Copy link
Contributor

@vins01-4science vins01-4science commented Sep 24, 2024

Please note that this development has been funded by the ORCID Global Participation Fund.


main version #3355
dspace-8_x version #3349

References

Add references/links to any related issues or PRs. These may include:

Description

This PR introduces new component and features related to the ORCID login flow

Instructions for Reviewers

To review this PR you should follow the main flow described inisde the linked PR DSpace/DSpace#9846

List of changes in this PR:

  • Review account page
    The review-account page is composed mainly by a table that reviews the user details and allows the logged in user to override some values using the data provided by the ORCID external provider.
  • External login page
    The external login page is composed by three parts:
    The external provider’s data (ORCID in our case), rendered dynamically based on registration type provided by token
    Depending on registration data, if no email is provided we render ds-provide-email component and ds-confirm-email otherwise.
    Connecting to an existing account button, which opens a modal with login form. This button is present in all cases.
    The informative text is also rendered based on the case (is the email present or not)
    All the pages are guarded (ReviewAccountGuard & RegistrationTokenGuard) in order to make sure the token exposed is valid and will provide the needed registration data, otherwise it will redirect to /404 .

Checklist

  • My PR is created against the main branch of code (unless it is a backport or is fixing an issue specific to an older branch).
  • My PR is small in size (e.g. less than 1,000 lines of code, not including comments & specs/tests), or I have provided reasons as to why that's not possible.
  • My PR passes ESLint validation using npm run lint
  • My PR doesn't introduce circular dependencies (verified via npm run check-circ-deps)
  • My PR includes TypeDoc comments for all new (or modified) public methods and classes. It also includes TypeDoc for large or complex private methods.
  • My PR passes all specs/tests and includes new/updated specs or tests based on the Code Testing Guide.
  • My PR aligns with Accessibility guidelines if it makes changes to the user interface.
  • My PR uses i18n (internationalization) keys instead of hardcoded English text, to allow for translations.
  • My PR includes details on how to test it. I've provided clear instructions to reviewers on how to successfully test this fix or feature.
  • If my PR includes new libraries/dependencies (in package.json), I've made sure their licenses align with the DSpace BSD License based on the Licensing of Contributions documentation.
  • If my PR includes new features or configurations, I've provided basic technical documentation in the PR itself.
  • If my PR fixes an issue ticket, I've linked them together.

@vins01-4science vins01-4science added authentication: general general authentication issues integration: ORCID Related to integration with ORCID identifier system labels Sep 24, 2024
@vins01-4science vins01-4science changed the title ORCID Login flow for private emails [Port dspace-7_x] ORCID Login flow for private emails Sep 24, 2024
Copy link

Hi @vins01-4science,
Conflicts have been detected against the base branch.
Please resolve these conflicts as soon as you can. Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
authentication: general general authentication issues integration: ORCID Related to integration with ORCID identifier system merge conflict
Projects
Status: 🙋 Needs Reviewers Assigned
Development

Successfully merging this pull request may close these issues.

2 participants