From 0d37ed81f73c7905053643081d45394d956c4bfa Mon Sep 17 00:00:00 2001 From: Derek Jones Date: Wed, 29 Oct 2008 22:09:27 +0000 Subject: added protection for dashes so they aren't converted into emdashes in tags --- system/libraries/Typography.php | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'system/libraries/Typography.php') diff --git a/system/libraries/Typography.php b/system/libraries/Typography.php index 9490c7ce5..317208f2f 100644 --- a/system/libraries/Typography.php +++ b/system/libraries/Typography.php @@ -84,12 +84,13 @@ class CI_Typography { // Convert quotes within tags to temporary markers. We don't want quotes converted // within tags so we'll temporarily convert them to {@DQ} and {@SQ} + // and we don't want double dashes converted to emdash entities, so they are marked with {@DD} if (preg_match_all("#\<.+?>#si", $str, $matches)) { for ($i = 0, $total = count($matches[0]); $i < $total; $i++) { $str = str_replace($matches[0][$i], - str_replace(array("'",'"'), array('{@SQ}', '{@DQ}'), $matches[0][$i]), + str_replace(array("'",'"','--'), array('{@SQ}', '{@DQ}', '{@DD}'), $matches[0][$i]), $str); } } @@ -106,7 +107,7 @@ class CI_Typography { } } } - + // Convert "ignore" tags to temporary marker. The parser splits out the string at every tag // it encounters. Certain inline tags, like image tags, links, span tags, etc. will be // adversely affected if they are split out so we'll convert the opening bracket < temporarily to: {@TAG} @@ -178,7 +179,8 @@ class CI_Typography { // Replace the temporary markers we added earlier '/\{@TAG\}/' => '<', '/\{@DQ\}/' => '"', - '/\{@SQ\}/' => "'" + '/\{@SQ\}/' => "'", + '/\{@DD\}/' => '--' ); -- cgit v1.2.3-24-g4f1b