aboutsummaryrefslogtreecommitdiffstats
path: root/phpBB/phpbb/textformatter/parser.php
diff options
context:
space:
mode:
authors9e <s9e.dev@gmail.com>2014-11-22 20:00:58 +0100
committerJoshyPHP <s9e.dev@gmail.com>2015-04-02 19:16:01 +0200
commit147a713cc066d493b50b82a9d475aa9af940e2b4 (patch)
tree602a17f1928dc4a7c94a4d8fb6349cd702422d2b /phpBB/phpbb/textformatter/parser.php
parenteb7e6d7c23db65530a46dd62432039c19792d564 (diff)
downloadforums-147a713cc066d493b50b82a9d475aa9af940e2b4.tar
forums-147a713cc066d493b50b82a9d475aa9af940e2b4.tar.gz
forums-147a713cc066d493b50b82a9d475aa9af940e2b4.tar.bz2
forums-147a713cc066d493b50b82a9d475aa9af940e2b4.tar.xz
forums-147a713cc066d493b50b82a9d475aa9af940e2b4.zip
[ticket/11768] This commit integrates s9e\TextFormatter
This commit integrates s9e\TextFormatter as outlined in http://area51.phpbb.com/phpBB/viewtopic.php?f=108&t=44467 PHPBB3-11768
Diffstat (limited to 'phpBB/phpbb/textformatter/parser.php')
-rw-r--r--phpBB/phpbb/textformatter/parser.php121
1 files changed, 121 insertions, 0 deletions
diff --git a/phpBB/phpbb/textformatter/parser.php b/phpBB/phpbb/textformatter/parser.php
new file mode 100644
index 0000000000..c595a459bd
--- /dev/null
+++ b/phpBB/phpbb/textformatter/parser.php
@@ -0,0 +1,121 @@
+<?php
+/**
+*
+* This file is part of the phpBB Forum Software package.
+*
+* @copyright (c) phpBB Limited <https://www.phpbb.com>
+* @license GNU General Public License, version 2 (GPL-2.0)
+*
+* For full copyright and license information, please see
+* the docs/CREDITS.txt file.
+*
+*/
+
+namespace phpbb\textformatter;
+
+/**
+* text_formatter.parser service
+* @package phpBB3
+*/
+abstract class parser
+{
+ /**
+ * Parse given text
+ *
+ * @param string $text
+ * @return string
+ */
+ abstract public function parse($text);
+
+ /**
+ * Disable a specific BBCode
+ *
+ * @param string $name BBCode name
+ * @return null
+ */
+ abstract public function disable_bbcode($name);
+
+ /**
+ * Disable BBCodes in general
+ */
+ abstract public function disable_bbcodes();
+
+ /**
+ * Disable the censor
+ */
+ abstract public function disable_censor();
+
+ /**
+ * Disable magic URLs
+ */
+ abstract public function disable_magic_url();
+
+ /**
+ * Disable smilies
+ */
+ abstract public function disable_smilies();
+
+ /**
+ * Enable a specific BBCode
+ *
+ * @param string $name BBCode name
+ * @return null
+ */
+ abstract public function enable_bbcode($name);
+
+ /**
+ * Enable BBCodes in general
+ */
+ abstract public function enable_bbcodes();
+
+ /**
+ * Enable the censor
+ */
+ abstract public function enable_censor();
+
+ /**
+ * Enable magic URLs
+ */
+ abstract public function enable_magic_url();
+
+ /**
+ * Enable smilies
+ */
+ abstract public function enable_smilies();
+
+ /**
+ * Get the list of errors that were generated during last parsing
+ *
+ * @return array
+ */
+ abstract public function get_errors();
+
+ /**
+ * Set a variable to be used by the parser
+ *
+ * - max_font_size
+ * - max_img_height
+ * - max_img_width
+ * - max_smilies
+ * - max_urls
+ *
+ * @param string $name
+ * @param mixed $value
+ * @return null
+ */
+ abstract public function set_var($name, $value);
+
+ /**
+ * Set multiple variables to be used by the parser
+ *
+ * @param array Associative array of [name => value]
+ * @return null
+ */
+ public function set_vars(array $vars)
+ {
+ foreach ($vars as $name => $value)
+ {
+ $this->set_var($name, $value);
+ }
+ }
+}