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')),
30 path('partners/', include('partners.api.urls')),
35 path('2/', include((urlpatterns1, 'api'), namespace="v2")),
36 path('3/', include((urlpatterns1, 'api'), namespace="v3")),
37 path('1/<path:path>', views.Unsupported.as_view()),
39 path('oauth/request_token/', csrf_exempt(views.OAuth1RequestTokenView.as_view())),
40 path('oauth/authorize/', views.oauth_user_auth, name='oauth_user_auth'),
41 path('oauth/access_token/', csrf_exempt(views.OAuth1AccessTokenView.as_view())),
42 path('login/', csrf_exempt(views.LoginView.as_view())),
44 path('', TemplateView.as_view(template_name='api/main.html'), name='api'),
46 # info boxes (used by mobile app)
47 path('book/<int:book_id>/info.html', catalogue.views.book_info),
48 path('tag/<int:tag_id>/info.html', catalogue.views.tag_info),
51 path('reading/<slug:slug>/',
52 piwik_track_view(views.BookUserDataView.as_view()),
54 path('reading/<slug:slug>/<slug:state>/',
55 piwik_track_view(views.BookUserDataView.as_view()),
58 piwik_track_view(views.UserView.as_view()),
62 piwik_track_view(views.BlogView.as_view())),
64 path('', include('social.api.urls')),
65 path('', include('catalogue.api.urls')),