1c4f02a6eSJaap de Haan<?php 2962d7b81SJaap de Haan 3a494ddccSgithub-actions[bot]use dokuwiki\Extension\ActionPlugin; 4a494ddccSgithub-actions[bot]use dokuwiki\Extension\EventHandler; 5a494ddccSgithub-actions[bot]use dokuwiki\Extension\Event; 6a494ddccSgithub-actions[bot] 7c4f02a6eSJaap de Haan/** 8c4f02a6eSJaap de Haan * @license See LICENSE file 9c4f02a6eSJaap de Haan */ 10c4f02a6eSJaap de Haan// See help: https://www.dokuwiki.org/devel:toolbar 11a494ddccSgithub-actions[bot]class action_plugin_bpmnio_toolbar extends ActionPlugin 12c4f02a6eSJaap de Haan{ 13*9ff8d41cSJaap de Haan public function register(EventHandler $controller): void 14c4f02a6eSJaap de Haan { 15962d7b81SJaap de Haan $controller->register_hook('TOOLBAR_DEFINE', 'AFTER', $this, 'handleToolbar'); 16c4f02a6eSJaap de Haan } 17c4f02a6eSJaap de Haan 18a494ddccSgithub-actions[bot] public function handleToolbar(Event $event) 19c4f02a6eSJaap de Haan { 20c4f02a6eSJaap de Haan $basedir = DOKU_BASE . 'lib/plugins/bpmnio/images/toolbar/'; 21a494ddccSgithub-actions[bot] $event->data[] = [ 22c4f02a6eSJaap de Haan 'type' => 'picker', 23c4f02a6eSJaap de Haan 'title' => $this->getLang('picker'), 24c4f02a6eSJaap de Haan 'icon' => $basedir . 'picker.png', 25a494ddccSgithub-actions[bot] 'list' => [ 26a494ddccSgithub-actions[bot] [ 27c4f02a6eSJaap de Haan 'type' => 'format', 28c4f02a6eSJaap de Haan 'class' => 'plugin-bpmnio icon-large', 29c4f02a6eSJaap de Haan 'title' => $this->getLang('bpmn_add'), 30c4f02a6eSJaap de Haan 'icon' => $basedir . 'bpmn_add.png', 31962d7b81SJaap de Haan 'open' => $this->getFileContent('bpmn_open'), 32962d7b81SJaap de Haan 'close' => $this->getFileContent('bpmn_close') 33a494ddccSgithub-actions[bot] ], 34a494ddccSgithub-actions[bot] [ 35c4f02a6eSJaap de Haan 'type' => 'format', 36c4f02a6eSJaap de Haan 'class' => 'plugin-bpmnio icon-large', 37c4f02a6eSJaap de Haan 'title' => $this->getLang('dmn_add'), 38c4f02a6eSJaap de Haan 'icon' => $basedir . 'dmn_add.png', 39962d7b81SJaap de Haan 'open' => $this->getFileContent('dmn_open'), 40962d7b81SJaap de Haan 'close' => $this->getFileContent('dmn_close') 41a494ddccSgithub-actions[bot] ] 42a494ddccSgithub-actions[bot] ] 43a494ddccSgithub-actions[bot] ]; 44c4f02a6eSJaap de Haan } 45c4f02a6eSJaap de Haan 46962d7b81SJaap de Haan private function getFileContent($file) 47c4f02a6eSJaap de Haan { 48*9ff8d41cSJaap de Haan $path = __DIR__ . '/../data/' . $file . '.text'; 49*9ff8d41cSJaap de Haan if (!file_exists($path) || !is_readable($path)) { 50*9ff8d41cSJaap de Haan return ''; 51*9ff8d41cSJaap de Haan } 52*9ff8d41cSJaap de Haan return trim(file_get_contents($path)); 53c4f02a6eSJaap de Haan } 54c4f02a6eSJaap de Haan} 55