/** * Returns rendered settings UI as a twig markup object * * @todo: Remove getRaw() call once the raw filter gets added by Craft * * @return \Twig_Markup */ public function getSettingsHtml() { /** @var Settings $settings */ $settings = $this->getSettings(); $variables = ['plugin' => $this, 'settings' => $settings, 'settingsJson' => $settings->getJsonObject()]; Craft::$app->view->registerJsResource('patrol/js/vue.js'); Craft::$app->view->registerJsResource('patrol/js/patrol.js'); Craft::$app->view->registerCssResource('patrol/css/patrol.css'); $html = Craft::$app->view->renderTemplate('patrol/_settings', $variables); return Template::getRaw($html); }