Spaces:
Running
Running
Upload 9 files
Browse files- src/views/InstructorView.js +14 -5
src/views/InstructorView.js
CHANGED
|
@@ -482,26 +482,35 @@ export function setupInstructorEvents() {
|
|
| 482 |
import("../services/firebase.js").then(async ({ auth }) => {
|
| 483 |
// Handle Redirect Result first
|
| 484 |
try {
|
|
|
|
| 485 |
const { handleRedirectResult } = await import("../services/auth.js");
|
| 486 |
-
await handleRedirectResult();
|
|
|
|
| 487 |
} catch (e) { console.warn("Redirect check failed", e); }
|
| 488 |
|
| 489 |
auth.onAuthStateChanged(async (user) => {
|
| 490 |
-
console.log("Auth State Changed:", user ? user.email : "Logged Out");
|
| 491 |
if (user) {
|
| 492 |
try {
|
|
|
|
| 493 |
const instructorData = await checkInstructorPermission(user);
|
|
|
|
|
|
|
| 494 |
if (instructorData) {
|
|
|
|
| 495 |
authModal.classList.add('hidden');
|
| 496 |
checkPermissions(instructorData);
|
| 497 |
} else {
|
| 498 |
console.warn("User logged in but not an instructor.");
|
| 499 |
-
//
|
| 500 |
-
|
| 501 |
-
|
|
|
|
| 502 |
}
|
| 503 |
} catch (e) {
|
| 504 |
console.error("Permission Check Failed:", e);
|
|
|
|
|
|
|
| 505 |
}
|
| 506 |
} else {
|
| 507 |
authModal.classList.remove('hidden');
|
|
|
|
| 482 |
import("../services/firebase.js").then(async ({ auth }) => {
|
| 483 |
// Handle Redirect Result first
|
| 484 |
try {
|
| 485 |
+
console.log("Initializing Auth Check...");
|
| 486 |
const { handleRedirectResult } = await import("../services/auth.js");
|
| 487 |
+
const redirectUser = await handleRedirectResult();
|
| 488 |
+
if (redirectUser) console.log("Redirect User Found:", redirectUser.email);
|
| 489 |
} catch (e) { console.warn("Redirect check failed", e); }
|
| 490 |
|
| 491 |
auth.onAuthStateChanged(async (user) => {
|
| 492 |
+
console.log("Auth State Changed to:", user ? user.email : "Logged Out");
|
| 493 |
if (user) {
|
| 494 |
try {
|
| 495 |
+
console.log("Checking permissions for:", user.email);
|
| 496 |
const instructorData = await checkInstructorPermission(user);
|
| 497 |
+
console.log("Permission Result:", instructorData);
|
| 498 |
+
|
| 499 |
if (instructorData) {
|
| 500 |
+
console.log("Hiding Modal and Setting Permissions...");
|
| 501 |
authModal.classList.add('hidden');
|
| 502 |
checkPermissions(instructorData);
|
| 503 |
} else {
|
| 504 |
console.warn("User logged in but not an instructor.");
|
| 505 |
+
// Show unauthorized message
|
| 506 |
+
authErrorMsg.textContent = "此帳號無講師權限";
|
| 507 |
+
authErrorMsg.classList.remove('hidden');
|
| 508 |
+
authModal.classList.remove('hidden'); // Ensure modal stays up
|
| 509 |
}
|
| 510 |
} catch (e) {
|
| 511 |
console.error("Permission Check Failed:", e);
|
| 512 |
+
authErrorMsg.textContent = "權限檢查失敗: " + e.message;
|
| 513 |
+
authErrorMsg.classList.remove('hidden');
|
| 514 |
}
|
| 515 |
} else {
|
| 516 |
authModal.classList.remove('hidden');
|