كيفية استدعاء دالة عند الوصول إلى /login مع تسجيل دخول مسبق

لدي إضافة thinkific تسجل دخول المستخدم إلى Thinkific بمجرد تسجيله في Discourse. إذا حاول المستخدم تسجيل الدخول إلى Thinkific (وبافتراض أن Thinkific مُهيأ لذلك)، يتم إعادة توجيهه إلى Discourse. إذا لم يكن المستخدم مسجلاً في Discourse، فعند تسجيل الدخول، يُرسل حمولة JWT إلى Thinkific لتسجيل دخوله. كان ذلك سبباً كبيراً للفرح.

المشكلة هي أنه إذا أغلق المستخدم المتصفح، يتم تسجيل خروجه من Thinkific، لكن ليس من Discourse. حالياً، يحدث الكود المسؤول عن إرسال JWT إلى Thinkific فقط عند تسجيل الدخول، لذا لكي يسجل المستخدم دخوله إلى Thinkific، يجب عليه تسجيل الخروج ثم الدخول مرة أخرى إلى Discourse.

ما أعتقد أنني أريده أن يحدث هو أنه إذا ضغط المستخدم على /login وكان مسجلاً بالفعل، فسيتم إنشاء استدعاء JWT لـ Thinkific أيضاً. لكنني لا أعرف كيف أفعل ذلك.

هل يجب أن أغير شيئاً هنا؟

أو ربما أغير شيئاً في وحدة تحكم الجلسة (session controller)؟

أو ربما شيئاً هنا؟

لا أعرف بالضبط أين أبحث.

هل يمكن لأحد أن يعطيني تلميحًا حول كيفية تشغيل كود عند الضغط على /login مع كوني مسجلاً للدخول بالفعل؟