diff options
| author | erdgeist <erdgeist@erdgeist.org> | 2026-08-06 04:17:29 +0200 |
|---|---|---|
| committer | erdgeist <erdgeist@erdgeist.org> | 2026-08-06 04:17:29 +0200 |
| commit | cb16e35c5f9fc93a3382391de496153515cf05ca (patch) | |
| tree | 4833c790deb177d93262ee4ac3f43899a48a44ca /app/models/concerns | |
| parent | 0d91c5a4aa47fa34e0dfe6742b94aa23d59544bc (diff) | |
Preload page titles for the sitemap, and order containers before leaves
Diffstat (limited to 'app/models/concerns')
| -rw-r--r-- | app/models/concerns/nested_tree.rb | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/app/models/concerns/nested_tree.rb b/app/models/concerns/nested_tree.rb index befcdb38..87a94d23 100644 --- a/app/models/concerns/nested_tree.rb +++ b/app/models/concerns/nested_tree.rb | |||
| @@ -61,7 +61,9 @@ module NestedTree | |||
| 61 | def self_and_descendants_ordered_with_level | 61 | def self_and_descendants_ordered_with_level |
| 62 | nodes = [self] + descendants.to_a | 62 | nodes = [self] + descendants.to_a |
| 63 | children_by_parent = nodes.group_by(&:parent_id) | 63 | children_by_parent = nodes.group_by(&:parent_id) |
| 64 | children_by_parent.each_value { |list| list.sort_by!(&:id) } | 64 | children_by_parent.each_value do |list| |
| 65 | list.sort_by! { |n| [children_by_parent.key?(n.id) ? 0 : 1, n.slug.to_s] } | ||
| 66 | end | ||
| 65 | 67 | ||
| 66 | result = [] | 68 | result = [] |
| 67 | visit = ->(node, level) do | 69 | visit = ->(node, level) do |
