def _exists_in_holding_pen(obj, eng): from inspire.utils.knowledge import get_value record = get_record_from_obj(obj, eng) identifiers = record.get(identifier_key, []) result = get_value(kb_name, identifiers) if result: obj.log.info("Record already found in Holding Pen ({0})".format( result )) return result
def _exists_in_holding_pen(obj, eng): from inspire.utils.knowledge import get_value identifiers = [] report_numbers = obj.get_data().get('report_number', []) for number in report_numbers: if number.get("source", "").lower() == "arxiv": arxiv_id = number.get("primary") identifiers.append(arxiv_id) result = get_value(kb_name, identifiers) if result: obj.log.info("Record already found in Holding Pen ({0})".format(result)) return result
def _update_old_object(obj, eng): from inspire.utils.knowledge import get_value from invenio_workflows.models import BibWorkflowObject record = get_record_from_obj(obj, eng) identifiers = [] identifiers = record.get('arxiv_eprints.value', []) object_id = get_value(kb_name, identifiers) if object_id: old_object = BibWorkflowObject.query.get(object_id) if old_object: # record waiting approval old_object.set_data(obj.data) old_object.save()
def _update_old_object(obj, eng): from inspire.utils.knowledge import get_value from invenio_workflows.models import BibWorkflowObject identifiers = [] report_numbers = obj.get_data().get('report_number', []) for number in report_numbers: if number.get("source", "").lower() == "arxiv": arxiv_id = number.get("primary") identifiers.append(arxiv_id) object_id = get_value(kb_name, identifiers) if object_id: old_object = BibWorkflowObject.query.get(object_id) if old_object: # record waiting approval old_object.set_data(obj.get_data()) old_object.save()