async function cveLoad()

in default/cve5/portal.js [584:635]


async function cveLoad(cveId) {
    try {
        var res = await csClient.getCve(cveId);
        if (res.cveMetadata) {
            if (res.containers) {
                res = cveFixForVulnogram(res);
            } else {
                console.log('no containers');
            }
            var edOpts = (res.cveMetadata.state == 'REJECTED') ? rejectEditorOption : publicEditorOption;
            loadJSON(res, cveId, "Loaded " + cveId + " from CVE.org!", edOpts);

            mainTabGroup.change(0);
            return res;
        } else {
            errMsg.textContent = "Failed to load valid CVE Record";
            infoMsg.textContent = "";
        }
    } catch (e) {
        if (e == '404' || e.error == 'CVE_RECORD_DNE') {
            var skeleton = {
                "cveMetadata": {
                    "cveId": cveId,
                    "assigner": csCache.orgInfo ? csCache.orgInfo.UUID : "",
                }
            };
            try {
                var res = await csClient.getCveId(cveId);
                var edOpts = publicEditorOption;
                if (res.state == 'RESERVED') {
                    skeleton.cveMetadata.state = "PUBLISHED";
                } else if (res.state == 'REJECTED') {
                    skeleton.cveMetadata.state = "REJECTED";
                    edOpts = rejectEditorOption;
                } else {
                    return {};
                }

                loadJSON(skeleton, cveId, "Loaded " + cveId, edOpts);
                mainTabGroup.change(0);
                return skeleton;
            } catch (e2) {
                if (e2 == '404') {
                    showAlert('CVE Not found!');
                }
            }
        } else {
            //console.log(e);
            portalErrorHandler(e);
        }
    }
}