aboutsummaryrefslogtreecommitdiffstats
path: root/vendor/league/html-to-markdown/src/Converter/BlockquoteConverter.php
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/league/html-to-markdown/src/Converter/BlockquoteConverter.php')
-rw-r--r--vendor/league/html-to-markdown/src/Converter/BlockquoteConverter.php44
1 files changed, 44 insertions, 0 deletions
diff --git a/vendor/league/html-to-markdown/src/Converter/BlockquoteConverter.php b/vendor/league/html-to-markdown/src/Converter/BlockquoteConverter.php
new file mode 100644
index 000000000..eb2d09d17
--- /dev/null
+++ b/vendor/league/html-to-markdown/src/Converter/BlockquoteConverter.php
@@ -0,0 +1,44 @@
+<?php
+
+namespace League\HTMLToMarkdown\Converter;
+
+use League\HTMLToMarkdown\ElementInterface;
+
+class BlockquoteConverter implements ConverterInterface
+{
+ /**
+ * @param ElementInterface $element
+ *
+ * @return string
+ */
+ public function convert(ElementInterface $element)
+ {
+ // Contents should have already been converted to Markdown by this point,
+ // so we just need to add '>' symbols to each line.
+
+ $markdown = '';
+
+ $quote_content = trim($element->getValue());
+
+ $lines = preg_split('/\r\n|\r|\n/', $quote_content);
+
+ $total_lines = count($lines);
+
+ foreach ($lines as $i => $line) {
+ $markdown .= '> ' . $line . "\n";
+ if ($i + 1 === $total_lines) {
+ $markdown .= "\n";
+ }
+ }
+
+ return $markdown;
+ }
+
+ /**
+ * @return string[]
+ */
+ public function getSupportedTags()
+ {
+ return array('blockquote');
+ }
+}