summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--backend/urls.py35
-rw-r--r--backend/views.py159
-rw-r--r--scanneerjammer/urls.py3
3 files changed, 197 insertions, 0 deletions
diff --git a/backend/urls.py b/backend/urls.py
new file mode 100644
index 0000000..e565f43
--- /dev/null
+++ b/backend/urls.py
@@ -0,0 +1,35 @@
+from django.conf.urls import patterns, include, url
+
+
+urlpatterns = patterns('',
+ # AUTH API
+ url(r'^/api/auth/login/$', 'scanneerjammer.backend.views.api_auth_login'),
+ url(r'^/api/auth/logout/$', 'scanneerjammer.backend.views.api_auth_logout'),
+ url(r'^/api/auth/sneakin/$', 'scanneerjammer.backend.views.api_auth_sneakin'),
+ url(r'^/api/auth/register/$', 'scanneerjammer.backend.views.api_auth_register'),
+ url(r'^/api/auth/available/$', 'scanneerjammer.backend.views.api_auth_available'),
+ url(r'^/api/auth/checkin/$', 'scanneerjammer.backend.views.api_auth_checkin'),
+ url(r'^/api/auth/password/$', 'scanneerjammer.backend.views.api_auth_password'),
+ # USER API
+ url(r'^/api/user/videos/$', 'scanneerjammer.backend.views.api_user_videos'),
+ url(r'^/api/user/likes/$', 'scanneerjammer.backend.views.api_user_likes'),
+ url(r'^/api/user/top/$', 'scanneerjammer.backend.views.api_user_top'),
+ url(r'^/api/user/settings/$', 'scanneerjammer.backend.views.api_user_settings'),
+ # ROOM API
+ url(r'^/api/room/watch/$', 'scanneerjammer.backend.views.api_room_watch'),
+ url(r'^/api/room/list/$', 'scanneerjammer.backend.views.api_room_list'),
+ url(r'^/api/room/view/$', 'scanneerjammer.backend.views.api_room_view'),
+ url(r'^/api/room/join/$', 'scanneerjammer.backend.views.api_room_join'),
+ url(r'^/api/room/read/$', 'scanneerjammer.backend.views.api_room_read'),
+ url(r'^/api/room/poll/$', 'scanneerjammer.backend.views.api_room_poll'),
+ url(r'^/api/room/settings/$', 'scanneerjammer.backend.views.api_room_settings'),
+ url(r'^/api/room/say/$', 'scanneerjammer.backend.views.api_room_say'),
+ url(r'^/api/room/video/$', 'scanneerjammer.backend.views.api_room_video'),
+ # VIDEO API
+ url(r'^/api/video/date/$', 'scanneerjammer.backend.views.api_video_date'),
+ url(r'^/api/video/view/$', 'scanneerjammer.backend.views.api_video_view'),
+ url(r'^/api/video/like/$', 'scanneerjammer.backend.views.api_video_like'),
+ url(r'^/api/video/unlike/$', 'scanneerjammer.backend.views.api_video_unlike'),
+ url(r'^/api/video/remove/$', 'scanneerjammer.backend.views.api_video_remove'),
+ url(r'^/api/video/search/$', 'scanneerjammer.backend.views.api_video_search'),
+)
diff --git a/backend/views.py b/backend/views.py
index 60f00ef..2c24a9b 100644
--- a/backend/views.py
+++ b/backend/views.py
@@ -1 +1,160 @@
# Create your views here.
+
+from django.contrib import auth
+from django.views.decorators.http import require_POST
+from django.http import HttpResponse
+
+API_HEADER = "#@scanjam 0.2\n"
+
+def add_cors_headers(response):
+ """ Setup additional headers for response """
+ response['Access-Control-Allow-Origin'] = '*'
+ response['Access-Control-Allow-Methods'] = 'POST, GET, OPTIONS'
+ response['Access-Control-Allow-Headers'] = 'x-requested-with'
+ response['Access-Control-Max-Age'] = '3628800'
+
+#
+# AUTH API
+#
+
+@require_POST
+def api_auth_login(request):
+ """"""
+ form_fields = ['username', 'password']
+
+@require_POST
+def api_auth_logout(request):
+ """"""
+ pass
+
+@require_POST
+def api_auth_sneakin(request):
+ """"""
+ form_fields = ['userid', 'username']
+
+@require_POST
+def api_auth_register(request):
+ """"""
+ form_fields = ['username', 'password']
+
+@require_POST
+def api_auth_available(request):
+ """"""
+ form_fields = ['username']
+
+@require_POST
+def api_auth_checkin(request):
+ """"""
+ pass
+
+@require_POST
+def api_auth_password(request):
+ """"""
+ form_fields = ['username', 'password']
+
+#
+# USER API
+#
+
+@require_POST
+def api_user_videos(request):
+ """"""
+ form_fields = ['user', 'start']
+
+@require_POST
+def api_user_likes(request):
+ """"""
+ form_fields = ['user', 'start']
+
+@require_POST
+def api_user_top(request):
+ """"""
+ form_fields = ['user']
+
+@require_POST
+def api_user_settings(request):
+ """"""
+ form_fields = ['user', 'bio', 'settings']
+
+#
+# ROOM API
+#
+
+@require_POST
+def api_room_watch(request):
+ """"""
+ form_fields = ['room', 'last']
+
+@require_POST
+def api_room_list(request):
+ """"""
+ pass
+
+@require_POST
+def api_room_view(request):
+ """"""
+ form_fields = ['room', 'last']
+
+@require_POST
+def api_room_join(request):
+ """"""
+ form_fields = ['room', 'enqueue']
+
+@require_POST
+def api_room_read(request):
+ """"""
+ form_fields = ['room', 'enqueue']
+
+@require_POST
+def api_room_poll(request):
+ """"""
+ form_fields = ['room', 'last', 'cam']
+
+@require_POST
+def api_room_settings(request):
+ """"""
+ form_fields = ['room', 'settings']
+
+@require_POST
+def api_room_say(request):
+ """"""
+ form_fields = ['room', 'msg']
+
+@require_POST
+def api_room_video(request):
+ """"""
+ form_fields = ['room', 'msg']
+
+#
+# VIDEO API
+#
+
+@require_POST
+def api_video_date(request):
+ """"""
+ form_fields = ['day', 'month', 'year']
+
+@require_POST
+def api_video_view(request):
+ """"""
+ form_fields = ['video']
+
+@require_POST
+def api_video_like(request):
+ """"""
+ form_fields = ['video']
+
+@require_POST
+def api_video_unlike(request):
+ """"""
+ form_fields = ['video']
+
+@require_POST
+def api_video_remove(request):
+ """"""
+ form_fields = ['video', 'room']
+
+@require_POST
+def api_video_search(request):
+ """"""
+ form_fields = ['q', 'start', 'limit']
diff --git a/scanneerjammer/urls.py b/scanneerjammer/urls.py
index e92ab41..2061960 100644
--- a/scanneerjammer/urls.py
+++ b/scanneerjammer/urls.py
@@ -9,6 +9,9 @@ urlpatterns = patterns('',
# url(r'^$', 'scanneerjammer.views.home', name='home'),
# url(r'^scanneerjammer/', include('scanneerjammer.foo.urls')),
+ # Backend
+ url(r'^/', include('backend.urls')),
+
# Uncomment the admin/doc line below to enable admin documentation:
url(r'^admin/doc/', include('django.contrib.admindocs.urls')),