]> git.0d.be Git - django-panik-nonstop.git/blob - nonstop/urls.py
b34c3b9fd21fbe4f709049e591b3d203dd8b8eb9
[django-panik-nonstop.git] / nonstop / urls.py
1 from django.conf.urls import url
2 from django.core.urlresolvers import reverse_lazy
3 from django.views.generic import RedirectView
4
5 from .views import (SomaDayArchiveView, SomaDayArchiveCsvView, RedirectTodayView,
6         TrackDetailView, ArtistDetailView, ArtistListView, StatisticsView,
7         UploadTracksView, RecentTracksMetadataView, RandomTracksMetadataView,
8         QuickLinksView, SearchView, CleanupView, ArtistTracksMetadataView,
9         SearchCsvView, AddSomaDiffusionView, DelSomaDiffusionView,
10         DiffusionPropertiesView, AjaxProgram, ZoneSettings,
11         jingle_audio_view,
12         MuninTracks)
13
14 urlpatterns = [
15     url(r'^$', QuickLinksView.as_view(), name='nonstop-quick-links'),
16     url(r'^today/$', RedirectTodayView.as_view(), name='nonstop-today'),
17
18     url(r'^stats/$', StatisticsView.as_view(), name='nonstop-stats'),
19     url(r'^tracks/(?P<pk>\d+)/$', TrackDetailView.as_view(), name='track-view'),
20     url(r'^artists/$', ArtistListView.as_view(), name='artist-list'),
21     url(r'^artists/(?P<pk>\d+)/$', ArtistDetailView.as_view(), name='artist-view'),
22
23     url(r'^zones/(?P<slug>[\w-]+)/settings/$', ZoneSettings.as_view(), name='zone-settings'),
24
25     # Example: /2012/nov/10/
26     url(r'^(?P<year>[0-9]{4})/(?P<month>[-\w]+)/(?P<day>[0-9]+)/$',
27         SomaDayArchiveView.as_view(),
28         name="archive_day"),
29     url(r'^(?P<year>[0-9]{4})/(?P<month>[-\w]+)/(?P<day>[0-9]+)/csv$',
30         SomaDayArchiveCsvView.as_view(),
31         name="archive_day_csv"),
32
33     url(r'^upload/$', UploadTracksView.as_view(), name='nonstop-upload-tracks'),
34     url(r'^metadata/recent/$', RecentTracksMetadataView.as_view(), name='nonstop-recent-tracks'),
35     url(r'^metadata/random/$', RandomTracksMetadataView.as_view(), name='nonstop-random-tracks'),
36     url(r'^metadata/artist/(?P<artist_pk>\d+)/$', ArtistTracksMetadataView.as_view(), name='nonstop-artist-metadata-tracks'),
37     url(r'^search/$', SearchView.as_view(), name='nonstop-search'),
38     url(r'^search/csv$', SearchCsvView.as_view(), name='nonstop-search-csv'),
39     url(r'^quick-links/$', RedirectView.as_view(url=reverse_lazy('nonstop-quick-links'))),
40     url(r'^cleanup/$', CleanupView.as_view(), name='nonstop-cleanup'),
41
42     # soma management for episodes
43     url(r'^diffusion/(?P<pk>\d+)/add/$', AddSomaDiffusionView.as_view(), name='nonstop-add-diffusion'),
44     url(r'^diffusion/(?P<pk>\d+)/properties/$', DiffusionPropertiesView.as_view(),
45         name='nonstop-diffusion-properties'),
46     url(r'^diffusion/(?P<pk>\d+)/del/$', DelSomaDiffusionView.as_view(), name='nonstop-del-diffusion'),
47     url(r'^api/jingle/(?P<pk>\d+)/$', jingle_audio_view),
48
49     # ajax parts
50     url(r'^ajax/program/(?P<date>[\d-]*)$', AjaxProgram.as_view(), name='nonstop-ajax-program'),
51 ]
52
53 public_urlpatterns = [
54     url(r'^api/munin/tracks/(?P<config>config/)?$', MuninTracks.as_view()),
55 ]