decidim-meetings 0.20.1 → 0.21.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3e5df17bcc5e8a7ef21c74603de0d4b22fd6b1e77d6c9c65da0e6cb9c832f320
4
- data.tar.gz: 2f8430d38d1307ae956eb6d02ca5f51415113e640e8094abed83388b50503c56
3
+ metadata.gz: f49b1f1b6174033a3ff2af8e7e69fcd14fb7a7586c0ee7d865a144109aea7c24
4
+ data.tar.gz: ff2bc14eb13640978f7d15e5f3db7cc1825fe6afec7e73e2a26c04c1d96df22e
5
5
  SHA512:
6
- metadata.gz: 7d26831c65d6ab708fb4bdb55bd26ee0a66a2508c41a40a2523f19b91e28c56b1c4f74b9f5a89d613d4028a9cb29c4a61d86f7e3166c91d7aaf8d7c777a8180d
7
- data.tar.gz: c9c48ad7072b5628b819fe9a7af74373bf25fa72d9351ddb182d9cbf8d1c0570520dd6942a05f16aee157d3cc7d54f857639da2dc4c6003d6bba280e35477c9a
6
+ metadata.gz: 101c8f1e48b6379f656dbddadd6a80e1923a5e11b0251b283953e55f5ad3d057dee58bee33f13a7d31d5b4e2aafc0fa91ba6d6e66073eb2d2e3fe0dbe1f6c78f
7
+ data.tar.gz: 438ec4fcc5f446ae8d7f8914587ce78fa4a3dcbe624058a0576fdc96850c975cf2cc90faf9d1b7348eb5082c6070f02090e7768db652817196767ad5367e740e
@@ -1,4 +1,4 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36.02 36.02">
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36.02 36.02" width="2000" height="2000">
2
2
  <path d="M693.07,543.84a18,18,0,1,1,18-18A18,18,0,0,1,693.07,543.84Zm0-34a16,16,0,1,0,16,16A16,16,0,0,0,693.07,509.83Z" transform="translate(-675.07 -507.83)"/>
3
3
  <path d="M693.07,526.93a4.1,4.1,0,1,1,4.1-4.1A4.1,4.1,0,0,1,693.07,526.93Zm0-6.19a2.1,2.1,0,1,0,2.1,2.1A2.1,2.1,0,0,0,693.07,520.74Z" transform="translate(-675.07 -507.83)"/>
4
4
  <path d="M693.07,536.65a1,1,0,0,1-.67-0.26c-0.29-.26-7.11-6.5-7.11-14a7.78,7.78,0,0,1,15.57,0c0,7.46-6.82,13.71-7.11,14A1,1,0,0,1,693.07,536.65Zm0-20a5.79,5.79,0,0,0-5.78,5.78c0,5.29,4.13,10.11,5.78,11.82,1.65-1.72,5.78-6.54,5.78-11.82A5.79,5.79,0,0,0,693.07,516.64Z" transform="translate(-675.07 -507.83)"/>
@@ -33,6 +33,7 @@ module Decidim
33
33
  notify_admin_over_percentage
34
34
  increment_score
35
35
  end
36
+ follow_meeting
36
37
  broadcast(:ok)
37
38
  end
38
39
 
@@ -106,6 +107,16 @@ module Decidim
106
107
  Decidim::Gamification.increment_score(user, :attended_meetings)
107
108
  end
108
109
 
110
+ def follow_meeting
111
+ Decidim::CreateFollow.call(follow_form, user)
112
+ end
113
+
114
+ def follow_form
115
+ Decidim::FollowForm
116
+ .from_params(followable_gid: meeting.to_signed_global_id.to_s)
117
+ .with_context(current_user: user)
118
+ end
119
+
109
120
  def occupied_slots_over?(percentage)
110
121
  @meeting.remaining_slots == (@meeting.available_slots * (1 - percentage)).round
111
122
  end
@@ -8,6 +8,7 @@ module Decidim
8
8
  layout false
9
9
  helper_method :meetings
10
10
  before_action :set_default_request_format
11
+ skip_around_action :use_organization_time_zone
11
12
 
