17935713eSJames Collins<?php 27935713eSJames Collins/** 37935713eSJames Collins * Mikio Syntax Plugin: Step 47935713eSJames Collins * 57935713eSJames Collins * @link http://github.com/nomadjimbob/mikioplugin 67935713eSJames Collins * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) 77935713eSJames Collins * @author James Collins <james.collins@outlook.com.au> 87935713eSJames Collins */ 97935713eSJames Collinsif (!defined('DOKU_INC')) die(); 107935713eSJames Collinsif (!defined('DOKU_PLUGIN')) define('DOKU_PLUGIN',DOKU_INC.'lib/plugins/'); 11*3a0ad8d3SJames Collinsrequire_once(__DIR__.'/core.php'); 127935713eSJames Collins 137935713eSJames Collinsclass syntax_plugin_mikioplugin_step extends syntax_plugin_mikioplugin_core { 147935713eSJames Collins public $tag = 'step'; 157935713eSJames Collins public $hasEndTag = true; 167935713eSJames Collins public $options = array( 177935713eSJames Collins 'title' => array('type' => 'text', 'default' => ''), 187935713eSJames Collins 'complete' => array('type' => 'boolean', 'default' => 'false'), 197935713eSJames Collins 'url' => array('type' => 'url', 'default' => ''), 207935713eSJames Collins 'icon' => array('type' => 'text', 'default' => ''), 217935713eSJames Collins ); 227935713eSJames Collins 237935713eSJames Collins public function __construct() { 247935713eSJames Collins $this->addCommonOptions('type'); 257935713eSJames Collins } 267935713eSJames Collins 277935713eSJames Collins public function render_lexer_enter(Doku_Renderer $renderer, $data) { 287935713eSJames Collins $classes = $this->buildClass($data, array('complete')); 297935713eSJames Collins 307935713eSJames Collins $renderer->doc .= '<li class="' . $this->elemClass . ' ' . $this->classPrefix . 'step' . $classes . '">'; 317935713eSJames Collins if($data['url']) $renderer->doc .= '<a href="' . $data['url'] . '" class="' . $this->elemClass . ' ' . $this->classPrefix . 'step-link">'; 328127a956SJames Collins if(!empty($data['icon'])) { 337935713eSJames Collins $renderer->doc .= '<div class="' . $this->elemClass . ' ' . $this->classPrefix . 'step-icon">'; 347935713eSJames Collins $this->syntaxRender($renderer, 'icon', '', array_flip(explode(' ', $data['icon'])), MIKIO_LEXER_SPECIAL); 357935713eSJames Collins $renderer->doc .= '</div>'; 367935713eSJames Collins } 377935713eSJames Collins $renderer->doc .= '<div class="' . $this->elemClass . ' ' . $this->classPrefix . 'step-text">'; 388127a956SJames Collins if(!empty($data['title'])) $renderer->doc .= '<div class="' . $this->elemClass . ' ' . $this->classPrefix . 'step-title">' . $data['title'] . '</div>'; 397935713eSJames Collins } 407935713eSJames Collins 417935713eSJames Collins 427935713eSJames Collins public function render_lexer_exit(Doku_Renderer $renderer, $data) { 437935713eSJames Collins if($data['url']) $renderer->doc .= '</a>'; 447935713eSJames Collins $renderer->doc .= '</div>'; 457935713eSJames Collins $renderer->doc .= '</li>'; 467935713eSJames Collins } 477935713eSJames Collins} 487935713eSJames Collins?> 49