decidim-meetings 0.26.0.rc2 → 0.26.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (62) hide show
  1. checksums.yaml +4 -4
  2. data/app/cells/decidim/meetings/content_blocks/highlighted_meetings_cell.rb +7 -1
  3. data/app/cells/decidim/meetings/content_blocks/upcoming_meetings_cell.rb +2 -0
  4. data/app/cells/decidim/meetings/highlighted_meetings_for_component/show.erb +5 -4
  5. data/app/cells/decidim/meetings/highlighted_meetings_for_component_cell.rb +13 -1
  6. data/app/cells/decidim/meetings/meeting_list_item_cell.rb +1 -1
  7. data/app/cells/decidim/meetings/meeting_m_cell.rb +1 -1
  8. data/app/commands/decidim/meetings/admin/create_meeting.rb +1 -1
  9. data/app/commands/decidim/meetings/admin/update_meeting.rb +1 -1
  10. data/app/commands/decidim/meetings/create_meeting.rb +2 -1
  11. data/app/commands/decidim/meetings/update_meeting.rb +1 -1
  12. data/app/controllers/decidim/meetings/meetings_controller.rb +1 -1
  13. data/app/forms/decidim/meetings/admin/meeting_form.rb +0 -4
  14. data/app/helpers/decidim/meetings/application_helper.rb +19 -1
  15. data/app/jobs/decidim/meetings/upcoming_meeting_notification_job.rb +4 -1
  16. data/app/packs/src/decidim/meetings/admin/meetings_form.js +1 -1
  17. data/app/presenters/decidim/meetings/meeting_presenter.rb +9 -0
  18. data/app/services/decidim/meetings/meeting_iframe_embedder.rb +1 -1
  19. data/app/views/decidim/meetings/admin/meetings/_services.html.erb +1 -1
  20. data/app/views/decidim/meetings/layouts/live_event.html.erb +1 -0
  21. data/app/views/decidim/meetings/meetings/index.html.erb +2 -2
  22. data/app/views/decidim/meetings/meetings/show.html.erb +1 -1
  23. data/config/locales/ar.yml +25 -0
  24. data/config/locales/ca.yml +7 -7
  25. data/config/locales/cs.yml +6 -6
  26. data/config/locales/de.yml +4 -3
  27. data/config/locales/en.yml +6 -6
  28. data/config/locales/es-MX.yml +8 -8
  29. data/config/locales/es-PY.yml +6 -6
  30. data/config/locales/es.yml +8 -8
  31. data/config/locales/eu.yml +1 -9
  32. data/config/locales/fi-plain.yml +5 -5
  33. data/config/locales/fi.yml +5 -5
  34. data/config/locales/fr-CA.yml +3 -3
  35. data/config/locales/fr.yml +12 -12
  36. data/config/locales/ga-IE.yml +0 -4
  37. data/config/locales/gl.yml +5 -0
  38. data/config/locales/hu.yml +30 -0
  39. data/config/locales/it.yml +0 -8
  40. data/config/locales/ja.yml +4 -4
  41. data/config/locales/lb.yml +0 -6
  42. data/config/locales/nl.yml +2 -10
  43. data/config/locales/no.yml +146 -0
  44. data/config/locales/pl.yml +7 -2
  45. data/config/locales/pt-BR.yml +9 -3
  46. data/config/locales/pt.yml +0 -8
  47. data/config/locales/ro-RO.yml +3 -9
  48. data/config/locales/sv.yml +20 -8
  49. data/config/locales/tr-TR.yml +9 -2
  50. data/config/locales/zh-CN.yml +6 -0
  51. data/db/migrate/20210512100333_drop_decidim_meetings_minutes_table.rb +1 -0
  52. data/lib/decidim/api/linked_resources_interface.rb +1 -1
  53. data/lib/decidim/api/meeting_type.rb +1 -1
  54. data/lib/decidim/content_parsers/meeting_parser.rb +20 -0
  55. data/lib/decidim/content_renderers/meeting_renderer.rb +17 -0
  56. data/lib/decidim/meetings/component.rb +2 -3
  57. data/lib/decidim/meetings/engine.rb +6 -0
  58. data/lib/decidim/meetings/meeting_serializer.rb +2 -1
  59. data/lib/decidim/meetings/test/factories.rb +6 -0
  60. data/lib/decidim/meetings/version.rb +1 -1
  61. data/lib/decidim/meetings.rb +8 -0
  62. metadata +18 -16
@@ -21,6 +21,7 @@ class DropDecidimMeetingsMinutesTable < ActiveRecord::Migration[6.0]
21
21
  ActionLog.where(resource_type: "Decidim::Meetings::Minutes").each do |action_log|
22
22
  minutes = Minutes.find_by(id: action_log.resource_id)
23
23
  version = Version.find_by(id: action_log.version_id)
24
+ next unless minutes && version
24
25
 
25
26
  version_updates = {
26
27
  item_type: "Decidim::Meetings::Meeting",
@@ -5,7 +5,7 @@ module Decidim
5
5
  # This interface represents all linked resources available in the module meetings
6
6
  module LinkedResourcesInterface
7
7
  include Decidim::Api::Types::BaseInterface
8
- graphql_name "MeetinsLinkedResourcewInterface"
8
+ graphql_name "MeetingsLinkedResourcesInterface"
9
9
  description "An interface that can be used with Resourceable models."
10
10
 
11
11
  if Decidim::Meetings.enable_proposal_linking
@@ -11,7 +11,7 @@ module Decidim
11
11
  implements Decidim::Core::AttachableInterface
12
12
  implements Decidim::Core::TimestampsInterface
13
13
  implements Decidim::Meetings::ServicesInterface
14
- implements Decidim::Meetings::LinkedResourcesInterface
14
+ implements Decidim::Meetings::LinkedResourcesInterface if Decidim::Meetings.enable_proposal_linking
15
15
  implements Decidim::Forms::QuestionnaireEntityInterface
16
16
 
17
17
  field :id, GraphQL::Types::ID, "ID of this meeting", null: false
@@ -0,0 +1,20 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Decidim
4
+ module ContentParsers
5
+ # A parser that searches mentions of Meetings in content.
6
+ #
7
+ # @see BaseParser Examples of how to use a content parser
8
+ class MeetingParser < ResourceParser
9
+ private
10
+
11
+ def url_regex
12
+ %r{#{URL_REGEX_SCHEME}#{URL_REGEX_CONTENT}/meetings/#{URL_REGEX_END_CHAR}+}i
13
+ end
14
+
15
+ def model_class
16
+ "Decidim::Meetings::Meeting"
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,17 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Decidim
4
+ module ContentRenderers
5
+ # A renderer that searches Global IDs representing meetings in content
6
+ # and replaces it with a link to their show page.
7
+ #
8
+ # e.g. gid://<APP_NAME>/Decidim::Meetings::Meeting/1
9
+ #
10
+ # @see BaseRenderer Examples of how to use a content renderer
11
+ class MeetingRenderer < ResourceRenderer
12
+ def regex
13
+ %r{gid://([\w-]*/Decidim::Meetings::Meeting/(\d+))}i
14
+ end
15
+ end
16
+ end
17
+ end
@@ -42,7 +42,6 @@ Decidim.register_component(:meetings) do |component|
42
42
  component.exports :meetings do |exports|
43
43
  exports.collection do |component_instance|
44
44
  Decidim::Meetings::Meeting
45
- .published
46
45
  .not_hidden
47
46
  .visible
48
47
  .where(component: component_instance)
@@ -208,8 +207,8 @@ Decidim.register_component(:meetings) do |component|
208
207
  user = Decidim::User.find_or_initialize_by(email: email)
209
208
 
210
209
  user.update!(
211
- password: "password1234",
212
- password_confirmation: "password1234",
210
+ password: "decidim123456",
211
+ password_confirmation: "decidim123456",
213
212
  name: name,
214
213
  nickname: Faker::Twitter.unique.screen_name,
215
214
  organization: component.organization,
@@ -42,6 +42,12 @@ module Decidim
42
42
  end
43
43
  end
44
44
 
45
+ initializer "decidim.content_processors" do |_app|
46
+ Decidim.configure do |config|
47
+ config.content_processors += [:meeting]
48
+ end
49
+ end
50
+
45
51
  initializer "decidim_meetings.view_hooks" do
46
52
  Decidim.view_hooks.register(:participatory_space_highlighted_elements, priority: Decidim::ViewHooks::HIGH_PRIORITY) do |view_context|
47
53
  view_context.cell("decidim/meetings/highlighted_meetings", view_context.current_participatory_space)
@@ -45,7 +45,8 @@ module Decidim
45
45
  followers: meeting.follows.size,
46
46
  url: url,
47
47
  related_proposals: related_proposals,
48
- related_results: related_results
48
+ related_results: related_results,
49
+ published: meeting.published_at.present?
49
50
  }
50
51
  end
51
52
 
@@ -159,6 +159,12 @@ FactoryBot.define do
159
159
  trait :open_in_new_tab_iframe_embed_type do
160
160
  iframe_embed_type { :open_in_new_tab }
161
161
  end
162
+
163
+ trait :moderated do
164
+ after(:create) do |meeting, _evaluator|
165
+ create(:moderation, reportable: meeting, hidden_at: 2.days.ago)
166
+ end
167
+ end
162
168
  end
163
169
 
164
170
  factory :registration, class: "Decidim::Meetings::Registration" do
@@ -4,7 +4,7 @@ module Decidim
4
4
  # This holds the decidim-meetings version.
5
5
  module Meetings
6
6
  def self.version
7
- "0.26.0.rc2"
7
+ "0.26.2"
8
8
  end
9
9
  end
10
10
  end
@@ -29,4 +29,12 @@ module Decidim
29
29
  2.days
30
30
  end
31
31
  end
32
+
33
+ module ContentParsers
34
+ autoload :MeetingParser, "decidim/content_parsers/meeting_parser"
35
+ end
36
+
37
+ module ContentRenderers
38
+ autoload :MeetingRenderer, "decidim/content_renderers/meeting_renderer"
39
+ end
32
40
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: decidim-meetings
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.26.0.rc2
4
+ version: 0.26.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Josep Jaume Rey Peroy
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2022-02-02 00:00:00.000000000 Z
13
+ date: 2022-06-14 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: decidim-core
@@ -18,28 +18,28 @@ dependencies:
18
18
  requirements:
19
19
  - - '='
20
20
  - !ruby/object:Gem::Version
21
- version: 0.26.0.rc2
21
+ version: 0.26.2
22
22
  type: :runtime
23
23
  prerelease: false
24
24
  version_requirements: !ruby/object:Gem::Requirement
25
25
  requirements:
26
26
  - - '='
27
27
  - !ruby/object:Gem::Version
28
- version: 0.26.0.rc2
28
+ version: 0.26.2
29
29
  - !ruby/object:Gem::Dependency
30
30
  name: decidim-forms
31
31
  requirement: !ruby/object:Gem::Requirement
32
32
  requirements:
33
33
  - - '='
34
34
  - !ruby/object:Gem::Version
35
- version: 0.26.0.rc2
35
+ version: 0.26.2
36
36
  type: :runtime
37
37
  prerelease: false
38
38
  version_requirements: !ruby/object:Gem::Requirement
39
39
  requirements:
40
40
  - - '='
41
41
  - !ruby/object:Gem::Version
42
- version: 0.26.0.rc2
42
+ version: 0.26.2
43
43
  - !ruby/object:Gem::Dependency
44
44
  name: icalendar
45
45
  requirement: !ruby/object:Gem::Requirement
@@ -60,56 +60,56 @@ dependencies:
60
60
  requirements:
61
61
  - - '='
62
62
  - !ruby/object:Gem::Version
63
- version: 0.26.0.rc2
63
+ version: 0.26.2
64
64
  type: :development
65
65
  prerelease: false
66
66
  version_requirements: !ruby/object:Gem::Requirement
67
67
  requirements:
68
68
  - - '='
69
69
  - !ruby/object:Gem::Version
70
- version: 0.26.0.rc2
70
+ version: 0.26.2
71
71
  - !ruby/object:Gem::Dependency
72
72
  name: decidim-assemblies
73
73
  requirement: !ruby/object:Gem::Requirement
74
74
  requirements:
75
75
  - - '='
76
76
  - !ruby/object:Gem::Version
77
- version: 0.26.0.rc2
77
+ version: 0.26.2
78
78
  type: :development
79
79
  prerelease: false
80
80
  version_requirements: !ruby/object:Gem::Requirement
81
81
  requirements:
82
82
  - - '='
83
83
  - !ruby/object:Gem::Version
84
- version: 0.26.0.rc2
84
+ version: 0.26.2
85
85
  - !ruby/object:Gem::Dependency
86
86
  name: decidim-dev
87
87
  requirement: !ruby/object:Gem::Requirement
88
88
  requirements:
89
89
  - - '='
90
90
  - !ruby/object:Gem::Version
91
- version: 0.26.0.rc2
91
+ version: 0.26.2
92
92
  type: :development
93
93
  prerelease: false
94
94
  version_requirements: !ruby/object:Gem::Requirement
95
95
  requirements:
96
96
  - - '='
97
97
  - !ruby/object:Gem::Version
98
- version: 0.26.0.rc2
98
+ version: 0.26.2
99
99
  - !ruby/object:Gem::Dependency
100
100
  name: decidim-participatory_processes
101
101
  requirement: !ruby/object:Gem::Requirement
102
102
  requirements:
103
103
  - - '='
104
104
  - !ruby/object:Gem::Version
105
- version: 0.26.0.rc2
105
+ version: 0.26.2
106
106
  type: :development
107
107
  prerelease: false
108
108
  version_requirements: !ruby/object:Gem::Requirement
109
109
  requirements:
110
110
  - - '='
111
111
  - !ruby/object:Gem::Version
112
- version: 0.26.0.rc2
112
+ version: 0.26.2
113
113
  description: A meetings component for decidim's participatory spaces.
114
114
  email:
115
115
  - josepjaume@gmail.com
@@ -509,6 +509,8 @@ files:
509
509
  - lib/decidim/api/meetings_type.rb
510
510
  - lib/decidim/api/service_type.rb
511
511
  - lib/decidim/api/services_interface.rb
512
+ - lib/decidim/content_parsers/meeting_parser.rb
513
+ - lib/decidim/content_renderers/meeting_renderer.rb
512
514
  - lib/decidim/meetings.rb
513
515
  - lib/decidim/meetings/admin.rb
514
516
  - lib/decidim/meetings/admin_engine.rb
@@ -545,9 +547,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
545
547
  version: '2.7'
546
548
  required_rubygems_version: !ruby/object:Gem::Requirement
547
549
  requirements:
548
- - - ">"
550
+ - - ">="
549
551
  - !ruby/object:Gem::Version
550
- version: 1.3.1
552
+ version: '0'
551
553
  requirements: []
552
554
  rubygems_version: 3.1.6
553
555
  signing_key: