def dgf_get_file(request): document = request.validated['document'] if document.documentType in DOCUMENT_TYPE_URL_ONLY: request.response.status = '302 Moved Temporarily' request.response.location = document.url return document.url return get_file(request)
def get(self): """Tender Bid Document Read""" is_bid_owner = self.request.authenticated_role == 'bid_owner' if self.request.validated[ 'tender_status'] in self.view_forbidden_states and not is_bid_owner: self.request.errors.add( 'body', 'data', 'Can\'t view bid document in current ({}) tender status'. format(self.request.validated['tender_status'])) self.request.errors.status = 403 return document = self.request.validated['document'] if self.request.params.get('download'): if self._doc_access_restricted(document): self.request.errors.add('body', 'data', 'Document download forbidden.') self.request.errors.status = 403 return else: return get_file(self.request) document_data = document.serialize( 'restricted_view' if self._doc_access_restricted(document ) else 'view') document_data['previousVersions'] = [ i.serialize('restricted_view') if self._doc_access_restricted(i) else i.serialize('view') for i in self.request.validated['documents'] if i.url != document.url ] return {'data': document_data}
def get(self): """Tender Bid Document Read""" # TODO can't move validators because of self.view_forbidden_states is_bid_owner = self.request.authenticated_role == 'bid_owner' if self.request.validated[ 'tender_status'] in self.view_forbidden_states and not is_bid_owner: raise_operation_error( self.request, 'Can\'t view bid document in current ({}) tender status'. format(self.request.validated['tender_status'])) if self.request.validated[ 'bid'].status in self.view_forbidden_bid_states and self.request.authenticated_role != 'bid_owner': raise_operation_error( self.request, 'Can\'t view bid documents in current ({}) bid status'.format( self.request.validated['bid'].status)) document = self.request.validated['document'] if self.request.params.get('download'): if self._doc_access_restricted(document): raise_operation_error(self.request, 'Document download forbidden.') else: return get_file(self.request) document_data = document.serialize( 'restricted_view' if self._doc_access_restricted(document ) else 'view') document_data['previousVersions'] = [ i.serialize('restricted_view') if self._doc_access_restricted(i) else i.serialize('view') for i in self.request.validated['documents'] if i.url != document.url ] return {'data': document_data}
def get(self): if self.request.params.get("download"): return get_file(self.request) document = self.request.validated["document"] document_data = document.serialize("view") document_data["previousVersions"] = [ i.serialize("view") for i in self.request.validated["documents"] if i.url != document.url ] return {"data": document_data}
def get(self): """Tender Award Document Read""" if self.request.params.get("download"): return get_file(self.request) document = self.request.validated["document"] document_data = document.serialize("view") document_data["previousVersions"] = [ i.serialize("view") for i in self.request.validated["documents"] if i.url != document.url ] return {"data": document_data}
def get(self): """Tender Award Document Read""" if self.request.params.get('download'): return get_file(self.request) document = self.request.validated['document'] document_data = document.serialize("view") document_data['previousVersions'] = [ i.serialize("view") for i in self.request.validated['documents'] if i.url != document.url ] return {'data': document_data}
def get(self): if self.request.params.get('download'): return get_file(self.request) document = self.request.validated['document'] documents = self.request.validated['documents'] versions_data = [ i.serialize("view") for i in documents if i.url != document.url ] document_data = document.serialize("view") document_data['previousVersions'] = versions_data return {'data': document_data}
def get(self): """Auction Document Read""" if self.request.params.get('download'): return get_file(self.request) document = self.request.validated['document'] document_data = document.serialize("view") document_data['previousVersions'] = [ i.serialize("view") for i in self.request.validated['documents'] if i.url != document.url ] return {'data': document_data}
def get(self): """Tender Complaint Document Read""" document = self.request.validated['document'] key = self.request.params.get('download') if key: return get_file(self.request.validated['tender'], document, key, self.db, self.request) document_data = document.serialize("view") document_data['previousVersions'] = [ i.serialize("view") for i in self.request.validated['documents'] if i.url != document.url ] return {'data': document_data}
def get(self): """Tender Bid Document Read""" document = self.request.validated['document'] key = self.request.params.get('download') if key: return get_file(self.request.validated['tender'], document, key, self.db, self.request) document_data = document.serialize("view") document_data['previousVersions'] = [ i.serialize("view") for i in self.request.validated['documents'] if i.url != document.url ] return {'data': document_data}
def get(self): """Tender Bid Document Read""" if self.request.params.get("download"): return get_file(self.request) document = self.request.validated["document"] serialize_role = self._get_doc_view_role(document) document_data = document.serialize(serialize_role) document_data["previousVersions"] = [ i.serialize(serialize_role) for i in self.request.validated["documents"] if i.url != document.url ] return {"data": document_data}
def get(self): """Auction Bid Document Read""" if self.request.validated['auction_status'] in ['active.tendering', 'active.auction'] and self.request.authenticated_role != 'bid_owner': self.request.errors.add('body', 'data', 'Can\'t view bid document in current ({}) auction status'.format(self.request.validated['auction_status'])) self.request.errors.status = 403 return if self.request.params.get('download'): return get_file(self.request) document = self.request.validated['document'] document_data = document.serialize("view") document_data['previousVersions'] = [ i.serialize("view") for i in self.request.validated['documents'] if i.url != document.url ] return {'data': document_data}
def get(self): """Tender Bid Document Read""" is_bid_owner = self.request.authenticated_role == 'bid_owner' if self.request.validated['tender_status'] in self.view_forbidden_states and not is_bid_owner: self.request.errors.add('body', 'data', 'Can\'t view bid document in current ({}) tender status'.format(self.request.validated['tender_status'])) self.request.errors.status = 403 return document = self.request.validated['document'] if self.request.params.get('download'): if self._doc_access_restricted(document): self.request.errors.add('body', 'data', 'Document download forbidden.') self.request.errors.status = 403 return else: return get_file(self.request) document_data = document.serialize('restricted_view' if self._doc_access_restricted(document) else 'view') document_data['previousVersions'] = [i.serialize('restricted_view') if self._doc_access_restricted(i) else i.serialize('view') for i in self.request.validated['documents'] if i.url != document.url] return {'data': document_data}
def get(self): """Tender Bid Document Read""" if ( self.request.validated["tender_status"] in ["active.tendering", "active.auction"] and self.request.authenticated_role != "bid_owner" ): self.request.errors.add( "body", "data", "Can't view bid document in current ({}) tender status".format(self.request.validated["tender_status"]), ) self.request.errors.status = 403 return if self.request.params.get("download"): return get_file(self.request) document = self.request.validated["document"] document_data = document.serialize("view") document_data["previousVersions"] = [ i.serialize("view") for i in self.request.validated["documents"] if i.url != document.url ] return {"data": document_data}