from django.conf import settings from django.conf.urls.static import static from django.contrib import admin from django.urls import path, include from django.views.static import serve as serve_static from accounts.sync import sync_snapshot urlpatterns = [ path('admin/', admin.site.urls), path('accounts/', include('accounts.urls')), path('podcasts/', include('podcasts.urls')), path('books/', include('books.urls')), path('api/2/', include('gpodder.urls')), path('api/sync/', sync_snapshot, name='api_sync'), # Served at the root (not /static/js/sw.js) so its default scope covers # the whole app — a service worker's scope is limited to its own script's # directory unless the server sends Service-Worker-Allowed, so registering # it from under /static/js/ silently restricted it to that subpath and # navigations to '/', '/books/' etc. were never intercepted while offline. path('sw.js', serve_static, {'document_root': settings.BASE_DIR / 'static' / 'js', 'path': 'sw.js'}), path('', include('radio.urls')), ] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)