1*46a60b4fSRobertWeinmeister<?php 2*46a60b4fSRobertWeinmeister/** 3*46a60b4fSRobertWeinmeister * DokuWiki Plugin mermaid (Action Component) 4*46a60b4fSRobertWeinmeister * 5*46a60b4fSRobertWeinmeister * @license GPL 2 http://www.gnu.org/licenses/gpl-2.0.html 6*46a60b4fSRobertWeinmeister * @author Robert Weinmeister <develop@weinmeister.org> 7*46a60b4fSRobertWeinmeister */ 8*46a60b4fSRobertWeinmeister 9*46a60b4fSRobertWeinmeisterclass action_plugin_mermaid extends \dokuwiki\Extension\ActionPlugin 10*46a60b4fSRobertWeinmeister{ 11*46a60b4fSRobertWeinmeister /** @inheritDoc */ 12*46a60b4fSRobertWeinmeister public function register(Doku_Event_Handler $controller) 13*46a60b4fSRobertWeinmeister { 14*46a60b4fSRobertWeinmeister $controller->register_hook('TPL_METAHEADER_OUTPUT', 'BEFORE', $this, 'load'); 15*46a60b4fSRobertWeinmeister } 16*46a60b4fSRobertWeinmeister 17*46a60b4fSRobertWeinmeister public function load(Doku_Event $event, $param) 18*46a60b4fSRobertWeinmeister { 19*46a60b4fSRobertWeinmeister $event->data['script'][] = array 20*46a60b4fSRobertWeinmeister ( 21*46a60b4fSRobertWeinmeister 'type' => 'text/javascript', 22*46a60b4fSRobertWeinmeister 'charset' => 'utf-8', 23*46a60b4fSRobertWeinmeister 'src' => DOKU_BASE."lib/plugins/mermaid/mermaid.min.js" 24*46a60b4fSRobertWeinmeister ); 25*46a60b4fSRobertWeinmeister 26*46a60b4fSRobertWeinmeister $event->data['link'][] = array 27*46a60b4fSRobertWeinmeister ( 28*46a60b4fSRobertWeinmeister 'rel' => 'stylesheet', 29*46a60b4fSRobertWeinmeister 'type' => 'text/css', 30*46a60b4fSRobertWeinmeister 'href' => DOKU_BASE."lib/plugins/mermaid/mermaid.css", 31*46a60b4fSRobertWeinmeister ); 32*46a60b4fSRobertWeinmeister 33*46a60b4fSRobertWeinmeister // Can be changed for debugging 34*46a60b4fSRobertWeinmeister // https://mermaid.js.org/config/directives.html#changing-loglevel-via-directive 35*46a60b4fSRobertWeinmeister $event->data['script'][] = array 36*46a60b4fSRobertWeinmeister ( 37*46a60b4fSRobertWeinmeister 'type' => 'text/javascript', 38*46a60b4fSRobertWeinmeister 'charset' => 'utf-8', 39*46a60b4fSRobertWeinmeister '_data' => 'mermaid.initialize({logLevel: "error"});' 40*46a60b4fSRobertWeinmeister ); 41*46a60b4fSRobertWeinmeister } 42*46a60b4fSRobertWeinmeister}