diff options
author | zotlabs <mike@macgirvin.com> | 2017-05-23 16:14:41 -0700 |
---|---|---|
committer | zotlabs <mike@macgirvin.com> | 2017-05-23 16:14:41 -0700 |
commit | bf580fcc0651663031d74072ee17a8f6becb49fc (patch) | |
tree | aaf0ac6129053c728f29559381f521395494f0b8 /vendor/league/html-to-markdown/src/Converter/EmphasisConverter.php | |
parent | 357e7af6adb303aa12f6506585e7d59a1250da99 (diff) | |
parent | 31d920817264552cece5a57c2390411af4d7a3a1 (diff) | |
download | volse-hubzilla-bf580fcc0651663031d74072ee17a8f6becb49fc.tar.gz volse-hubzilla-bf580fcc0651663031d74072ee17a8f6becb49fc.tar.bz2 volse-hubzilla-bf580fcc0651663031d74072ee17a8f6becb49fc.zip |
Merge branch 'dev' of https://github.com/redmatrix/hubzilla into xdev_merge
Diffstat (limited to 'vendor/league/html-to-markdown/src/Converter/EmphasisConverter.php')
-rw-r--r-- | vendor/league/html-to-markdown/src/Converter/EmphasisConverter.php | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/vendor/league/html-to-markdown/src/Converter/EmphasisConverter.php b/vendor/league/html-to-markdown/src/Converter/EmphasisConverter.php new file mode 100644 index 000000000..67250769b --- /dev/null +++ b/vendor/league/html-to-markdown/src/Converter/EmphasisConverter.php @@ -0,0 +1,57 @@ +<?php + +namespace League\HTMLToMarkdown\Converter; + +use League\HTMLToMarkdown\Configuration; +use League\HTMLToMarkdown\ConfigurationAwareInterface; +use League\HTMLToMarkdown\ElementInterface; + +class EmphasisConverter implements ConverterInterface, ConfigurationAwareInterface +{ + /** + * @var Configuration + */ + protected $config; + + /** + * @param Configuration $config + */ + public function setConfig(Configuration $config) + { + $this->config = $config; + } + + /** + * @param ElementInterface $element + * + * @return string + */ + public function convert(ElementInterface $element) + { + $tag = $element->getTagName(); + $value = $element->getValue(); + + if (!trim($value)) { + return ''; + } + + if ($tag === 'i' || $tag === 'em') { + $style = $this->config->getOption('italic_style'); + } else { + $style = $this->config->getOption('bold_style'); + } + + $prefix = ltrim($value) !== $value ? ' ' : ''; + $suffix = rtrim($value) !== $value ? ' ' : ''; + + return $prefix . $style . trim($value) . $style . $suffix; + } + + /** + * @return string[] + */ + public function getSupportedTags() + { + return array('em', 'i', 'strong', 'b'); + } +} |