From 6893270420c13cf1a0af158cf3d4cc71cd7e2005 Mon Sep 17 00:00:00 2001 From: erdgeist Date: Wed, 22 Jul 2026 14:38:46 +0200 Subject: Retire nodes#recent, superseded by the action log --- app/controllers/nodes_controller.rb | 4 ---- app/models/node.rb | 7 ------- app/views/nodes/_recent_change_item.html.erb | 9 --------- app/views/nodes/recent.html.erb | 7 ------- config/routes.rb | 1 - test/controllers/nodes_controller_test.rb | 6 ------ test/models/node_test.rb | 24 ------------------------ 7 files changed, 58 deletions(-) delete mode 100644 app/views/nodes/_recent_change_item.html.erb delete mode 100644 app/views/nodes/recent.html.erb diff --git a/app/controllers/nodes_controller.rb b/app/controllers/nodes_controller.rb index 6caa827..9c84420 100644 --- a/app/controllers/nodes_controller.rb +++ b/app/controllers/nodes_controller.rb @@ -223,10 +223,6 @@ class NodesController < ApplicationController @nodes = index_matching(Node.drafts_and_autosaves) end - def recent - @nodes = index_matching(Node.recently_changed) - end - def mine base = Node.joins(:pages) .where("pages.user_id = ? or pages.editor_id = ?", current_user, current_user) diff --git a/app/models/node.rb b/app/models/node.rb index 0796ea4..746b7c7 100644 --- a/app/models/node.rb +++ b/app/models/node.rb @@ -533,13 +533,6 @@ class Node < ApplicationRecord throw :abort end - def self.recently_changed - includes(:head).where( - "pages.updated_at < ? AND pages.updated_at > ? AND nodes.parent_id IS NOT NULL", - Time.now, Time.now - 14.days - ).order("pages.updated_at desc").references(:head) - end - protected def lock_for! current_user self.lock_owner = current_user diff --git a/app/views/nodes/_recent_change_item.html.erb b/app/views/nodes/_recent_change_item.html.erb deleted file mode 100644 index 754a775..0000000 --- a/app/views/nodes/_recent_change_item.html.erb +++ /dev/null @@ -1,9 +0,0 @@ -
  • -
    - <%= link_to title_for_node(node), node_path(node) %> - <%= link_to_path("#{node.unique_name} ↗", node.unique_name) %> -
    - - <%= (editor = node_head_editor(node)) ? t("last_edited_by", editor: editor) : t("last_edited") %>, <%= relative_time_phrase(node.head.updated_at) %> - -
  • diff --git a/app/views/nodes/recent.html.erb b/app/views/nodes/recent.html.erb deleted file mode 100644 index d256253..0000000 --- a/app/views/nodes/recent.html.erb +++ /dev/null @@ -1,7 +0,0 @@ -

    Recently changed

    - -<%= will_paginate @nodes %> - -<%= will_paginate @nodes %> diff --git a/config/routes.rb b/config/routes.rb index 20602f7..6223a40 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -41,7 +41,6 @@ Cccms::Application.routes.draw do get 'tags/:tags', action: :tags, as: :tags, constraints: { tags: /[^\/]+/ } get :parameterize_preview get :drafts - get :recent get :mine get :chapters get :sitemap diff --git a/test/controllers/nodes_controller_test.rb b/test/controllers/nodes_controller_test.rb index ddc4565..b8f9278 100644 --- a/test/controllers/nodes_controller_test.rb +++ b/test/controllers/nodes_controller_test.rb @@ -514,12 +514,6 @@ class NodesControllerTest < ActionController::TestCase assert_includes assigns(:nodes), chaostreff_node end - test "recent combined with a search term does not raise an ambiguous column error" do - login_as :quentin - get :recent, params: { :q => "Zombies" } - assert_response :success - end - test "drafts combined with a search term does not raise an ambiguous column error" do login_as :quentin get :drafts, params: { :q => "Zombies" } diff --git a/test/models/node_test.rb b/test/models/node_test.rb index d7e4dd0..ba38340 100644 --- a/test/models/node_test.rb +++ b/test/models/node_test.rb @@ -546,30 +546,6 @@ class NodeTest < ActiveSupport::TestCase assert result.index(mine) < result.index(someone_elses_newer) end - test "recently_changed includes a node whose head was recently published" do - node = Node.root.children.create!(:slug => "recent_changed_published") - find_or_create_draft(node, @user1) - node.autosave!({:title => "v1"}, @user1) - node.save_draft!(@user1) - node.publish_draft! - - assert_includes Node.recently_changed, node - end - - test "recently_changed excludes a node only touched by locking or unlocking after an old publish" do - node = Node.root.children.create!(:slug => "recent_changed_lock_only") - find_or_create_draft(node, @user1) - node.autosave!({:title => "v1"}, @user1) - node.save_draft!(@user1) - node.publish_draft! - node.head.update_column(:updated_at, 20.days.ago) - - node.lock_for_editing!(@user1) - node.unlock! - - assert_not_includes Node.recently_changed, node - end - test "autosave! carries over the current related assets to the newly created autosave row" do node = Node.root.children.create!(:slug => "autosave_asset_carryover_test") user = User.find_by_login("quentin") -- cgit v1.3