200 lines
7.5 KiB
Python
200 lines
7.5 KiB
Python
from django.conf import settings
|
|
from django.conf.urls.static import static
|
|
from django.contrib import admin
|
|
from django.urls import include, path
|
|
from oauth2_provider import urls as oauth2_urls
|
|
from rest_framework import routers
|
|
|
|
import vrobbler.apps.scrobbles.views as scrobbles_views
|
|
|
|
from vrobbler.apps.discgolf import urls as discgolf_urls
|
|
from vrobbler.apps.discgolf.api.views import DiscGolfCourseViewSet
|
|
|
|
from vrobbler.apps.boardgames import urls as boardgame_urls
|
|
from vrobbler.apps.boardgames.api.views import (
|
|
BoardGameViewSet,
|
|
BoardGameDesignerViewSet,
|
|
BoardGamePublisherViewSet,
|
|
BoardGameLocationViewSet,
|
|
)
|
|
|
|
from vrobbler.apps.books import urls as book_urls
|
|
from vrobbler.apps.books.api.views import AuthorViewSet, BookViewSet
|
|
|
|
from vrobbler.apps.lifeevents import urls as lifeevents_urls
|
|
from vrobbler.apps.lifeevents.api.views import LifeEventViewSet
|
|
|
|
from vrobbler.apps.locations import urls as locations_urls
|
|
from vrobbler.apps.locations.api.views import GeoLocationViewSet
|
|
|
|
from vrobbler.apps.moods import urls as moods_urls
|
|
from vrobbler.apps.moods.api.views import MoodViewSet
|
|
|
|
from vrobbler.apps.foods import urls as foods_urls
|
|
from vrobbler.apps.foods.api.views import FoodViewSet, FoodCategoryViewSet
|
|
|
|
from vrobbler.apps.music import urls as music_urls
|
|
from vrobbler.apps.music.api.views import (
|
|
AlbumViewSet,
|
|
ArtistViewSet,
|
|
TrackViewSet,
|
|
)
|
|
|
|
from vrobbler.apps.podcasts import urls as podcast_urls
|
|
from vrobbler.apps.podcasts.api.views import (
|
|
ProducerViewSet,
|
|
PodcastViewSet,
|
|
PodcastEpisodeViewSet,
|
|
)
|
|
|
|
from vrobbler.apps.scrobbles import urls as scrobble_urls
|
|
from vrobbler.apps.scrobbles.api.views import (
|
|
AudioScrobblerTSVImportViewSet,
|
|
KoReaderImportViewSet,
|
|
LastFmImportViewSet,
|
|
ScrobbleViewSet,
|
|
)
|
|
|
|
from vrobbler.apps.sports import urls as sports_urls
|
|
from vrobbler.apps.sports.api.views import (
|
|
LeagueViewSet,
|
|
PlayerViewSet,
|
|
SeasonViewSet,
|
|
SportEventViewSet,
|
|
SportViewSet,
|
|
TeamViewSet,
|
|
)
|
|
from vrobbler.apps.tasks import urls as tasks_urls
|
|
from vrobbler.apps.tasks.api.views import TaskViewSet
|
|
|
|
from vrobbler.apps.profiles import urls as profiles_urls
|
|
from vrobbler.apps.profiles.api.views import UserProfileViewSet, UserViewSet
|
|
|
|
from vrobbler.apps.trails import urls as trails_urls
|
|
from vrobbler.apps.trails.api.views import TrailViewSet
|
|
|
|
from vrobbler.apps.beers import urls as beers_urls
|
|
from vrobbler.apps.beers.api.views import (
|
|
BeerViewSet,
|
|
BeerProducerViewSet,
|
|
BeerStyleViewSet,
|
|
)
|
|
|
|
from vrobbler.apps.birds import urls as birds_urls
|
|
from vrobbler.apps.birds.api.views import (
|
|
BirdViewSet,
|
|
BirdingLocationViewSet,
|
|
)
|
|
|
|
from vrobbler.apps.puzzles import urls as puzzles_urls
|
|
from vrobbler.apps.puzzles.api.views import (
|
|
PuzzleViewSet,
|
|
PuzzleManufacturerViewSet,
|
|
)
|
|
from vrobbler.apps.videogames import urls as videogame_urls
|
|
|
|
from vrobbler.apps.videos import urls as video_urls
|
|
from vrobbler.apps.videos.api.views import (
|
|
ChannelViewSet,
|
|
SeriesViewSet,
|
|
VideoViewSet,
|
|
)
|
|
|
|
from vrobbler.apps.bricksets import urls as bricksets_urls
|
|
from vrobbler.apps.bricksets.api.views import BrickSetViewSet
|
|
|
|
from vrobbler.apps.webpages import urls as webpages_urls
|
|
from vrobbler.apps.webpages.api.views import DomainViewSet, WebPageViewSet
|
|
|
|
from vrobbler.apps.people import urls as people_urls
|
|
from vrobbler.apps.charts import urls as charts_urls
|
|
from vrobbler.apps.trends import urls as trends_urls
|
|
|
|
# from vrobbler.apps.modern_ui import urls as modern_ui_urls
|
|
|
|
router = routers.DefaultRouter()
|
|
router.register(r"scrobbles", ScrobbleViewSet)
|
|
router.register(r"lastfm-imports", LastFmImportViewSet)
|
|
router.register(r"tsv-imports", AudioScrobblerTSVImportViewSet)
|
|
router.register(r"koreader-imports", KoReaderImportViewSet)
|
|
router.register(r"artist", ArtistViewSet)
|
|
router.register(r"album", AlbumViewSet)
|
|
router.register(r"tracks", TrackViewSet)
|
|
router.register(r"series", SeriesViewSet)
|
|
router.register(r"channels", ChannelViewSet)
|
|
router.register(r"videos", VideoViewSet)
|
|
router.register(r"authors", AuthorViewSet)
|
|
router.register(r"books", BookViewSet)
|
|
router.register(r"leagues", LeagueViewSet)
|
|
router.register(r"sports", SportViewSet)
|
|
router.register(r"seasons", SeasonViewSet)
|
|
router.register(r"players", PlayerViewSet)
|
|
router.register(r"sport-events", SportEventViewSet)
|
|
router.register(r"teams", TeamViewSet)
|
|
router.register(r"users", UserViewSet)
|
|
router.register(r"profiles", UserProfileViewSet)
|
|
router.register(r"domains", DomainViewSet)
|
|
router.register(r"webpages", WebPageViewSet)
|
|
router.register(r"foods", FoodViewSet)
|
|
router.register(r"moods", MoodViewSet)
|
|
router.register(r"tasks", TaskViewSet)
|
|
router.register(r"locations", GeoLocationViewSet)
|
|
router.register(r"beers", BeerViewSet)
|
|
router.register(r"beer-producers", BeerProducerViewSet)
|
|
router.register(r"beer-styles", BeerStyleViewSet)
|
|
router.register(r"boardgames", BoardGameViewSet)
|
|
router.register(r"boardgame-designers", BoardGameDesignerViewSet)
|
|
router.register(r"boardgame-publishers", BoardGamePublisherViewSet)
|
|
router.register(r"boardgame-locations", BoardGameLocationViewSet)
|
|
router.register(r"podcast-producers", ProducerViewSet)
|
|
router.register(r"podcast-episodes", PodcastEpisodeViewSet)
|
|
router.register(r"podcasts", PodcastViewSet)
|
|
router.register(r"puzzle-manufacturers", PuzzleManufacturerViewSet)
|
|
router.register(r"puzzles", PuzzleViewSet)
|
|
router.register(r"bricksets", BrickSetViewSet)
|
|
router.register(r"lifeevents", LifeEventViewSet)
|
|
|
|
router.register(r"birds", BirdViewSet)
|
|
router.register(r"birding-locations", BirdingLocationViewSet)
|
|
router.register(r"disc-golf-courses", DiscGolfCourseViewSet)
|
|
urlpatterns = [
|
|
path("api/v1/", include(router.urls)),
|
|
path("api/v1/auth", include("rest_framework.urls")),
|
|
path("admin/", admin.site.urls),
|
|
path("accounts/", include("allauth.urls")),
|
|
path("o/", include(oauth2_urls)),
|
|
# path("modern_ui/", include(modern_ui_urls, namespace="modern_ui")),
|
|
path("", include(music_urls, namespace="music")),
|
|
path("", include(book_urls, namespace="books")),
|
|
path("", include(video_urls, namespace="videos")),
|
|
path("", include(videogame_urls, namespace="videogames")),
|
|
path("", include(boardgame_urls, namespace="boardgames")),
|
|
path("", include(bricksets_urls, namespace="bricksets")),
|
|
path("", include(sports_urls, namespace="sports")),
|
|
path("", include(locations_urls, namespace="locations")),
|
|
path("", include(trails_urls, namespace="trails")),
|
|
path("", include(beers_urls, namespace="beers")),
|
|
path("", include(discgolf_urls, namespace="discgolf")),
|
|
path("", include(foods_urls, namespace="foods")),
|
|
path("", include(puzzles_urls, namespace="puzzles")),
|
|
path("", include(tasks_urls, namespace="tasks")),
|
|
path("", include(webpages_urls, namespace="webpages")),
|
|
path("", include(podcast_urls, namespace="podcasts")),
|
|
path("", include(lifeevents_urls, namespace="life-events")),
|
|
path("", include(moods_urls, namespace="moods")),
|
|
path("", include(birds_urls, namespace="birds")),
|
|
path("", include(scrobble_urls, namespace="scrobbles")),
|
|
path("", include(profiles_urls, namespace="profiles")),
|
|
path("", include(people_urls, namespace="people")),
|
|
path("", include(charts_urls, namespace="charts")),
|
|
path("", include(trends_urls, namespace="trends")),
|
|
path("", scrobbles_views.RecentScrobbleList.as_view(), name="vrobbler-home"),
|
|
]
|
|
if settings.DEBUG:
|
|
urlpatterns = urlpatterns + static(
|
|
settings.STATIC_URL, document_root=settings.STATIC_ROOT
|
|
)
|
|
urlpatterns = urlpatterns + static(
|
|
settings.MEDIA_URL, document_root=settings.MEDIA_ROOT
|
|
)
|