xref: /plugin/mikioplugin/syntax/grid.php (revision 3a0ad8d394ede994db68f1ed17eff796c659fc4a)
17907670dSJames Collins<?php
27907670dSJames Collins/**
37907670dSJames Collins * Mikio Syntax Plugin: Grid
47907670dSJames Collins *
57907670dSJames Collins * @link        http://github.com/nomadjimbob/mikioplugin
67907670dSJames Collins * @license     GPL 2 (http://www.gnu.org/licenses/gpl.html)
77907670dSJames Collins * @author      James Collins <james.collins@outlook.com.au>
87907670dSJames Collins */
97907670dSJames Collinsif (!defined('DOKU_INC')) die();
107907670dSJames Collinsif (!defined('DOKU_PLUGIN')) define('DOKU_PLUGIN',DOKU_INC.'lib/plugins/');
11*3a0ad8d3SJames Collinsrequire_once(__DIR__.'/core.php');
127907670dSJames Collins
137907670dSJames Collinsclass syntax_plugin_mikioplugin_grid extends syntax_plugin_mikioplugin_core {
147907670dSJames Collins    public $tag                 = 'grid';
157907670dSJames Collins    public $hasEndTag           = true;
167907670dSJames Collins    public $options             = array(
177907670dSJames Collins        'rows'          => array('type'     => 'multisize'),
187907670dSJames Collins        'cols'           => array('type'     => 'multisize'),
197907670dSJames Collins    );
20c63a940aSJames Collins
21c63a940aSJames Collins    public function getPType() { return 'normal'; }
227907670dSJames Collins
237907670dSJames Collins    public function render_lexer_enter(Doku_Renderer $renderer, $data) {
247907670dSJames Collins        $styles = $this->buildStyle(array(
258127a956SJames Collins            'grid-template-rows'  => $data['rows'] ?? '',
268127a956SJames Collins            'grid-template-columns'  => $data['cols'] ?? '',
277907670dSJames Collins        ), TRUE);
287907670dSJames Collins
297907670dSJames Collins        $renderer->doc .= '<div class="' . $this->elemClass . ' ' . $this->classPrefix . 'grid"' . $styles . '>';
307907670dSJames Collins    }
317907670dSJames Collins
327907670dSJames Collins
337907670dSJames Collins    public function render_lexer_exit(Doku_Renderer $renderer, $data) {
347907670dSJames Collins        $renderer->doc .= '</div>';
357907670dSJames Collins    }
367907670dSJames Collins}
377907670dSJames Collins?>