zulip/zerver
Shubham Padia 80a3651cf3 auth: Let user choose emails in GitHub auth.
Previously, our Github authentication backend just used the user's
primary email address associated with GitHub, which was a reasonable
default, but quite annoying for users who have several email addresses
associated with their GitHub account.

We fix this, by adding a new screen where users can select which of
their (verified) GitHub email addresses to use for authentication.

This is implemented using the "partial" feature of the
python-social-auth pipeline system.

Each email is displayed as a button. Clicking on that button chooses
the email. The email value is stored in a hidden input above the
button. The `primary_email` is displayed on top followed by
`verified_non_primary_emails`. Backend name is also passed as
`backend` to the template, which in our case is GitHub.

Fixes #9876.
2019-06-23 21:27:04 -07:00
..
data_import import: Handle hidden_by_limit case for files in slack import. 2019-05-30 12:01:09 -07:00
lib webhooks: Add a system for storing http headers for integrations. 2019-06-20 16:36:38 -07:00
management models: Rename get_admin_users to get_admin_users_and_bots. 2019-06-20 14:36:15 -07:00
migrations models: Rename notification to `enable_stream_audible_notifications`. 2019-06-12 16:24:51 -07:00
openapi api docs: Remove migrated endpoints from deprecated specs. 2019-06-13 14:31:55 -07:00
templatetags api_docs: Detect missing arguments in curl examples. 2019-05-28 16:53:48 -07:00
tests auth: Let user choose emails in GitHub auth. 2019-06-23 21:27:04 -07:00
tornado tornado: Remove unused imports. 2019-02-02 17:33:13 -08:00
views devtools: Tweak the integrations tool to use http headers fixtures. 2019-06-20 16:40:42 -07:00
webhooks webhooks: Migrate the GitHub integration to new http headers system. 2019-06-20 16:37:42 -07:00
worker public_export: Add support for deleting export after access. 2019-05-31 22:54:27 -07:00
__init__.py
apps.py python: Mark intentionally unused imports with noop statements. 2019-02-22 16:54:47 -08:00
context_processors.py open graph: Uploaded realm icon URL is absolute for some backends. 2019-05-20 13:14:28 -07:00
decorator.py decorator: Refactor @require_non_guest_human_user decorator. 2019-06-18 17:11:58 -07:00
filters.py filters: Don't include realm_counts/installation_counts in errors. 2019-04-30 14:10:59 -07:00
forms.py authenticate: Remove default values for required parameters. 2019-05-27 23:47:22 -07:00
logging_handlers.py try_git_describe: Set cwd, not --git-dir. 2019-02-28 14:59:33 -08:00
middleware.py rate_limiter: Create a general rate_limit_request_by_entity function. 2019-05-30 16:50:11 -07:00
models.py models: Rename get_admin_users to get_admin_users_and_bots. 2019-06-20 14:36:15 -07:00
signals.py zerver core: Remove unused imports. 2019-02-02 17:41:24 -08:00
static_header.txt