def save_js(request): response = {} response['errormsg'] = {} status = 403 if request.is_ajax() and request.method == 'POST': the_id = int(request.POST['id']) if 'owner_id' in request.POST: owner_id = int(request.POST['owner_id']) if owner_id != request.user.id: if not check_access_rights(owner_id, request.user): return False else: owner_id = request.user.id if 'image' in request.FILES and \ request.FILES['image'].content_type not in ALLOWED_FILETYPES: status = 200 # Not implemented response['errormsg']['error'] = _('Filetype not supported') else: # We only allow owners to change their images. image = Image.objects.filter(pk=the_id, owner=request.user) if image.exists(): image = image[0] status = 200 else: image = Image() image.uploader = request.user image.owner_id = owner_id status = 201 if 'checksum' in request.POST: image.checksum = request.POST['checksum'] image.title = request.POST['title'] if 'imageCat' in request.POST: image.image_cat = request.POST['imageCat'] if 'image' in request.FILES: image.image = request.FILES['image'] if status == 201 and 'image' not in request.FILES: status = 200 response['errormsg']['error'] = _('No file uploaded') else: image.save() response['values'] = { 'pk': image.pk, 'title': image.title, 'image': image.image.url, 'file_type': image.file_type, 'added': mktime(image.added.timetuple()) * 1000, 'checksum': image.checksum, 'cats': image.image_cat.split(',') } if image.thumbnail: response['values']['thumbnail'] = image.thumbnail.url response['values']['height'] = image.height response['values']['width'] = image.width return JsonResponse( response, status=status )
def save_js(request): response = {} response['errormsg'] = {} status = 403 if request.is_ajax() and request.method == 'POST': the_id = int(request.POST['id']) if 'owner_id' in request.POST: owner_id = int(request.POST['owner_id']) if owner_id != request.user.id: if not check_write_access_rights(owner_id, request.user): return False else: owner_id = request.user.id if 'image' in request.FILES and \ request.FILES['image'].content_type not in ALLOWED_FILETYPES: status = 200 # Not implemented response['errormsg']['error'] = _('Filetype not supported') else: # We only allow owners to change their images. image = Image.objects.filter(pk=the_id, owner=request.user) if image.exists(): image = image[0] status = 200 else: image = Image() image.uploader = request.user image.owner_id = owner_id status = 201 if 'checksum' in request.POST: image.checksum = request.POST['checksum'] image.title = request.POST['title'] if 'imageCat' in request.POST: image.image_cat = request.POST['imageCat'] if 'image' in request.FILES: image.image = request.FILES['image'] if status == 201 and 'image' not in request.FILES: status = 200 response['errormsg']['error'] = _('No file uploaded') else: image.save() response['values'] = { 'pk': image.pk, 'title': image.title, 'image': image.image.url, 'file_type': image.file_type, 'added': mktime(image.added.timetuple()) * 1000, 'checksum': image.checksum, 'cats': image.image_cat.split(',') } if image.thumbnail: response['values']['thumbnail'] = image.thumbnail.url response['values']['height'] = image.height response['values']['width'] = image.width return JsonResponse(response, status=status)
def save(request): response = {} response['errormsg'] = {} if 'image' in request.FILES and \ request.FILES['image'].content_type not in ALLOWED_FILETYPES: status = 200 # Not implemented response['errormsg']['error'] = _('Filetype not supported') else: image = False if 'id' in request.POST and 'image' not in request.FILES: user_image = UserImage.objects.filter(image_id=int( request.POST['id']), owner=request.user).first() if user_image: image = user_image.image status = 200 if image is False: image = Image() image.uploader = request.user user_image = UserImage() user_image.owner = request.user status = 201 if 'checksum' in request.POST: image.checksum = request.POST['checksum'] user_image.title = request.POST['title'] if 'copyright' in request.POST: user_image.copyright = request.POST['copyright'] if 'cats' in request.POST: user_image.image_cat = request.POST['cats'] if 'image' in request.FILES: image.image = request.FILES['image'] if status == 201 and 'image' not in request.FILES: status = 200 response['errormsg']['error'] = _('No file uploaded') else: image.save() user_image.image = image user_image.save() response['values'] = { 'id': image.id, 'title': user_image.title, 'copyright': json.loads(user_image.copyright), 'image': image.image.url, 'file_type': image.file_type, 'added': mktime(image.added.timetuple()) * 1000, 'checksum': image.checksum, 'cats': json.loads(user_image.image_cat) } if image.thumbnail: response['values']['thumbnail'] = image.thumbnail.url response['values']['height'] = image.height response['values']['width'] = image.width return JsonResponse(response, status=status)
def save_js(request): response = {} response['errormsg'] = {} status = 403 if request.is_ajax() and request.method == 'POST' : the_id = int(request.POST['id']) image = Image.objects.filter(pk = the_id, uploader = request.user) if image.exists(): image = image[0] status = 200 else: image = Image() image.uploader = request.user status = 201 if 'checksum' in request.POST: image.checksum = request.POST['checksum'] image.title = request.POST['title'] if 'imageCat' in request.POST: image.image_cat = request.POST['imageCat'] if 'image' in request.FILES: image.image = request.FILES['image'] image.save() response['values'] = { 'pk': image.id, 'title': image.title, 'image': image.image.url, 'file_type': image.file_type, 'added': mktime(image.added.timetuple())*1000, 'checksum': image.checksum, 'cats': image.image_cat.split(',') } if image.thumbnail: response['values']['thumbnail'] = image.thumbnail.url response['values']['height'] = image.height response['values']['width'] = image.width return HttpResponse( simplejson.dumps(response), content_type = 'application/json; charset=utf8', status=status )
def save_js(request): response = {} response["errormsg"] = {} status = 403 if request.is_ajax() and request.method == "POST": the_id = int(request.POST["id"]) image = Image.objects.filter(pk=the_id, uploader=request.user) if image.exists(): image = image[0] status = 200 else: image = Image() image.uploader = request.user status = 201 if "checksum" in request.POST: image.checksum = request.POST["checksum"] image.title = request.POST["title"] if "imageCat" in request.POST: image.image_cat = request.POST["imageCat"] if "image" in request.FILES: image.image = request.FILES["image"] image.save() response["values"] = { "pk": image.id, "title": image.title, "image": image.image.url, "file_type": image.file_type, "added": mktime(image.added.timetuple()) * 1000, "checksum": image.checksum, "cats": image.image_cat.split(","), } if image.thumbnail: response["values"]["thumbnail"] = image.thumbnail.url response["values"]["height"] = image.height response["values"]["width"] = image.width return HttpResponse(simplejson.dumps(response), content_type="application/json; charset=utf8", status=status)
def save_js(request): response = {} response['errormsg'] = {} status = 403 if request.is_ajax() and request.method == 'POST': if 'image' in request.FILES and \ request.FILES['image'].content_type not in ALLOWED_FILETYPES: status = 200 # Not implemented response['errormsg']['error'] = _('Filetype not supported') else: image = False if 'id' in request.POST and 'image' not in request.FILES: user_image = UserImage.objects.filter( image_id=int(request.POST['id']), owner=request.user ).first() if user_image: image = user_image.image status = 200 if image is False: image = Image() image.uploader = request.user user_image = UserImage() user_image.owner = request.user status = 201 if 'checksum' in request.POST: image.checksum = request.POST['checksum'] user_image.title = request.POST['title'] if 'cats' in request.POST: user_image.image_cat = request.POST['cats'] if 'image' in request.FILES: image.image = request.FILES['image'] if status == 201 and 'image' not in request.FILES: status = 200 response['errormsg']['error'] = _('No file uploaded') else: image.save() user_image.image = image user_image.save() response['values'] = { 'id': image.id, 'title': user_image.title, 'image': image.image.url, 'file_type': image.file_type, 'added': mktime(image.added.timetuple()) * 1000, 'checksum': image.checksum, 'cats': list( map( int, list(filter(bool, user_image.image_cat.split(','))) ) ) } if image.thumbnail: response['values']['thumbnail'] = image.thumbnail.url response['values']['height'] = image.height response['values']['width'] = image.width return JsonResponse( response, status=status )
def save_js(request): response = {} response['errormsg'] = {} status = 403 if request.is_ajax() and request.method == 'POST': if 'image' in request.FILES and \ request.FILES['image'].content_type not in ALLOWED_FILETYPES: status = 200 # Not implemented response['errormsg']['error'] = _('Filetype not supported') else: image = False if 'id' in request.POST and 'image' not in request.FILES: user_image = UserImage.objects.filter(image_id=int( request.POST['id']), owner=request.user) if user_image.exists(): user_image = user_image[0] image = user_image.image status = 200 if image is False: image = Image() image.uploader = request.user user_image = UserImage() user_image.owner = request.user status = 201 if 'checksum' in request.POST: image.checksum = request.POST['checksum'] user_image.title = request.POST['title'] if 'cats' in request.POST: user_image.image_cat = request.POST['cats'] if 'image' in request.FILES: image.image = request.FILES['image'] if status == 201 and 'image' not in request.FILES: status = 200 response['errormsg']['error'] = _('No file uploaded') else: image.save() user_image.image = image user_image.save() response['values'] = { 'id': image.id, 'title': user_image.title, 'image': image.image.url, 'file_type': image.file_type, 'added': mktime(image.added.timetuple()) * 1000, 'checksum': image.checksum, 'cats': list( map(int, filter(bool, user_image.image_cat.split(',')))) } if image.thumbnail: response['values']['thumbnail'] = image.thumbnail.url response['values']['height'] = image.height response['values']['width'] = image.width return JsonResponse(response, status=status)