/**
  * Gibt das HTML Markup aus. Die Funktion hinter dem Wrapper wird jetzt erst aufgerufen!
  * @return string
  * @throws Exception
  */
 public function toHtml()
 {
     // Erzeugen des neuen Requests
     $request = Application::getCurrentRequest()->createSubRequest();
     $request->module = $this->module;
     $request->action = $this->action;
     $request->embedded = true;
     $request->setViaArray($this->param);
     $module = Modules::getModule($this->module);
     if ($module == null) {
         throw new Exception("[Wrapper] Modul {$this->module} konnte nicht geladen werden");
     }
     $controller = $module->createController($request);
     if ($controller->hatBerechtigung()) {
         $response = $controller->execute($request);
         Logging::warning((string) $response->getContent());
         if ($response->getContent() instanceof View) {
             $result = '<div id="' . $this->id . '" class="wrapper">' . $response->getContent()->render() . '</div>';
         } else {
             $result = 'NO VIEW';
         }
     } else {
         $result = '<div class="alert alert-danger">Für diese Funktion haben Sie keine ausreichende Berechtigung</div>';
     }
     // Ergebnis in einem Panel verpacken
     if ($this->showInPanel) {
         $panel = new CaptionedPanelControl(null, 'panel-' . $this->id);
         $panel->setCaption($this->panelCaption);
         $panel->setCollapsed($this->panelCollapsed);
         $html = new HtmlControl($panel);
         $html->setInnerHtml($result);
         $result = $panel->toHtml();
     }
     return $result;
 }