added visual tweaks and document requirements REMOVED
This commit is contained in:
@@ -173,15 +173,9 @@ app.get('/api/cves', requireAuth(db), (req, res) => {
|
||||
const { search, vendor, severity, status } = req.query;
|
||||
|
||||
let query = `
|
||||
SELECT c.*,
|
||||
COUNT(d.id) as document_count,
|
||||
CASE
|
||||
WHEN COUNT(CASE WHEN d.type = 'advisory' THEN 1 END) > 0
|
||||
THEN 'Complete'
|
||||
ELSE 'Incomplete'
|
||||
END as doc_status
|
||||
SELECT c.*, COUNT(d.id) as document_count
|
||||
FROM cves c
|
||||
LEFT JOIN documents d ON c.cve_id = d.cve_id
|
||||
LEFT JOIN documents d ON c.cve_id = d.cve_id AND c.vendor = d.vendor
|
||||
WHERE 1=1
|
||||
`;
|
||||
|
||||
@@ -228,9 +222,8 @@ app.get('/api/cves/check/:cveId', requireAuth(db), (req, res) => {
|
||||
const { cveId } = req.params;
|
||||
|
||||
const query = `
|
||||
SELECT c.*,
|
||||
SELECT c.*,
|
||||
COUNT(d.id) as total_documents,
|
||||
COUNT(CASE WHEN d.type = 'advisory' THEN 1 END) as has_advisory,
|
||||
COUNT(CASE WHEN d.type = 'email' THEN 1 END) as has_email,
|
||||
COUNT(CASE WHEN d.type = 'screenshot' THEN 1 END) as has_screenshot
|
||||
FROM cves c
|
||||
@@ -238,18 +231,18 @@ app.get('/api/cves/check/:cveId', requireAuth(db), (req, res) => {
|
||||
WHERE c.cve_id = ?
|
||||
GROUP BY c.id
|
||||
`;
|
||||
|
||||
|
||||
db.all(query, [cveId], (err, rows) => {
|
||||
if (err) {
|
||||
console.error(err); return res.status(500).json({ error: 'Internal server error.' });
|
||||
}
|
||||
if (!rows || rows.length === 0) {
|
||||
return res.json({
|
||||
exists: false,
|
||||
message: 'CVE not found - not yet addressed'
|
||||
return res.json({
|
||||
exists: false,
|
||||
message: 'CVE not found - not yet addressed'
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
// Return all vendor entries for this CVE
|
||||
res.json({
|
||||
exists: true,
|
||||
@@ -258,14 +251,12 @@ app.get('/api/cves/check/:cveId', requireAuth(db), (req, res) => {
|
||||
severity: row.severity,
|
||||
status: row.status,
|
||||
total_documents: row.total_documents,
|
||||
compliance: {
|
||||
advisory: row.has_advisory > 0,
|
||||
doc_types: {
|
||||
email: row.has_email > 0,
|
||||
screenshot: row.has_screenshot > 0
|
||||
}
|
||||
})),
|
||||
addressed: true,
|
||||
has_required_docs: rows.some(row => row.has_advisory > 0)
|
||||
addressed: true
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user