Sort tags on the tags page

This commit is contained in:
Alex Ling
2021-01-05 07:34:31 +00:00
parent c5c73ddff3
commit dcdcf29114
2 changed files with 11 additions and 7 deletions

View File

@@ -138,12 +138,16 @@ struct MainRouter
end
get "/tags" do |env|
tags = Storage.default.list_tags
encoded_tags = tags.map do |t|
URI.encode_www_form t, space_to_plus: false
tags = Storage.default.list_tags.map do |tag|
{
tag: tag,
encoded_tag: URI.encode_www_form(tag, space_to_plus: false),
count: Storage.default.get_tag_titles(tag).size,
}
end
counts = tags.map do |t|
Storage.default.get_tag_titles(t).size
# Sort by :count reversly, and then sort by :tag
tags.sort! do |a, b|
(b[:count] <=> a[:count]).or(a[:tag] <=> b[:tag])
end
layout "tags"