Commit fceed0fc by John Jarvis Committed by Carlos Andrés Rocha

view for the certificate callback URL

parent 0ef54cde
import logging import logging
from certificates.models import GeneratedCertificate from certificates.models import GeneratedCertificate
from pprint import pprint from django.views.decorators.csrf import csrf_exempt
from django.http import HttpResponse
import json
log = logging.getLogger("mitx.certificates") log = logging.getLogger("mitx.certificates")
@csrf_exempt
def update_certificate(request): def update_certificate(request):
""" """
Will update GeneratedCertificate for a new certificate or Will update GeneratedCertificate for a new certificate or
...@@ -12,20 +14,33 @@ def update_certificate(request): ...@@ -12,20 +14,33 @@ def update_certificate(request):
""" """
if request.method == "POST": if request.method == "POST":
pprint(request)
# user = request.POST.get('user') xqueue_body = json.loads(request.POST.get('xqueue_body'))
# try: xqueue_header = json.loads(request.POST.get('xqueue_header'))
# generated_certificate = GeneratedCertificate.objects.get(
# key=key) try:
# except GeneratedCertificate.DoesNotExist: cert = GeneratedCertificate.objects.get(
# generated_certificate = GeneratedCertificate(user=user) user__username=xqueue_body['username'],
# course_id=xqueue_body['course_id'],
# enabled = request.POST.get('enabled') key=xqueue_header['lms_key'])
# enabled = True if enabled == 'True' else False
# generated_certificate.grade = request.POST.get('grade') except GeneratedCertificate.DoesNotExist:
# generated_certificate.download_url = request.POST.get('download_url') log.critical('Unable to lookup certificate\n'
# generated_certificate.graded_download_url = request.POST.get( 'xqueue_body: {0}\n'
# 'graded_download_url') 'xqueue_header: {1}'.format(
# generated_certificate.course_id = request.POST.get('course_id') xqueue_body, xqueue_header))
# generated_certificate.enabled = enabled
# generated_certificate.save() return HttpResponse(json.dumps({
'return_code': 1,
'content': 'unable to lookup key'}),
mimetype='application/json')
cert.download_uuid = xqueue_body['download_uuid']
cert.verify_uuid = xqueue_body['download_uuid']
cert.download_url = xqueue_body['url']
cert.status = 'downloadable'
cert.save()
return HttpResponse(json.dumps({'return_code': 0}),
mimetype='application/json')
...@@ -4,6 +4,9 @@ from django.conf.urls.static import static ...@@ -4,6 +4,9 @@ from django.conf.urls.static import static
import django.contrib.auth.views import django.contrib.auth.views
urlpatterns = ('', urlpatterns = ('',
# certificate view
url(r'^update_certificate$', 'certificates.views.update_certificate'),
url(r'^$', 'branding.views.index', name="root"), # Main marketing page, or redirect to courseware url(r'^$', 'branding.views.index', name="root"), # Main marketing page, or redirect to courseware
url(r'^dashboard$', 'student.views.dashboard', name="dashboard"), url(r'^dashboard$', 'student.views.dashboard', name="dashboard"),
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment