From c662a4c6890c5e7cdfc6939991844db7dce10ad1 Mon Sep 17 00:00:00 2001
From: David Siegfried <david.siegfried@uni-vechta.de>
Date: Mon, 30 May 2022 12:48:16 +0000
Subject: [PATCH] render template widget correctly, fixes #1115, re #1102

Merge request studip/studip!666
---
 lib/classes/sidebar/ResourceTreeWidget.class.php | 7 +------
 lib/classes/sidebar/SidebarWidget.php            | 7 +------
 2 files changed, 2 insertions(+), 12 deletions(-)

diff --git a/lib/classes/sidebar/ResourceTreeWidget.class.php b/lib/classes/sidebar/ResourceTreeWidget.class.php
index c99192e7573..75befd4e616 100644
--- a/lib/classes/sidebar/ResourceTreeWidget.class.php
+++ b/lib/classes/sidebar/ResourceTreeWidget.class.php
@@ -116,12 +116,7 @@ class ResourceTreeWidget extends SidebarWidget
         $variables['max_open_depth'] = 0;
         $variables['layout_css_classes'] = $this->layout_css_classes;
 
-        $template = $GLOBALS['template_factory']->open(
-            $this->template
-        );
-        $template->set_attributes($variables);
-        $template->set_layout('sidebar/widget-layout');
-        return $template->render();
+        return parent::render($variables);
     }
 
     public function setCurrentResource(Resource $resource)
diff --git a/lib/classes/sidebar/SidebarWidget.php b/lib/classes/sidebar/SidebarWidget.php
index cc6927ad206..7075b8ab460 100644
--- a/lib/classes/sidebar/SidebarWidget.php
+++ b/lib/classes/sidebar/SidebarWidget.php
@@ -9,16 +9,13 @@
  */
 class SidebarWidget extends Widget
 {
-    protected $id = '';
     protected $additional_attributes = [];
 
-
     public function __construct()
     {
         $this->layout = 'sidebar/widget-layout.php';
     }
 
-
     /**
      * Sets the ID of the HTML element that represents the widget.
      *
@@ -30,7 +27,6 @@ class SidebarWidget extends Widget
         $this->id = $id;
     }
 
-
     /**
      * Returns the ID of this widget, if it is set.
      *
@@ -38,7 +34,7 @@ class SidebarWidget extends Widget
      */
     public function getId() : string
     {
-        return $this->id;
+        return $this->id ?? '';
     }
 
     /**
@@ -101,7 +97,6 @@ class SidebarWidget extends Widget
         unset($this->additional_attributes[$key]);
     }
 
-
     /**
      * Renders the widget.
      * The widget will only be rendered if it contains at least one element.
-- 
GitLab