Altered content management command

This commit is contained in:
Fergal Moran
2015-08-07 11:32:56 +01:00
parent cb1a08ce5e
commit 9766ba2c4c
8 changed files with 32 additions and 13 deletions

View File

@@ -26,7 +26,7 @@ def auth_by_token(request, backend):
return user if user else None
class FacebookView(APIView):
class SocialLoginHandler(APIView):
permission_classes = (permissions.AllowAny,)
def post(self, request, format=None):
@@ -57,7 +57,8 @@ class FacebookView(APIView):
)
response_data = {
'token': jwt_encode_handler(payload)
'token': jwt_encode_handler(payload),
'session': user.userprofile.get_session_id()
}
return Response(response_data)

View File

@@ -6,9 +6,10 @@ from rest_framework.views import APIView
from rest_framework_jwt.authentication import JSONWebTokenAuthentication
from api import views, auth, helpers
from api.auth import FacebookView
from api.auth import SocialLoginHandler
from rest_framework.views import status
from rest_framework.response import Response
from core.realtime import activity
router = DefaultRouter() # trailing_slash=True)
@@ -27,6 +28,11 @@ class DebugView(APIView):
authentication_classes = (JSONWebTokenAuthentication, )
def post(self, request, format=None):
try:
activity.post_activity('user:message', request.user.userprofile.get_session_id(), 'Hello Sailor')
except Exception, ex:
print ex.message
return Response({
'status': request.user.first_name,
'message': 'Sailor'
@@ -43,7 +49,7 @@ urlpatterns = patterns(
url(r'_search/$', views.SearchResultsView.as_view()),
url(r'^', include(router.urls)),
url(r'^_login/', FacebookView.as_view()),
url(r'^_login/', SocialLoginHandler.as_view()),
url(r'^token-refresh/', 'rest_framework_jwt.views.refresh_jwt_token'),
# url(r'^_tr/', RefreshToken.as_view()),

View File

@@ -1,9 +1,10 @@
import redis
import json
from dss import settings
def post_activity(channel, session, message):
r = redis.StrictRedis(host='localhost', port=6379, db=0)
r = redis.StrictRedis(host=settings.REDIS_HOST, port=6379, db=0)
response = r.publish(channel, json.dumps({'session': session, 'message': message}))
print "Message sent: {0}".format(response)

View File

@@ -31,13 +31,13 @@ def upload_stream_to_azure(iterator, file_name, container_name=settings.AZURE_CO
return obj
def set_azure_details(blob_name, download_name):
def set_azure_details(blob_name, download_name, container_name=AZURE_CONTAINER):
try:
blob_service = BlobService(AZURE_ACCOUNT_NAME, AZURE_ACCOUNT_KEY)
blob = blob_service.get_blob(AZURE_CONTAINER, blob_name)
blob = blob_service.get_blob(container_name, blob_name)
if blob:
blob_service.set_blob_properties(
AZURE_CONTAINER,
container_name,
blob_name,
x_ms_blob_content_type='application/octet-stream',
x_ms_blob_content_disposition='attachment;filename="{0}"'.format(download_name)

View File

@@ -74,7 +74,7 @@ TEMPLATE_CONTEXT_PROCESSORS = global_settings.TEMPLATE_CONTEXT_PROCESSORS + (
MIDDLEWARE_CLASSES = (
'django.middleware.gzip.GZipMiddleware',
'django.middleware.common.CommonMiddleware',
'user_sessions.middleware.SessionMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
@@ -96,7 +96,7 @@ INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'user_sessions',
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.messages',
'django.contrib.staticfiles',
@@ -149,7 +149,7 @@ TASTYPIE_ALLOW_MISSING_SLASH = True
SENDFILE_ROOT = os.path.join(MEDIA_ROOT, 'mixes')
SENDFILE_URL = '/media/mixes'
SESSION_ENGINE = 'user_sessions.backends.db'
#SESSION_ENGINE = 'user_sessions.backends.db'
mimetypes.add_type("text/xml", ".plist", False)

View File

@@ -13,6 +13,7 @@ urlpatterns = patterns(
(r'^grappelli/', include('grappelli.urls')),
(r'^social/', include('spa.social.urls')),
(r'^arges/', include('spa.social.urls')),
url(r'', include('user_sessions.urls', 'user_sessions')),
url(r'^', include('api.urls')),
)

View File

@@ -5,16 +5,21 @@ from core.utils import cdn
from spa.models import Mix
def _update_azure_headers():
ms = Mix.objects.all()
for m in ms:
cdn.set_azure_details('{0}.mp3'.format(m.uid), 'Deep South Sounds - {0}'.format(m.title), 'mixes')
def _check_missing_mixes():
ms = Mix.objects.all()
found = 0
for m in ms:
url = m.get_download_url()
if not cdn.file_exists(url):
file = '/mnt/dev/deepsouthsounds.com/media/mixes/{0}.mp3'.format(m.uid)
file = '/mnt/dev/working/Dropbox/Development/deepsouthsounds.com/media/mixes/{0}.mp3'.format(m.uid)
if os.path.isfile(file):
print '* {0}'.format(file)
cdn.upload_file_to_azure(file, '{0}.mp3'.format(m.uid), 'mixes')
#cdn.upload_file_to_azure(file, '{0}.mp3'.format(m.uid), 'mixes')
found += 1
else:
found += 1
@@ -49,5 +54,7 @@ class Command(BaseCommand):
print "Commands are \n\t_check_missing_mixes"
elif args[0] == 'check_missing_mix':
_check_missing_mixes()
elif args[0] == 'update_azure_headers':
_update_azure_headers()
else:
print "Commands are \n\tcheck_missing_mix"

View File

@@ -139,6 +139,9 @@ class UserProfile(BaseModel):
except Exception, e:
self.logger.error("Unable to create profile slug: %s", e.message)
def get_session_id(self):
return str(self.id)
def toggle_favourite(self, mix, value):
try:
if value: