def upload(request): """Upload translated resource.""" try: slug = request.POST['slug'] code = request.POST['code'] part = request.POST['part'] except MultiValueDictKeyError: raise Http404 locale = get_object_or_404(Locale, code=code) if not request.user.has_perm('base.can_translate_locale', locale): return HttpResponseForbidden("Forbidden: You don't have permission to upload files") form = forms.UploadFileForm(request.POST, request.FILES) if form.is_valid(): f = request.FILES['uploadfile'] utils.handle_upload_content(slug, code, part, f, request.user) messages.success(request, 'Translations updated from uploaded file.') else: for field, errors in form.errors.items(): for error in errors: messages.error(request, error) return translate(request, code, slug, part)
def upload(request): """Upload translated resource.""" try: slug = request.POST["slug"] code = request.POST["code"] part = request.POST["part"] except MultiValueDictKeyError: raise Http404 locale = get_object_or_404(Locale, code=code) project = get_object_or_404(Project.objects.visible_for(request.user), slug=slug) if not request.user.can_translate( project=project, locale=locale ) or utils.readonly_exists(project, locale): return HttpResponseForbidden("You don't have permission to upload files.") form = forms.UploadFileForm(request.POST, request.FILES) if form.is_valid(): f = request.FILES["uploadfile"] utils.handle_upload_content(slug, code, part, f, request.user) messages.success(request, "Translations updated from uploaded file.") else: for field, errors in form.errors.items(): for error in errors: messages.error(request, error) response = HttpResponse(content="", status=303) response["Location"] = reverse( "pontoon.translate", kwargs={"locale": code, "project": slug, "resource": part}, ) return response
def upload(request): """Upload translated resource.""" try: slug = request.POST['slug'] code = request.POST['code'] part = request.POST['part'] except MultiValueDictKeyError: raise Http404 locale = get_object_or_404(Locale, code=code) if not request.user.has_perm('base.can_translate_locale', locale): return HttpResponseForbidden("Forbidden: You don't have permission to upload files") form = forms.UploadFileForm(request.POST, request.FILES) if form.is_valid(): f = request.FILES['uploadfile'] utils.handle_upload_content(slug, code, part, f, request.user) messages.success(request, 'Translations updated from uploaded file.') else: for field, errors in form.errors.items(): for error in errors: messages.error(request, error) return translate(request, code, slug, part)
def upload(request): """Upload translated resource.""" try: slug = request.POST['slug'] code = request.POST['code'] part = request.POST['part'] except MultiValueDictKeyError: raise Http404 locale = get_object_or_404(Locale, code=code) project = get_object_or_404(Project, slug=slug) if (not request.user.can_translate(project=project, locale=locale) or utils.readonly_exists(project, locale)): return HttpResponseForbidden( "You don't have permission to upload files.") form = forms.UploadFileForm(request.POST, request.FILES) if form.is_valid(): f = request.FILES['uploadfile'] utils.handle_upload_content(slug, code, part, f, request.user) messages.success(request, 'Translations updated from uploaded file.') else: for field, errors in form.errors.items(): for error in errors: messages.error(request, error) response = HttpResponse(content='', status=303) response['Location'] = reverse( 'pontoon.translate', kwargs={ 'locale': code, 'project': slug, 'resource': part, }, ) return response