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 +4 -4
- data/app/assets/images/decidim/meetings/icon.svg +1 -1
- data/app/commands/decidim/meetings/join_meeting.rb +11 -0
- data/app/controllers/decidim/meetings/calendars_controller.rb +1 -0
- data/app/queries/decidim/meetings/filtered_meetings.rb +37 -0
- data/app/services/decidim/meetings/calendar/meeting_to_event.rb +2 -2
- data/app/types/decidim/meetings/agenda_item_type.rb +28 -0
- data/app/types/decidim/meetings/agenda_type.rb +25 -0
- data/app/types/decidim/meetings/meeting_type.rb +35 -8
- data/app/types/decidim/meetings/meetings_type.rb +1 -1
- data/app/types/decidim/meetings/minutes_type.rb +26 -0
- data/app/types/decidim/meetings/service_type.rb +13 -0
- data/config/locales/ca.yml +1 -1
- data/config/locales/el.yml +1 -0
- data/config/locales/en.yml +1 -1
- data/config/locales/es.yml +1 -1
- data/config/locales/is-IS.yml +0 -2
- data/config/locales/nl.yml +1 -1
- data/config/locales/no.yml +1 -1
- data/lib/decidim/api/linked_resources_interface.rb +17 -0
- data/lib/decidim/api/services_interface.rb +19 -0
- data/lib/decidim/meetings.rb +1 -0
- data/lib/decidim/meetings/api.rb +8 -0
- data/lib/decidim/meetings/component.rb +6 -3
- data/lib/decidim/meetings/version.rb +1 -1
- metadata +23 -15
- data/app/views/decidim/meetings/meeting_widgets/show.html.erb +0 -9
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f49b1f1b6174033a3ff2af8e7e69fcd14fb7a7586c0ee7d865a144109aea7c24
|
4
|
+
data.tar.gz: ff2bc14eb13640978f7d15e5f3db7cc1825fe6afec7e73e2a26c04c1d96df22e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
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
|
@@ -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
|
-
|
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]
|
@@ -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
|
data/config/locales/ca.yml
CHANGED
@@ -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:
|
data/config/locales/en.yml
CHANGED
@@ -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.
|
data/config/locales/es.yml
CHANGED
@@ -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.
|
data/config/locales/is-IS.yml
CHANGED
@@ -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:
|
data/config/locales/nl.yml
CHANGED
@@ -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:
|
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.
|
data/config/locales/no.yml
CHANGED
@@ -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
|
data/lib/decidim/meetings.rb
CHANGED
@@ -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::
|
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
|
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.
|
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-
|
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.
|
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.
|
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.
|
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.
|
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.
|
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.
|
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.
|
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.
|
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.
|
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.
|
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.
|
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.
|
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>
|