decidim-external_newsletter 0.1.0

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.
Files changed (29) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE-AGPLv3.txt +661 -0
  3. data/README.md +124 -0
  4. data/Rakefile +81 -0
  5. data/app/controllers/decidim/external_newsletter/admin/application_controller.rb +15 -0
  6. data/app/controllers/decidim/external_newsletter/application_controller.rb +13 -0
  7. data/app/helpers/decidim/external_newsletter/application_helper.rb +11 -0
  8. data/app/models/decidim/external_newsletter/application_record.rb +10 -0
  9. data/app/packs/entrypoints/decidim-exernal_newsletter.js +2 -0
  10. data/app/packs/images/decidim/external_newsletter/icon.svg +1 -0
  11. data/app/packs/src/external_newsletter/remove_newsletter_modal.js.es6 +1 -0
  12. data/app/packs/stylesheets/decidim/external_newsletter/components/_inline-form-footer.scss +3 -0
  13. data/app/packs/stylesheets/decidim/external_newsletter/external_newsletter.scss +4 -0
  14. data/app/views/decidim/devise/invitations/edit.html.erb +67 -0
  15. data/app/views/decidim/devise/registrations/new.html.erb +96 -0
  16. data/app/views/decidim/notifications_settings/show.html.erb +76 -0
  17. data/app/views/decidim/notifications_settings/show.html.erb.026 +53 -0
  18. data/app/views/layouts/decidim/_external_newsletter.html.erb +56 -0
  19. data/app/views/layouts/decidim/_main_footer.html.erb +32 -0
  20. data/config/i18n-tasks.yml +10 -0
  21. data/config/locales/en.yml +8 -0
  22. data/config/locales/fr.yml +8 -0
  23. data/lib/decidim/external_newsletter/admin.rb +10 -0
  24. data/lib/decidim/external_newsletter/admin_engine.rb +29 -0
  25. data/lib/decidim/external_newsletter/engine.rb +23 -0
  26. data/lib/decidim/external_newsletter/test/factories.rb +9 -0
  27. data/lib/decidim/external_newsletter/version.rb +14 -0
  28. data/lib/decidim/external_newsletter.rb +12 -0
  29. metadata +91 -0