12
13
  def show
13
14
  render plain: CalendarRenderer.for(current_component), content_type: "type/calendar"
@@ -0,0 +1,37 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Decidim
4
+ module Meetings
5
+ # A class used to find meetings filtered by components and a date range
6
+ class FilteredMeetings < Rectify::Query
7
+ # Syntactic sugar to initialize the class and return the queried objects.
8
+ #
9
+ # components - An array of Decidim::Component
10
+ # start_at - A date to filter resources created after it
11
+ # end_at - A date to filter resources created before it.
12
+ def self.for(components, start_at = nil, end_at = nil)
13
+ new(components, start_at, end_at).query
14
+ end
15
+
16
+ # Initializes the class.
17
+ #
18
+ # components - An array of Decidim::Component
19
+ # start_at - A date to filter resources created after it
20
+ # end_at - A date to filter resources created before it.
21
+ def initialize(components, start_at = nil, end_at = nil)
22
+ @components = components
23
+ @start_at = start_at
24
+ @end_at = end_at
25
+ end
26
+
27
+ # Finds the Projects scoped to an array of components and filtered
28
+ # by a range of dates.
29
+ def query
30
+ meetings = Decidim::Meetings::Meeting.where(component: @components)
31
+ meetings = meetings.where("created_at >= ?", @start_at) if @start_at.present?
32
+ meetings = meetings.where("created_at <= ?", @end_at) if @end_at.present?
33
+ meetings
34
+ end
35
+ end
36
+ end
37
+ end
@@ -36,8 +36,8 @@ module Decidim
36
36
  return @event if @event
37
37
 
38
38
  @event = Icalendar::Event.new
39
- @event.dtstart = Icalendar::Values::DateTime.new(meeting.start_time)
40
- @event.dtend = Icalendar::Values::DateTime.new(meeting.end_time)
39
+ @event.dtstart = Icalendar::Values::DateTime.new(meeting.start_time.utc, "tzid" => "UTC")
40
+ @event.dtend = Icalendar::Values::DateTime.new(meeting.end_time.utc, "tzid" => "UTC")
41
41
  @event.summary = present(meeting).title
42
42
  @event.description = strip_tags(present(meeting).description)
43
43
  @event.location = meeting.address
@@ -0,0 +1,28 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Decidim
4
+ module Meetings
5
+ AgendaItemType = GraphQL::ObjectType.define do
6
+ name "MeetingAgendaItem"
7
+ description "A meeting agenda item"
8
+
9
+ field :id, !types.ID, "The ID for this agenda item"
10
+ field :title, Decidim::Core::TranslatedFieldType, "The title for this agenda item"
11
+ field :description, Decidim::Core::TranslatedFieldType, "The description for this agenda item"
12
+ field :items, !types[AgendaItemType], "Sub-items (children) of this agenda item", property: :agenda_item_children
13
+ field :parent, AgendaItemType, "Parent agenda item, if available"
14
+ field :agenda, AgendaType, "Belonging agenda"
15
+ field :duration, !types.Int, "Duration in number of minutes for this item in this agenda"
16
+ field :position, !types.Int, "Order position for this agenda item"
17
+
18
+ field :createdAt, Decidim::Core::DateTimeType do
19
+ description "The date and time this agenda item was created"
20
+ property :created_at
21
+ end
22
+ field :updatedAt, Decidim::Core::DateTimeType do
23
+ description "The date and time this agenda item was updated"
24
+ property :updated_at
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,25 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Decidim
4
+ module Meetings
5
+ AgendaType = GraphQL::ObjectType.define do
6
+ name "MeetingAgenda"
7
+ description "A meeting agenda"
8
+
9
+ field :id, !types.ID, "The ID for the agenda"
10
+ field :title, Decidim::Core::TranslatedFieldType, "The title for the agenda"
11
+ field :items, !types[AgendaItemType], "Items and sub-items of the agenda", property: :agenda_items
12
+ # probably useful in the future, when handling user permissions
13
+ # field :visible, !types.Boolean, "Whether this minutes is public or not", property: :visible
14
+
15
+ field :createdAt, Decidim::Core::DateTimeType do
16
+ description "The date and time this agenda was created"
17
+ property :created_at
18
+ end
19
+ field :updatedAt, Decidim::Core::DateTimeType do
20
+ description "The date and time this agenda was updated"
21
+ property :updated_at
22
+ end
23
+ end
24
+ end
25
+ end
@@ -10,24 +10,51 @@ module Decidim
10
10
  -> { Decidim::Comments::CommentableInterface },
11
11
  -> { Decidim::Core::CategorizableInterface },
12
12
  -> { Decidim::Core::ScopableInterface },
13
- -> { Decidim::Core::AttachableInterface }
13
+ -> { Decidim::Core::AttachableInterface },
14
+ -> { Decidim::Core::TimestampsInterface },
15
+ -> { Decidim::Meetings::ServicesInterface },
16
+ -> { Decidim::Meetings::LinkedResourcesInterface },
17
+ -> { Decidim::Forms::QuestionnaireEntityInterface }
14
18
  ]
15
19
 
16
- field :id, !types.ID
17
- field :reference, !types.String
20
+ field :id, !types.ID, "ID of this meeting"
21
+ field :reference, !types.String, "Reference for this meeting"
18
22
  field :title, !Decidim::Core::TranslatedFieldType, "The title of this meeting."
23
+ field :description, Decidim::Core::TranslatedFieldType, "The description of this meeting."
19
24
  field :startTime, !Decidim::Core::DateTimeType, "The time this meeting starts", property: :start_time
20
25
  field :endTime, !Decidim::Core::DateTimeType, "The time this meeting ends", property: :end_time
26
+ field :organizer, Decidim::Core::AuthorInterface, "If specified, the organizer of this meeting"
27
+ field :agenda, AgendaType, "Agenda for this meeting, if available" do
28
+ resolve ->(meeting, _args, _ctx) {
29
+ meeting.agenda if meeting.agenda&.visible?
30
+ }
31
+ end
21
32
 
22
33
  field :closed, !types.Boolean, "Whether this meeting is closed or not.", property: :closed?
23
34
  field :closingReport, Decidim::Core::TranslatedFieldType, "The closing report of this meeting.", property: :closing_report
24
-
25
- field :registrationsEnabled, !types.Boolean, "Whether the registrations are enabled or not", property: :registrations_enabled
26
- field :remainingSlots, types.Int, "Amount of slots available for this meeting", property: :remaining_slots
35
+ field :attendingOrganizations, types.String, "list of attending organizations", property: :attending_organizations
27
36
  field :attendeeCount, types.Int, "Amount of attendees to this meeting", property: :attendees_count
28
37
  field :contributionCount, types.Int, "Amount of contributions to this meeting", property: :contributions_count
29
-
30
- field :address, types.String, "The physical address of this meeting"
38
+ field :minutes, MinutesType, "Minutes for this meeting, if available" do
39
+ resolve ->(meeting, _args, _ctx) {
40
+ meeting.minutes if meeting.minutes&.visible?
41
+ }
42
+ end
43
+ field :privateMeeting, !types.Boolean, "Whether the meeting is private or not (it can only be true if transparent)", property: :private_meeting
44
+ field :transparent, !types.Boolean, "For private meetings, information is public if transparent", property: :transparent
45
+ field :registrationsEnabled, !types.Boolean, "Whether the registrations are enabled or not", property: :registrations_enabled
46
+ field :registrationTerms, Decidim::Core::TranslatedFieldType, "The registration terms", property: :registration_terms
47
+ field :remainingSlots, types.Int, "Amount of slots available for this meeting", property: :remaining_slots
48
+ field :registrationFormEnabled, !types.Boolean, "Whether the registrations have a form or not", property: :registration_form_enabled
49
+ field :registrationForm, Decidim::Forms::QuestionnaireType do
50
+ description "If registration requires to fill a form, this is the questionnaire"
51
+ resolve ->(meeting, _args, _ctx) {
52
+ meeting.questionnaire if meeting.registration_form_enabled?
53
+ }
54
+ end
55
+ field :location, Decidim::Core::TranslatedFieldType, "The location of this meeting (free format)"
56
+ field :locationHints, Decidim::Core::TranslatedFieldType, "The location of this meeting (free format)", property: :location_hints
57
+ field :address, types.String, "The physical address of this meeting (used for geolocation)"
31
58
  field :coordinates, Decidim::Core::CoordinatesType, "Physical coordinates for this meeting" do
