Sha256: f6332ac2c06ca12e1377369f37a8ff4685c048ff9c03ded57d85ef7c4d1d34ae
Contents?: true
Size: 1.13 KB
Versions: 55
Compression:
Stored size: 1.13 KB
Contents
# frozen_string_literal: true module Alchemy module Tasks module Usage extend self def elements_count_by_name res = Alchemy::Element.all .select("name, COUNT(*) AS count") .group(:name) .order("count DESC, name ASC") .map { |e| {"name" => e.name, "count" => e.count} } Alchemy::Element.definitions.reject { |definition| res.map { |e| e["name"] }.include? definition["name"] }.sort_by { |d| d["name"] }.each do |definition| res << {"name" => definition["name"], "count" => 0} end res end def pages_count_by_type res = Alchemy::Page.all .select("page_layout, COUNT(*) AS count") .group(:page_layout) .order("count DESC, page_layout ASC") .map { |p| {"page_layout" => p.page_layout, "count" => p.count} } Alchemy::PageLayout.all.reject { |page_layout| res.map { |p| p["page_layout"] }.include? page_layout["name"] }.sort_by { |d| d["name"] }.each do |page_layout| res << {"page_layout" => page_layout["name"], "count" => 0} end res end end end end
Version data entries
55 entries across 55 versions & 1 rubygems