diff --git a/www/conservancy/apps/ccs_upload/views.py b/www/conservancy/apps/ccs_upload/views.py new file mode 100644 index 0000000000000000000000000000000000000000..4e03171e08294c0646609af83be07170df8be360 --- /dev/null +++ b/www/conservancy/apps/ccs_upload/views.py @@ -0,0 +1,24 @@ +import os +import random + +from django.http import HttpResponse +from django.shortcuts import render + +CCS_UPLOAD_PATH = '/tmp/' + + +def upload(request): + if request.method == 'POST': + handle_uploaded_file(request.FILES['file']) + return HttpResponse('Uploaded!') + else: + return render(request, 'ccs_upload/upload.html') + return HttpResponse('Done') + + +def handle_uploaded_file(f): + filename = '{hash:x} {name}'.format(hash=random.getrandbits(32), name=f.name) + path = os.path.join(CCS_UPLOAD_PATH, filename) + with open(path, 'wb+') as destination: + for chunk in f.chunks(): + destination.write(chunk)