diff options
| author | erdgeist <erdgeist@erdgeist.org> | 2026-06-27 22:52:50 +0200 |
|---|---|---|
| committer | erdgeist <erdgeist@erdgeist.org> | 2026-06-27 22:52:50 +0200 |
| commit | 9a19a0494ef51cdac9a78e24d517ca48ba44c453 (patch) | |
| tree | 8eaae12d8047a40e29d3ea7ff3116b5c869e04bd /app/controllers/admin_controller.rb | |
| parent | 85a01e35274b8d4d4165a7b26bd7986e211246bb (diff) | |
| parent | 1853082fcd8c067390c246f9daa01a9b47387497 (diff) | |
Migration from Rails 2.3.5 to Rails 8.1 successful.
Merging dev branch.
Diffstat (limited to 'app/controllers/admin_controller.rb')
| -rw-r--r-- | app/controllers/admin_controller.rb | 48 |
1 files changed, 31 insertions, 17 deletions
diff --git a/app/controllers/admin_controller.rb b/app/controllers/admin_controller.rb index 1d1a1ca..9e8564e 100644 --- a/app/controllers/admin_controller.rb +++ b/app/controllers/admin_controller.rb | |||
| @@ -2,31 +2,46 @@ class AdminController < ApplicationController | |||
| 2 | 2 | ||
| 3 | # Private | 3 | # Private |
| 4 | 4 | ||
| 5 | before_filter :login_required | 5 | before_action :login_required |
| 6 | 6 | ||
| 7 | def index | 7 | def index |
| 8 | @drafts = Node.all( | 8 | @drafts = Node.where("draft_id IS NOT NULL") |
| 9 | :limit => 20, | 9 | .limit(50).order("updated_at desc") |
| 10 | :order => "updated_at desc", | 10 | |
| 11 | :conditions => ["draft_id IS NOT NULL"] | 11 | @drafts_count = Node.where("draft_id IS NOT NULL").count |
| 12 | ) | 12 | |
| 13 | @recent_changes = Node.all( | 13 | @recent_changes = Node.where( |
| 14 | :limit => 20, | 14 | "updated_at < ? AND updated_at > ? AND parent_id IS NOT NULL", |
| 15 | :order => "updated_at desc", | 15 | Time.now, Time.now - 14.days |
| 16 | :conditions => [ | 16 | ).limit(50).order("updated_at desc") |
| 17 | "updated_at < ? AND updated_at > ? AND parent_id IS NOT NULL", Time.now, Time.now-14.days | 17 | |
| 18 | ] | 18 | all_nodes = Node.root.self_and_descendants |
| 19 | ) | 19 | @sitemap_depth = {} |
| 20 | Node.each_with_level(all_nodes) do |node, level| | ||
| 21 | @sitemap_depth[node.id] = level | ||
| 22 | end | ||
| 23 | @sitemap = all_nodes.to_a.sort! { |node1,node2| node1.lft <=> node2.lft }.delete_if { |node| node.update? } | ||
| 24 | |||
| 25 | @mypages = Page.where("user_id = ? or editor_id = ?", @current_user, @current_user) | ||
| 26 | |||
| 27 | @mynodes = Node.joins(:pages) | ||
| 28 | .where("pages.user_id = ? or pages.editor_id = ?", @current_user, @current_user) | ||
| 29 | .order("updated_at desc") | ||
| 30 | .uniq.first(50) | ||
| 20 | end | 31 | end |
| 21 | 32 | ||
| 22 | def search | 33 | def search |
| 23 | @results = Node.search params[:search_term] | 34 | @results = Node.search params[:search_term], :per_page => 1000 |
| 24 | 35 | ||
| 25 | respond_to do |format| | 36 | respond_to do |format| |
| 26 | format.html | 37 | format.html do |
| 38 | render :template => 'admin/search_results.html' | ||
| 39 | end | ||
| 27 | format.js do | 40 | format.js do |
| 28 | render( :json => @results.map do |node| | 41 | render( :json => @results.map do |node| |
| 29 | {:id => node.id, :title => node.title, :edit_path => node_path(node)} | 42 | if node |
| 43 | {:id => node.id, :title => node.title, :edit_path => node_path(node)} | ||
| 44 | end | ||
| 30 | end | 45 | end |
| 31 | ) | 46 | ) |
| 32 | 47 | ||
| @@ -46,7 +61,6 @@ class AdminController < ApplicationController | |||
| 46 | render :partial => 'admin/menu_search_results' | 61 | render :partial => 'admin/menu_search_results' |
| 47 | end | 62 | end |
| 48 | 63 | ||
| 49 | |||
| 50 | format.js do | 64 | format.js do |
| 51 | render( :json => @results.map do |node| | 65 | render( :json => @results.map do |node| |
| 52 | {:node_id => node.id, :title => node.title, :unique_name => node.unique_name} | 66 | {:node_id => node.id, :title => node.title, :unique_name => node.unique_name} |
