تعطيل الصفحة الأولية التي تعيد التوجيه إلى تسجيل الدخول

مرحباً،

أقوم حالياً بتنفيذ إعادة توجيه بطيئة لتجنب الحاجة إلى الضغط على زر تسجيل الدخول الوحيد الموجود في الصفحة الأولية.

import { apiInitializer } from "discourse/lib/api";

export default apiInitializer("1.0", (api) => {
  api.onPageChange((url) => {
    const user = api.getCurrentUser();

    let path = url?.startsWith("http") ? new URL(url).pathname : url;
    path = path?.replace(/\/+$/, "") || "/";

    const allowedAnonPaths = ["/login", "/privacy", "/tos", "/pub/about-this-forum", "/safe-mode", "/pub/accessibility-statement"];

    if (!user && !allowedAnonPaths.includes(path)) {
      window.location.href = "/login";
    }
  });
});

هذا يستبعد المسارات التي لا أريد تحويل الحركة منها.


هذا الحل ليس مثالياً، لكنه مستخدم حالياً على https://physicswithethan.discourse.diy