1*6a8ce132SJames Collins<?php 2*6a8ce132SJames Collins/** 3*6a8ce132SJames Collins * Mikio Syntax Plugin: Nav 4*6a8ce132SJames Collins * 5*6a8ce132SJames Collins * @link http://github.com/nomadjimbob/mikioplugin 6*6a8ce132SJames Collins * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) 7*6a8ce132SJames Collins * @author James Collins <james.collins@outlook.com.au> 8*6a8ce132SJames Collins */ 9*6a8ce132SJames Collinsif (!defined('DOKU_INC')) { die(); 10*6a8ce132SJames Collins} 11*6a8ce132SJames Collinsif (!defined('DOKU_PLUGIN')) { define('DOKU_PLUGIN', DOKU_INC.'lib/plugins/'); 12*6a8ce132SJames Collins} 13*6a8ce132SJames Collinsrequire_once dirname(__FILE__).'/core.php'; 14*6a8ce132SJames Collins 15*6a8ce132SJames Collinsclass syntax_plugin_mikioplugin_nav extends syntax_plugin_mikioplugin_core 16*6a8ce132SJames Collins{ 17*6a8ce132SJames Collins public $tag = 'nav'; 18*6a8ce132SJames Collins public $hasEndTag = true; 19*6a8ce132SJames Collins public $options = array( 20*6a8ce132SJames Collins 'icon' => array('type' => 'text', 'default' => ''), 21*6a8ce132SJames Collins 'title' => array('type' => 'text', 'default' => ''), 22*6a8ce132SJames Collins ); 23*6a8ce132SJames Collins 24*6a8ce132SJames Collins public function __construct() 25*6a8ce132SJames Collins { 26*6a8ce132SJames Collins $this->addCommonOptions('text-color'); 27*6a8ce132SJames Collins } 28*6a8ce132SJames Collins 29*6a8ce132SJames Collins public function getAllowedTypes() 30*6a8ce132SJames Collins { 31*6a8ce132SJames Collins return array('container'); 32*6a8ce132SJames Collins } 33*6a8ce132SJames Collins 34*6a8ce132SJames Collins public function render_lexer_enter(Doku_Renderer $renderer, $data) 35*6a8ce132SJames Collins { 36*6a8ce132SJames Collins $classes = $this->buildClass($data, array('overlay', 'horizontal')); 37*6a8ce132SJames Collins $styles = $this->buildStyle(array('height' => $data['height'], 'width' => $data['width']), true); 38*6a8ce132SJames Collins 39*6a8ce132SJames Collins $renderer->doc .= '<div class="' . $this->elemClass . ' ' . $this->classPrefix . 'nav' . $classes . '"' . $styles . '>'; 40*6a8ce132SJames Collins 41*6a8ce132SJames Collins if($data['title'] != '' || $data['icon'] != '') { 42*6a8ce132SJames Collins $renderer->doc .= '<div class="' . $this->classPrefix . 'nav-title">'; 43*6a8ce132SJames Collins if($data['icon'] != '') { 44*6a8ce132SJames Collins $renderer->doc .= '<div class="' . $this->classPrefix . 'nav-icon">'; 45*6a8ce132SJames Collins $this->syntaxRender($renderer, 'icon', '', array_flip(explode(' ', $data['icon'])), MIKIO_LEXER_SPECIAL); 46*6a8ce132SJames Collins $renderer->doc .= '</div>'; 47*6a8ce132SJames Collins } 48*6a8ce132SJames Collins $renderer->doc .= $data['title'] . '</div>'; 49*6a8ce132SJames Collins } 50*6a8ce132SJames Collins } 51*6a8ce132SJames Collins 52*6a8ce132SJames Collins public function render_lexer_exit(Doku_Renderer $renderer, $data) 53*6a8ce132SJames Collins { 54*6a8ce132SJames Collins $renderer->doc .= '</div>'; 55*6a8ce132SJames Collins } 56*6a8ce132SJames Collins} 57*6a8ce132SJames Collins?>