<feed xmlns='http://www.w3.org/2005/Atom'>
<title>cccms/app/views/rss/updates.xml.builder, branch erdgeist-revive-events</title>
<subtitle>[no description]</subtitle>
<id>https://erdgeist.org/gitweb/cccms/atom?h=erdgeist-revive-events</id>
<link rel='self' href='https://erdgeist.org/gitweb/cccms/atom?h=erdgeist-revive-events'/>
<link rel='alternate' type='text/html' href='https://erdgeist.org/gitweb/cccms/'/>
<updated>2026-07-09T13:29:40Z</updated>
<entry>
<title>Fix malformed-HTML fallout across RSS, link rewriting, and flash messaging</title>
<updated>2026-07-09T13:29:40Z</updated>
<author>
<name>erdgeist</name>
<email>erdgeist@erdgeist.org</email>
</author>
<published>2026-07-09T13:29:40Z</published>
<link rel='alternate' type='text/html' href='https://erdgeist.org/gitweb/cccms/commit/?id=9c3217df50d462d6be4399e3e654d591bf704df7'/>
<id>urn:sha1:9c3217df50d462d6be4399e3e654d591bf704df7</id>
<content type='text'>
Editors' TinyMCE output can contain unclosed void elements like &lt;br&gt;,
which is valid HTML5 but invalid XML -- three different places assumed
the stricter rule and broke or silently misbehaved on the looser one.
The Atom feed's &lt;content type="xhtml"&gt; block required real, well-formed
XML structure but was handed a raw, unescaped body string; switched to
type="html" with CGI.escapeHTML, matching how title/summary already
handle the same content. rewrite_links_in_body used libxml's strict XML
parser to rewrite internal links to be locale-prefixed, which raised on
exactly this class of malformed markup -- silently, since the whole
method was wrapped in rescue; nil, meaning the link rewrite (not the
save) quietly failed with no error anywhere. Replaced with Nokogiri's
lenient HTML parser, which repairs malformed void elements rather than
rejecting them; also drops the bare rescue now that the actual failure
mode it was guarding against shouldn't occur, and fixes two adjacent
bugs found while in this method: a typo'd /sytem/uploads/ regex that
could never match, and a missing https:// exclusion alongside the
existing http:// one.

