summaryrefslogtreecommitdiff
path: root/app/models
AgeCommit message (Collapse)Author
2026-06-26Stage 5 fixes: RouteWithParams removal, Globalize fallbacks, search stub, to_s(:db) → to_fs(:db), LockedByAnotherUser autoload, test environment configerdgeist
- Remove safe_path helper and content_path shim from link_helper.rb - Update all safe_path call sites in views to use named route helpers directly - Fix Globalize fallbacks via config.i18n.fallbacks in application.rb, remove i18n initializer - Stub Node.search returning none (search disabled pending PostgreSQL upgrade) - Replace to_s(:db) with to_fs(:db) in node.rb, nodes_helper.rb, link_helper.rb, admin view - Move LockedByAnotherUser to app/models/locked_by_another_user.rb for Zeitwerk autoloading - Fix config/environments/test.rb: config.assets removed, cache_classes → enable_reloading, test_order removed, minitest pinned to ~> 5.25 - Fix config/environments/development.rb: cache_classes → enable_reloading - Park search vector migration in doc/ pending PostgreSQL and plpgsql availability
2026-06-26Stage 5: Rails 6.1 → 7.2 on Ruby 3.2.11erdgeist
- Bump Rails to 7.2.3, Ruby to 3.2.11 (new gemset rails7-upgrade) - pg pinned to 1.4.6 (bridge: Ruby 3.2 compatible, PostgreSQL 9.6 tolerant) - acts-as-taggable-on → 12.x (Rails 7.2 + Ruby 3.2 support) - awesome_nested_set → 3.7.0 (Rails 7.2 support, avoids 3.9.0 lft/rgt bug) - globalize → 7.0 (Rails 7.x required) - libxml-ruby → 5.x (Ruby 3.2 required) - unicorn → 6.x; fix unicorn.rb: RAILS_ROOT→Rails.root, RAILS_ENV→ENV, File.exists?→File.exist? - Add puma for development server - Remove dead initializers: assets.rb, ruby2.rb, backtrace_silencers.rb, new_rails_defaults.rb - Fix File.exists? → File.exist? in page.rb and authors_importer.rb - Add routing_filter_rails71_patch.rb (restores params[:locale] on Rails 7.1+)
2026-06-26Stage 4: Rails 5.2 -> 6.1 on Ruby 2.7.2erdgeist
- routing-filter 0.6.3 -> 0.7.0 (Rails 6.1 compatibility) - RSS named routes rss_xml/rss_rdf added - RouteWithParams workarounds: will_paginate_patch, content_path shim, safe_path helper - Paperclip removed, replaced with FileAttachment concern (preserves URL scheme) - Assets resource moved to /admin/assets (Sprockets middleware conflict) - ApplicationRecord base class added, all models migrated - Strong parameters added to Assets, Occurrences, Events, MenuItems controllers - update_attributes -> update throughout - render :nothing -> head :ok/:not_found throughout - language_selector rewritten (removes :overwrite_params) - Environment files updated for Rails 6.1 (eager_load, public_file_server, ActionMailer) - Arel::Visitors::DepthFirst and Integer/Float duration patches removed from test_helper - AssetsController tests added (10 tests covering upload, variants, destroy, auth) - ImageMagick geometry: 460x250! for headline crop (not # which is invalid in IM6) 129 runs, 311 assertions, 5 failures (all pre-existing), 0 errors
2026-06-25Rails 5.2 application fixeserdgeist
- Rename before_filter → before_action across all controllers - Fix string conditions in validators to lambda syntax (node.rb) - Fix publish_draft!: move staged slug/parent logic outside draft guard, use move_to_child_of for parent changes, add nil guard for no-op calls - Fix update_unique_names_of_children: use parent_id traversal instead of lft/rgt descendants (awesome_nested_set 3.x lft/rgt update bug) - Fix unique_path to return Array instead of String - Fix Occurrence.delete_all syntax for Rails 5 - Fix Page.find_with_outdated_translations: use includes instead of all - Fix outdated_translations?: use find instead of splat array
2026-06-25Rails 4.2 model and controller fixeserdgeist
- Wrap all scopes in lambdas (required in Rails 4) - Move scopes after associations in page.rb (evaluated at load time in Rails 4) - Convert association :order options to lambda syntax - Remove attr_accessible from page.rb and user.rb - Add Strong Parameters: user_params in UsersController, node_params/page_params in NodesController - Fix clone_attributes_from: exclude id/page_id/timestamps when cloning translations - Fix redirect_to :back → request.referer fallback in nodes_controller - Fix node_path/publish and unlock actions: pass @node argument
2026-06-24Fix tagged content aggregator, assets path, and add regression testserdgeist
- Replace tagged_with calls in Page.aggregate, TagsController, RssController with direct SQL joins (acts-as-taggable-on 3.5 broken on Rails 3.2) - Fix Paperclip :path/:url to use plain :id format matching existing uploads - Add proper regression tests for aggregator, tags, and rss controllers - Fix assert_select assertions to target div.body div.article_partial
2026-06-24Stage 1 complete: Rails 2.3.5 to Rails 3.2.22.5 upgradeerdgeist
- Converted plugins to gems (Gemfile) - Updated config structure (application.rb, boot.rb, environment.rb) - Converted routes to Rails 3 DSL - Converted named_scope to scope throughout models - Converted find(:all, :conditions) to where() chains - Fixed has_many :order to use ordering scope - Updated session store and secret token configuration - Fixed exception_notification middleware configuration - Patched Ruby 2.4 / Rails 3.2 incompatibilities: - Integer/Float duration arithmetic (ActiveSupport) - Arel visit_Integer for PostgreSQL adapter - create_database String/Integer coercion - ActionController consider_all_requests_local - Migrated taggings schema for acts-as-taggable-on - Replaced dynamic_form gem with custom form_error_messages helper - Fixed Rails 3 block helper syntax (form_for, form_tag, fields_for) - Fixed admin layout yield - Updated test suite for Rails 3 APIs
2026-06-23Update deployed state to what's currently runningerdgeist
2025-01-28Big overhaul patch and style changesCharlie Root
2012-02-18Bugfix: Finally after all those years, asset urls are not rewritten anymore with a locale prefix! Hoorray!hukl
2011-02-10added body to the index and removed spaceshukl
2010-03-03do not rewrite paths for assetshukl
2010-01-14Updated globalize2 to latest version. Modified existing code accoringlyhukl
2009-12-01refactored the Page.aggregate to instanciate a lot less AR objects. Its actually instanciating only the ones being displayed. Still over 150 but still a ↵hukl
massive improvement compared to over 1500 before.
2009-11-17don't set the published_at upon creation of the first draft but rather on publishhukl
2009-11-15removed date and author from the standard template and introduced a dedicated update template which will get auto assigned if a node is created under ↵hukl
updates/<year>/<slug> Added tests and convenient method
2009-11-14Resolved issue of changing rss feed ids when changing the slugs of nodeshukl
Closes #35
2009-11-11implemented that pages now have an author and an editorhukl
2009-11-03default now 25hukl
2009-11-03Prevent regular users from promoting themselves to adminshukl
2009-11-02make sure user and published_at stay the samehukl
2009-10-27fix for emtpy assets arrayhukl
2009-10-20allow to overwrite the original user in edit viewhukl
2009-10-19changes for giving root a titlehukl
2009-10-17added some more validations to ensure data integrity and applied necessary changes on testshukl
2009-10-17added slug validation exception for Node.roothukl
2009-10-07implemented complete restful user management interface including functional tests. this enables basic user operation. note that only admins are allowed to ↵hukl
create, edit, destroy other users
2009-09-17switched tagging plugin again for postgresql compatibility hukl
2009-09-13added :dependent => :destroy to asset model so related assets get deleted as the asset they're referencing is deleted.hukl
Closes #25
2009-09-12changed the ui click flow a bithukl
2009-09-12Moved galery template and changed width of headline image thumbnail presethukl
2009-09-11enhanced LockedByAnotherUser exception which now includes a message showing the last modified time.hukl
Closes #13
2009-09-10show the next event if none are found for the next 14 days. Closes #19hukl
2009-09-10refactored the create method to actually produce meaningful error messages when something goes wrong. added tests for corner caseshukl
2009-09-09added editing of slugs and moving of nodes. to edit a slug or move a node you edit that node, make your changes and save. the slug and parent node changes ↵hukl
get staged and are applied once that revision is published
2009-09-09fixed yet another bug when editing slugs or moving nodeshukl
2009-09-09uhm yeah - well it was finally time to validate the uniqueness of slugs scoped to the parent_id. Who though it wasn't there already?hukl
2009-09-07fixed a bug in update_unique_namehukl
2009-09-07enabling featured articleshukl
2009-09-05prepend public_link with slashhukl
2009-09-04moved the image sorting into the model and wrapped it into a transactionhukl
2009-09-03more graceful handling of locked pages exceptions.hukl
2009-09-01added default scope for related assetshukl
2009-09-01cloning a page clones the asset references as wellhukl
2009-09-01added expirimental routing for image galerieshukl
added plain image gallery template refinements
2009-09-01added related_assets to pageshukl
2009-08-31added cropped headline thumbnailhukl
2009-08-16migration to add missing columns and indexes for acts_as_taggable_redux as well as other related modificationshukl
2009-08-15changed the implementation of Page.aggregate once more. Now faster, better shorter with acts_as_taggable_reduxhukl
2009-08-15added pagination for aggregators. costed me the whole day. crappy plugins ARGH! More work to do!hukl