@@ -0,0 +1,10 @@
1
+ ---
2
+
3
+ base_locale: en
4
+ locales: [en]
5
+
6
+ ignore_unused:
7
+ - "decidim.components.external_newsletter.name"
8
+
9
+ ignore_missing:
10
+ - decidim.participatory_processes.scopes.global
@@ -0,0 +1,8 @@
1
+ ---
2
+ en:
3
+ decidim:
4
+ external_newsletter:
5
+ devise:
6
+ registrations:
7
+ new:
8
+ password_help: "%{minimun_characters} characters minimum, must not be too common (e.g. 123456) and must be different from your nickname and your email."
@@ -0,0 +1,8 @@
1
+ ---
2
+ fr:
3
+ decidim:
4
+ external_newsletter:
5
+ devise:
6
+ registrations:
7
+ new:
8
+ password_help: "%{minimun_characters} caractères minimum, ne doit pas être trop commun (par exemple, 123456) et doit être différent de votre pseudo et de votre adresse e-mail."
@@ -0,0 +1,10 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Decidim
4
+ module ExternalNewsletter
5
+ # This module contains all the domain logic associated to Decidim's ExternalNewsletter
6
+ # component admin panel.
7
+ module Admin
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,29 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Decidim
4
+ module ExternalNewsletter
5
+ # This is the engine that runs on the public interface of `ExternalNewsletter`.
6
+ class AdminEngine < ::Rails::Engine
7
+ isolate_namespace Decidim::ExternalNewsletter::Admin
8
+
9
+ paths["db/migrate"] = nil
10
+ paths["lib/tasks"] = nil
11
+
12
+ routes do
13
+ resources :external_newsletter
14
+ root to: 'external_newsletter#index'
15
+ end
16
+
17
+ initializer "decidim.external_newsletter" do |app|
18
+ Decidim.menu :admin_menu do |menu|
19
+ newsletter_item = menu.items.select {|i| i.url.ends_with?"newsletters" }.first
20
+ newsletter_item.instance_variable_set(:@if, false) if newsletter_item
21
+ end
22
+ end
23
+
24
+ def load_seed
25
+ nil
26
+ end
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,23 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "rails"
4
+ require "decidim/core"
5
+
6
+ module Decidim
7
+ module ExternalNewsletter
8
+ # This is the engine that runs on the public interface of external_newsletter.
9
+ class Engine < ::Rails::Engine
10
+ isolate_namespace Decidim::ExternalNewsletter
11
+
12
+ routes do
13
+ # Add engine routes here
14
+ end
15
+
16
+ initializer "decidim_external_newsletter.webpacker.assets_path" do
17
+ Decidim.register_assets_path File.expand_path("#{Decidim::ExternalNewsletter::Engine.root}/app/packs")
18
+ end
19
+
20
+
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,9 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "decidim/core/test/factories"
4
+
5
+ FactoryBot.define do
6
+
7
+
8
+ # Add engine factories here
9
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Decidim
4
+ # This holds the decidim-meetings version.
5
+ module ExternalNewsletter
6
+ def self.version
7
+ "0.1.0"
8
+ end
9
+
10
+ def self.decidim_version
11
+ [">= 0.26","<0.28"].freeze
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,12 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "decidim/external_newsletter/admin"
4
+ require "decidim/external_newsletter/engine"
5
+ require "decidim/external_newsletter/admin_engine"
6
+
7
+ module Decidim
8
+ # This namespace holds the logic of the `ExternalNewsletter` component. This component
9
+ # allows users to create external_newsletter in a participatory space.
10
+ module ExternalNewsletter
11
+ end
12
+ end
metadata ADDED
@@ -0,0 +1,91 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: decidim-external_newsletter
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Hadrien Froger
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2024-03-07 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
+ - - "<"
21
+ - !ruby/object:Gem::Version
22
+ version: '0.28'
23
+ type: :runtime
24
+ prerelease: false
25
+ version_requirements: !ruby/object:Gem::Requirement
26
+ requirements:
27
+ - - ">="
28
+ - !ruby/object:Gem::Version
29
+ version: '0.26'
30
+ - - "<"
31
+ - !ruby/object:Gem::Version
32
+ version: '0.28'
33
+ description: Remove the newsletter system from Decidim, to use an external form for
34
+ newsletter registrations.
35
+ email:
36
+ - hadrien@octree.ch
37
+ executables: []
38
+ extensions: []
39
+ extra_rdoc_files: []
40
+ files:
41
+ - LICENSE-AGPLv3.txt
42
+ - README.md
43
+ - Rakefile
44
+ - app/controllers/decidim/external_newsletter/admin/application_controller.rb
45
+ - app/controllers/decidim/external_newsletter/application_controller.rb
46
+ - app/helpers/decidim/external_newsletter/application_helper.rb
47
+ - app/models/decidim/external_newsletter/application_record.rb
48
+ - app/packs/entrypoints/decidim-exernal_newsletter.js
49
+ - app/packs/images/decidim/external_newsletter/icon.svg
50
+ - app/packs/src/external_newsletter/remove_newsletter_modal.js.es6
51
+ - app/packs/stylesheets/decidim/external_newsletter/components/_inline-form-footer.scss
52
+ - app/packs/stylesheets/decidim/external_newsletter/external_newsletter.scss
53
+ - app/views/decidim/devise/invitations/edit.html.erb
54
+ - app/views/decidim/devise/registrations/new.html.erb
55
+ - app/views/decidim/notifications_settings/show.html.erb
56
+ - app/views/decidim/notifications_settings/show.html.erb.026
57
+ - app/views/layouts/decidim/_external_newsletter.html.erb
58
+ - app/views/layouts/decidim/_main_footer.html.erb
59
+ - config/i18n-tasks.yml
60
+ - config/locales/en.yml
61
+ - config/locales/fr.yml
62
+ - lib/decidim/external_newsletter.rb
63
+ - lib/decidim/external_newsletter/admin.rb
64
+ - lib/decidim/external_newsletter/admin_engine.rb
65
+ - lib/decidim/external_newsletter/engine.rb
66
+ - lib/decidim/external_newsletter/test/factories.rb
67
+ - lib/decidim/external_newsletter/version.rb
68
+ homepage: https://github.com/octree-gva/decidim-module-external_newsletter
69
+ licenses:
70
+ - AGPL-3.0
71
+ metadata: {}
72
+ post_install_message:
73
+ rdoc_options: []
74
+ require_paths:
75
+ - lib
76
+ required_ruby_version: !ruby/object:Gem::Requirement
77
+ requirements:
78
+ - - ">="
79
+ - !ruby/object:Gem::Version
80
+ version: '2.7'
81
+ required_rubygems_version: !ruby/object:Gem::Requirement
82
+ requirements:
83
+ - - ">="
84
+ - !ruby/object:Gem::Version
85
+ version: '0'
86
+ requirements: []
87
+ rubygems_version: 3.2.22
88
+ signing_key:
89
+ specification_version: 4
90
+ summary: Use other tools to send newsletters with decidim.
91
+ test_files: []