From 918dde1e1d1dc5a528522f06e02a54d4c0bb6eb3 Mon Sep 17 00:00:00 2001
From: Tobias Reischmann <tobias.reischmann@wi.uni-muenster.de>
Date: Mon, 9 Apr 2018 15:22:02 +0200
Subject: [PATCH] Render the login form only once

---
 filter.php | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/filter.php b/filter.php
index a5d2b68..4412c8d 100644
--- a/filter.php
+++ b/filter.php
@@ -39,6 +39,8 @@ require_once($CFG->libdir . '/oauthlib.php');
  */
 class filter_opencast extends moodle_text_filter {
 
+    private static $loginrendered = false;
+
     public function filter($text, array $options = array()) {
         global $CFG, $PAGE;
 
@@ -55,10 +57,11 @@ class filter_opencast extends moodle_text_filter {
 
             // Login if user is not logged in yet.
             $loggedin = true;
-            if (!isset($_COOKIE['JSESSIONID'])) {
+            if (!isset($_COOKIE['JSESSIONID']) && !self::$loginrendered) {
                 // Login and set cookie.
                 filter_opencast_login();
                 $loggedin = false;
+                self::$loginrendered = true;
             }
 
             $video = false;
-- 
GitLab