From 3b5ed20d18fa877b1ec06afbccc32a38e68b6bc8 Mon Sep 17 00:00:00 2001
From: Jake Vanderwerf <get@jakevanderwerf.ca>
Date: Thu, 08 Jan 2026 16:51:27 +0000
Subject: [PATCH] =Queue.js refactor

---
 inc/managers/LoginManager.php |  154 +++++++++++++++++++++++++-------------------------
 1 files changed, 77 insertions(+), 77 deletions(-)

diff --git a/inc/managers/LoginManager.php b/inc/managers/LoginManager.php
index 2e5c569..8b632ca 100644
--- a/inc/managers/LoginManager.php
+++ b/inc/managers/LoginManager.php
@@ -872,99 +872,99 @@
 		ob_start();
 		?>
 
-		document.addEventListener('DOMContentLoaded', () => {
-			const form = document.querySelector('.login form');
-			if (!form) return;
+document.addEventListener('DOMContentLoaded', async function () {
+		window.auth.subscribe(event => {
+			if (event === 'auth-loaded') {
+				const form = document.querySelector('.login form');
+				if (!form) return;
 
-			if (!window.jvbForm) {
-				console.error('jvbForm not loaded');
-				return;
-			}
-
-			window.LoginController = new window.jvbForm();
-			window.LoginController.registerForm(form, {
-				autosave: false,
-				endpoint: <?= "'{$action}'" ?>,
-				formStatus: false,
-				cache: false,
-			});
-
-			window.LoginController.subscribe((event, data) => {
-				if (event === 'form-submit') {
-					handleFormSubmission(data);
+				if (!window.jvbForm) {
+					console.error('jvbForm not loaded');
+					return;
 				}
-			});
 
-
-			async function handleFormSubmission(data) {
-			let realFormData = data.fullData;
-			const { formId, config, data: formData } = data;
-
-
-			const form = config.element;
-
-			const submit = form.querySelector('[type=submit]');
-			let oldText = submit.textContent;
-
-
-			window.LoginController.showFormStatus(formId, 'uploading');
-
-			try {
-				submit.disabled = true;
-				submit.textContent = 'Loading...';
-				const response = await fetch(`${jvbSettings.api}<?=($action === 'magic') ? $action : 'auth/'.$action?>`, {
-					method: 'POST',
-					headers: {
-                		'Content-Type': 'application/json',
-						'X-WP-Nonce': window.auth.getNonce()
-					},
-					body: JSON.stringify(realFormData)
+				window.LoginController = new window.jvbForm();
+				window.LoginController.registerForm(form, {
+					autosave: false,
+					endpoint: <?= "'{$action}'" ?>,
+					formStatus: false,
+					cache: false,
 				});
 
-					const result = await response.json();
-
-					// Handle errors
-					if (!response.ok) {
-						window.LoginController.showFormStatus(formId, 'error');
-						window.LoginController.handleFormError(form, result);
-						return;
+				window.LoginController.subscribe((event, data) => {
+					if (event === 'form-submit') {
+						handleFormSubmission(data);
 					}
+				});
 
-					// Handle success
-					window.LoginController.showFormStatus(formId, 'submitted');
 
-					// Show success message briefly before redirect
-					if (result.message) {
-						window.LoginController.handleFormSuccess(form, result);
-					}
+				async function handleFormSubmission(data) {
+				let realFormData = data.fullData;
+				const { formId, config, data: formData } = data;
 
-					if (window.auth && typeof window.auth.handleLogin === 'function' && Object.hasOwn(result, 'auth')) {
-						console.log('Awaiting Auth...');
-						await window.auth.handleLogin(result.auth); // Pass the full result
-					}
 
-					// Handle redirect
-					if (result.redirect) {
-						setTimeout(() => {
-							window.location.href = result.redirect;
-						}, 200); // Brief delay to show success message
-					}
+				const form = config.element;
 
-				} catch (error) {
-					console.error('Form submission error:', error);
-					window.LoginController.showFormStatus(formId, 'error');
-					window.LoginController.handleFormError(form, {
-						message: 'Network error. Please check your connection and try again.',
-						code: 'network_error'
+				const submit = form.querySelector('[type=submit]');
+				let oldText = submit.textContent;
+
+
+				window.LoginController.showFormStatus(formId, 'uploading');
+
+				try {
+					submit.disabled = true;
+					submit.textContent = 'Loading...';
+					const response = await window.auth.fetch(`${jvbSettings.api}auth/<?php echo $action; ?>`, {
+						method: 'POST',
+						body: JSON.stringify(realFormData)
 					});
-				} finally {
-					submit.textContent = oldText;
-					submit.disabled = false;
+
+						const result = await response.json();
+
+						// Handle errors
+						if (!response.ok) {
+							window.LoginController.showFormStatus(formId, 'error');
+							window.LoginController.handleFormError(form, result);
+							return;
+						}
+
+						// Handle success
+						window.LoginController.showFormStatus(formId, 'submitted');
+
+						// Show success message briefly before redirect
+						if (result.message) {
+							window.LoginController.handleFormSuccess(form, result);
+						}
+
+						if (window.auth && typeof window.auth.handleLogin === 'function' && Object.hasOwn(result, 'auth')) {
+							console.log('Awaiting Auth...');
+							await window.auth.handleLogin(result.auth); // Pass the full result
+						}
+
+						// Handle redirect
+						if (result.redirect) {
+							setTimeout(() => {
+								window.location.href = result.redirect;
+							}, 100); // Brief delay to show success message
+						}
+
+					} catch (error) {
+						console.error('Form submission error:', error);
+						window.LoginController.showFormStatus(formId, 'error');
+						window.LoginController.handleFormError(form, {
+							message: 'Network error. Please check your connection and try again.',
+							code: 'network_error'
+						});
+					} finally {
+						submit.textContent = oldText;
+						submit.disabled = false;
+					}
 				}
 			}
-
 		});
 
+});
+
 
 
 		<?php

--
Gitblit v1.10.0