| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2026-07-31 | Bind aggregates over scoped tags to their subtree | erdgeist | |
| CccConventions::TAG_SCOPES maps "update" and "pressemitteilung" to /updates and "disclosure" to /disclosure. Page.aggregate applies the mapping, so an aggregate over one of those tags is bounded by its subtree regardless of what the shortcode says. Tags stay unrestricted; positions are publish-gated. Both RSS actions call Page.aggregate rather than repeating its tag join. Empty feeds no longer crash: Atom falls back to the current time for the required <updated>, and the optional dc:date is omitted. | |||
| 2026-07-09 | Fix malformed-HTML fallout across RSS, link rewriting, and flash messaging | erdgeist | |
| Editors' TinyMCE output can contain unclosed void elements like <br>, 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 <content type="xhtml"> 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. | |||
| 2026-06-27 | rss: fix self link to include .xml suffix | erdgeist | |
| /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. | |||
| 2026-06-27 | Stop forcing escaped HTML into the database just because XML Builder was used wrong | erdgeist | |
| 2025-01-28 | Big overhaul patch and style changes | Charlie Root | |
| 2010-01-31 | hmm this should've been there all along. | hukl | |
| 2009-11-14 | Resolved issue of changing rss feed ids when changing the slugs of nodes | hukl | |
| Closes #35 | |||
| 2009-11-08 | id must be an url of course | hukl | |
| 2009-11-08 | changes for atom feed - hope that helps | hukl | |
| 2009-10-31 | now setting correct date for sorting the rss feed | hukl | |
| 2009-10-31 | fixed problem for failing rss feed | hukl | |
| 2009-10-31 | temporary xml feed fix | hukl | |
| 2009-09-10 | and one more tiny modification on the atom feed | hukl | |
| 2009-09-10 | more rss feed enhancements | hukl | |
| 2009-09-10 | modifications for a valid atom feed | hukl | |
| 2009-09-10 | added public rss controller plus template to render the latest 20 updates into a neat little atom feed | hukl | |
