summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorerdgeist <erdgeist@erdgeist.org>2026-07-22 14:38:46 +0200
committererdgeist <erdgeist@erdgeist.org>2026-07-22 14:38:46 +0200
commit6893270420c13cf1a0af158cf3d4cc71cd7e2005 (patch)
tree74f4eb03ffa6d12c09ce22b468a4aafa7c10bc61
parent2366af57461cd7e76028960a444672a3ce0c3634 (diff)
Retire nodes#recent, superseded by the action log
-rw-r--r--app/controllers/nodes_controller.rb4
-rw-r--r--app/models/node.rb7
-rw-r--r--app/views/nodes/_recent_change_item.html.erb9
-rw-r--r--app/views/nodes/recent.html.erb7
-rw-r--r--config/routes.rb1
-rw-r--r--test/controllers/nodes_controller_test.rb6
-rw-r--r--test/models/node_test.rb24
7 files changed, 0 insertions, 58 deletions
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
223 @nodes = index_matching(Node.drafts_and_autosaves) 223 @nodes = index_matching(Node.drafts_and_autosaves)
224 end 224 end
225 225
226 def recent
227 @nodes = index_matching(Node.recently_changed)
228 end
229
230 def mine 226 def mine
231 base = Node.joins(:pages) 227 base = Node.joins(:pages)
232 .where("pages.user_id = ? or pages.editor_id = ?", current_user, current_user) 228 .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
533 throw :abort 533 throw :abort
534 end 534 end
535 535
536 def self.recently_changed
537 includes(:head).where(
538 "pages.updated_at < ? AND pages.updated_at > ? AND nodes.parent_id IS NOT NULL",
539 Time.now, Time.now - 14.days
540 ).order("pages.updated_at desc").references(:head)
541 end
542
543 protected 536 protected
544 def lock_for! current_user 537 def lock_for! current_user
545 self.lock_owner = current_user 538 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 @@
1<li>
2 <div>
3 <%= link_to title_for_node(node), node_path(node) %>
4 <span class="field_hint"><%= link_to_path("#{node.unique_name} ↗", node.unique_name) %></span>
5 </div>
6 <span class="dashboard_widget_meta">
7 <%= (editor = node_head_editor(node)) ? t("last_edited_by", editor: editor) : t("last_edited") %>, <%= relative_time_phrase(node.head.updated_at) %>
8 </span>
9</li>
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 @@
1<h1>Recently changed</h1>
2
3<%= will_paginate @nodes %>
4<ul id="recent_changes_full_list">
5 <%= render partial: "nodes/recent_change_item", collection: @nodes, as: :node %>
6</ul>
7<%= 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
41 get 'tags/:tags', action: :tags, as: :tags, constraints: { tags: /[^\/]+/ } 41 get 'tags/:tags', action: :tags, as: :tags, constraints: { tags: /[^\/]+/ }
42 get :parameterize_preview 42 get :parameterize_preview
43 get :drafts 43 get :drafts
44 get :recent
45 get :mine 44 get :mine
46 get :chapters 45 get :chapters
47 get :sitemap 46 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
514 assert_includes assigns(:nodes), chaostreff_node 514 assert_includes assigns(:nodes), chaostreff_node
515 end 515 end
516 516
517 test "recent combined with a search term does not raise an ambiguous column error" do
518 login_as :quentin
519 get :recent, params: { :q => "Zombies" }
520 assert_response :success
521 end
522
523 test "drafts combined with a search term does not raise an ambiguous column error" do 517 test "drafts combined with a search term does not raise an ambiguous column error" do
524 login_as :quentin 518 login_as :quentin
525 get :drafts, params: { :q => "Zombies" } 519 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
546 assert result.index(mine) < result.index(someone_elses_newer) 546 assert result.index(mine) < result.index(someone_elses_newer)
547 end 547 end
548 548
549 test "recently_changed includes a node whose head was recently published" do
550 node = Node.root.children.create!(:slug => "recent_changed_published")
551 find_or_create_draft(node, @user1)
552 node.autosave!({:title => "v1"}, @user1)
553 node.save_draft!(@user1)
554 node.publish_draft!
555
556 assert_includes Node.recently_changed, node
557 end
558
559 test "recently_changed excludes a node only touched by locking or unlocking after an old publish" do
560 node = Node.root.children.create!(:slug => "recent_changed_lock_only")
561 find_or_create_draft(node, @user1)
562 node.autosave!({:title => "v1"}, @user1)
563 node.save_draft!(@user1)
564 node.publish_draft!
565 node.head.update_column(:updated_at, 20.days.ago)
566
567 node.lock_for_editing!(@user1)
568 node.unlock!
569
570 assert_not_includes Node.recently_changed, node
571 end
572
573 test "autosave! carries over the current related assets to the newly created autosave row" do 549 test "autosave! carries over the current related assets to the newly created autosave row" do
574 node = Node.root.children.create!(:slug => "autosave_asset_carryover_test") 550 node = Node.root.children.create!(:slug => "autosave_asset_carryover_test")
575 user = User.find_by_login("quentin") 551 user = User.find_by_login("quentin")