Skip to content
This repository has been archived by the owner on Nov 21, 2024. It is now read-only.

Commit

Permalink
orcid-login: jwt token being returned
Browse files Browse the repository at this point in the history
  • Loading branch information
DonHaul committed Aug 6, 2024
1 parent 355b4aa commit b4c0362
Show file tree
Hide file tree
Showing 6 changed files with 17 additions and 35 deletions.
2 changes: 2 additions & 0 deletions backoffice/backoffice/users/urls.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

from backoffice.users.views import (
user_detail_view,
user_login_success,
user_redirect_view,
user_update_view,
)
Expand All @@ -11,4 +12,5 @@
path("~redirect/", view=user_redirect_view, name="redirect"),
path("~update/", view=user_update_view, name="update"),
path("<int:pk>/", view=user_detail_view, name="detail"),
path("login/success/", user_login_success, name="login_success"),
]
12 changes: 12 additions & 0 deletions backoffice/backoffice/users/views.py
Original file line number Diff line number Diff line change
@@ -1,9 +1,11 @@
from django.contrib.auth import get_user_model
from django.contrib.auth.mixins import LoginRequiredMixin
from django.contrib.messages.views import SuccessMessageMixin
from django.http import JsonResponse
from django.urls import reverse
from django.utils.translation import gettext_lazy as _
from django.views.generic import DetailView, RedirectView, UpdateView
from rest_framework_simplejwt.tokens import RefreshToken

User = get_user_model()

Expand Down Expand Up @@ -43,3 +45,13 @@ def get_redirect_url(self):


user_redirect_view = UserRedirectView.as_view()


def user_login_success(request):
refresh = RefreshToken.for_user(request.user)
return JsonResponse(
data={
"refresh": str(refresh),
"access": str(refresh.access_token),
}
)
2 changes: 1 addition & 1 deletion backoffice/config/settings/base.py
Original file line number Diff line number Diff line change
Expand Up @@ -129,7 +129,7 @@
# https://docs.djangoproject.com/en/dev/ref/settings/#auth-user-model
AUTH_USER_MODEL = "users.User"
# https://docs.djangoproject.com/en/dev/ref/settings/#login-redirect-url
LOGIN_REDIRECT_URL = "users:redirect"
LOGIN_REDIRECT_URL = "users:login_success"
# https://docs.djangoproject.com/en/dev/ref/settings/#login-url
LOGIN_URL = "account_login"

Expand Down
15 changes: 1 addition & 14 deletions backoffice/config/urls.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,4 @@
from allauth.socialaccount.providers.orcid.views import oauth2_callback
from dj_rest_auth.jwt_auth import get_refresh_view
from dj_rest_auth.registration.views import RegisterView
from dj_rest_auth.views import LoginView, LogoutView, UserDetailsView
from django.conf import settings
from django.conf.urls.static import static
from django.contrib import admin
Expand All @@ -11,11 +8,7 @@
from django.views.generic import TemplateView
from drf_spectacular.views import SpectacularAPIView, SpectacularSwaggerView
from rest_framework.authtoken.views import obtain_auth_token
from rest_framework_simplejwt.views import (
TokenObtainPairView,
TokenRefreshView,
TokenVerifyView,
)
from rest_framework_simplejwt.views import TokenObtainPairView, TokenRefreshView

urlpatterns = [
path("", TemplateView.as_view(template_name="pages/home.html"), name="home"),
Expand All @@ -35,12 +28,6 @@

# API URLS
urlpatterns += [
path("api/register/", RegisterView.as_view(), name="rest_register"),
path("api/login/", LoginView.as_view(), name="rest_login"),
path("api/logout/", LogoutView.as_view(), name="rest_logout"),
path("api/user/", UserDetailsView.as_view(), name="rest_user_details"),
path("api/token/verify/", TokenVerifyView.as_view(), name="token_verify"),
path("api/token/refresh/", get_refresh_view().as_view(), name="token_refresh"),
# API base url
path(
"api/oauth/authorized/orcid/", oauth2_callback, name="orcid_callback"
Expand Down
20 changes: 1 addition & 19 deletions backoffice/poetry.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 0 additions & 1 deletion backoffice/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -150,7 +150,6 @@ opensearch-dsl = "^2.1.0"
opensearch-py = "2.6.0"
djangorestframework-simplejwt = "^5.3.1"
django-json-widget = "^2.0.1"
dj-rest-auth = {extras = ["with-social"], version = "^6.0.0"}

[tool.poetry.dev-dependencies]
factory-boy = "3.3.0"
Expand Down

0 comments on commit b4c0362

Please sign in to comment.