1 # This file is part of Wolne Lektury, licensed under GNU Affero GPLv3 or later.
2 # Copyright © Fundacja Wolne Lektury. See NOTICE for more information.
4 from django.urls import path, include
5 from django.views.decorators.csrf import csrf_exempt
6 from django.views.generic import TemplateView
8 from stats.utils import piwik_track_view
13 path('register/', csrf_exempt(views.RegisterView.as_view())),
14 path('refreshToken/', csrf_exempt(views.RefreshTokenView.as_view())),
15 path('requestConfirm/', csrf_exempt(views.RequestConfirmView.as_view())),
16 path('login/', csrf_exempt(views.Login2View.as_view())),
17 path('me/', views.UserView.as_view()),
18 path('deleteAccount/', views.DeleteAccountView.as_view()),
19 path('password/', views.PasswordView.as_view()),
20 path('password-reset/', views.ResetPasswordView.as_view()),
21 path("session-transfer/", views.SessionTransferTokenView.as_view()),
22 path("session-transfer/continue/", views.ConsumeSessionTransferTokenView.as_view(), name="api-session-continue"),
24 path('', include('catalogue.api.urls2')),
25 path('', include('social.api.urls2')),
26 path('', include('bookmarks.api.urls')),
27 path('', include('search.api.urls')),
28 path('', include('push.api.urls')),
33 path('2/', include((urlpatterns1, 'api'), namespace="v2")),
35 path('oauth/request_token/', csrf_exempt(views.OAuth1RequestTokenView.as_view())),
36 path('oauth/authorize/', views.oauth_user_auth, name='oauth_user_auth'),
37 path('oauth/access_token/', csrf_exempt(views.OAuth1AccessTokenView.as_view())),
38 path('login/', csrf_exempt(views.LoginView.as_view())),
40 path('', TemplateView.as_view(template_name='api/main.html'), name='api'),
42 # info boxes (used by mobile app)
43 path('book/<int:book_id>/info.html', catalogue.views.book_info),
44 path('tag/<int:tag_id>/info.html', catalogue.views.tag_info),
47 path('reading/<slug:slug>/',
48 piwik_track_view(views.BookUserDataView.as_view()),
50 path('reading/<slug:slug>/<slug:state>/',
51 piwik_track_view(views.BookUserDataView.as_view()),
54 piwik_track_view(views.UserView.as_view()),
58 piwik_track_view(views.BlogView.as_view())),
60 path('', include('social.api.urls')),
61 path('', include('catalogue.api.urls')),