From ff80c00700228920cfb3586c06af9281fb310ea7 Mon Sep 17 00:00:00 2001 From: Fergal Moran Date: Tue, 18 Aug 2015 19:58:12 +0100 Subject: [PATCH] Popped changes --- api/serializers.py | 6 +++++- api/urls.py | 3 +-- api/views.py | 8 ++++++++ dss/settings.py | 2 -- requirements.txt | 2 +- spa/models/show.py | 7 ++----- 6 files changed, 17 insertions(+), 11 deletions(-) diff --git a/api/serializers.py b/api/serializers.py index acb6b32..35de505 100755 --- a/api/serializers.py +++ b/api/serializers.py @@ -1,6 +1,5 @@ from django.db.models import Count from rest_framework import serializers -from api.fields import DisplayNameField from core.utils.html import strip_tags from dss import settings @@ -9,6 +8,7 @@ from spa.models import Activity, Message from spa.models.activity import ActivityDownload, ActivityPlay from spa.models.genre import Genre from spa.models.notification import Notification +from spa.models.show import Show from spa.models.userprofile import UserProfile from spa.models.mix import Mix, MixUpdateException from spa.models.comment import Comment @@ -490,3 +490,7 @@ class MessageSerializer(serializers.ModelSerializer): 'read_at', 'body', ) + +class ShowSerializer(serializers.ModelSerializer): + class Meta: + model = Show \ No newline at end of file diff --git a/api/urls.py b/api/urls.py index 2623ba0..c341a85 100755 --- a/api/urls.py +++ b/api/urls.py @@ -22,6 +22,7 @@ router.register(r'comments', views.CommentViewSet) router.register(r'activity', views.ActivityViewSet, base_name='activity') router.register(r'genre', views.GenreViewSet, base_name='genre') router.register(r'messages', views.MessageViewSet, base_name='messages') +router.register(r'shows', views.ShowViewSet, base_name='shows') class DebugView(APIView): @@ -48,7 +49,6 @@ class DebugView(APIView): urlpatterns = patterns( '', url(r'^', include(router.urls)), - # url(r'^', include(mix_router.urls)), url(r'_download/', views.DownloadItemView.as_view()), url(r'_upload/$', views.PartialMixUploadView.as_view()), url(r'_image/$', views.AttachedImageUploadView.as_view()), @@ -58,7 +58,6 @@ urlpatterns = patterns( url(r'^_login/', SocialLoginHandler.as_view()), url(r'^token-refresh/', 'rest_framework_jwt.views.refresh_jwt_token'), - # url(r'^_tr/', RefreshToken.as_view()), url(r'^__u/checkslug', helpers.UserSlugCheckHelper.as_view()), url(r'^__u/', auth.ObtainUser.as_view()), diff --git a/api/views.py b/api/views.py index 319b2b8..6e2df11 100755 --- a/api/views.py +++ b/api/views.py @@ -22,6 +22,7 @@ from spa import tasks from spa.models import Message from spa.models.genre import Genre from spa.models.activity import ActivityPlay +from spa.models.show import Show from spa.models.mix import Mix from spa.models.comment import Comment from spa.models.notification import Notification @@ -79,6 +80,8 @@ class UserProfileViewSet(viewsets.ModelViewSet): ret = UserProfile.objects.filter(following__slug__in=[self.request.query_params['following']]) elif 'followers' in self.request.query_params: ret = UserProfile.objects.filter(followers__slug__in=[self.request.query_params['followers']]) + elif 'messaged_with' in self.request.query_params: + ret = UserProfile.objects.filter(messages__slug__in=[self.request.query_params['followers']]) else: ret = super(UserProfileViewSet, self).get_queryset() @@ -308,3 +311,8 @@ class MessageViewSet(viewsets.ModelViewSet): def perform_update(self, serializer): self.__perform_write(serializer) + + +class ShowViewSet(viewsets.ModelViewSet): + queryset = Show.objects.all() + serializer_class = serializers.ShowSerializer diff --git a/dss/settings.py b/dss/settings.py index 4753ed4..9074fd0 100755 --- a/dss/settings.py +++ b/dss/settings.py @@ -111,7 +111,6 @@ INSTALLED_APPS = ( 'gunicorn', 'spa.signals', 'core', - #'schedule', 'django_user_agents', 'storages', 'social.apps.django_app.default', @@ -124,7 +123,6 @@ INSTALLED_APPS = ( 'allauth.socialaccount.providers.google', 'allauth.socialaccount.providers.twitter', 'south', - 'dbbackup', 'djrill', 'rest_framework', diff --git a/requirements.txt b/requirements.txt index 68682e5..5d00c0b 100755 --- a/requirements.txt +++ b/requirements.txt @@ -18,13 +18,13 @@ django-user-agents south redis django-celery +django-scheduler sorl-thumbnail git+git://github.com/disqus/django-bitfield.git#django-bitfield git+git://github.com/Azure/azure-sdk-for-python.git#azure git+git://github.com/tschellenbach/Django-facebook.git#django-facebook -git+git://github.com/llazzaro/django-scheduler.git#django-scheduler git+git://github.com/omab/python-social-auth.git#egg=python-social-auth django-allauth apache-libcloud diff --git a/spa/models/show.py b/spa/models/show.py index 0151603..39ab43a 100755 --- a/spa/models/show.py +++ b/spa/models/show.py @@ -1,4 +1,3 @@ -""" from django.db.models import Q, ForeignKey from schedule.models import Event from spa.models import Mix @@ -14,9 +13,8 @@ class Show(Event): class Meta: app_label = 'spa' - def save(self, force_insert=False, force_update=False, using=None, - update_fields=None): - #throw an exception if event overlaps with another event + def save(self, force_insert=False, force_update=False, using=None, update_fields=None): + overlaps = Show.objects.filter( Q(start__gte=self.start, end__lte=self.start) | Q(start__gte=self.end, end__lte=self.end) @@ -25,4 +23,3 @@ class Show(Event): raise ShowOverlapException() return super(Show, self).save(force_insert, force_update, using, update_fields) -""" \ No newline at end of file