rewrite vorgang exist and token validation check to use DB
This commit is contained in:
@@ -27,6 +27,11 @@ export const getVorgangByCaseId = async (caseId: string) => {
|
||||
return list;
|
||||
};
|
||||
|
||||
/**
|
||||
* Get Vorgang
|
||||
* @param caseId
|
||||
* @returns caseObj with keys `token`, `name`, `pw` || undefined
|
||||
*/
|
||||
export const getVorgang = function (caseId: string) {
|
||||
let getVorgang_stmt = `SELECT token, name, pw FROM cases WHERE token = ?`;
|
||||
const stmt = db.prepare(getVorgang_stmt);
|
||||
@@ -96,6 +101,23 @@ export const checkIfVorgangExists = async (caseId: string | null) => {
|
||||
return true;
|
||||
};
|
||||
|
||||
export const vorgangExists = function (caseId: string | null) {
|
||||
if (!caseId) {
|
||||
return fail(400, {
|
||||
success: false,
|
||||
caseId,
|
||||
error: { message: 'Die Vorgangsnummer darf nicht leer sein.' }
|
||||
});
|
||||
}
|
||||
|
||||
let vorgaenge = getVorgaenge();
|
||||
const vorgaenge_tokens = vorgaenge.map((vorg) => vorg.token);
|
||||
|
||||
const found = vorgaenge_tokens.indexOf(caseId) != -1;
|
||||
|
||||
return found;
|
||||
};
|
||||
|
||||
export const hasValidToken = async (caseId: string, caseToken: string) => {
|
||||
const objPath = `${caseId}/${TOKENFILENAME}`;
|
||||
|
||||
@@ -117,3 +139,17 @@ export const hasValidToken = async (caseId: string, caseToken: string) => {
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
export const tokenValid = function (caseId, caseToken) {
|
||||
if (!caseToken) {
|
||||
return false;
|
||||
}
|
||||
|
||||
const vorg = getVorgang(caseId);
|
||||
|
||||
if (!vorg || vorg.pw !== caseToken) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user