Connect local write permissions to backend
This commit is contained in:
@@ -63,9 +63,16 @@ window.fetch = (input, init = {}) => {
|
||||
|
||||
const headers = new Headers(init.headers || (typeof input !== "string" ? input.headers : undefined));
|
||||
const selectedMode = localStorage.getItem("catalog-maker:database-mode") || "local";
|
||||
const permissions = JSON.parse(localStorage.getItem("catalog-maker:db-permissions") || "{}");
|
||||
const localWritesEnabled = selectedMode === "local" && [
|
||||
permissions.allowInsertToggle,
|
||||
permissions.allowUpdateToggle,
|
||||
permissions.allowDeleteToggle,
|
||||
].some(Boolean);
|
||||
// Scrape storage is separate; existing catalog endpoints continue reading Local 9bplus.
|
||||
headers.set("X-Database-Mode", selectedMode === "live" ? "live" : "local");
|
||||
headers.set("X-Scrape-Database", selectedMode === "scrape" ? "1" : "0");
|
||||
headers.set("X-Local-Write-Access", localWritesEnabled ? "1" : "0");
|
||||
return nativeFetch(input, { ...init, headers });
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user