From 3db6c81d7abdd83e93ee26234670cae7e180c40b Mon Sep 17 00:00:00 2001 From: =?utf8?q?Stefan=20K=C3=B6gl?= Date: Sat, 30 Jan 2016 14:05:23 +0100 Subject: [PATCH] Move podcast and episode views to mygpo.podcasts --- mygpo/history/views.py | 2 +- mygpo/{web => podcasts}/urls.py | 170 +------------------------------ mygpo/podcasts/views.py | 3 - mygpo/{web => podcasts}/views/episode.py | 0 mygpo/{web => podcasts}/views/podcast.py | 0 mygpo/publisher/views.py | 12 ++- mygpo/suggestions/views.py | 2 +- mygpo/urls.py | 1 + mygpo/web/urls.py | 147 +------------------------- 9 files changed, 13 insertions(+), 324 deletions(-) copy mygpo/{web => podcasts}/urls.py (50%) delete mode 100644 mygpo/podcasts/views.py rename mygpo/{web => podcasts}/views/episode.py (100%) rename mygpo/{web => podcasts}/views/podcast.py (100%) diff --git a/mygpo/history/views.py b/mygpo/history/views.py index 958a7ec0..b92fe4d3 100644 --- a/mygpo/history/views.py +++ b/mygpo/history/views.py @@ -6,7 +6,7 @@ from django.contrib.auth.decorators import login_required from mygpo.users.models import Client from mygpo.history.models import HistoryEntry -from mygpo.web.views.podcast import slug_decorator, id_decorator +from mygpo.podcasts.views.podcast import slug_decorator, id_decorator @vary_on_cookie @cache_control(private=True) diff --git a/mygpo/web/urls.py b/mygpo/podcasts/urls.py similarity index 50% copy from mygpo/web/urls.py copy to mygpo/podcasts/urls.py index ba005158..b432b68f 100644 --- a/mygpo/web/urls.py +++ b/mygpo/podcasts/urls.py @@ -1,53 +1,10 @@ from django.conf.urls import url -from django.contrib.auth.views import logout -from django.views.generic.base import TemplateView, RedirectView -from mygpo.web.logo import CoverArt - -from . import views -from .views import subscriptions, podcast, episode, settings, device, users +from .views import podcast, episode urlpatterns = [ - url(r'^$', - views.home, - name='home'), - - url(r'^logo/(?P\d+)/(?P.{3})/(?P[^/]*)$', - CoverArt.as_view(), - name='logo'), - - url(r'^tags/', - views.mytags, - name='tags'), - - url(r'^online-help', - RedirectView.as_view( - url='http://gpoddernet.readthedocs.org/en/latest/user/index.html', - permanent=False, - ), - name='help'), - - url(r'^developer/', - TemplateView.as_view(template_name='developer.html')), - - url(r'^contribute/', - TemplateView.as_view(template_name='contribute.html'), - name='contribute'), - - url(r'^privacy/', - TemplateView.as_view(template_name='privacy_policy.html'), - name='privacy-policy'), - - url(r'^user/(?P[\w.+-]+)/subscriptions$', - subscriptions.for_user, - name='shared-subscriptions'), - - url(r'^user/(?P[\w.+-]+)/subscriptions\.opml$', - subscriptions.for_user_opml, - name='shared-subscriptions-opml'), - url(r'^subscribe', podcast.subscribe_url, name='subscribe-by-url'), @@ -193,129 +150,4 @@ urlpatterns = [ episode.episode_history_slug, name='episode-history-slug'), - url(r'^account/$', - settings.account, - name='account'), - - url(r'^account/privacy$', - settings.privacy, - name='privacy'), - - url(r'^account/profile$', - settings.ProfileView.as_view(), - name='profile'), - - url(r'^account/google/remove$', - settings.AccountRemoveGoogle.as_view(), - name='account-google-remove'), - - url(r'^account/flattr$', - settings.FlattrSettingsView.as_view(), - name='flattr-settings'), - - url(r'^account/flattr/token$', - settings.FlattrTokenView.as_view(), - name='flattr-token'), - - url(r'^account/flattr/logout$', - settings.FlattrLogout.as_view(), - name='flattr-logout'), - - url(r'^account/privacy/default-public$', - settings.DefaultPrivacySettings.as_view(public=True), - name='privacy_default_public'), - - url(r'^account/privacy/default-private$', - settings.DefaultPrivacySettings.as_view(public=False), - name='privacy_default_private'), - - url(r'^account/privacy/(?P[\w]+)/public$', - settings.PodcastPrivacySettings.as_view(public=True), - name='privacy_podcast_public'), - - url(r'^account/privacy/(?P[\w]+)/private$', - settings.PodcastPrivacySettings.as_view(public=False), - name='privacy_podcast_private'), - - url(r'^account/delete$', - settings.delete_account, - name='delete-account'), - - url(r'^devices/$', - device.overview, - name='devices'), - - url(r'^devices/create-device$', - device.create, - name='device-create'), - - url(r'^device/(?P[\w.-]+)\.opml$', - device.opml, - name='device-opml'), - - url(r'^device/(?P[\w.-]+)$', - device.show, - name='device'), - - url(r'^device/(?P[\w.-]+)/symbian.opml$', - device.symbian_opml, - name='device-symbian-opml'), - - url(r'^device/(?P[\w.-]+)/sync$', - device.sync, - name='device-sync'), - - url(r'^device/(?P[\w.-]+)/unsync$', - device.unsync, - name='device-unsync'), - - url(r'^device/(?P[\w.-]+)/resync$', - device.resync, - name='trigger-sync'), - - url(r'^device/(?P[\w.-]+)/delete$', - device.delete, - name='device-delete'), - - url(r'^device/(?P[\w.-]+)/remove$', - device.delete_permanently, - name='device-delete-permanently'), - - url(r'^device/(?P[\w.-]+)/undelete$', - device.undelete, - name='device-undelete'), - - url(r'^device/(?P[\w.-]+)/edit$', - device.edit, - name='device-edit'), - - url(r'^device/(?P[\w.-]+)/update$', - device.update, - name='device-update'), - - url(r'^device/(?P[\w.-]+)/upload-opml$', - device.upload_opml, - name='device-upload-opml'), - - url(r'^register/restore_password$', - users.restore_password, - name='restore-password'), - - url(r'^login/$', - users.LoginView.as_view(), - name='login'), - - url(r'^login/google$', - users.GoogleLogin.as_view(), - name='login-google'), - - url(r'^login/oauth2callback$', - users.GoogleLoginCallback.as_view(), - name='login-google-callback'), - - url(r'^logout/$', - logout, - kwargs={'next_page': '/'}, - name='logout'), - ] diff --git a/mygpo/podcasts/views.py b/mygpo/podcasts/views.py deleted file mode 100644 index 91ea44a2..00000000 --- a/mygpo/podcasts/views.py +++ /dev/null @@ -1,3 +0,0 @@ -from django.shortcuts import render - -# Create your views here. diff --git a/mygpo/web/views/episode.py b/mygpo/podcasts/views/episode.py similarity index 100% rename from mygpo/web/views/episode.py rename to mygpo/podcasts/views/episode.py diff --git a/mygpo/web/views/podcast.py b/mygpo/podcasts/views/podcast.py similarity index 100% rename from mygpo/web/views/podcast.py rename to mygpo/podcasts/views/podcast.py diff --git a/mygpo/publisher/views.py b/mygpo/publisher/views.py index 64cac54e..8456ca10 100644 --- a/mygpo/publisher/views.py +++ b/mygpo/publisher/views.py @@ -19,10 +19,14 @@ from mygpo.publisher.auth import require_publisher, is_publisher from mygpo.publisher.forms import SearchPodcastForm from mygpo.publisher.utils import listener_data, episode_listener_data, \ check_publisher_permission, subscriber_data -from mygpo.web.views.episode import (slug_decorator as episode_slug_decorator, - id_decorator as episode_id_decorator) -from mygpo.web.views.podcast import (slug_decorator as podcast_slug_decorator, - id_decorator as podcast_id_decorator) +from mygpo.podcasts.views.episode import ( + slug_decorator as episode_slug_decorator, + id_decorator as episode_id_decorator +) +from mygpo.podcasts.views.podcast import ( + slug_decorator as podcast_slug_decorator, + id_decorator as podcast_id_decorator +) from mygpo.web.utils import get_podcast_link_target, normalize_twitter, \ get_episode_link_target from django.contrib.sites.requests import RequestSite diff --git a/mygpo/suggestions/views.py b/mygpo/suggestions/views.py index 8d0ca231..1d7c3e23 100644 --- a/mygpo/suggestions/views.py +++ b/mygpo/suggestions/views.py @@ -6,7 +6,7 @@ from django.contrib.sites.requests import RequestSite from django.views.decorators.vary import vary_on_cookie from django.views.decorators.cache import never_cache, cache_control -from mygpo.web.views.podcast import slug_decorator, id_decorator +from mygpo.podcasts.views.podcast import slug_decorator, id_decorator from mygpo.suggestions.models import PodcastSuggestion from mygpo.podcasts.models import Podcast diff --git a/mygpo/urls.py b/mygpo/urls.py index 91af72dc..e2adb8b8 100644 --- a/mygpo/urls.py +++ b/mygpo/urls.py @@ -43,6 +43,7 @@ if settings.MAINTENANCE: # build links from them (eg login-link). urlpatterns += [ url(r'^', include('mygpo.web.urls')), + url(r'^', include('mygpo.podcasts.urls')), url(r'^', include('mygpo.directory.urls')), url(r'^', include('mygpo.api.urls')), url(r'^', include('mygpo.userfeeds.urls')), diff --git a/mygpo/web/urls.py b/mygpo/web/urls.py index ba005158..ced01416 100644 --- a/mygpo/web/urls.py +++ b/mygpo/web/urls.py @@ -5,7 +5,7 @@ from django.views.generic.base import TemplateView, RedirectView from mygpo.web.logo import CoverArt from . import views -from .views import subscriptions, podcast, episode, settings, device, users +from .views import subscriptions, settings, device, users urlpatterns = [ @@ -48,151 +48,6 @@ urlpatterns = [ subscriptions.for_user_opml, name='shared-subscriptions-opml'), - url(r'^subscribe', - podcast.subscribe_url, - name='subscribe-by-url'), - - # Podcast Views with UUIDs - url(r'^podcast/(?P[0-9a-f]{32})/?$', - podcast.show_id, - name='podcast-id'), - - url(r'^podcast/(?P[0-9a-f]{32})/subscribe$', - podcast.subscribe_id, - name='subscribe-id'), - - url(r'^podcast/(?P[0-9a-f]{32})/subscribe/\+all$', - podcast.subscribe_all_id, - name='subscribe-all-id'), - - url(r'^podcast/(?P[0-9a-f]{32})/unsubscribe/' - '(?P[\w.-]+)', - podcast.unsubscribe_id, - name='unsubscribe-id'), - - url(r'^podcast/(?P[0-9a-f]{32})/unsubscribe/\+all$', - podcast.unsubscribe_all_id, - name='unsubscribe-all-id'), - - url(r'^podcast/(?P[0-9a-f]{32})/add-tag', - podcast.add_tag_id, - name='add-tag-id'), - - url(r'^podcast/(?P[0-9a-f]{32})/remove-tag', - podcast.remove_tag_id, - name='remove-tag-id'), - - url(r'^podcast/(?P[0-9a-f]{32})/set-public', - podcast.set_public_id, - name='podcast-public-id', - kwargs={'public': True}), - - url(r'^podcast/(?P[0-9a-f]{32})/set-private', - podcast.set_public_id, - name='podcast-private-id', - kwargs={'public': False}), - - url(r'^podcast/(?P[0-9a-f]{32})/-episodes', - podcast.all_episodes_id, - name='podcast-all-episodes-id'), - - url(r'^podcast/(?P[0-9a-f]{32})/-flattr', - podcast.flattr_podcast_id, - name='podcast-flattr-id'), - - # Podcast Views with Slugs - url(r'^podcast/(?P[\w-]+)/?$', - podcast.show_slug, - name='podcast-slug'), - - url(r'^podcast/(?P[\w-]+)/subscribe$', - podcast.subscribe_slug, - name='subscribe-slug'), - - url(r'^podcast/(?P[\w-]+)/subscribe/\+all$', - podcast.subscribe_all_slug, - name='subscribe-all-slug'), - - url(r'^podcast/(?P[\w-]+)/unsubscribe/(?P[\w.-]+)', - podcast.unsubscribe_slug, - name='unsubscribe-slug'), - - url(r'^podcast/(?P[\w-]+)/unsubscribe/\+all$', - podcast.unsubscribe_all_slug, - name='unsubscribe-all-slug'), - - url(r'^podcast/(?P[\w-]+)/add-tag', - podcast.add_tag_slug, - name='add-tag-slug'), - - url(r'^podcast/(?P[\w-]+)/remove-tag', - podcast.remove_tag_slug, - name='remove-tag-slug'), - - url(r'^podcast/(?P[\w-]+)/set-public', - podcast.set_public_slug, - name='podcast-public-slug', - kwargs={'public': True}), - - url(r'^podcast/(?P[\w-]+)/set-private', - podcast.set_public_slug, - name='podcast-private-slug', - kwargs={'public': False}), - - url(r'^podcast/(?P[\w-]+)/-episodes', - podcast.all_episodes_slug, - name='podcast-all-episodes-slug'), - - url(r'^podcast/(?P[\w-]+)/-flattr', - podcast.flattr_podcast_slug, - name='podcast-flattr-slug'), - - url(r'^favorites/$', - episode.list_favorites, - name='favorites'), - - # Episodes for UUIDs - url(r'^podcast/(?P[0-9a-f]{32})/(?P[0-9a-f]{32})$', - episode.show_id, - name='episode-id'), - - url(r'^podcast/(?P[0-9a-f]{32})/(?P[0-9a-f]{32})/' - 'toggle-favorite', - episode.toggle_favorite_id, - name='episode-fav-id'), - - url(r'^podcast/(?P[0-9a-f]{32})/(?P[0-9a-f]{32})/add-action', - episode.add_action_id, - name='add-episode-action-id'), - - url(r'^podcast/(?P[0-9a-f]{32})/(?P[0-9a-f]{32})/-flattr', - episode.flattr_episode_id, - name='flattr-episode-id'), - - url(r'^podcast/(?P[0-9a-f]{32})/(?P[0-9a-f]{32})/\+history', - episode.episode_history_id, - name='episode-history-id'), - - # Episodes for Slugs - url(r'^podcast/(?P[\w-]+)/(?P[\w-]+)$', - episode.show_slug, - name='episode-slug'), - - url(r'^podcast/(?P[\w-]+)/(?P[\w-]+)/toggle-favorite', - episode.toggle_favorite_slug, - name='episode-fav-slug'), - - url(r'^podcast/(?P[\w-]+)/(?P[\w-]+)/add-action', - episode.add_action_slug, - name='add-episode-action-slug'), - - url(r'^podcast/(?P[\w-]+)/(?P[\w-]+)/-flattr', - episode.flattr_episode_slug, name='flattr-episode-slug'), - - url(r'^podcast/(?P[\w-]+)/(?P[\w-]+)/\+history', - episode.episode_history_slug, - name='episode-history-slug'), - url(r'^account/$', settings.account, name='account'), -- 2.11.4.GIT