Lexer->addSpecialPattern('~~PAGEIMAGE:.*?~~', $mode, 'plugin_pageimage'); } function handle($match, $state, $pos, Doku_Handler $handler) { $image = trim(substr($match, 12, -2)); // strip markup & whitespace $image = cleanID($image); if(!$image) return false; return $image; } /** * Render xhtml output or metadata * * @param string $mode Renderer mode (supported modes: xhtml and metadata) * @param Doku_Renderer $renderer The renderer * @param array $data The data from the handler function * @return bool If rendering was successful. */ function render($mode, Doku_Renderer $renderer, $data) { if ($data === false) return false; // XHTML output if ($mode == 'xhtml') { //$renderer->doc .= $data; return false; // for metadata renderer } elseif ($mode == 'metadata') { $renderer->meta['pageimage'] = $data; return true; } return false; } } // vim:ts=4:sw=4:et: