added CRUD for Projects,

added set project for report
This commit is contained in:
2026-08-22 23:48:15 +02:00
parent 369b3b7728
commit b747b586b3
17 changed files with 1118 additions and 65 deletions
+58
View File
@@ -0,0 +1,58 @@
const DRAG_DROP_STORAGE_KEY = "bugreport_drag_drop_enabled";
const DRAG_DROP_MEDIA_QUERY = "(max-width: 768px), (any-pointer: coarse)";
let sessionDragDropPreference = null;
function getStorage() {
try {
if (typeof window !== "undefined" && window.localStorage) {
return window.localStorage;
}
} catch (error) {
return null;
}
return null;
}
export function getDragDropMediaQuery() {
if (typeof window === "undefined" || typeof window.matchMedia !== "function") {
return null;
}
return window.matchMedia(DRAG_DROP_MEDIA_QUERY);
}
export function getDragDropPreference() {
if (sessionDragDropPreference != null) return sessionDragDropPreference;
let storage = getStorage();
if (storage != null) {
try {
let storedPreference = storage.getItem(DRAG_DROP_STORAGE_KEY);
if (storedPreference === "true") return true;
if (storedPreference === "false") return false;
} catch (error) {
return null;
}
}
return null;
}
export function getDragDropEnabled(mediaQuery = null) {
let preference = getDragDropPreference();
if (preference != null) return preference;
if (mediaQuery == null) mediaQuery = getDragDropMediaQuery();
return mediaQuery == null || !mediaQuery.matches;
}
export function setDragDropEnabled(enabled) {
sessionDragDropPreference = enabled;
let storage = getStorage();
if (storage == null) return;
try {
storage.setItem(DRAG_DROP_STORAGE_KEY, String(enabled));
} catch (error) {
// The in-memory preference still applies until the page is reloaded.
}
}