Authorize GitHub OAuth for account linking
(
request: Request,
next: str | None = None,
current_user: User = Depends(get_current_user),
oauth_client=Depends(get_github_oauth_client),
)
| 177 | |
| 178 | @router.get("/authorize", name="github_authorize") |
| 179 | async def github_authorize( |
| 180 | request: Request, |
| 181 | next: str | None = None, |
| 182 | current_user: User = Depends(get_current_user), |
| 183 | oauth_client=Depends(get_github_oauth_client), |
| 184 | ): |
| 185 | """Authorize GitHub OAuth for account linking""" |
| 186 | if not oauth_client.github: |
| 187 | flash(request, _("GitHub OAuth not configured."), "error") |
| 188 | redirect_url = safe_redirect( |
| 189 | request, |
| 190 | next_value=next, |
| 191 | referer=request.headers.get("Referer"), |
| 192 | ) |
| 193 | return RedirectResponse(redirect_url, status_code=303) |
| 194 | |
| 195 | redirect_url = safe_redirect( |
| 196 | request, |
| 197 | next_value=next, |
| 198 | referer=request.headers.get("Referer"), |
| 199 | ) |
| 200 | request.session["redirect_after_github"] = redirect_url |
| 201 | |
| 202 | return await oauth_client.github.authorize_redirect( |
| 203 | request, request.url_for("github_authorize_callback") |
| 204 | ) |
| 205 | |
| 206 | |
| 207 | @router.get("/authorize/callback", name="github_authorize_callback") |
nothing calls this directly
no test coverage detected