summaryrefslogtreecommitdiff
path: root/backend
diff options
context:
space:
mode:
authorMaksim A. Boyko <maksim.a.boyko@gmail.com>2012-07-08 13:37:47 -0400
committerMaksim A. Boyko <maksim.a.boyko@gmail.com>2012-07-08 13:37:47 -0400
commit33133a1d2a0f45b3d13f0d53c360883da8e4a2e8 (patch)
treedd29ea4905313bcadb079eccd8e8b5253bc265d1 /backend
parent633b87480af1709db1292b3a39ee5ad87c8cffe6 (diff)
Backend:
Change error messages Add api_auth_password
Diffstat (limited to 'backend')
-rw-r--r--backend/views.py21
1 files changed, 17 insertions, 4 deletions
diff --git a/backend/views.py b/backend/views.py
index e04270b..edd0a2a 100644
--- a/backend/views.py
+++ b/backend/views.py
@@ -148,7 +148,7 @@ def api_auth_register(request):
try:
user.save()
except:
- return api_error_headers('problem storing user')
+ return api_error_headers('db error')
user_profile = SJUserProfile(user=user,
username=request.POST['username'],
password=request.POST['password'],
@@ -157,7 +157,7 @@ def api_auth_register(request):
try:
user_profile.save()
except:
- return api_error_headers('problem storing user profile')
+ return api_error_headers('db error')
response = api_ok_headers()
response.write(user_response_str(request, user))
return response
@@ -184,12 +184,25 @@ def api_auth_checkin(request):
@require_POST
def api_auth_password(request):
- """"""
+ """ Change user password """
form_fields = ['username', 'password']
response = check_form_fields(request, form_fields)
if response:
return response
- return HttpResponse('Not implemented yet!\n')
+ if request.user.is_authenticated() and request.user.username == request.POST['username']:
+ try:
+ user = auth.models.User.objects.get(username=request.POST['username'])
+ user.set_password(request.POST['password'])
+ user.save()
+ user_profile = user.get_profile()
+ user_profile.password = request.POST['password']
+ user_profile.save()
+ except auth.models.User.DoesNotExist:
+ return api_error_headers('no such user')
+ except:
+ return api_error_headers('db error')
+ return api_ok_headers()
+ return HttpResponse()
#
# USER API