-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Implement user account verification with LinkedIn during onboarding #17074
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
Conversation
started the job as gitpod-build-jx-connect-linkedin.1 because the annotations in the pull request description changed |
New dependency changes detected. Learn more about Socket for GitHub ↗︎ 👍 No new dependency issues detected in pull request Bot CommandsTo ignore an alert, reply with a comment starting with Pull request alert summary
📊 Modified Dependency Overview:
|
175d079
to
f1feecf
Compare
️✅ There are no secrets present in this pull request anymore.If these secrets were true positive and are still valid, we highly recommend you to revoke them. 🦉 GitGuardian detects secrets in your source code to help developers and security teams secure the modern development process. You are seeing this because you or someone else with access to this repository has authorized GitGuardian to scan your pull request. |
f1feecf
to
aa48b54
Compare
4a3e9bb
to
0ae2c61
Compare
206e46f
to
5e00849
Compare
started the job as gitpod-build-jx-connect-linkedin.17 because the annotations in the pull request description changed |
Looking at this now! 👀 |
I'm not sure this works: |
export class LinkedInProfile1680096507296 implements MigrationInterface { | ||
public async up(queryRunner: QueryRunner): Promise<void> { | ||
await queryRunner.query( | ||
`CREATE TABLE IF NOT EXISTS ${TABLE_NAME} (id char(36) NOT NULL, userId char(36) NOT NULL, profile text NOT NULL, creationTime varchar(255) NOT NULL, _lastModified timestamp(6) NOT NULL DEFAULT CURRENT_TIMESTAMP(6) ON UPDATE CURRENT_TIMESTAMP(6), PRIMARY KEY (id)) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;`, |
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.
should this not be unique per user?
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.
@svenefftinge it could be. Please explicitly mention what you're expecting to see different in this CREATE statement. 🙂
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.
no id but making the userid the PK
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.
Great idea, thanks!
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.
Took a closer look at the UX.
Thanks for your patience while adding 500 lines for one button, @jankeromnes. 🙇
<Button | ||
className="w-full flex items-center justify-center space-x-2" | ||
onClick={linkedInLogin} | ||
disabled={isLoading || !clientID} | ||
> | ||
<img src={SignInWithLinkedIn} width={20} height={20} alt="Sign in with Linked In" /> | ||
<span>Connect with LinkedIn</span> | ||
</Button> |
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.
question: Clicking this just redirected me to the next step as @svenefftinge mentioned in #17074 (comment). Is this expected?
Re-posting here an export from the design specs.
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.
Thanks for noticing @gtsiolis!
The auto-forward without LinkedIn pop-up should now be fixed.
Also,
- only the
Default
spec is implemented right now - the
Success
spec is not necessary given that success auto-forwards to the next page - the
Error
spec is not implemented yet (errors are logged into the console instead) - I'm not sure when the
Skip
spec should be used if at all
Please let me know what exactly is blocking this PR from being merged, or please resolve if nothing is blocking 😁
Many thanks for the early review comments! 🙌
Huh, you're right. It used to work, but in the latest state it just auto-forwards 🤨 taking a look to find what broke. EDIT: Fixed. ✅ |
The design is assuming that we give credits to individuals, which is not the case. We give credits to organizations. A new user might not create an organization so there is no way they can benefit from the promised credits cc @phimae |
Taking this back to draft while I investigate why the LinkedIn pop-up no longer shows up. |
What happens if the user does not create their own org? Do they get zero credits until they do so? Are there any nudges in the product for that? Does the above change based on the LinkedIn connector? If I understand correctly then even today a user would not benefit from the 500 credits if they don't create an org? The change we make is just making the 500 everyone gets today contingent of the Linkedin connection |
Looks like the LinkedIn button click auto-submits the form, without giving a chance for the LinkedIn pop-up to show up. You can make it work by emptying one of the required fields (first name or last name) before clicking on the LinkedIn button. Working on a fix. EDIT: Fixed in telepresence and pushing the fix now. ✅ |
We'll also need a follow-up which deletes the LinkedIN data whenever the user chooses to delete their account to conform to GDPR. |
Ready for another round of reviews! 🏓 |
Users will not get credits t all. The only possible cost center is an org. We are making it so that the first org a user creates gets the free credits. So this is not part of the user account creation but the following creation of an org, which only happens if the user is not automatically added to an existing org. |
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.
Works now and the code looks good as well!
I'm ok with just ignoring my comment around credits as we are currently giving every user 500 credits no matter they have opted-in or not. So it doesn't really change anything.
What was the reasoning behind adding a Linkedin verification? Imo seems a little non-relevant, no? You're already connecting your Github account -- why connect a Linkedin account. Further, folks that don't link their Linkedin acc get only 100 credits as opposed to 500 if they do link. Why? Seems a little odd |
Description
Implement user account verification with LinkedIn during onboarding.
Related Issue(s)
Fixes #
How to test
Release Notes
Documentation
Build Options:
Run the build with werft instead of GHA
Run Leeway with
--dont-test
Publish Options
Installer Options
Add desired feature flags to the end of the line above, space separated
Preview Environment Options:
If enabled this will build
install/preview
If enabled this will create the environment on GCE infra
Valid options are
all
,workspace
,webapp
,ide
,jetbrains
,vscode
,ssh