alchemy_cms 6.1.6 → 6.1.7
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +4 -0
- data/lib/alchemy/tasks/usage.rb +33 -0
- data/lib/alchemy/version.rb +1 -1
- data/lib/tasks/alchemy/usage.rake +40 -0
- data/package.json +1 -1
- metadata +5 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c206131e66f00492aae9a12eb8529e2eea17003d80ce3e5180d11c582ba792be
|
4
|
+
data.tar.gz: 92758271855a8dc77a9a280c19f7f68a15379642e96224508b0b47f977ebc0eb
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5276f7cd7996f2df21360bc33fe37daa1b3752d45379c784a0713f76406eea4a4de439a26468eec3f5f57462ba6af07b3fbf380021c53dc3bf29e9991bb1f531
|
7
|
+
data.tar.gz: f4c3965d47c54c7035531de68c7ae05ac69bb11cb5f402ba00b1716cb59d90cb03bbb29d22efc926b01968e71aeaaf5e802de4f444ca378baed11464f9538c42
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,9 @@
|
|
1
1
|
# Changelog
|
2
2
|
|
3
|
+
## 6.1.7 (2023-07-07)
|
4
|
+
|
5
|
+
- [6.1] Add task(s) to visualize element and page usage [#2514](https://github.com/AlchemyCMS/alchemy_cms/pull/2514) ([tvdeyen](https://github.com/tvdeyen))
|
6
|
+
|
3
7
|
## 6.1.6 (2023-06-30)
|
4
8
|
|
5
9
|
- [6.1] Allow to create element with warning in definition [#2508](https://github.com/AlchemyCMS/alchemy_cms/pull/2508) ([tvdeyen](https://github.com/tvdeyen))
|
@@ -0,0 +1,33 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Alchemy
|
4
|
+
module Tasks
|
5
|
+
module Usage
|
6
|
+
extend self
|
7
|
+
|
8
|
+
def elements_count_by_name
|
9
|
+
res = Alchemy::Element.all
|
10
|
+
.select("name, COUNT(*) AS count")
|
11
|
+
.group(:name)
|
12
|
+
.order("count DESC, name ASC")
|
13
|
+
.map { |e| {"name" => e.name, "count" => e.count} }
|
14
|
+
Alchemy::Element.definitions.reject { |definition| res.map { |e| e["name"] }.include? definition["name"] }.sort_by { |d| d["name"] }.each do |definition|
|
15
|
+
res << {"name" => definition["name"], "count" => 0}
|
16
|
+
end
|
17
|
+
res
|
18
|
+
end
|
19
|
+
|
20
|
+
def pages_count_by_type
|
21
|
+
res = Alchemy::Page.all
|
22
|
+
.select("page_layout, COUNT(*) AS count")
|
23
|
+
.group(:page_layout)
|
24
|
+
.order("count DESC, page_layout ASC")
|
25
|
+
.map { |p| {"page_layout" => p.page_layout, "count" => p.count} }
|
26
|
+
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|
|
27
|
+
res << {"page_layout" => page_layout["name"], "count" => 0}
|
28
|
+
end
|
29
|
+
res
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
data/lib/alchemy/version.rb
CHANGED
@@ -0,0 +1,40 @@
|
|
1
|
+
require "alchemy/tasks/usage"
|
2
|
+
|
3
|
+
namespace :alchemy do
|
4
|
+
desc "List Alchemy elements and pages usage"
|
5
|
+
task usage: [:page_usage, :element_usage]
|
6
|
+
|
7
|
+
desc "List Alchemy elements usage"
|
8
|
+
task page_usage: :environment do
|
9
|
+
include ActionView::Helpers::NumberHelper
|
10
|
+
puts "\n Alchemy pages usage"
|
11
|
+
results = Alchemy::Tasks::Usage.pages_count_by_type
|
12
|
+
if results.any?
|
13
|
+
puts " ----------------------"
|
14
|
+
puts "\n"
|
15
|
+
results.each do |row|
|
16
|
+
puts " #{number_with_delimiter(row["count"])} 𝗑 #{row["page_layout"]}"
|
17
|
+
end
|
18
|
+
puts "\n = #{number_with_delimiter(Alchemy::Page.count)} pages in total."
|
19
|
+
else
|
20
|
+
puts " > No pages found!"
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
desc "List Alchemy elements usage"
|
25
|
+
task element_usage: :environment do
|
26
|
+
include ActionView::Helpers::NumberHelper
|
27
|
+
puts "\n Alchemy elements usage"
|
28
|
+
results = Alchemy::Tasks::Usage.elements_count_by_name
|
29
|
+
if results.any?
|
30
|
+
puts " ----------------------"
|
31
|
+
puts "\n"
|
32
|
+
results.each do |row|
|
33
|
+
puts " #{number_with_delimiter(row["count"])} 𝗑 #{row["name"]}"
|
34
|
+
end
|
35
|
+
puts "\n = #{number_with_delimiter(Alchemy::Element.count)} elements in total."
|
36
|
+
else
|
37
|
+
puts " > No elements found!"
|
38
|
+
end
|
39
|
+
end
|
40
|
+
end
|
data/package.json
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: alchemy_cms
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 6.1.
|
4
|
+
version: 6.1.7
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Thomas von Deyen
|
@@ -13,7 +13,7 @@ authors:
|
|
13
13
|
autorequire:
|
14
14
|
bindir: bin
|
15
15
|
cert_chain: []
|
16
|
-
date: 2023-
|
16
|
+
date: 2023-07-07 00:00:00.000000000 Z
|
17
17
|
dependencies:
|
18
18
|
- !ruby/object:Gem::Dependency
|
19
19
|
name: actionmailer
|
@@ -1333,6 +1333,7 @@ files:
|
|
1333
1333
|
- lib/alchemy/shell.rb
|
1334
1334
|
- lib/alchemy/taggable.rb
|
1335
1335
|
- lib/alchemy/tasks/tidy.rb
|
1336
|
+
- lib/alchemy/tasks/usage.rb
|
1336
1337
|
- lib/alchemy/test_support.rb
|
1337
1338
|
- lib/alchemy/test_support/config_stubbing.rb
|
1338
1339
|
- lib/alchemy/test_support/essence_shared_examples.rb
|
@@ -1425,6 +1426,7 @@ files:
|
|
1425
1426
|
- lib/tasks/alchemy/thumbnails.rake
|
1426
1427
|
- lib/tasks/alchemy/tidy.rake
|
1427
1428
|
- lib/tasks/alchemy/upgrade.rake
|
1429
|
+
- lib/tasks/alchemy/usage.rake
|
1428
1430
|
- package.json
|
1429
1431
|
- package/admin.js
|
1430
1432
|
- package/src/__tests__/i18n.spec.js
|
@@ -1526,7 +1528,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
1526
1528
|
version: '0'
|
1527
1529
|
requirements:
|
1528
1530
|
- ImageMagick (libmagick), v6.6 or greater.
|
1529
|
-
rubygems_version: 3.4.
|
1531
|
+
rubygems_version: 3.4.15
|
1530
1532
|
signing_key:
|
1531
1533
|
specification_version: 4
|
1532
1534
|
summary: A powerful, userfriendly and flexible CMS for Rails
|