fix: support api token meal cook writes
This commit is contained in:
@@ -71,6 +71,10 @@ function validateCookUserId(raw) {
|
|||||||
return { present: true, value: id, error: null };
|
return { present: true, value: id, error: null };
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function currentUserId(req) {
|
||||||
|
return req.authUserId ?? req.session?.userId ?? null;
|
||||||
|
}
|
||||||
|
|
||||||
function tableColumns(table) {
|
function tableColumns(table) {
|
||||||
return new Set(db.get().prepare(`PRAGMA table_info(${table})`).all().map((row) => row.name));
|
return new Set(db.get().prepare(`PRAGMA table_info(${table})`).all().map((row) => row.name));
|
||||||
}
|
}
|
||||||
@@ -249,7 +253,7 @@ router.post('/', (req, res) => {
|
|||||||
const result = db.get().prepare(`
|
const result = db.get().prepare(`
|
||||||
INSERT INTO meals (date, meal_type, title, notes, recipe_url, recipe_id, created_by)
|
INSERT INTO meals (date, meal_type, title, notes, recipe_url, recipe_id, created_by)
|
||||||
VALUES (?, ?, ?, ?, ?, ?, ?)
|
VALUES (?, ?, ?, ?, ?, ?, ?)
|
||||||
`).run(vDate.value, vType.value, vTitle.value, vNotes.value, vRecipeUrl.value, vRecipeId.value, req.session.userId);
|
`).run(vDate.value, vType.value, vTitle.value, vNotes.value, vRecipeUrl.value, vRecipeId.value, currentUserId(req));
|
||||||
|
|
||||||
const mealId = result.lastInsertRowid;
|
const mealId = result.lastInsertRowid;
|
||||||
|
|
||||||
@@ -272,7 +276,7 @@ router.post('/', (req, res) => {
|
|||||||
`).get(mealId);
|
`).get(mealId);
|
||||||
|
|
||||||
if (vCookUserId.present && vCookUserId.value !== null) {
|
if (vCookUserId.present && vCookUserId.value !== null) {
|
||||||
saveCookAssignment(createdMeal, vCookUserId.value, vSourcePlanId.value, req.session.userId);
|
saveCookAssignment(createdMeal, vCookUserId.value, vSourcePlanId.value, currentUserId(req));
|
||||||
}
|
}
|
||||||
|
|
||||||
return createdMeal;
|
return createdMeal;
|
||||||
@@ -348,7 +352,7 @@ router.put('/:id', (req, res) => {
|
|||||||
`).get(id);
|
`).get(id);
|
||||||
|
|
||||||
if (vCookUserId.present) {
|
if (vCookUserId.present) {
|
||||||
saveCookAssignment(updated, vCookUserId.value, vSourcePlanId.value, req.session.userId);
|
saveCookAssignment(updated, vCookUserId.value, vSourcePlanId.value, currentUserId(req));
|
||||||
} else {
|
} else {
|
||||||
syncCookAssignmentSlot(updated);
|
syncCookAssignmentSlot(updated);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user