decidim-cleaner 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- 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 +36 -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.1.0
|
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.28.0.dev
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - "~>"
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: 0.28.0.dev
|
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: '3.1'
|
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.5
|
95
|
+
signing_key:
|
96
|
+
specification_version: 4
|
97
|
+
summary: A decidim cleaner module
|
98
|
+
test_files: []
|