| Age | Commit message (Expand) | Author |
| 76 min. | Add migraton for bcrypt password digest on user modelerdgeist-modernize-auth | erdgeist |
| 77 min. | Add a script to backfill action log from existing records | erdgeist |
| 4 hours | Implement transparent password hash migration | erdgeist |
| 5 hours | Add some more tests for the login basics while refactoring | erdgeist |
| 5 hours | Use SecureRandom instead of the hand rolled implementation | erdgeist |
| 7 hours | Construct DOM elements using escaping helpers to prevent XSS | erdgeist |
| 7 hours | Move rrule builder to a partial and share between events#new and events#edit | erdgeist |
| 7 hours | Aggregate selected weeks in a more human friendly form | erdgeist |
| 7 hours | managed RRULE constructs now include week selection | erdgeist |
| 9 hours | Split current_unique_name in a setter and an accessor | erdgeist |
| 10 hours | nodes#show's revisions subsection renamed to history | erdgeist |
| 10 hours | Condense the action log into a scannable table | erdgeist |
| 18 hours | Don't reference your own user as 'du' in action log. It breaks grammar. | erdgeist |
| 20 hours | Add a reader for the action log at admin/log | erdgeist |
| 21 hours | Record the full lifecycle contract in NodeAction entries | erdgeist |
| 22 hours | Provide parent_unique_name in nodes#new if parent is already pre-set | erdgeist |
| 22 hours | Remove some remnants of legacy admin wizard interface | erdgeist |
| 43 hours | Add NodeAction: an append-only log of who did what to a node | erdgeist |
| 47 hours | Make the recent-changes page match the widget it links from | erdgeist |
| 47 hours | Remove dead admin/_recent_changes partial | erdgeist |
| 2 days | Add scaffolding for a proper tech documentation from everything I could remember | erdgeist |
| 2 days | Supply related-asset URLs/name and public inline-image CSS | erdgeist |
| 2 days | Add inline image insertion for page bodies, plus a headline-conflict badge | erdgeist |
| 2 days | Extend static-asset cache-busting to the public layout | erdgeist |
| 2 days | Crop headline images to aspect ratio instead of distorting them | erdgeist |
| 2 days | Add a :large FileAttachment style for full-width inline body images | erdgeist |
| 2 days | Retire wipe_draft! and find_or_create_draft from production code | erdgeist |
| 3 days | Add chapter images: thumbnail on the list, headline image on the detail page | erdgeist |
| 3 days | Add a toggleable live preview panel to both editors | erdgeist |
| 3 days | Make revisions locale aware | erdgeist |
| 3 days | Add tooltips to all navbar items | erdgeist |
| 3 days | Make tags a pill list on nodes#show | erdgeist |
| 3 days | Store return_to before resetting session in loging. Fixes returning to an admin page before logging in | erdgeist |
| 3 days | Re-add language selector, but fix the mis-nomer for english pages | erdgeist |
| 3 days | Merge branch 'erdgeist-revive-events' | erdgeist |
| 3 days | Remove orphaned language selector for admin views | erdgeist |
| 3 days | Add cache-buster using mtime of css and js files outside the asset pipeline | erdgeist |
| 3 days | Remove redundant default translation from the translations subsection | erdgeist |
| 3 days | Fix: p elements can't contain buttons. Convert it to a div | erdgeist |
| 3 days | Make revision diffs locale-aware, defaulting to whichever locale changed | erdgeist |
| 3 days | clone_attributes_from: update translations in place, not delete+recreate | erdgeist |
| 3 days | Fix autosave bug: sync tinymce's state back to textarea before serializing | erdgeist |
| 3 days | Fix shared preview redirecting to admin for an ordinary new draft | erdgeist |
| 3 days | Wire real autosave into translation editing | erdgeist |
| 3 days | Add per-node translation management: list, edit, destroy, compare | erdgeist |
| 3 days | wipe_draft!: add a grace period to the lock-with-no-draft branch | erdgeist |
| 3 days | nodes#show: show each revision's editor, not its byline author | erdgeist |
| 3 days | Set config.i18n.available_locales explicitly | erdgeist |
| 3 days | Carry over other-locale translations when creating an autosave | erdgeist |
| 4 days | Asset picker: attach/detach/reorder UI, read-only view, autosave fix | erdgeist |