diff options
| author | Maksim A. Boyko <maksim.a.boyko@gmail.com> | 2012-06-22 14:47:53 -0400 |
|---|---|---|
| committer | Maksim A. Boyko <maksim.a.boyko@gmail.com> | 2012-06-22 14:47:53 -0400 |
| commit | 18cabeee235dc99aeee9a5bd15c4ac9936cc274e (patch) | |
| tree | b2a18137221fcf951ee1690f27553fda7e37f953 /backend | |
| parent | 8d8f93215c8bbdeb984062b1221eb4fe330cbe9c (diff) | |
Core: Add urls for backend API
Backend: Add the skeleton implementation of API
Diffstat (limited to 'backend')
| -rw-r--r-- | backend/urls.py | 35 | ||||
| -rw-r--r-- | backend/views.py | 159 |
2 files changed, 194 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'] |
