decidim-conferences 0.23.5 → 0.24.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/app/cells/decidim/conferences/conference_speaker/show.erb +1 -1
- data/app/cells/decidim/conferences/media_link/show.erb +1 -1
- data/app/cells/decidim/conferences/media_link_cell.rb +1 -0
- data/app/commands/decidim/conferences/admin/create_conference_speaker.rb +40 -18
- data/app/commands/decidim/conferences/admin/create_partner.rb +33 -14
- data/app/commands/decidim/conferences/admin/invite_user_to_join_conference.rb +1 -1
- data/app/commands/decidim/conferences/admin/update_conference_speaker.rb +41 -17
- data/app/commands/decidim/conferences/admin/update_partner.rb +30 -10
- data/app/controllers/decidim/conferences/admin/imports_controller.rb +14 -0
- data/app/controllers/decidim/conferences/admin/moderations/reports_controller.rb +14 -0
- data/app/forms/decidim/conferences/admin/conference_form.rb +3 -2
- data/app/forms/decidim/conferences/admin/conference_speaker_form.rb +1 -1
- data/app/forms/decidim/conferences/admin/media_link_form.rb +1 -1
- data/app/forms/decidim/conferences/admin/partner_form.rb +2 -1
- data/app/models/decidim/conference_meeting.rb +1 -1
- data/app/models/decidim/conference_speaker.rb +1 -1
- data/app/models/decidim/conference_speaker_conference_meeting.rb +2 -2
- data/app/models/decidim/conferences/conference_meeting_registration_type.rb +2 -2
- data/app/models/decidim/conferences/registration_type.rb +1 -1
- data/app/permissions/decidim/conferences/permissions.rb +1 -1
- data/app/presenters/decidim/conferences/conference_stats_presenter.rb +1 -1
- data/app/views/decidim/conferences/admin/conference_invites/index.html.erb +1 -1
- data/app/views/decidim/conferences/admin/conference_registrations/index.html.erb +1 -1
- data/app/views/decidim/conferences/admin/partners/_form.html.erb +1 -1
- data/app/views/layouts/decidim/admin/conference.html.erb +2 -1
- data/config/locales/ar.yml +6 -4
- data/config/locales/ca.yml +50 -3
- data/config/locales/cs.yml +51 -4
- data/config/locales/de.yml +16 -3
- data/config/locales/el.yml +6 -4
- data/config/locales/en.yml +50 -3
- data/config/locales/es-MX.yml +50 -3
- data/config/locales/es-PY.yml +50 -3
- data/config/locales/es.yml +50 -3
- data/config/locales/eu.yml +6 -4
- data/config/locales/fi-plain.yml +50 -3
- data/config/locales/fi.yml +50 -3
- data/config/locales/fr-CA.yml +16 -3
- data/config/locales/fr.yml +16 -3
- data/config/locales/gl.yml +35 -4
- data/config/locales/hu.yml +6 -4
- data/config/locales/id-ID.yml +6 -4
- data/config/locales/it.yml +6 -4
- data/config/locales/ja.yml +12 -4
- data/config/locales/lv.yml +6 -4
- data/config/locales/nl.yml +50 -3
- data/config/locales/no.yml +6 -4
- data/config/locales/pl.yml +16 -3
- data/config/locales/pt-BR.yml +6 -4
- data/config/locales/pt.yml +6 -4
- data/config/locales/ro-RO.yml +16 -3
- data/config/locales/sk.yml +6 -4
- data/config/locales/sv.yml +50 -3
- data/config/locales/tr-TR.yml +13 -4
- data/config/locales/zh-CN.yml +6 -4
- data/db/migrate/20210310134942_add_followable_counter_cache_to_conferences.rb +16 -0
- data/lib/decidim/api/conference_media_link_type.rb +18 -0
- data/lib/decidim/api/conference_partner_type.rb +19 -0
- data/lib/decidim/api/conference_speaker_type.rb +23 -0
- data/lib/decidim/api/conference_type.rb +42 -0
- data/lib/decidim/conferences.rb +1 -0
- data/lib/decidim/conferences/admin_engine.rb +3 -1
- data/lib/decidim/conferences/api.rb +10 -0
- data/lib/decidim/conferences/engine.rb +7 -1
- data/lib/decidim/conferences/participatory_space.rb +25 -25
- data/lib/decidim/conferences/query_extensions.rb +43 -0
- data/lib/decidim/conferences/test/factories.rb +6 -6
- data/lib/decidim/conferences/version.rb +1 -1
- metadata +21 -16
- data/app/types/decidim/conferences/conference_media_link_type.rb +0 -19
- data/app/types/decidim/conferences/conference_partner_type.rb +0 -20
- data/app/types/decidim/conferences/conference_speaker_type.rb +0 -24
- data/app/types/decidim/conferences/conference_type.rb +0 -45
data/config/locales/pt-BR.yml
CHANGED
@@ -22,6 +22,12 @@ pt:
|
|
22
22
|
slogan: Slogan
|
23
23
|
slug: Lesma de URL
|
24
24
|
title: Título
|
25
|
+
conference_media_link:
|
26
|
+
weight: Peso
|
27
|
+
conference_partner:
|
28
|
+
weight: Peso
|
29
|
+
conference_registration_type:
|
30
|
+
weight: Peso
|
25
31
|
conference_speaker:
|
26
32
|
full_name: Nome completo
|
27
33
|
conference_user_role:
|
@@ -265,10 +271,6 @@ pt:
|
|
265
271
|
conferences:
|
266
272
|
conference_registration:
|
267
273
|
confirm: "%{user_name} confirmou o registro da conferência em %{resource_name} conferência"
|
268
|
-
partner:
|
269
|
-
create: "%{user_name} criado %{resource_name} para a conferência %{space_name}"
|
270
|
-
delete: "%{user_name} removeu o usuário %{resource_name} da conferência de %{space_name}"
|
271
|
-
update: "%{user_name} atualizado %{resource_name} na conferência de %{space_name}"
|
272
274
|
registration_type:
|
273
275
|
create: "%{user_name} criou o tipo de registro %{resource_name} na conferência de %{space_name}"
|
274
276
|
publish: "%{user_name} publicou o tipo de registro %{resource_name} na conferência %{space_name}"
|
data/config/locales/pt.yml
CHANGED
@@ -22,6 +22,12 @@ pt:
|
|
22
22
|
slogan: Slogan
|
23
23
|
slug: Campo de dados dinâmicos de URL
|
24
24
|
title: Título
|
25
|
+
conference_media_link:
|
26
|
+
weight: Peso
|
27
|
+
conference_partner:
|
28
|
+
weight: Peso
|
29
|
+
conference_registration_type:
|
30
|
+
weight: Peso
|
25
31
|
conference_speaker:
|
26
32
|
full_name: Nome completo
|
27
33
|
conference_user_role:
|
@@ -266,10 +272,6 @@ pt:
|
|
266
272
|
conferences:
|
267
273
|
conference_registration:
|
268
274
|
confirm: "%{user_name} confirmou um registo da conferência na conferência %{resource_name}"
|
269
|
-
partner:
|
270
|
-
create: "%{user_name} criou %{resource_name} na conferência %{space_name}"
|
271
|
-
delete: "%{user_name} removeu o administrador %{resource_name} da conferência %{space_name}"
|
272
|
-
update: "%{user_name} atualizou %{resource_name} na conferência %{space_name}"
|
273
275
|
registration_type:
|
274
276
|
create: "%{user_name} criou o tipo de registo %{resource_name} na conferência %{space_name}"
|
275
277
|
publish: "%{user_name} publicou o tipo de registo %{resource_name} na conferência %{space_name}"
|
data/config/locales/ro-RO.yml
CHANGED
@@ -22,6 +22,12 @@ ro:
|
|
22
22
|
slogan: Slogan
|
23
23
|
slug: Adresă URL
|
24
24
|
title: Titlu
|
25
|
+
conference_media_link:
|
26
|
+
weight: Greutate
|
27
|
+
conference_partner:
|
28
|
+
weight: Greutate
|
29
|
+
conference_registration_type:
|
30
|
+
weight: Greutate
|
25
31
|
conference_speaker:
|
26
32
|
full_name: Numele complet
|
27
33
|
conference_user_role:
|
@@ -270,9 +276,9 @@ ro:
|
|
270
276
|
conference_registration:
|
271
277
|
confirm: "%{user_name} a confirmat înregistrarea conferinței în %{resource_name} conferință"
|
272
278
|
partner:
|
273
|
-
create: "%{user_name} a creat %{resource_name}
|
274
|
-
delete: "%{user_name} a
|
275
|
-
update: "%{user_name} a actualizat %{resource_name}
|
279
|
+
create: "%{user_name} a creat vorbitorul %{resource_name} pentru conferința %{space_name}"
|
280
|
+
delete: "%{user_name} a şters vorbitorul %{resource_name} de la conferinţa %{space_name}"
|
281
|
+
update: "%{user_name} a actualizat vorbitorul %{resource_name} în conferința %{space_name}"
|
276
282
|
registration_type:
|
277
283
|
create: "%{user_name} a creat tipul de înregistrare %{resource_name} în conferința %{space_name}"
|
278
284
|
publish: "%{user_name} a publicat tipul de înregistrare %{resource_name} în conferința %{space_name}"
|
@@ -406,6 +412,7 @@ ro:
|
|
406
412
|
personal_website: Website personal
|
407
413
|
show:
|
408
414
|
more_info: mai multe informații
|
415
|
+
speaking_at: Vorbind la
|
409
416
|
conference_speaker_cell:
|
410
417
|
personal_url:
|
411
418
|
personal_website: Website personal
|
@@ -543,6 +550,12 @@ ro:
|
|
543
550
|
email_outro: Ați primit această notificare deoarece urmăriți „” conferința%{resource_title}. O puteți anula de la link-ul anterior.
|
544
551
|
email_subject: Vine conferința "%{resource_title}" !
|
545
552
|
notification_title: Conferința <a href="%{resource_path}">%{resource_title}</a> urmează în 2 zile.
|
553
|
+
help:
|
554
|
+
participatory_spaces:
|
555
|
+
conferences:
|
556
|
+
contextual: "<p>O <strong>conferință</strong> este o colecție de întâlniri organizate într-un program, cu un număr de persoane invitate ca vorbitori, precum și alte domenii de informare tipice marilor congrese sau evenimente sociale (înregistrare, lista organizațiilor care sponsorizează evenimentul etc.</p> <p>Exemple: O conferință poate fi un eveniment relevant pentru o organizație și membrii acesteia; sau să se desfășoare ca parte a unui proces participativ sau în urma unei consultări.</p>\n"
|
557
|
+
page: "<p>O <strong>conferință</strong> este o colecție de întâlniri organizate într-un program, cu un număr de persoane invitate ca vorbitori, precum și alte domenii de informare tipice marilor congrese sau evenimente sociale (înregistrare, lista organizațiilor care sponsorizează evenimentul etc.</p> <p>Exemple: O conferință poate fi un eveniment relevant pentru o organizație și membrii acesteia; sau să se desfășoare ca parte a unui proces participativ sau în urma unei consultări.</p>\n"
|
558
|
+
title: Ce sunt conferinţele?
|
546
559
|
log:
|
547
560
|
value_types:
|
548
561
|
conference_presenter:
|
data/config/locales/sk.yml
CHANGED
@@ -22,6 +22,12 @@ sk:
|
|
22
22
|
slogan: Slogan
|
23
23
|
slug: URL krátky odkaz
|
24
24
|
title: Názov
|
25
|
+
conference_media_link:
|
26
|
+
weight: Váha
|
27
|
+
conference_partner:
|
28
|
+
weight: Váha
|
29
|
+
conference_registration_type:
|
30
|
+
weight: Váha
|
25
31
|
conference_speaker:
|
26
32
|
full_name: Meno a priezvisko
|
27
33
|
conference_user_role:
|
@@ -272,10 +278,6 @@ sk:
|
|
272
278
|
conferences:
|
273
279
|
conference_registration:
|
274
280
|
confirm: "%{user_name} potvrdil registráciu na konferencii %{resource_name}"
|
275
|
-
partner:
|
276
|
-
create: "%{user_name} pridal %{resource_name} do konferencie %{space_name}"
|
277
|
-
delete: "%{user_name} odstránil administrátora %{resource_name} z konferencie %{space_name}"
|
278
|
-
update: "%{user_name} zmenil %{resource_name} v konferencii %{space_name}"
|
279
281
|
registration_type:
|
280
282
|
create: "%{user_name} vytvoril typ registrácie %{resource_name} na konferencii %{space_name}"
|
281
283
|
publish: "%{user_name} publikoval typ registrácie %{resource_name} na konferencii %{space_name}"
|
data/config/locales/sv.yml
CHANGED
@@ -3,6 +3,7 @@ sv:
|
|
3
3
|
attributes:
|
4
4
|
conference:
|
5
5
|
assemblies_ids: Relaterade grupper
|
6
|
+
available_slots: Tillgängliga platser
|
6
7
|
banner_image: Bannerbild
|
7
8
|
consultations_ids: Relaterade samråd
|
8
9
|
copy_categories: Kopiera kategorier
|
@@ -10,20 +11,59 @@ sv:
|
|
10
11
|
copy_features: Kopiera funktioner
|
11
12
|
decidim_scope_id: Omfång
|
12
13
|
description: Beskrivning
|
14
|
+
end_date: Slutdatum
|
13
15
|
hashtag: Hashtag
|
14
16
|
hero_image: Bild till startsida
|
17
|
+
location: Plats
|
18
|
+
main_logo: Huvudbild
|
19
|
+
objectives: Mål
|
15
20
|
participatory_processes_ids: Relaterade dialoger
|
16
21
|
promoted: Uppmärksammad
|
17
22
|
published_at: Publicerad
|
23
|
+
registration_terms: Registreringsvillkor
|
24
|
+
registrations_enabled: Registrering aktiverad
|
18
25
|
scope_id: Omfång
|
19
26
|
scopes_enabled: Omfång aktiverat
|
20
27
|
short_description: Kort beskrivning
|
21
28
|
show_statistics: Visa statistik
|
29
|
+
sign_date: Underskriftsdatum
|
30
|
+
signature: Underskrift
|
31
|
+
signature_name: signaturnamn
|
22
32
|
slogan: Slogan
|
23
33
|
slug: URL-slug
|
34
|
+
start_date: Startdatum
|
35
|
+
title: Titel
|
36
|
+
conference_media_link:
|
37
|
+
date: Datum
|
38
|
+
link: Länk
|
39
|
+
title: Titel
|
40
|
+
weight: Vikt
|
41
|
+
conference_partner:
|
42
|
+
link: Länk
|
43
|
+
logo: Logga
|
44
|
+
name: Namn
|
45
|
+
partner_type: Typ av partner
|
46
|
+
weight: Vikt
|
47
|
+
conference_registration_invite:
|
48
|
+
email: E-post
|
49
|
+
name: Namn
|
50
|
+
registration_type_id: Registreringstyp
|
51
|
+
user_id: Användare
|
52
|
+
conference_registration_type:
|
53
|
+
description: Beskrivning
|
54
|
+
price: Pris
|
24
55
|
title: Titel
|
56
|
+
weight: Vikt
|
25
57
|
conference_speaker:
|
58
|
+
affiliation: Anknytning
|
59
|
+
avatar: Avatar
|
60
|
+
conference_meeting_ids: Relaterade möten
|
26
61
|
full_name: Fullständigt namn
|
62
|
+
personal_url: Personlig URL
|
63
|
+
position: Plats
|
64
|
+
short_bio: Kort biographi
|
65
|
+
twitter_handle: Twitternamn
|
66
|
+
user_id: Användare
|
27
67
|
conference_user_role:
|
28
68
|
email: E-post
|
29
69
|
name: Namn
|
@@ -267,9 +307,9 @@ sv:
|
|
267
307
|
conference_registration:
|
268
308
|
confirm: "%{user_name} bekräftade en konferensregistrering till konferensen %{resource_name}"
|
269
309
|
partner:
|
270
|
-
create: "%{user_name} skapade %{resource_name}
|
271
|
-
delete: "%{user_name} tog bort
|
272
|
-
update: "%{user_name} uppdaterade %{resource_name}
|
310
|
+
create: "%{user_name} skapade partnern %{resource_name} i konferensen %{space_name}"
|
311
|
+
delete: "%{user_name} tog bort partnern %{resource_name} från konferensen %{space_name}"
|
312
|
+
update: "%{user_name} uppdaterade partnern %{resource_name} i konferensen %{space_name}"
|
273
313
|
registration_type:
|
274
314
|
create: "%{user_name} skapade registreringstypen %{resource_name} på konferensen %{space_name}"
|
275
315
|
publish: "%{user_name} publicerade registreringstypen %{resource_name} till konferensen %{space_name}"
|
@@ -402,6 +442,7 @@ sv:
|
|
402
442
|
personal_website: Personlig hemsida
|
403
443
|
show:
|
404
444
|
more_info: mer information
|
445
|
+
speaking_at: Talar vid
|
405
446
|
conference_speaker_cell:
|
406
447
|
personal_url:
|
407
448
|
personal_website: Personlig hemsida
|
@@ -539,6 +580,12 @@ sv:
|
|
539
580
|
email_outro: Du har fått det här meddelandet eftersom du följer konferensen "%{resource_title}". Du kan sluta att följa den från föregående länk.
|
540
581
|
email_subject: Konferensen "%{resource_title}" kommer!
|
541
582
|
notification_title: Konferensen <a href="%{resource_path}">%{resource_title}</a> börjar om två dagar.
|
583
|
+
help:
|
584
|
+
participatory_spaces:
|
585
|
+
conferences:
|
586
|
+
contextual: "<p>En <strong>konferens</strong> är en samling av möten som arrangeras i ett program, med ett antal personer inbjudna som talare, och andra informationsfält typiska för stora kongresser eller sociala evenemang (registrering, förteckning över organisationer som stöder eller sponsrar evenemanget, etc.).</p> <p>Exempel: En konferens kan vara ett relevant evenemang för en organisation och dess medlemmar, eller äga rum som en del av en deltagarprocess eller följa ett samråd.</p>\n"
|
587
|
+
page: "<p>En <strong>konferens</strong> är en samling av möten som arrangeras i ett program, med ett antal personer inbjudna som talare, och andra informationsfält typiska för stora kongresser eller sociala evenemang (registrering, förteckning över organisationer som stöder eller sponsrar evenemanget, etc.).</p> <p>Exempel: En konferens kan vara ett relevant evenemang för en organisation och dess medlemmar, eller äga rum som en del av en deltagarprocess eller följa ett samråd.</p>\n"
|
588
|
+
title: Vad är konferenser?
|
542
589
|
log:
|
543
590
|
value_types:
|
544
591
|
conference_presenter:
|
data/config/locales/tr-TR.yml
CHANGED
@@ -22,6 +22,12 @@ tr:
|
|
22
22
|
slogan: Slogan
|
23
23
|
slug: URL özel bilgisi
|
24
24
|
title: Başlık
|
25
|
+
conference_media_link:
|
26
|
+
weight: Ağırlık
|
27
|
+
conference_partner:
|
28
|
+
weight: Ağırlık
|
29
|
+
conference_registration_type:
|
30
|
+
weight: Ağırlık
|
25
31
|
conference_speaker:
|
26
32
|
full_name: Ad Soyad
|
27
33
|
conference_user_role:
|
@@ -266,10 +272,6 @@ tr:
|
|
266
272
|
conferences:
|
267
273
|
conference_registration:
|
268
274
|
confirm: "%{user_name} , %{resource_name} konferansta bir konferans kaydını onayladı"
|
269
|
-
partner:
|
270
|
-
create: "%{user_name} %{space_name} konferansa %{resource_name} oluşturuldu"
|
271
|
-
delete: "%{user_name} kullanıcı uzaklaştırıldı %{resource_name} den %{space_name} konferans"
|
272
|
-
update: "%{user_name} %{space_name} konferansta %{resource_name} güncellendi"
|
273
275
|
registration_type:
|
274
276
|
create: "%{user_name} , %{space_name} konferansta %{resource_name} kayıt tipini oluşturdu"
|
275
277
|
publish: "%{user_name} , %{space_name} konferansta %{resource_name} kayıt tipini yayınladı"
|
@@ -402,6 +404,7 @@ tr:
|
|
402
404
|
personal_website: Kişisel web sitesi
|
403
405
|
show:
|
404
406
|
more_info: Daha fazla bilgi
|
407
|
+
speaking_at: Konuşma
|
405
408
|
conference_speaker_cell:
|
406
409
|
personal_url:
|
407
410
|
personal_website: Kişisel web sitesi
|
@@ -539,6 +542,12 @@ tr:
|
|
539
542
|
email_outro: '"%{resource_title}" konferansını izlediğiniz için bu bildirimi aldınız. Bir önceki bağlantıdan takip etmeyi bırakabilirsiniz.'
|
540
543
|
email_subject: '"%{resource_title}" konferansı geliyor!'
|
541
544
|
notification_title: <a href="%{resource_path}">%{resource_title}</a> konferans 2 gün içinde geliyor.
|
545
|
+
help:
|
546
|
+
participatory_spaces:
|
547
|
+
conferences:
|
548
|
+
contextual: "<p> <strong> Konferans </strong>, çok sayıda kişinin konuşmacı olarak davet edildiği bir programda düzenlenen toplantılar ve büyük kongreler veya sosyal etkinlikler için tipik olan diğer bilgi alanları (kayıt, destek veren kuruluşların listesi) veya etkinlik sponsoru vb. </p> <p> Örnekler: Bir konferans, bir kuruluş ve üyeleri için alakalı bir etkinlik olabilir veya katılımcı bir sürecin parçası olarak veya bir danışma sürecini takiben gerçekleşebilir. </p>\n"
|
549
|
+
page: "<p> <strong> Konferans </strong>, çok sayıda kişinin konuşmacı olarak davet edildiği bir programda düzenlenen toplantılar ve büyük kongreler veya sosyal etkinlikler için tipik olan diğer bilgi alanları (kayıt, destek veren kuruluşların listesi) veya etkinlik sponsoru vb. </p> <p> Örnekler: Bir konferans, bir kuruluş ve üyeleri için alakalı bir etkinlik olabilir veya katılımcı bir sürecin parçası olarak veya bir danışma sürecini takiben gerçekleşebilir. </p>\n"
|
550
|
+
title: Konferans nedir?
|
542
551
|
log:
|
543
552
|
value_types:
|
544
553
|
conference_presenter:
|
data/config/locales/zh-CN.yml
CHANGED
@@ -22,6 +22,12 @@ zh-CN:
|
|
22
22
|
slogan: 斯洛根文
|
23
23
|
slug: URL 名称
|
24
24
|
title: 标题
|
25
|
+
conference_media_link:
|
26
|
+
weight: 权重
|
27
|
+
conference_partner:
|
28
|
+
weight: 权重
|
29
|
+
conference_registration_type:
|
30
|
+
weight: 权重
|
25
31
|
conference_speaker:
|
26
32
|
full_name: 全名
|
27
33
|
conference_user_role:
|
@@ -263,10 +269,6 @@ zh-CN:
|
|
263
269
|
conferences:
|
264
270
|
conference_registration:
|
265
271
|
confirm: "%{user_name} 在 %{resource_name} 次会议上确认了会议注册"
|
266
|
-
partner:
|
267
|
-
create: "%{user_name} 创建了 %{resource_name} 到 %{space_name} 会议"
|
268
|
-
delete: "%{user_name} 将 %{resource_name} 管理员从 %{space_name} 次会议中删除"
|
269
|
-
update: "%{user_name} 在 %{space_name} 次会议上更新 %{resource_name}"
|
270
272
|
registration_type:
|
271
273
|
create: "%{user_name} 在 %{space_name} 次会议上创建了 %{resource_name} 注册类型"
|
272
274
|
publish: "%{user_name} 在 %{space_name} 次会议上发布了 %{resource_name} 注册类型"
|
@@ -0,0 +1,16 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
class AddFollowableCounterCacheToConferences < ActiveRecord::Migration[5.2]
|
4
|
+
def change
|
5
|
+
add_column :decidim_conferences, :follows_count, :integer, null: false, default: 0, index: true
|
6
|
+
|
7
|
+
reversible do |dir|
|
8
|
+
dir.up do
|
9
|
+
Decidim::Conference.reset_column_information
|
10
|
+
Decidim::Conference.find_each do |record|
|
11
|
+
record.class.reset_counters(record.id, :follows)
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Decidim
|
4
|
+
module Conferences
|
5
|
+
# This type represents a conference.
|
6
|
+
class ConferenceMediaLinkType < Decidim::Api::Types::BaseObject
|
7
|
+
description "A conference media link"
|
8
|
+
|
9
|
+
field :id, GraphQL::Types::ID, "Internal ID for this media link", null: false
|
10
|
+
field :title, Decidim::Core::TranslatedFieldType, "Title for this media link", null: true
|
11
|
+
field :link, GraphQL::Types::String, "URL for this media link", null: true
|
12
|
+
field :date, Decidim::Core::DateType, "Relevant date for the media link", null: true
|
13
|
+
field :weight, GraphQL::Types::Int, "Order of appearance in which it should be presented", null: true
|
14
|
+
field :created_at, Decidim::Core::DateTimeType, "The time this entry was created", null: true
|
15
|
+
field :updated_at, Decidim::Core::DateTimeType, "The time this entry was updated", null: true
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
@@ -0,0 +1,19 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Decidim
|
4
|
+
module Conferences
|
5
|
+
# This type represents a conference.
|
6
|
+
class ConferencePartnerType < Decidim::Api::Types::BaseObject
|
7
|
+
description "A conference partner"
|
8
|
+
|
9
|
+
field :id, GraphQL::Types::ID, "ID of the resource", null: false
|
10
|
+
field :name, GraphQL::Types::String, "Partner name", null: true
|
11
|
+
field :partner_type, GraphQL::Types::String, "Partner type", null: true
|
12
|
+
field :weight, GraphQL::Types::Int, "Order of appearance in which it should be presented", null: true
|
13
|
+
field :link, GraphQL::Types::String, "Relevant URL for this partner", null: true
|
14
|
+
field :logo, GraphQL::Types::String, "Link to the partner's logo", null: true
|
15
|
+
field :created_at, Decidim::Core::DateTimeType, "The time this partner was created", null: true
|
16
|
+
field :updated_at, Decidim::Core::DateTimeType, "The time this partner was updated", null: true
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
@@ -0,0 +1,23 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Decidim
|
4
|
+
module Conferences
|
5
|
+
# This type represents a conference.
|
6
|
+
class ConferenceSpeakerType < Decidim::Api::Types::BaseObject
|
7
|
+
description "A conference speaker"
|
8
|
+
|
9
|
+
field :id, GraphQL::Types::ID, "Internal ID of the speaker", null: false
|
10
|
+
field :full_name, GraphQL::Types::String, "Full name of the speaker", null: true
|
11
|
+
field :position, Decidim::Core::TranslatedFieldType, "Position of the speaker in the conference", null: true
|
12
|
+
field :affiliation, Decidim::Core::TranslatedFieldType, "Affiliation of the speaker", null: true
|
13
|
+
field :twitter_handle, GraphQL::Types::String, "Twitter handle", null: true
|
14
|
+
field :short_bio, Decidim::Core::TranslatedFieldType, "Short biography of the speaker", null: true
|
15
|
+
field :personal_url, GraphQL::Types::String, "Personal URL of the speaker", null: true
|
16
|
+
field :avatar, GraphQL::Types::String, "Avatar of the speaker", null: true
|
17
|
+
field :user, Decidim::Core::UserType, "Decidim user corresponding to this speaker", null: true
|
18
|
+
|
19
|
+
field :created_at, Decidim::Core::DateTimeType, "The time this member was created ", null: true
|
20
|
+
field :updated_at, Decidim::Core::DateTimeType, "The time this member was updated", null: true
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
@@ -0,0 +1,42 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Decidim
|
4
|
+
module Conferences
|
5
|
+
# This type represents a conference.
|
6
|
+
class ConferenceType < Decidim::Api::Types::BaseObject
|
7
|
+
implements Decidim::Core::ParticipatorySpaceInterface
|
8
|
+
implements Decidim::Core::ScopableInterface
|
9
|
+
implements Decidim::Core::AttachableInterface
|
10
|
+
|
11
|
+
description "A conference"
|
12
|
+
|
13
|
+
field :id, GraphQL::Types::ID, "Internal ID for this conference", null: false
|
14
|
+
field :short_description, Decidim::Core::TranslatedFieldType, "The short description of this conference", null: true
|
15
|
+
field :description, Decidim::Core::TranslatedFieldType, "The description of this conference", null: true
|
16
|
+
field :slug, GraphQL::Types::String, "The slug of this conference", null: true
|
17
|
+
field :hashtag, GraphQL::Types::String, "The hashtag for this conference", null: true
|
18
|
+
field :slogan, Decidim::Core::TranslatedFieldType, "The slogan of the conference", null: true
|
19
|
+
field :location, String, "The location of this conference", null: true
|
20
|
+
field :created_at, Decidim::Core::DateTimeType, "The time this conference was created", null: true
|
21
|
+
field :updated_at, Decidim::Core::DateTimeType, "The time this conference was updated", null: true
|
22
|
+
field :published_at, Decidim::Core::DateTimeType, "The time this conference was published", null: true
|
23
|
+
field :reference, GraphQL::Types::String, "Reference prefix for this conference", null: true
|
24
|
+
|
25
|
+
field :hero_image, GraphQL::Types::String, "The hero image for this conference", null: true
|
26
|
+
field :banner_image, GraphQL::Types::String, "The banner image for this conference", null: true
|
27
|
+
field :promoted, GraphQL::Types::Boolean, "If this conference is promoted (therefore in the homepage)", null: true
|
28
|
+
field :objectives, Decidim::Core::TranslatedFieldType, "The objectives of the conference", null: true
|
29
|
+
field :show_statistics, GraphQL::Types::Boolean, "If this conference shows the statistics", null: true
|
30
|
+
field :start_date, Decidim::Core::DateType, "The date this conference starts", null: true
|
31
|
+
field :end_date, Decidim::Core::DateType, "The date this conference ends", null: true
|
32
|
+
field :registrations_enabled, GraphQL::Types::Boolean, "If the registrations are enabled in this conference", null: true
|
33
|
+
field :available_slots, GraphQL::Types::Int, "The number of available slots in this conference", null: true
|
34
|
+
field :registration_terms, Decidim::Core::TranslatedFieldType, "The registration terms of this conference", null: true
|
35
|
+
|
36
|
+
field :speakers, [Decidim::Conferences::ConferenceSpeakerType, { null: true }], "List of speakers in this conference", null: true
|
37
|
+
field :partners, [Decidim::Conferences::ConferencePartnerType, { null: true }], "List of partners in this conference", null: true
|
38
|
+
field :categories, [Decidim::Core::CategoryType, { null: true }], "List of categories in this conference", null: true
|
39
|
+
field :media_links, [Decidim::Conferences::ConferenceMediaLinkType, { null: true }], "List of media links in this conference", null: true
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
data/lib/decidim/conferences.rb
CHANGED
@@ -61,6 +61,7 @@ module Decidim
|
|
61
61
|
get :share
|
62
62
|
end
|
63
63
|
resources :exports, only: :create
|
64
|
+
resources :imports, only: [:new, :create]
|
64
65
|
end
|
65
66
|
|
66
67
|
resources :moderations do
|
@@ -69,6 +70,7 @@ module Decidim
|
|
69
70
|
put :hide
|
70
71
|
put :unhide
|
71
72
|
end
|
73
|
+
resources :reports, controller: "moderations/reports", only: [:index, :show]
|
72
74
|
end
|
73
75
|
end
|
74
76
|
|
@@ -92,7 +94,7 @@ module Decidim
|
|
92
94
|
menu.item I18n.t("menu.conferences", scope: "decidim.admin"),
|
93
95
|
decidim_admin_conferences.conferences_path,
|
94
96
|
icon_name: "microphone",
|
95
|
-
position:
|
97
|
+
position: 2.8,
|
96
98
|
active: :inclusive,
|
97
99
|
if: allowed_to?(:enter, :space_area, space_name: :conferences)
|
98
100
|
end
|