8
0
Fork 0

Fix markup for image from external sources for Confluence

Dieser Commit ist enthalten in:
Stéphane Goetz 2015-10-27 16:03:58 +01:00
Ursprung 5ada801e6d
Commit b7983f101b
3 geänderte Dateien mit 31 neuen und 0 gelöschten Zeilen

BIN
daux.phar

Binäre Datei nicht angezeigt.

Datei anzeigen

@ -16,5 +16,7 @@ class CommonMarkConverter extends \Todaymade\Daux\ContentTypes\Markdown\CommonMa
//Add code renderer
$environment->addBlockRenderer('FencedCode', new FencedCodeRenderer());
$environment->addBlockRenderer('IndentedCode', new IndentedCodeRenderer());
$environment->addInlineRenderer('Image', new ImageRenderer());
}
}

Datei anzeigen

@ -0,0 +1,29 @@
<?php namespace Todaymade\Daux\Format\Confluence\ContentTypes\Markdown;
use League\CommonMark\ElementRendererInterface;
use League\CommonMark\HtmlElement;
use League\CommonMark\Inline\Element\AbstractInline;
use League\CommonMark\Inline\Element\Image;
class ImageRenderer extends \League\CommonMark\Inline\Renderer\ImageRenderer
{
/**
* @param Image $inline
* @param ElementRendererInterface $htmlRenderer
*
* @return HtmlElement
*/
public function render(AbstractInline $inline, ElementRendererInterface $htmlRenderer)
{
// External Images need special handling
if (strpos($inline->getUrl(), 'http') === 0) {
return new HtmlElement(
'ac:image',
[],
new HtmlElement('ri:url', ['ri:value' => $inline->getUrl()])
);
}
return parent::render($inline, $htmlRenderer);
}
}