decidim-cleaner 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/LICENSE-AGPLv3.txt +661 -0
- data/README.md +59 -0
- data/Rakefile +40 -0
- data/app/commands/decidim/cleaner/admin/update_organization_cleaner.rb +56 -0
- data/app/controllers/decidim/cleaner/admin/application_controller.rb +26 -0
- data/app/controllers/decidim/cleaner/admin/organization_cleaner_controller.rb +36 -0
- data/app/controllers/decidim/cleaner/application_controller.rb +13 -0
- data/app/forms/decidim/cleaner/admin/organization_cleaner_form.rb +21 -0
- data/app/helpers/decidim/cleaner/application_helper.rb +10 -0
- data/app/jobs/decidim/cleaner/clean_admin_logs_job.rb +17 -0
- data/app/jobs/decidim/cleaner/clean_inactive_users_job.rb +38 -0
- data/app/mailers/decidim/cleaner/inactive_users_mailer.rb +33 -0
- data/app/models/decidim/cleaner/application_record.rb +10 -0
- data/app/packs/entrypoints/decidim_cleaner.js +2 -0
- data/app/packs/images/decidim/cleaner/icon.svg +1 -0
- data/app/packs/stylesheets/decidim/cleaner/cleaner.scss +1 -0
- data/app/permissions/decidim/cleaner/admin/permissions.rb +23 -0
- data/app/views/decidim/cleaner/admin/organization_cleaner/_form.html.erb +39 -0
- data/app/views/decidim/cleaner/admin/organization_cleaner/edit.html.erb +6 -0
- data/app/views/decidim/cleaner/inactive_users_mailer/warning_deletion.html.erb +7 -0
- data/app/views/decidim/cleaner/inactive_users_mailer/warning_inactive.html.erb +7 -0
- data/config/assets.rb +9 -0
- data/config/i18n-tasks.yml +10 -0
- data/config/locales/en.yml +38 -0
- data/config/locales/fr.yml +38 -0
- data/config/routes.rb +9 -0
- data/db/migrate/20230106105014_add_delete_admin_logs_to_organization.rb +8 -0
- data/db/migrate/20230110150032_add_delete_inactive_users_to_organization.rb +9 -0
- data/lib/decidim/cleaner/admin.rb +10 -0
- data/lib/decidim/cleaner/admin_engine.rb +28 -0
- data/lib/decidim/cleaner/component.rb +40 -0
- data/lib/decidim/cleaner/engine.rb +17 -0
- data/lib/decidim/cleaner/test/factories.rb +11 -0
- data/lib/decidim/cleaner/version.rb +14 -0
- data/lib/decidim/cleaner.rb +12 -0
- data/lib/tasks/decidim_cleaner_tasks.rake +13 -0
- metadata +98 -0
@@ -0,0 +1,40 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "decidim/components/namer"
|
4
|
+
|
5
|
+
Decidim.register_component(:cleaner) do |component|
|
6
|
+
component.engine = Decidim::Cleaner::Engine
|
7
|
+
component.admin_engine = Decidim::Cleaner::AdminEngine
|
8
|
+
component.icon = "decidim/cleaner/icon.svg"
|
9
|
+
|
10
|
+
# component.on(:before_destroy) do |instance|
|
11
|
+
# # Code executed before removing the component
|
12
|
+
# end
|
13
|
+
|
14
|
+
# These actions permissions can be configured in the admin panel
|
15
|
+
# component.actions = %w()
|
16
|
+
|
17
|
+
# component.settings(:global) do |settings|
|
18
|
+
# # Add your global settings
|
19
|
+
# # Available types: :integer, :boolean
|
20
|
+
# # settings.attribute :vote_limit, type: :integer, default: 0
|
21
|
+
# end
|
22
|
+
|
23
|
+
# component.settings(:step) do |settings|
|
24
|
+
# # Add your settings per step
|
25
|
+
# end
|
26
|
+
|
27
|
+
# component.register_resource(:some_resource) do |resource|
|
28
|
+
# # Register a optional resource that can be references from other resources.
|
29
|
+
# resource.model_class_name = "Decidim::Cleaner::SomeResource"
|
30
|
+
# resource.template = "decidim/cleaner/some_resources/linked_some_resources"
|
31
|
+
# end
|
32
|
+
|
33
|
+
# component.register_stat :some_stat do |context, start_at, end_at|
|
34
|
+
# # Register some stat number to the application
|
35
|
+
# end
|
36
|
+
|
37
|
+
# component.seeds do |participatory_space|
|
38
|
+
# # Add some seeds for this component
|
39
|
+
# end
|
40
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "rails"
|
4
|
+
require "decidim/core"
|
5
|
+
|
6
|
+
module Decidim
|
7
|
+
module Cleaner
|
8
|
+
# This is the engine that runs on the public interface of cleaner.
|
9
|
+
class Engine < ::Rails::Engine
|
10
|
+
isolate_namespace Decidim::Cleaner
|
11
|
+
|
12
|
+
initializer "Cleaner.webpacker.assets_path" do
|
13
|
+
Decidim.register_assets_path File.expand_path("app/packs", root)
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,11 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "decidim/core/test/factories"
|
4
|
+
|
5
|
+
FactoryBot.define do
|
6
|
+
factory :cleaner_component, parent: :component do
|
7
|
+
name { Decidim::Components::Namer.new(participatory_space.organization.available_locales, :cleaner).i18n_name }
|
8
|
+
manifest_name { :cleaner }
|
9
|
+
participatory_space { create(:participatory_process, :with_steps) }
|
10
|
+
end
|
11
|
+
end
|
@@ -0,0 +1,12 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "decidim/cleaner/admin"
|
4
|
+
require "decidim/cleaner/engine"
|
5
|
+
require "decidim/cleaner/admin_engine"
|
6
|
+
require "decidim/cleaner/component"
|
7
|
+
|
8
|
+
module Decidim
|
9
|
+
# This namespace holds the logic of the `Cleaner` module.
|
10
|
+
module Cleaner
|
11
|
+
end
|
12
|
+
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
namespace :decidim_cleaner do
|
4
|
+
desc "Warns and deletes inactive users"
|
5
|
+
task clean_inactive_users: :environment do
|
6
|
+
Decidim::Cleaner::CleanInactiveUsersJob.perform_now
|
7
|
+
end
|
8
|
+
|
9
|
+
desc "Deletes old admin logs"
|
10
|
+
task clean_admin_logs: :environment do
|
11
|
+
Decidim::Cleaner::CleanAdminLogsJob.perform_now
|
12
|
+
end
|
13
|
+
end
|
metadata
ADDED
@@ -0,0 +1,98 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: decidim-cleaner
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.1
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Quentinchampenois
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2023-02-13 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: decidim-core
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '0.26'
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - "~>"
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '0.26'
|
27
|
+
description: Clean outdated data in Decidim's database.
|
28
|
+
email:
|
29
|
+
- 26109239+Quentinchampenois@users.noreply.github.com
|
30
|
+
executables: []
|
31
|
+
extensions: []
|
32
|
+
extra_rdoc_files: []
|
33
|
+
files:
|
34
|
+
- LICENSE-AGPLv3.txt
|
35
|
+
- README.md
|
36
|
+
- Rakefile
|
37
|
+
- app/commands/decidim/cleaner/admin/update_organization_cleaner.rb
|
38
|
+
- app/controllers/decidim/cleaner/admin/application_controller.rb
|
39
|
+
- app/controllers/decidim/cleaner/admin/organization_cleaner_controller.rb
|
40
|
+
- app/controllers/decidim/cleaner/application_controller.rb
|
41
|
+
- app/forms/decidim/cleaner/admin/organization_cleaner_form.rb
|
42
|
+
- app/helpers/decidim/cleaner/application_helper.rb
|
43
|
+
- app/jobs/decidim/cleaner/clean_admin_logs_job.rb
|
44
|
+
- app/jobs/decidim/cleaner/clean_inactive_users_job.rb
|
45
|
+
- app/mailers/decidim/cleaner/inactive_users_mailer.rb
|
46
|
+
- app/models/decidim/cleaner/application_record.rb
|
47
|
+
- app/packs/entrypoints/decidim_cleaner.js
|
48
|
+
- app/packs/images/decidim/cleaner/icon.svg
|
49
|
+
- app/packs/stylesheets/decidim/cleaner/cleaner.scss
|
50
|
+
- app/permissions/decidim/cleaner/admin/permissions.rb
|
51
|
+
- app/views/decidim/cleaner/admin/organization_cleaner/_form.html.erb
|
52
|
+
- app/views/decidim/cleaner/admin/organization_cleaner/edit.html.erb
|
53
|
+
- app/views/decidim/cleaner/inactive_users_mailer/warning_deletion.html.erb
|
54
|
+
- app/views/decidim/cleaner/inactive_users_mailer/warning_inactive.html.erb
|
55
|
+
- config/assets.rb
|
56
|
+
- config/i18n-tasks.yml
|
57
|
+
- config/locales/en.yml
|
58
|
+
- config/locales/fr.yml
|
59
|
+
- config/routes.rb
|
60
|
+
- db/migrate/20230106105014_add_delete_admin_logs_to_organization.rb
|
61
|
+
- db/migrate/20230110150032_add_delete_inactive_users_to_organization.rb
|
62
|
+
- lib/decidim/cleaner.rb
|
63
|
+
- lib/decidim/cleaner/admin.rb
|
64
|
+
- lib/decidim/cleaner/admin_engine.rb
|
65
|
+
- lib/decidim/cleaner/component.rb
|
66
|
+
- lib/decidim/cleaner/engine.rb
|
67
|
+
- lib/decidim/cleaner/test/factories.rb
|
68
|
+
- lib/decidim/cleaner/version.rb
|
69
|
+
- lib/tasks/decidim_cleaner_tasks.rake
|
70
|
+
homepage: https://decidim.org
|
71
|
+
licenses:
|
72
|
+
- AGPL-3.0
|
73
|
+
metadata:
|
74
|
+
bug_tracker_uri: https://github.com/decidim/decidim/issues
|
75
|
+
documentation_uri: https://docs.decidim.org/
|
76
|
+
funding_uri: https://opencollective.com/decidim
|
77
|
+
homepage_uri: https://decidim.org
|
78
|
+
source_code_uri: https://github.com/decidim/decidim
|
79
|
+
post_install_message:
|
80
|
+
rdoc_options: []
|
81
|
+
require_paths:
|
82
|
+
- lib
|
83
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
84
|
+
requirements:
|
85
|
+
- - ">="
|
86
|
+
- !ruby/object:Gem::Version
|
87
|
+
version: 2.7.5
|
88
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
89
|
+
requirements:
|
90
|
+
- - ">="
|
91
|
+
- !ruby/object:Gem::Version
|
92
|
+
version: '0'
|
93
|
+
requirements: []
|
94
|
+
rubygems_version: 3.3.7
|
95
|
+
signing_key:
|
96
|
+
specification_version: 4
|
97
|
+
summary: A decidim cleaner module
|
98
|
+
test_files: []
|