-# -*- coding: utf-8
-from django.conf.urls import patterns, url
-from django.contrib.auth.decorators import permission_required
-from django.views.generic import RedirectView
-from catalogue.feeds import PublishTrackFeed
-from catalogue.views import GalleryView
-
-
-urlpatterns = patterns('catalogue.views',
- url(r'^$', RedirectView.as_view(url='catalogue/')),
-
- url(r'^images/$', 'image_list', name='catalogue_image_list'),
- url(r'^image/(?P<slug>[^/]+)/$', 'image', name="catalogue_image"),
- url(r'^image/(?P<slug>[^/]+)/publish$', 'publish_image',
- name="catalogue_publish_image"),
-
- url(r'^catalogue/$', 'document_list', name='catalogue_document_list'),
- url(r'^user/$', 'my', name='catalogue_user'),
- url(r'^user/(?P<username>[^/]+)/$', 'user', name='catalogue_user'),
- url(r'^users/$', 'users', name='catalogue_users'),
- url(r'^activity/$', 'activity', name='catalogue_activity'),
- url(r'^activity/(?P<isodate>\d{4}-\d{2}-\d{2})/$',
- 'activity', name='catalogue_activity'),
-
- url(r'^upload/$',
- 'upload', name='catalogue_upload'),
-
- url(r'^create/(?P<slug>[^/]*)/',
- 'create_missing', name='catalogue_create_missing'),
- url(r'^create/',
- 'create_missing', name='catalogue_create_missing'),
-
- url(r'^book/(?P<slug>[^/]+)/publish$', 'publish', name="catalogue_publish"),
-
- url(r'^book/(?P<slug>[^/]+)/$', 'book', name="catalogue_book"),
- url(r'^book/(?P<slug>[^/]+)/gallery/$',
- permission_required('catalogue.change_book')(GalleryView.as_view()),
- name="catalogue_book_gallery"),
- url(r'^book/(?P<slug>[^/]+)/xml$', 'book_xml', name="catalogue_book_xml"),
- url(r'^book/dc/(?P<slug>[^/]+)/xml$', 'book_xml_dc', name="catalogue_book_xml_dc"),
- url(r'^book/(?P<slug>[^/]+)/txt$', 'book_txt', name="catalogue_book_txt"),
- url(r'^book/(?P<slug>[^/]+)/html$', 'book_html', name="catalogue_book_html"),
- url(r'^book/(?P<slug>[^/]+)/epub$', 'book_epub', name="catalogue_book_epub"),
- url(r'^book/(?P<slug>[^/]+)/mobi$', 'book_mobi', name="catalogue_book_mobi"),
- url(r'^book/(?P<slug>[^/]+)/pdf$', 'book_pdf', name="catalogue_book_pdf"),
- url(r'^book/(?P<slug>[^/]+)/pdf-mobile$', 'book_pdf', kwargs={'mobile': True}, name="catalogue_book_pdf_mobile"),
-
- url(r'^chunk_add/(?P<slug>[^/]+)/(?P<chunk>[^/]+)/$',
- 'chunk_add', name="catalogue_chunk_add"),
- url(r'^chunk_edit/(?P<slug>[^/]+)/(?P<chunk>[^/]+)/$',
- 'chunk_edit', name="catalogue_chunk_edit"),
- url(r'^book_append/(?P<slug>[^/]+)/$',
- 'book_append', name="catalogue_book_append"),
- url(r'^chunk_mass_edit',
- 'chunk_mass_edit', name='catalogue_chunk_mass_edit'),
- url(r'^image_mass_edit',
- 'image_mass_edit', name='catalogue_image_mass_edit'),
-
- url(r'^track/(?P<slug>[^/]*)/$', PublishTrackFeed()),
- url(r'^active/$', 'active_users_list', name='active_users_list'),
-
- url(r'^mark-final/$', 'mark_final', name='mark_final'),
- url(r'^mark-final-completed/$', 'mark_final_completed', name='mark_final_completed'),
-)
+# This file is part of FNP-Redakcja, licensed under GNU Affero GPLv3 or later.
+# Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information.
+#
+from django.urls import path
+from . import views
+
+
+urlpatterns = [
+ path("", views.CatalogueView.as_view(), name="catalogue"),
+ path("author/<slug:slug>/", views.AuthorView.as_view(), name="catalogue_author"),
+ path("book/<slug:slug>/", views.BookView.as_view(), name="catalogue_book"),
+ path("book/<slug:slug>.json", views.BookAPIView.as_view(), name="catalogue_book_api"),
+
+ path('terms/epoch/', views.EpochTerms.as_view()),
+ path('terms/kind/', views.KindTerms.as_view()),
+ path('terms/genre/', views.GenreTerms.as_view()),
+ path('terms/wluri/', views.WLURITerms.as_view()),
+ path('terms/book_title/', views.BookTitleTerms.as_view()),
+ path('terms/author/', views.AuthorTerms.as_view()),
+ path('terms/thema/', views.ThemaTerms.as_view()),
+
+ path('terms/editor/', views.EditorTerms.as_view()),
+
+ path('wikidata/<slug:model>/<qid>', views.WikidataView.as_view()),
+
+ path('publish/author/<int:pk>/', views.publish_author, name='catalogue_publish_author'),
+ path('publish/genre/<int:pk>/', views.publish_genre, name='catalogue_publish_genre'),
+ path('publish/kind/<int:pk>/', views.publish_kind, name='catalogue_publish_kind'),
+ path('publish/epoch/<int:pk>/', views.publish_epoch, name='catalogue_publish_epoch'),
+ path('publish/collection/<int:pk>/', views.publish_collection, name='catalogue_publish_collection'),
+]