/** * @param WikiLingo\Renderer $renderer * @param WikiLingo\Parser $parser * @return mixed|string */ public function render($renderer, $parser) { $element = Type::Element($renderer->element(__CLASS__, 'div')); $parser->scripts->addCss('.center {text-align: center ! important;}'); $element->classes[] = 'center'; $element->staticChildren[] = $this->renderedChildren; $rendered = $element->render(); return $rendered; }
/** * @param WikiLingo\Renderer $renderer * @param WikiLingo\Parser $parser * @return string */ public function render($renderer, $parser) { $tagType = 'h' . $this->count; $children = ''; foreach ($this->parsed->children as $child) { $children .= $parser->renderer->render($child); } if ($this->pointer) { $tagType = 'a'; $children = strip_tags($children); } $element = Type::Element($renderer->element(__CLASS__, $tagType)); $element->staticChildren[] = $children; if (isset($this->modifier)) { $element->detailedAttributes['data-modifier'] = $this->modifier; //TODO: add in js to make expandable switch ($this->modifier) { case 'toggle': $helper = Type::Helper($renderer->helper('a')); $helper->staticChildren[] = '[+]'; $helper->attributes['href'] = '#'; $element->staticChildren[] = $helper->render(); break; case 'hidden': $helper = Type::Helper($renderer->helper('a')); $helper->staticChildren[] = '[-]'; $helper->attributes['href'] = '#'; $element->staticChildren[] = $helper->render(); break; } } if ($this->id == null || $this->block->variableContext != null) { $id = trim(preg_replace("/[^0-9a-zA-Z_]+/", "-", trim(strip_tags($children))), '-'); $id = $parser->events->triggerExpressionBlockTypeHeaderIdLookup($id, $this); $this->id = $id; if (!isset(self::$ids[$id])) { self::$ids[$id] = 1; } else { $this->id .= self::$ids[$id]; self::$ids[$id]++; } } if ($this->pointer) { $element->attributes['href'] = '#' . urlencode($this->id); } else { $element->attributes['id'] = $this->id; } $header = $element->render(); return $header; }
/** * @param WikiLingo\Renderer $renderer * @param WikiLingo\Parser $parser * @return mixed|string */ public function render($renderer, $parser) { $element = Type::Element($renderer->element(__CLASS__, 'hr')); $element->setInline(); return $element->render(); }