Exemple #1
0
def get_submission_view(submission_id):
    ingest_api = IngestApi()
    submission = ingest_api.getSubmissionIfModifiedSince(submission_id, None)

    if submission:
        response = ingest_api.getProjects(submission_id)

        projects = []

        if '_embedded' in response and 'projects' in response['_embedded']:
            projects = response['_embedded']['projects']

        project = projects[
            0] if projects else None  # there should always 1 project

        files = []

        response = ingest_api.getFiles(submission_id)
        if '_embedded' in response and 'files' in response['_embedded']:
            files = response['_embedded']['files']

        file_page = None
        if 'page' in response:
            file_page = response['page']
            file_page['len'] = len(files)

        bundle_manifests = []
        bundle_manifest_obj = {}

        response = ingest_api.getBundleManifests(submission_id)
        if '_embedded' in response and 'bundleManifests' in response[
                '_embedded']:
            bundle_manifests = response['_embedded']['bundleManifests']

        bundle_manifest_obj['list'] = bundle_manifests
        bundle_manifest_obj['page'] = None

        if 'page' in response:
            bundle_manifest_obj['page'] = response['page']
            bundle_manifest_obj['page']['len'] = len(bundle_manifests)

        return render_template('submission.html',
                               sub=submission,
                               helper=HTML_HELPER,
                               project=project,
                               files=files,
                               filePage=file_page,
                               bundleManifestObj=bundle_manifest_obj)
    else:
        flash("Submission doesn't exist!", "alert-danger")
        return redirect(url_for('index'))
Exemple #2
0
def get_submission_files(submission_id):
    ingest_api = IngestApi()
    response = ingest_api.getFiles(submission_id)
    files = []
    if '_embedded' in response and 'files' in response['_embedded']:
        files = response['_embedded']['files']
    file_page = None
    if 'page' in response:
        file_page = response['page']
        file_page['len'] = len(files)
    return render_template('submission-files-table.html',
                           files=files,
                           filePage=file_page,
                           helper=HTML_HELPER)