diff options
author | Brion Vibber <brion@pobox.com> | 2010-04-30 13:15:53 -0700 |
---|---|---|
committer | Brion Vibber <brion@pobox.com> | 2010-04-30 13:16:13 -0700 |
commit | cae1329f3bca1f5f1fbfdb1d96b38cbb790fbe00 (patch) | |
tree | 21ae74d08b6496c7d7fafbe95a9b147a9ac56cc0 /lib/activityutils.php | |
parent | 5c05cd2b1a93d360bde7cb7dfc9ba39e5a5a7624 (diff) | |
parent | f8883367184e4fd31dc819d5e1257d0eee11eb10 (diff) |
Merge branch '0.9.x' into 1.0.x
Conflicts:
lib/util.php
Diffstat (limited to 'lib/activityutils.php')
-rw-r--r-- | lib/activityutils.php | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/lib/activityutils.php b/lib/activityutils.php index a7e99fb11..401fd7fc2 100644 --- a/lib/activityutils.php +++ b/lib/activityutils.php @@ -213,11 +213,19 @@ class ActivityUtils // slavishly following http://atompub.org/rfc4287.html#rfc.section.4.1.3.3 if (empty($type) || $type == 'text') { - return $el->textContent; + // We have plaintext saved as the XML text content. + // Since we want HTML, we need to escape any special chars. + return htmlspecialchars($el->textContent); } else if ($type == 'html') { + // We have HTML saved as the XML text content. + // No additional processing required once we've got it. $text = $el->textContent; - return htmlspecialchars_decode($text, ENT_QUOTES); + return $text; } else if ($type == 'xhtml') { + // Per spec, the <content type="xhtml"> contains a single + // HTML <div> with XHTML namespace on it as a child node. + // We need to pull all of that <div>'s child nodes and + // serialize them back to an (X)HTML source fragment. $divEl = ActivityUtils::child($el, 'div', 'http://www.w3.org/1999/xhtml'); if (empty($divEl)) { return null; |