diff options
author | Cash Costello <cash.costello@gmail.com> | 2012-07-10 17:28:44 -0700 |
---|---|---|
committer | Cash Costello <cash.costello@gmail.com> | 2012-07-10 17:28:44 -0700 |
commit | 208938ec5a5aa3fc4abb99c9ad82fdbdfe7a27ec (patch) | |
tree | 81ade5e799a620e4a99948f8fff1f1174a352947 /mod/htmlawed/start.php | |
parent | 017b609861984718b73ba909d1b2266d4b144b06 (diff) | |
parent | 894481db371b3dd25be115275b7254c68eb85542 (diff) | |
download | elgg-208938ec5a5aa3fc4abb99c9ad82fdbdfe7a27ec.tar.gz elgg-208938ec5a5aa3fc4abb99c9ad82fdbdfe7a27ec.tar.bz2 |
Merge pull request #311 from migrax/fixhtmlawed_dup_18
Fixes #4692 duplicated tags caused by new htmlawed code
Diffstat (limited to 'mod/htmlawed/start.php')
-rw-r--r-- | mod/htmlawed/start.php | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/mod/htmlawed/start.php b/mod/htmlawed/start.php index 5af18f4dd..12b6470a3 100644 --- a/mod/htmlawed/start.php +++ b/mod/htmlawed/start.php @@ -18,6 +18,8 @@ function htmlawed_init() { $lib = elgg_get_plugins_path() . "htmlawed/vendors/htmLawed/htmLawed.php"; elgg_register_library('htmlawed', $lib); + + elgg_register_plugin_hook_handler('unit_test', 'system', 'htmlawed_test'); } /** @@ -90,7 +92,13 @@ function htmLawedArray(&$v, $k, $htmlawed_config) { * @param array $attributes An array of attributes * @return string */ -function htmlawed_tag_post_processor($element, $attributes = array()) { +function htmlawed_tag_post_processor($element, $attributes = false) { + if ($attributes === false) { + // This is a closing tag. Prevent further processing to avoid inserting a duplicate tag + + return "</${element}>"; + } + // these are the default styles used by tinymce. $allowed_styles = array( 'color', 'cursor', 'text-align', 'vertical-align', 'font-size', @@ -143,3 +151,15 @@ function htmlawed_tag_post_processor($element, $attributes = array()) { $r = "<$element$string>"; return $r; } + +/** + * Runs unit tests for htmlawed + * + * @return array + * */ +function htmlawed_test($hook, $type, $value, $params) { + global $CONFIG; + + $value[] = dirname(__FILE__) . '/tests/tags.php'; + return $value; +} |