Enhance debugging and logging in settings and toast rendering; add JSON parsing output and improve toast container handling

This commit is contained in:
Yaro Kasear 2025-07-02 10:48:31 -05:00
parent 398800b681
commit 6a0dd75f10
3 changed files with 19 additions and 4 deletions

View file

@ -442,6 +442,9 @@ def settings():
try: try:
state = json.loads(form['formState']) state = json.loads(form['formState'])
import pprint
print("🧠 Parsed state:")
pprint.pprint(state, indent=2, width=120)
except Exception: except Exception:
flash("Invalid form state submitted. JSON decode failed.", "danger") flash("Invalid form state submitted. JSON decode failed.", "danger")
traceback.print_exc() traceback.print_exc()

View file

@ -1,15 +1,26 @@
function renderToast({ message, type = 'info', timeout = 3000 }) { const ToastConfig = {
containerId: 'toast-container',
positionClasses: 'toast-container position-fixed bottom-0 end-0 p-3',
defaultType: 'info',
defaultTimeout: 3000
};
function updateToastConfig(overrides = {}) {
Object.assign(ToastConfig, overrides);
}
function renderToast({ message, type = ToastConfig.defaultType, timeout = ToastConfig.defaultTimeout }) {
if (!message) { if (!message) {
console.warn('renderToast was called without a message.'); console.warn('renderToast was called without a message.');
return; return;
} }
// Auto-create the toast container if it doesn't exist // Auto-create the toast container if it doesn't exist
let container = document.getElementById('toast-container'); let container = document.getElementById(ToastConfig.containerId);
if (!container) { if (!container) {
container = document.createElement('div'); container = document.createElement('div');
container.id = 'toast-container'; container.id = ToastConfig.containerId;
container.className = 'toast-container position-fixed bottom-0 end-0 p-3'; container.className = ToastConfig.positionClasses;
document.body.appendChild(container); document.body.appendChild(container);
} }

View file

@ -164,6 +164,7 @@
const roomOptions = Array.from(document.getElementById('room-list').options); const roomOptions = Array.from(document.getElementById('room-list').options);
const rooms = roomOptions.map(opt => { const rooms = roomOptions.map(opt => {
const data = opt.dataset; const data = opt.dataset;
console.log('Room:', opt.value, opt.textContent.trim(), opt.dataset.sectionId, opt.dataset.functionId);
return { return {
id: opt.value || undefined, id: opt.value || undefined,