def post(self, request, doc_id): """ Paste pages (within document view). NO new document is created. Code for pasting document in changelist view (i.e. when a NEW document is created) is in papermerge.core.views.documents.paste_pages """ before = request.POST.get('before', False) after = request.POST.get('after', False) try: document = Document.objects.get(id=doc_id) except Document.DoesNotExist: raise Http404("Document does not exists") Document.paste_pages(user=request.user, parent_id=document.parent, dst_document=document, doc_pages=request.pages.all(), before=before, after=after) request.pages.clear() return Response(status=status.HTTP_204_NO_CONTENT)
def paste_pages(request): """ Paste pages in a changelist view. This means a new document instance is created. """ if request.method == 'GET': return redirect('boss:core_basetreenode_changelist') parent_id = request.POST.get('parent_id', False) clipboard = PagesClipboard(request) doc_pages = clipboard.get() Document.paste_pages(user=request.user, parent_id=parent_id, doc_pages=doc_pages) clipboard.reset() if parent_id: return redirect( reverse('boss:core_basetreenode_changelist_obj', args=(parent_id, ))) return redirect('boss:core_basetreenode_changelist')
def post(self, request, doc_id): """ Paste pages (within document view). NO new document is created. Code for pasting document in changelist view (i.e. when a NEW document is created) is in papermerge.core.views.documents.paste_pages """ before = request.POST.get('before', False) after = request.POST.get('after', False) try: document = Document.objects.get(id=doc_id) except Document.DoesNotExist: raise Http404("Document does not exists") if request.user.has_perm(Access.PERM_WRITE, document): Document.paste_pages(user=request.user, parent_id=document.parent, dst_document=document, doc_pages=request.pages.all(), before=before, after=after) request.pages.clear() return Response(status=status.HTTP_204_NO_CONTENT) return Response(status=status.HTTP_403_FORBIDDEN, data={ 'msg': _("You don't have permissions to paste pages" " in this document.") })
def paste_pages(request): """ Paste pages in a changelist view. This means a new document instance is created. """ data = json.loads(request.body) parent_id = data.get('parent_id', None) if parent_id: parent_id = int(parent_id) Document.paste_pages(user=request.user, parent_id=parent_id, doc_pages=request.pages.all()) request.pages.clear() return HttpResponse( json.dumps({'msg': 'OK'}), content_type="application/json", )