1<?php 2if (!defined('DOKU_INC')) die(); 3 4class syntax_plugin_darkmodetoggle_button extends DokuWiki_Syntax_Plugin { 5 6 public function getType() { 7 return 'substition'; 8 } 9 10 public function getSort() { 11 return 150; 12 } 13 14 public function connectTo($mode) { 15 $this->Lexer->addSpecialPattern('~~DARKMODE~~', $mode, 'plugin_darkmodetoggle_button'); 16 } 17 18 public function handle($match, $state, $pos, Doku_Handler $handler) { 19 return ['type' => 'darkmode_button']; 20 } 21 22 public function render($mode, Doku_Renderer $renderer, $data) { 23 if ($mode !== 'xhtml') return false; 24 25 if ($data['type'] === 'darkmode_button') { 26 $renderer->doc .= '<button id="darkmode-toggle-btn" class="darkmode-btn" title="Toggle Dark Mode">��</button>'; 27 28 29 } 30 return true; 31 } 32}