32
59
  resolve ->(meeting, _args, _ctx) {
33
60
  [meeting.latitude, meeting.longitude]
@@ -25,7 +25,7 @@ module Decidim
25
25
 
26
26
  module MeetingsTypeHelper
27
27
  def self.base_scope(component)
28
- Meeting.where(component: component)
28
+ Meeting.visible.where(component: component)
29
29
  end
30
30
  end
31
31
  end
@@ -0,0 +1,26 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Decidim
4
+ module Meetings
5
+ MinutesType = GraphQL::ObjectType.define do
6
+ name "MeetingMinutes"
7
+ description "A meeting minutes"
8
+
9
+ field :id, !types.ID, "The ID for the minutes"
10
+ field :description, Decidim::Core::TranslatedFieldType, "The description for the minutes"
11
+ field :videoUrl, types.String, "URL for the video of the session, if any", property: :video_url
12
+ field :audioUrl, types.String, "URL for the audio of the session, if any", property: :audio_url
13
+ # probably useful in the future, when handling user permissions
14
+ # field :visible, !types.Boolean, "Whether this minutes is public or not", property: :visible
15
+
16
+ field :createdAt, Decidim::Core::DateTimeType do
17
+ description "The date and time this minutes was created"
18
+ property :created_at
19
+ end
20
+ field :updatedAt, Decidim::Core::DateTimeType do
21
+ description "The date and time this minutes was updated"
22
+ property :updated_at
23
+ end
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Decidim
4
+ module Meetings
5
+ ServiceType = GraphQL::ObjectType.define do
6
+ name "MeetingService"
7
+ description "A meeting service"
8
+
9
+ field :title, Decidim::Core::TranslatedFieldType, "The title for the service"
10
+ field :description, Decidim::Core::TranslatedFieldType, "The description for the service"
11
+ end
12
+ end
13
+ end
@@ -411,7 +411,7 @@ ca:
411
411
  registrations:
412
412
  create:
413
413
  invalid: S'ha produït un error en inscriure's a aquesta trobada.
414
- success: T'has inscrit a la trobada amb èxit.
414
+ success: T'has inscrit a la trobada amb èxit. Al estar inscrita, rebràs notificacions si s'hi produeixen actualitzacions.
415
415
  decline_invitation:
416
416
  invalid: S'ha produït un error en declinar la invitació.
417
417
  success: Has declinat la invitació amb èxit.
@@ -0,0 +1 @@
1
+ el:
@@ -412,7 +412,7 @@ en:
412
412
  registrations:
413
413
  create:
414
414
  invalid: There was a problem joining this meeting.
415
- success: You have joined the meeting successfully.
415
+ success: You have joined the meeting successfully. Because you have registered for this meeting, you'll be notified if there are updates on it.
416
416
  decline_invitation:
417
417
  invalid: There was a problem declining the invitation.
418
418
  success: You have declined the invitation successfully.
@@ -411,7 +411,7 @@ es:
411
411
  registrations:
412
412
  create:
413
413
  invalid: Se ha producido un error al inscribirte a este encuentro.
414
- success: Te has inscrito al encuentro con éxito.
414
+ success: Te has inscrito al encuentro con éxito. Al estar inscrita recibirás una notificación si se producen actualizaciones.
415
415
  decline_invitation:
416
416
  invalid: Se ha producido un error al declinar la invitación.
417
417
  success: Has rechazado la invitación con éxito.
@@ -216,8 +216,6 @@ is-IS:
216
216
  confirmed_html: Skráningin þín til fundarins <a href="%{url}">%{title}</a> hefur verið staðfest.
217
217
  details: Þú finnur upplýsingar fundarins í viðhenginu.
218
218
  registrations:
219
- create:
220
- success: Þú hefur tekið þátt í fundinum með góðum árangri.
221
219
  destroy:
222
220
  success: Þú hefur skilið eftir fundinn með góðum árangri.
223
221
  types:
@@ -411,7 +411,7 @@ nl:
411
411
  registrations:
412
412
  create:
413
413
  invalid: Er is een probleem opgetreden bij het deelnemen van deze vergadering.
414
- success: U bent met succes lid geworden van de vergadering.
414
+ success: Je bent met succes aangemeld als aanwezige bij de vergadering. Omdat je je voor deze vergadering bent geregistreerd, ontvang je een melding als er updates over zijn.
415
415
  decline_invitation:
416
416
  invalid: Er is een probleem opgetreden bij het afwijzen van de uitnodiging.
417
417
  success: U hebt de uitnodiging met succes afgewezen.
@@ -411,7 +411,7 @@
411
411
  registrations:
412
412
  create:
413
413
  invalid: Det oppstod et problem med å bli med på dette møtet.
414
- success: Du har blitt med på møtet.
414
+ success: Du har blitt med på møtet. Fordi du har registrert deg for dette møtet, vil du bli varslet om det er oppdateringer til det.
415
415
  decline_invitation:
416
416
  invalid: Det oppstod et problem med å avslå invitasjonen.
417
417
  success: Du har avslått invitasjonen.
@@ -0,0 +1,17 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Decidim
4
+ module Meetings
5
+ # This interface represents all linked resources available in the module meetings
6
+ LinkedResourcesInterface = GraphQL::InterfaceType.define do
7
+ name "MeetinsLinkedResourcewInterface"
8
+ description "An interface that can be used with Resourceable models."
9
+
10
+ field :proposalsFromMeeting, !types[Decidim::Proposals::ProposalType], "Proposals created in this meeting" do
11
+ resolve ->(meeting, _args, _ctx) {
12
+ meeting.linked_resources(:proposals, :proposals_from_meeting)
13
+ }
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,19 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Decidim
4
+ module Meetings
5
+ # This interface represents a categorizable object.
6
+ ServicesInterface = GraphQL::InterfaceType.define do
7
+ name "ServicesInterface"
8
+ description "An interface that can be used with services."
9
+
10
+ field :services, !types[ServiceType], "The object's services" do
11
+ resolve ->(meeting, _args, _ctx) {
12
+ return [] unless meeting.services.respond_to? :map
13
+
14
+ meeting.services.map { |service| OpenStruct.new(service) }
15
+ }
16
+ end
17
+ end
18
+ end
19
+ end
@@ -6,6 +6,7 @@ require "decidim/meetings/admin_engine"
6
6
  require "decidim/meetings/directory"
7
7
  require "decidim/meetings/directory_engine"
8
8
  require "decidim/meetings/component"
9
+ require "decidim/meetings/api"
9
10
 
10
11
  module Decidim
11
12
  # Base module for this engine.
@@ -0,0 +1,8 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Decidim
4
+ module Meetings
5
+ autoload :LinkedResourcesInterface, "decidim/api/linked_resources_interface"
6
+ autoload :ServicesInterface, "decidim/api/services_interface"
7
+ end
8
+ end
@@ -24,12 +24,15 @@ Decidim.register_component(:meetings) do |component|
24
24
  end
25
25
 
26
26
  component.register_stat :meetings_count, primary: true, priority: Decidim::StatsRegistry::MEDIUM_PRIORITY do |components, start_at, end_at|
27
- meetings = Decidim::Meetings::Meeting.where(component: components)
28
- meetings = meetings.where("created_at >= ?", start_at) if start_at.present?
29
- meetings = meetings.where("created_at <= ?", end_at) if end_at.present?
27
+ meetings = Decidim::Meetings::FilteredMeetings.for(components, start_at, end_at)
30
28
  meetings.count
31
29
  end
32
30
 
31
+ component.register_stat :followers_count, tag: :followers, priority: Decidim::StatsRegistry::LOW_PRIORITY do |components, start_at, end_at|
32
+ meetings_ids = Decidim::Meetings::FilteredMeetings.for(components, start_at, end_at).pluck(:id)
33
+ Decidim::Follow.where(decidim_followable_type: "Decidim::Meetings::Meeting", decidim_followable_id: meetings_ids).count
34
+ end
35
+
33
36
  component.exports :meetings do |exports|
34
37
  exports.collection do |component_instance|
35
38
  Decidim::Meetings::Meeting
@@ -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.20.1"
7
+ "0.21.0"
8
8
  end
9
9
  end
10
10
  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.20.1
4
+ version: 0.21.0
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: 2020-03-27 00:00:00.000000000 Z
13
+ date: 2020-04-08 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: cells-erb
@@ -46,28 +46,28 @@ dependencies:
46
46
  requirements:
47
47
  - - '='
48
48
  - !ruby/object:Gem::Version
49
- version: 0.20.1
49
+ version: 0.21.0
50
50
  type: :runtime
51
51
  prerelease: false
52
52
  version_requirements: !ruby/object:Gem::Requirement
53
53
  requirements:
54
54
  - - '='
55
55
  - !ruby/object:Gem::Version
56
- version: 0.20.1
56
+ version: 0.21.0
57
57
  - !ruby/object:Gem::Dependency
58
58
  name: decidim-forms
59
59
  requirement: !ruby/object:Gem::Requirement
60
60
  requirements:
61
61
  - - '='
62
62
  - !ruby/object:Gem::Version
63
- version: 0.20.1
63
+ version: 0.21.0
64
64
  type: :runtime
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.20.1
70
+ version: 0.21.0
71
71
  - !ruby/object:Gem::Dependency
72
72
  name: httparty
73
73
  requirement: !ruby/object:Gem::Requirement
@@ -144,56 +144,56 @@ dependencies:
144
144
  requirements:
145
145
  - - '='
146
146
  - !ruby/object:Gem::Version
147
- version: 0.20.1
147
+ version: 0.21.0
148
148
  type: :development
149
149
  prerelease: false
150
150
  version_requirements: !ruby/object:Gem::Requirement
151
151
  requirements:
152
152
  - - '='
153
153
  - !ruby/object:Gem::Version
154
- version: 0.20.1
154
+ version: 0.21.0
155
155
  - !ruby/object:Gem::Dependency
156
156
  name: decidim-assemblies
157
157
  requirement: !ruby/object:Gem::Requirement
158
158
  requirements:
159
159
  - - '='
160
160
  - !ruby/object:Gem::Version
161
- version: 0.20.1
161
+ version: 0.21.0
162
162
  type: :development
163
163
  prerelease: false
164
164
  version_requirements: !ruby/object:Gem::Requirement
165
165
  requirements:
166
166
  - - '='
167
167
  - !ruby/object:Gem::Version
168
- version: 0.20.1
168
+ version: 0.21.0
169
169
  - !ruby/object:Gem::Dependency
170
170
  name: decidim-dev
171
171
  requirement: !ruby/object:Gem::Requirement
172
172
  requirements:
173
173
  - - '='
174
174
  - !ruby/object:Gem::Version
175
- version: 0.20.1
175
+ version: 0.21.0
176
176
  type: :development
177
177
  prerelease: false
178
178
  version_requirements: !ruby/object:Gem::Requirement
179
179
  requirements:
180
180
  - - '='
181
181
  - !ruby/object:Gem::Version
182
- version: 0.20.1
182
+ version: 0.21.0
183
183
  - !ruby/object:Gem::Dependency
184
184
  name: decidim-participatory_processes
185
185
  requirement: !ruby/object:Gem::Requirement
186
186
  requirements:
187
187
  - - '='
188
188
  - !ruby/object:Gem::Version
189
- version: 0.20.1
189
+ version: 0.21.0
190
190
  type: :development
191
191
  prerelease: false
192
192
  version_requirements: !ruby/object:Gem::Requirement
193
193
  requirements:
194
194
  - - '='
195
195
  - !ruby/object:Gem::Version
196
- version: 0.20.1
196
+ version: 0.21.0
197
197
  description: A meetings component for decidim's participatory spaces.
198
198
  email:
199
199
  - josepjaume@gmail.com
@@ -315,6 +315,7 @@ files:
315
315
  - app/presenters/decidim/meetings/log/resource_presenter.rb
316
316
  - app/presenters/decidim/meetings/meeting_presenter.rb
317
317
  - app/queries/decidim/meetings/admin/invites.rb
318
+ - app/queries/decidim/meetings/filtered_meetings.rb
318
319
  - app/queries/decidim/meetings/metrics/meeting_followers_metric_measure.rb
319
320
  - app/queries/decidim/meetings/metrics/meetings_metric_manage.rb
320
321
  - app/serializers/decidim/meetings/data_portability_invite_serializer.rb
@@ -326,8 +327,12 @@ files:
326
327
  - app/services/decidim/meetings/calendar/organization_calendar.rb
327
328
  - app/services/decidim/meetings/calendar_renderer.rb
328
329
  - app/services/decidim/meetings/meeting_search.rb
330
+ - app/types/decidim/meetings/agenda_item_type.rb
331
+ - app/types/decidim/meetings/agenda_type.rb
329
332
  - app/types/decidim/meetings/meeting_type.rb
330
333
  - app/types/decidim/meetings/meetings_type.rb
334
+ - app/types/decidim/meetings/minutes_type.rb
335
+ - app/types/decidim/meetings/service_type.rb
331
336
  - app/views/decidim/meetings/_calendar_modal.html.erb
332
337
  - app/views/decidim/meetings/admin/agenda/_agenda_item.html.erb
333
338
  - app/views/decidim/meetings/admin/agenda/_agenda_item_child.html.erb
@@ -358,7 +363,6 @@ files:
358
363
  - app/views/decidim/meetings/directory/meetings/_meetings.html.erb
359
364
  - app/views/decidim/meetings/directory/meetings/index.html.erb
360
365
  - app/views/decidim/meetings/directory/meetings/index.js.erb
361
- - app/views/decidim/meetings/meeting_widgets/show.html.erb
362
366
  - app/views/decidim/meetings/meetings/_datetime.html.erb
363
367
  - app/views/decidim/meetings/meetings/_filters.html.erb
364
368
  - app/views/decidim/meetings/meetings/_filters_small_view.html.erb
@@ -383,6 +387,7 @@ files:
383
387
  - config/locales/cs.yml
384
388
  - config/locales/de.yml
385
389
  - config/locales/el-GR.yml
390
+ - config/locales/el.yml
386
391
  - config/locales/en.yml
387
392
  - config/locales/eo-UY.yml
388
393
  - config/locales/es-MX.yml
@@ -431,9 +436,12 @@ files:
431
436
  - db/migrate/20180809134748_add_upcoming_events_as_content_block.rb
432
437
  - db/migrate/20181107175558_add_questionnaire_to_existing_meetings.rb
433
438
  - db/migrate/20190404132923_add_user_group_to_meetings_registrations.rb
439
+ - lib/decidim/api/linked_resources_interface.rb
440
+ - lib/decidim/api/services_interface.rb
434
441
  - lib/decidim/meetings.rb
435
442
  - lib/decidim/meetings/admin.rb
436
443
  - lib/decidim/meetings/admin_engine.rb
444
+ - lib/decidim/meetings/api.rb
437
445
  - lib/decidim/meetings/component.rb
438
446
  - lib/decidim/meetings/directory.rb
439
447
  - lib/decidim/meetings/directory_engine.rb
@@ -1,9 +0,0 @@
1
- <%= content_for(:title, present(model).title) %>
2
- <%= render partial: "decidim/meetings/meetings/datetime", locals: { meeting: model } %>
3
- <%= decidim_sanitize meeting_description(model) %>
4
- <div class="address card__extra">
5
- <div class="address__icon">
6
- <%= icon "meetings", remove_icon_class: true, width: 40, height: 70 %>
7
- </div>
8
- <%= render partial: "decidim/shared/address_details", locals: { icon_name: "meetings", geolocalizable: model } %>
9
- </div>