def upload(request, slug, **kwargs): # For GET, just return blank response. See issue #327. if request.method != "POST": return HttpResponse("") error = None file_form = PageFileForm(request.POST, request.FILES) uploaded = request.FILES["file"] if "file" in kwargs: # Replace existing file if exists try: file = PageFile.objects.get(slug__exact=slug, name__exact=kwargs["file"]) file.file = uploaded except PageFile.DoesNotExist: file = PageFile(file=uploaded, name=uploaded.name, slug=slug) file_form.instance = file if not file_form.is_valid(): error = file_form.errors.values()[0] else: file_form.save() if error is not None: return HttpResponseBadRequest(error) return HttpResponseRedirect(reverse("pages:file-info", args=[slug, kwargs["file"]])) # uploaded from ckeditor relative_url = "_files/" + urlquote(uploaded.name) try: file = PageFile(file=uploaded, name=uploaded.name, slug=slug) file.save() return ck_upload_result(request, url=relative_url) except IntegrityError: error = "A file with this name already exists" return ck_upload_result(request, url=relative_url, message=error)
def upload(request, slug, **kwargs): error = None file_form = PageFileForm(request.POST, request.FILES) uploaded = request.FILES['file'] if 'file' in kwargs: # Replace existing file if exists try: file = PageFile.objects.get(slug__exact=slug, name__exact=kwargs['file']) file.file = uploaded except PageFile.DoesNotExist: file = PageFile(file=uploaded, name=uploaded.name, slug=slug) file_form.instance = file if not file_form.is_valid(): error = file_form.errors.values()[0] else: file_form.save() if error is not None: return HttpResponseBadRequest(error) return HttpResponseRedirect(reverse('pages:file-info', args=[slug, kwargs['file']])) # uploaded from ckeditor relative_url = '_files/' + uploaded.name try: file = PageFile(file=uploaded, name=uploaded.name, slug=slug) file.save() return ck_upload_result(request, url=relative_url) except IntegrityError: error = 'A file with this name already exists' return ck_upload_result(request, url=relative_url, message=error)
def post(self, request, *args, **kwargs): slug = kwargs['slug'] region = self.get_region() error = None file_form = PageFileForm(request.POST, request.FILES) uploaded = request.FILES['file'] if 'file' in kwargs: # Replace existing file if exists try: file = PageFile.objects.get(slug__exact=slug, name__exact=kwargs['file'], region=region) file.file = uploaded except PageFile.DoesNotExist: file = PageFile(file=uploaded, name=uploaded.name, slug=slug, region=region) file_form.instance = file if not file_form.is_valid(): error = file_form.errors.values()[0] else: file_form.save() if error is not None: return HttpResponseBadRequest(error) return HttpResponseRedirect( reverse('pages:file-info', kwargs={ 'region': region.slug, 'slug': slug, 'file': kwargs['file'] })) # uploaded from ckeditor filename = _find_available_filename(uploaded.name, slug, region) relative_url = '_files/' + urlquote(filename) try: file = PageFile(file=uploaded, name=filename, slug=slug, region=region) file.save() return ck_upload_result(request, url=relative_url) except IntegrityError: error = _('A file with this name already exists') return ck_upload_result(request, url=relative_url, message=error)
def post(self, request, *args, **kwargs): slug = kwargs['slug'] region = self.get_region() error = None file_form = PageFileForm(request.POST, request.FILES) uploaded = request.FILES['file'] if 'file' in kwargs: # Replace existing file if exists try: file = PageFile.objects.get( slug__exact=slug, name__exact=kwargs['file'], region=region ) file.file = uploaded except PageFile.DoesNotExist: file = PageFile( file=uploaded, name=uploaded.name, slug=slug, region=region ) file_form.instance = file if not file_form.is_valid(): error = file_form.errors.values()[0] else: file_form.save() if error is not None: return HttpResponseBadRequest(error) return HttpResponseRedirect( reverse('pages:file-info', kwargs={'region': region.slug, 'slug': slug, 'file': kwargs['file']})) # uploaded from ckeditor filename = _find_available_filename(uploaded.name, slug, region) relative_url = '_files/' + urlquote(filename) try: file = PageFile(file=uploaded, name=filename, slug=slug, region=region) file.save() return ck_upload_result(request, url=relative_url) except IntegrityError: error = _('A file with this name already exists') return ck_upload_result(request, url=relative_url, message=error)
def upload(request, slug, **kwargs): # For GET, just return blank response. See issue #327. if request.method != 'POST': return HttpResponse('') error = None file_form = PageFileForm(request.POST, request.FILES) uploaded = request.FILES['file'] if 'file' in kwargs: # Replace existing file if exists try: file = PageFile.objects.get(slug__exact=slug, name__exact=kwargs['file']) file.file = uploaded except PageFile.DoesNotExist: file = PageFile(file=uploaded, name=uploaded.name, slug=slug) file_form.instance = file if not file_form.is_valid(): error = file_form.errors.values()[0] else: file_form.save() if error is not None: return HttpResponseBadRequest(error) return HttpResponseRedirect( reverse('pages:file-info', args=[slug, kwargs['file']])) # uploaded from ckeditor filename = _find_available_filename(uploaded.name, slug) relative_url = '_files/' + urlquote(filename) try: file = PageFile(file=uploaded, name=filename, slug=slug) file.save() return ck_upload_result(request, url=relative_url) except IntegrityError: error = _('A file with this name already exists') return ck_upload_result(request, url=relative_url, message=error)