Also addresses stale flash messaging surfaced while testing the above:
update's save confirmation was being clobbered by edit's own "locked
and ready" notice on the very next request, since nothing distinguished
a fresh lock acquisition from a redirect back after saving. The save
confirmation now names the next step (publish from Status) and flags a
stale translation if one exists, using Page#outdated_translations?,
already present but previously unused by any controller.
</content>
</entry>
<entry>
<title>rss: fix self link to include .xml suffix</title>
<updated>2026-06-27T20:49:21Z</updated>
<author>
<name>erdgeist</name>
<email>erdgeist@erdgeist.org</email>
</author>
<published>2026-06-27T20:49:21Z</published>
<link rel='alternate' type='text/html' href='https://erdgeist.org/gitweb/cccms/commit/?id=1853082fcd8c067390c246f9daa01a9b47387497'/>
<id>urn:sha1:1853082fcd8c067390c246f9daa01a9b47387497</id>
<content type='text'>
/rss/updates without format suffix returns HTTP 406 when the client
does not send an appropriate Accept header. The self link in the Atom
feed was pointing to the format-less URL, causing feed readers that
follow the self link to hit the 406. Fixed to /rss/updates.xml.
</content>
</entry>
<entry>
<title>Stop forcing escaped HTML into the database just because XML Builder was used wrong</title>
<updated>2026-06-27T18:29:25Z</updated>
<author>
<name>erdgeist</name>
<email>erdgeist@erdgeist.org</email>
</author>
<published>2026-06-27T18:29:25Z</published>
<link rel='alternate' type='text/html' href='https://erdgeist.org/gitweb/cccms/commit/?id=e86897c7c3ce7dea169be7f2c027aae3a7a4edab'/>
<id>urn:sha1:e86897c7c3ce7dea169be7f2c027aae3a7a4edab</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Big overhaul patch and style changes</title>
<updated>2025-01-28T21:47:15Z</updated>
<author>
<name>Charlie Root</name>
<email>root@web.ccc.local</email>
</author>
<published>2025-01-28T21:47:15Z</published>
<link rel='alternate' type='text/html' href='https://erdgeist.org/gitweb/cccms/commit/?id=c4296b59a7f9d667d295f9c37b71f7849b818fb3'/>
<id>urn:sha1:c4296b59a7f9d667d295f9c37b71f7849b818fb3</id>
<content type='text'>
</content>
</entry>
<entry>
<title>hmm this should've been there all along.</title>
<updated>2010-01-31T19:07:36Z</updated>
<author>
<name>hukl</name>
<email>contact@smyck.org</email>
</author>
<published>2010-01-31T19:07:36Z</published>
<link rel='alternate' type='text/html' href='https://erdgeist.org/gitweb/cccms/commit/?id=68d77e6afef4cbadb798229ecbb7e7392dcf44e4'/>
<id>urn:sha1:68d77e6afef4cbadb798229ecbb7e7392dcf44e4</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Resolved issue of changing rss feed ids when changing the slugs of nodes</title>
<updated>2009-11-14T12:51:27Z</updated>
<author>
<name>hukl</name>
<email>contact@smyck.org</email>
</author>
<published>2009-11-14T12:51:27Z</published>
<link rel='alternate' type='text/html' href='https://erdgeist.org/gitweb/cccms/commit/?id=713f8f76e2ae1635bb938de6d8c74587d842790f'/>
<id>urn:sha1:713f8f76e2ae1635bb938de6d8c74587d842790f</id>
<content type='text'>
Closes #35</content>
</entry>
<entry>
<title>id must be an url of course</title>
<updated>2009-11-08T18:02:21Z</updated>
<author>
<name>hukl</name>
<email>contact@smyck.org</email>
</author>
<published>2009-11-08T18:02:21Z</published>
<link rel='alternate' type='text/html' href='https://erdgeist.org/gitweb/cccms/commit/?id=6c2db7cc95abacb6a5a766521863f1b1f6b70440'/>
<id>urn:sha1:6c2db7cc95abacb6a5a766521863f1b1f6b70440</id>
<content type='text'>
</content>
</entry>
<entry>
<title>changes for atom feed - hope that helps</title>
<updated>2009-11-08T17:58:56Z</updated>
<author>
<name>hukl</name>
<email>contact@smyck.org</email>
</author>
<published>2009-11-08T17:58:56Z</published>
<link rel='alternate' type='text/html' href='https://erdgeist.org/gitweb/cccms/commit/?id=bc2908b802f911b44884f3de01369d298554cbb7'/>
<id>urn:sha1:bc2908b802f911b44884f3de01369d298554cbb7</id>
<content type='text'>
</content>
</entry>
<entry>
<title>now setting correct date for sorting the rss feed</title>
<updated>2009-10-31T19:56:52Z</updated>
<author>
<name>hukl</name>
<email>contact@smyck.org</email>
</author>
<published>2009-10-31T19:56:52Z</published>
<link rel='alternate' type='text/html' href='https://erdgeist.org/gitweb/cccms/commit/?id=ecc142976bd355573b7641e58e761747b177af19'/>
<id>urn:sha1:ecc142976bd355573b7641e58e761747b177af19</id>
<content type='text'>
</content>
</entry>
<entry>
<title>fixed problem for failing rss feed</title>
<updated>2009-10-31T19:51:28Z</updated>
<author>
<name>hukl</name>
<email>contact@smyck.org</email>
</author>
<published>2009-10-31T19:51:28Z</published>
<link rel='alternate' type='text/html' href='https://erdgeist.org/gitweb/cccms/commit/?id=1d38a9282fd541fa6c8c2983e11b5655cab3e788'/>
<id>urn:sha1:1d38a9282fd541fa6c8c2983e11b5655cab3e788</id>
<content type='text'>
</content>
</entry>
</feed>
