design-comuni-plone-theme 10.1.0 → 10.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,36 @@
1
1
 
2
2
 
3
+ ## [10.2.0](https://github.com/RedTurtle/design-comuni-plone-theme/compare/v10.1.1...v10.2.0) (2023-11-06)
4
+
5
+
6
+ ### Features
7
+
8
+ * added pager-link data-element to search block pagination ([#389](https://github.com/RedTurtle/design-comuni-plone-theme/issues/389)) ([fbc32a3](https://github.com/RedTurtle/design-comuni-plone-theme/commit/fbc32a32ffc04054b39eb623584aadd1dc517beb))
9
+ * added title param to SideMenuByTitle ([d6718b4](https://github.com/RedTurtle/design-comuni-plone-theme/commit/d6718b41ef0ce61959ca884ad0012825c09701bf))
10
+
11
+
12
+ ### Bug Fixes
13
+
14
+ * messages in EventoView contatti ([348469f](https://github.com/RedTurtle/design-comuni-plone-theme/commit/348469fcbe63136dc9bfa3fcbfe04ea1728ab953))
15
+ * missing locales update ([633be45](https://github.com/RedTurtle/design-comuni-plone-theme/commit/633be45a7ea425ebfa1a5e9bf7cf3c0b44d6250c))
16
+
17
+
18
+ ### Maintenance
19
+
20
+ * split EventoVView Contatti in different components ([5abf0d8](https://github.com/RedTurtle/design-comuni-plone-theme/commit/5abf0d85d101fd2c67f663c8eb68ddce698d6c2d))
21
+
22
+
23
+ ### Documentation
24
+
25
+ * updated publiccode and release log ([0a09061](https://github.com/RedTurtle/design-comuni-plone-theme/commit/0a090616afffd574822c8d3874e7de9abb90242a))
26
+
27
+ ## [10.1.1](https://github.com/redturtle/design-comuni-plone-theme/compare/v10.1.0...v10.1.1) (2023-11-06)
28
+
29
+
30
+ ### Bug Fixes
31
+
32
+ * fix sideMenuByTitles to remove duplicate text title when it is hidden ([9da33c8](https://github.com/redturtle/design-comuni-plone-theme/commit/9da33c8d5f5470e20873a04e5963d66a3cc46515))
33
+
3
34
  ## [10.1.0](https://github.com/redturtle/design-comuni-plone-theme/compare/v10.0.0...v10.1.0) (2023-11-06)
4
35
 
5
36
 
package/RELEASE.md CHANGED
@@ -41,6 +41,12 @@
41
41
  - ...
42
42
  -->
43
43
 
44
+ ## Versione 10.2.0 (06/11/2023)
45
+
46
+ ### Novità
47
+
48
+ - Aggiunto data-element pager-link al paginatore per il blocco Cerca per i quali viene impostata l'opzione service-link.
49
+
44
50
  ## Versione 9.0.1 (03/11/2023)
45
51
 
46
52
  ### Migliorie
@@ -164,7 +164,6 @@ msgid "Content in evidence"
164
164
  msgstr ""
165
165
 
166
166
  #: components/ItaliaTheme/View/Commons/SideMenu
167
- #: components/ItaliaTheme/View/Commons/SideMenuByTitles
168
167
  # defaultMessage: Contenuto
169
168
  msgid "Contenuto"
170
169
  msgstr ""
@@ -1264,11 +1263,6 @@ msgstr ""
1264
1263
  msgid "contatti"
1265
1264
  msgstr ""
1266
1265
 
1267
- #: components/ItaliaTheme/View/EventoView/EventoContatti
1268
- # defaultMessage: Contatti interni
1269
- msgid "contatti_interni"
1270
- msgstr ""
1271
-
1272
1266
  #: components/ItaliaTheme/View/ServizioView/ServizioAChiSiRivolge
1273
1267
  # defaultMessage: Copertura geografica del servizio
1274
1268
  msgid "copertura_geografica"
@@ -2613,7 +2607,7 @@ msgstr ""
2613
2607
  msgid "order_by"
2614
2608
  msgstr ""
2615
2609
 
2616
- #: components/ItaliaTheme/View/EventoView/EventoContatti
2610
+ #: components/ItaliaTheme/View/EventoView/EventoContattiOrganizzatoreInterno
2617
2611
  # defaultMessage: Organizzato da
2618
2612
  msgid "organizzato_da"
2619
2613
  msgstr ""
@@ -3700,7 +3694,7 @@ msgstr ""
3700
3694
  msgid "successivo"
3701
3695
  msgstr ""
3702
3696
 
3703
- #: components/ItaliaTheme/View/EventoView/EventoContatti
3697
+ #: components/ItaliaTheme/View/EventoView/EventoContattiSupportatoDa
3704
3698
  # defaultMessage: Con il supporto di
3705
3699
  msgid "supported_by"
3706
3700
  msgstr ""
@@ -149,7 +149,6 @@ msgid "Content in evidence"
149
149
  msgstr ""
150
150
 
151
151
  #: components/ItaliaTheme/View/Commons/SideMenu
152
- #: components/ItaliaTheme/View/Commons/SideMenuByTitles
153
152
  # defaultMessage: Contenuto
154
153
  msgid "Contenuto"
155
154
  msgstr "Content"
@@ -1249,11 +1248,6 @@ msgstr ""
1249
1248
  msgid "contatti"
1250
1249
  msgstr "Contacts"
1251
1250
 
1252
- #: components/ItaliaTheme/View/EventoView/EventoContatti
1253
- # defaultMessage: Contatti interni
1254
- msgid "contatti_interni"
1255
- msgstr "Internal contacts"
1256
-
1257
1251
  #: components/ItaliaTheme/View/ServizioView/ServizioAChiSiRivolge
1258
1252
  # defaultMessage: Copertura geografica del servizio
1259
1253
  msgid "copertura_geografica"
@@ -2598,7 +2592,7 @@ msgstr "Opening time"
2598
2592
  msgid "order_by"
2599
2593
  msgstr "Order by"
2600
2594
 
2601
- #: components/ItaliaTheme/View/EventoView/EventoContatti
2595
+ #: components/ItaliaTheme/View/EventoView/EventoContattiOrganizzatoreInterno
2602
2596
  # defaultMessage: Organizzato da
2603
2597
  msgid "organizzato_da"
2604
2598
  msgstr ""
@@ -3685,7 +3679,7 @@ msgstr "Tags"
3685
3679
  msgid "successivo"
3686
3680
  msgstr ""
3687
3681
 
3688
- #: components/ItaliaTheme/View/EventoView/EventoContatti
3682
+ #: components/ItaliaTheme/View/EventoView/EventoContattiSupportatoDa
3689
3683
  # defaultMessage: Con il supporto di
3690
3684
  msgid "supported_by"
3691
3685
  msgstr ""
@@ -158,7 +158,6 @@ msgid "Content in evidence"
158
158
  msgstr "Contenido destacado"
159
159
 
160
160
  #: components/ItaliaTheme/View/Commons/SideMenu
161
- #: components/ItaliaTheme/View/Commons/SideMenuByTitles
162
161
  # defaultMessage: Contenuto
163
162
  msgid "Contenuto"
164
163
  msgstr "Contenido"
@@ -1258,11 +1257,6 @@ msgstr "Contactos"
1258
1257
  msgid "contatti"
1259
1258
  msgstr "Contactos"
1260
1259
 
1261
- #: components/ItaliaTheme/View/EventoView/EventoContatti
1262
- # defaultMessage: Contatti interni
1263
- msgid "contatti_interni"
1264
- msgstr "Contactos internos"
1265
-
1266
1260
  #: components/ItaliaTheme/View/ServizioView/ServizioAChiSiRivolge
1267
1261
  # defaultMessage: Copertura geografica del servizio
1268
1262
  msgid "copertura_geografica"
@@ -2607,7 +2601,7 @@ msgstr "Hora de apertura"
2607
2601
  msgid "order_by"
2608
2602
  msgstr "Ordenado por"
2609
2603
 
2610
- #: components/ItaliaTheme/View/EventoView/EventoContatti
2604
+ #: components/ItaliaTheme/View/EventoView/EventoContattiOrganizzatoreInterno
2611
2605
  # defaultMessage: Organizzato da
2612
2606
  msgid "organizzato_da"
2613
2607
  msgstr ""
@@ -3694,7 +3688,7 @@ msgstr "Etiquetas"
3694
3688
  msgid "successivo"
3695
3689
  msgstr ""
3696
3690
 
3697
- #: components/ItaliaTheme/View/EventoView/EventoContatti
3691
+ #: components/ItaliaTheme/View/EventoView/EventoContattiSupportatoDa
3698
3692
  # defaultMessage: Con il supporto di
3699
3693
  msgid "supported_by"
3700
3694
  msgstr "Con el apoyo de"
@@ -166,7 +166,6 @@ msgid "Content in evidence"
166
166
  msgstr ""
167
167
 
168
168
  #: components/ItaliaTheme/View/Commons/SideMenu
169
- #: components/ItaliaTheme/View/Commons/SideMenuByTitles
170
169
  # defaultMessage: Contenuto
171
170
  msgid "Contenuto"
172
171
  msgstr "Contenu"
@@ -1266,11 +1265,6 @@ msgstr ""
1266
1265
  msgid "contatti"
1267
1266
  msgstr "Contacts"
1268
1267
 
1269
- #: components/ItaliaTheme/View/EventoView/EventoContatti
1270
- # defaultMessage: Contatti interni
1271
- msgid "contatti_interni"
1272
- msgstr "Contacts internes"
1273
-
1274
1268
  #: components/ItaliaTheme/View/ServizioView/ServizioAChiSiRivolge
1275
1269
  # defaultMessage: Copertura geografica del servizio
1276
1270
  msgid "copertura_geografica"
@@ -2615,7 +2609,7 @@ msgstr "Horaire d'ouverture"
2615
2609
  msgid "order_by"
2616
2610
  msgstr "Trier par"
2617
2611
 
2618
- #: components/ItaliaTheme/View/EventoView/EventoContatti
2612
+ #: components/ItaliaTheme/View/EventoView/EventoContattiOrganizzatoreInterno
2619
2613
  # defaultMessage: Organizzato da
2620
2614
  msgid "organizzato_da"
2621
2615
  msgstr ""
@@ -3702,7 +3696,7 @@ msgstr "Sujettes"
3702
3696
  msgid "successivo"
3703
3697
  msgstr ""
3704
3698
 
3705
- #: components/ItaliaTheme/View/EventoView/EventoContatti
3699
+ #: components/ItaliaTheme/View/EventoView/EventoContattiSupportatoDa
3706
3700
  # defaultMessage: Con il supporto di
3707
3701
  msgid "supported_by"
3708
3702
  msgstr ""
@@ -149,7 +149,6 @@ msgid "Content in evidence"
149
149
  msgstr "Contenuto in primo piano"
150
150
 
151
151
  #: components/ItaliaTheme/View/Commons/SideMenu
152
- #: components/ItaliaTheme/View/Commons/SideMenuByTitles
153
152
  # defaultMessage: Contenuto
154
153
  msgid "Contenuto"
155
154
  msgstr "Contenuto"
@@ -1249,11 +1248,6 @@ msgstr "Contatti"
1249
1248
  msgid "contatti"
1250
1249
  msgstr "Contatti"
1251
1250
 
1252
- #: components/ItaliaTheme/View/EventoView/EventoContatti
1253
- # defaultMessage: Contatti interni
1254
- msgid "contatti_interni"
1255
- msgstr "Contatti interni"
1256
-
1257
1251
  #: components/ItaliaTheme/View/ServizioView/ServizioAChiSiRivolge
1258
1252
  # defaultMessage: Copertura geografica del servizio
1259
1253
  msgid "copertura_geografica"
@@ -2598,7 +2592,7 @@ msgstr "Orario per il pubblico"
2598
2592
  msgid "order_by"
2599
2593
  msgstr "Ordina per"
2600
2594
 
2601
- #: components/ItaliaTheme/View/EventoView/EventoContatti
2595
+ #: components/ItaliaTheme/View/EventoView/EventoContattiOrganizzatoreInterno
2602
2596
  # defaultMessage: Organizzato da
2603
2597
  msgid "organizzato_da"
2604
2598
  msgstr "Organizzato da"
@@ -3685,7 +3679,7 @@ msgstr "Tags"
3685
3679
  msgid "successivo"
3686
3680
  msgstr ""
3687
3681
 
3688
- #: components/ItaliaTheme/View/EventoView/EventoContatti
3682
+ #: components/ItaliaTheme/View/EventoView/EventoContattiSupportatoDa
3689
3683
  # defaultMessage: Con il supporto di
3690
3684
  msgid "supported_by"
3691
3685
  msgstr "Con il supporto di"
package/locales/volto.pot CHANGED
@@ -1,7 +1,7 @@
1
1
  msgid ""
2
2
  msgstr ""
3
3
  "Project-Id-Version: Plone\n"
4
- "POT-Creation-Date: 2023-11-06T09:06:10.531Z\n"
4
+ "POT-Creation-Date: 2023-11-06T11:52:47.601Z\n"
5
5
  "Last-Translator: Plone i18n <plone-i18n@lists.sourceforge.net>\n"
6
6
  "Language-Team: Plone i18n <plone-i18n@lists.sourceforge.net>\n"
7
7
  "MIME-Version: 1.0\n"
@@ -151,7 +151,6 @@ msgid "Content in evidence"
151
151
  msgstr ""
152
152
 
153
153
  #: components/ItaliaTheme/View/Commons/SideMenu
154
- #: components/ItaliaTheme/View/Commons/SideMenuByTitles
155
154
  # defaultMessage: Contenuto
156
155
  msgid "Contenuto"
157
156
  msgstr ""
@@ -1251,11 +1250,6 @@ msgstr ""
1251
1250
  msgid "contatti"
1252
1251
  msgstr ""
1253
1252
 
1254
- #: components/ItaliaTheme/View/EventoView/EventoContatti
1255
- # defaultMessage: Contatti interni
1256
- msgid "contatti_interni"
1257
- msgstr ""
1258
-
1259
1253
  #: components/ItaliaTheme/View/ServizioView/ServizioAChiSiRivolge
1260
1254
  # defaultMessage: Copertura geografica del servizio
1261
1255
  msgid "copertura_geografica"
@@ -2600,7 +2594,7 @@ msgstr ""
2600
2594
  msgid "order_by"
2601
2595
  msgstr ""
2602
2596
 
2603
- #: components/ItaliaTheme/View/EventoView/EventoContatti
2597
+ #: components/ItaliaTheme/View/EventoView/EventoContattiOrganizzatoreInterno
2604
2598
  # defaultMessage: Organizzato da
2605
2599
  msgid "organizzato_da"
2606
2600
  msgstr ""
@@ -3687,7 +3681,7 @@ msgstr ""
3687
3681
  msgid "successivo"
3688
3682
  msgstr ""
3689
3683
 
3690
- #: components/ItaliaTheme/View/EventoView/EventoContatti
3684
+ #: components/ItaliaTheme/View/EventoView/EventoContattiSupportatoDa
3691
3685
  # defaultMessage: Con il supporto di
3692
3686
  msgid "supported_by"
3693
3687
  msgstr ""
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "design-comuni-plone-theme",
3
3
  "description": "Volto Theme for Italia design guidelines",
4
4
  "license": "GPL-v3",
5
- "version": "10.1.0",
5
+ "version": "10.2.0",
6
6
  "main": "src/index.js",
7
7
  "keywords": [
8
8
  "volto-addon",
package/publiccode.yml CHANGED
@@ -227,9 +227,9 @@ maintenance:
227
227
  name: io-Comune - Il sito AgID per Comuni ed Enti Pubblici
228
228
  platforms:
229
229
  - web
230
- releaseDate: '2023-11-03'
230
+ releaseDate: '2023-11-06'
231
231
  softwareType: standalone/web
232
- softwareVersion: 9.0.1
232
+ softwareVersion: 10.2.0
233
233
  url: 'https://github.com/italia/design-comuni-plone-theme'
234
234
  usedBy:
235
235
  - ASP Comuni Modenesi Area Nord
@@ -18,11 +18,7 @@ import cx from 'classnames';
18
18
  const messages = defineMessages({
19
19
  index: {
20
20
  id: 'index',
21
- defaultMessage: 'Indice',
22
- },
23
- contenuto: {
24
- id: 'Contenuto',
25
- defaultMessage: 'Contenuto',
21
+ defaultMessage: 'Indice della pagina',
26
22
  },
27
23
  });
28
24
 
@@ -33,14 +29,6 @@ const extractHeaders = (elements, intl) => {
33
29
  item = elements[index];
34
30
 
35
31
  if (item.id === 'text-body') {
36
- headers.push({
37
- id: item.id,
38
- title:
39
- item.getAttribute('menu_title') ||
40
- intl.formatMessage(messages.contenuto),
41
- item: item,
42
- });
43
-
44
32
  const h = item.getElementsByTagName('h2');
45
33
 
46
34
  for (var hi = 0; hi < h.length; hi++) {
@@ -70,7 +58,7 @@ const extractHeaders = (elements, intl) => {
70
58
  * @params {object} content: Content object.
71
59
  * @returns {string} Markup of the component.
72
60
  */
73
- const SideMenuByTitles = ({ data, content_uid }) => {
61
+ const SideMenuByTitles = ({ data, content_uid, index_title }) => {
74
62
  const intl = useIntl();
75
63
 
76
64
  const [headers, setHeaders] = useState([]);
@@ -174,7 +162,7 @@ const SideMenuByTitles = ({ data, content_uid }) => {
174
162
  setIsNavOpen(!isNavOpen);
175
163
  }}
176
164
  >
177
- <h3>{intl.formatMessage(messages.index)}</h3>
165
+ <h3>{index_title ?? intl.formatMessage(messages.index)}</h3>
178
166
  </AccordionHeader>
179
167
  <div className="mb-3">
180
168
  <Progress
@@ -1,37 +1,19 @@
1
1
  import PropTypes from 'prop-types';
2
2
  import { defineMessages, useIntl } from 'react-intl';
3
- import { Card, CardBody, CardTitle } from 'design-react-kit';
4
- import { Icon } from 'design-comuni-plone-theme/components/ItaliaTheme';
5
3
  import {
6
- RichText,
7
4
  richTextHasContent,
8
5
  RichTextSection,
9
- ContactLink,
10
- OfficeCard,
11
6
  ContactsCard,
12
7
  } from 'design-comuni-plone-theme/components/ItaliaTheme/View';
8
+ import EventoContattiOrganizzatoreEsterno from 'design-comuni-plone-theme/components/ItaliaTheme/View/EventoView/EventoContattiOrganizzatoreEsterno';
9
+ import EventoContattiOrganizzatoreInterno from 'design-comuni-plone-theme/components/ItaliaTheme/View/EventoView/EventoContattiOrganizzatoreInterno';
10
+ import EventoContattiSupportatoDa from 'design-comuni-plone-theme/components/ItaliaTheme/View/EventoView/EventoContattiSupportatoDa';
13
11
 
14
12
  const messages = defineMessages({
15
- supported_by: {
16
- id: 'supported_by',
17
- defaultMessage: 'Con il supporto di',
18
- },
19
13
  contatti: {
20
14
  id: 'Contatti',
21
15
  defaultMessage: 'Contatti',
22
16
  },
23
- // event_web_site: {
24
- // id: 'event_web_site',
25
- // defaultMessage: "Sito web dell'evento",
26
- // },
27
- contatti_interni: {
28
- id: 'contatti_interni',
29
- defaultMessage: 'Contatti interni',
30
- },
31
- organizzato_da: {
32
- id: 'organizzato_da',
33
- defaultMessage: 'Organizzato da',
34
- },
35
17
  });
36
18
 
37
19
  const EventoContatti = ({ content }) => {
@@ -48,79 +30,15 @@ const EventoContatti = ({ content }) => {
48
30
  {content.contact_info.map((contact) => (
49
31
  <ContactsCard contact={contact} key={contact['@id']} />
50
32
  ))}
33
+
51
34
  {/* ---organizzato da esterno */}
52
- {richTextHasContent(content?.organizzato_da_esterno) ||
53
- content?.telefono ||
54
- content?.email ||
55
- content?.fax ? (
56
- <div className="mb-5">
57
- <Card
58
- className="card card-teaser rounded shadow mt-3"
59
- noWrapper={true}
60
- tag="div"
61
- >
62
- <Icon icon="it-telephone" />
35
+ <EventoContattiOrganizzatoreEsterno content={content} />
63
36
 
64
- <CardBody tag="div" className={'card-body pe-3'}>
65
- <RichText data={content.organizzato_da_esterno} />
66
- {content?.telefono && (
67
- <p className="card-text mt-3">
68
- <ContactLink tel={content.telefono} label={true} />
69
- </p>
70
- )}
71
- {content?.fax && (
72
- <p className="card-text mt-3">
73
- <ContactLink fax={content.fax} label={true} />
74
- </p>
75
- )}
76
- {content?.reperibilita?.replace(/(<([^>]+)>)/g, '').length >
77
- 0 && (
78
- <p className="card-text mt-3">
79
- {content?.reperibilita?.replace(/(<([^>]+)>)/g, '')}
80
- </p>
81
- )}
82
- {content?.email && (
83
- <p className="card-text mt-3">
84
- <ContactLink email={content.email} label={true} />
85
- </p>
86
- )}
87
- </CardBody>
88
- </Card>
89
- </div>
90
- ) : null}
91
37
  {/* ---contatti interno */}
92
- {content?.organizzato_da_interno?.length > 0 && (
93
- <div className="mb-5">
94
- <h3 className="h5">{intl.formatMessage(messages.organizzato_da)}</h3>
95
- {content?.organizzato_da_interno?.map((item, index) => (
96
- <OfficeCard
97
- margin_bottom={
98
- index < content?.organizzato_da_interno?.length - 1
99
- }
100
- key={item['@id']}
101
- office={item}
102
- icon={'it-telephone'}
103
- >
104
- {richTextHasContent(content?.contatto_reperibilita) && (
105
- <p className="card-text mt-3">
106
- {content?.contatto_reperibilita?.replace(/(<([^>]+)>)/g, '')}
107
- </p>
108
- )}
109
- </OfficeCard>
110
- ))}
111
- </div>
112
- )}
38
+ <EventoContattiOrganizzatoreInterno content={content} />
39
+
113
40
  {/* ---supportato da */}
114
- {content?.supportato_da?.length > 0 && (
115
- <div className="mb-5">
116
- <h3 className="mt-4 supported-by h5">
117
- {intl.formatMessage(messages.supported_by)}
118
- </h3>
119
- {content?.supportato_da?.map((item) => (
120
- <OfficeCard key={item['@id']} office={item} icon={'it-pa'} />
121
- ))}
122
- </div>
123
- )}
41
+ <EventoContattiSupportatoDa content={content} />
124
42
  </RichTextSection>
125
43
  ) : null;
126
44
  };
@@ -0,0 +1,55 @@
1
+ import PropTypes from 'prop-types';
2
+ import { Card, CardBody } from 'design-react-kit';
3
+ import { Icon } from 'design-comuni-plone-theme/components/ItaliaTheme';
4
+ import {
5
+ RichText,
6
+ richTextHasContent,
7
+ ContactLink,
8
+ } from 'design-comuni-plone-theme/components/ItaliaTheme/View';
9
+
10
+ const EventoContattiOrganizzatoreEsterno = ({ content }) => {
11
+ return richTextHasContent(content?.organizzato_da_esterno) ||
12
+ content?.telefono ||
13
+ content?.email ||
14
+ content?.fax ? (
15
+ <div className="mb-5">
16
+ <Card
17
+ className="card card-teaser rounded shadow mt-3"
18
+ noWrapper={true}
19
+ tag="div"
20
+ >
21
+ <Icon icon="it-telephone" />
22
+
23
+ <CardBody tag="div" className={'card-body pe-3'}>
24
+ <RichText data={content.organizzato_da_esterno} />
25
+ {content?.telefono && (
26
+ <p className="card-text mt-3">
27
+ <ContactLink tel={content.telefono} label={true} />
28
+ </p>
29
+ )}
30
+ {content?.fax && (
31
+ <p className="card-text mt-3">
32
+ <ContactLink fax={content.fax} label={true} />
33
+ </p>
34
+ )}
35
+ {content?.reperibilita?.replace(/(<([^>]+)>)/g, '').length > 0 && (
36
+ <p className="card-text mt-3">
37
+ {content?.reperibilita?.replace(/(<([^>]+)>)/g, '')}
38
+ </p>
39
+ )}
40
+ {content?.email && (
41
+ <p className="card-text mt-3">
42
+ <ContactLink email={content.email} label={true} />
43
+ </p>
44
+ )}
45
+ </CardBody>
46
+ </Card>
47
+ </div>
48
+ ) : null;
49
+ };
50
+
51
+ EventoContattiOrganizzatoreEsterno.propTypes = {
52
+ content: PropTypes.object.isRequired,
53
+ };
54
+
55
+ export default EventoContattiOrganizzatoreEsterno;
@@ -0,0 +1,43 @@
1
+ import PropTypes from 'prop-types';
2
+ import { defineMessages, useIntl } from 'react-intl';
3
+ import {
4
+ richTextHasContent,
5
+ OfficeCard,
6
+ } from 'design-comuni-plone-theme/components/ItaliaTheme/View';
7
+
8
+ const messages = defineMessages({
9
+ organizzato_da: {
10
+ id: 'organizzato_da',
11
+ defaultMessage: 'Organizzato da',
12
+ },
13
+ });
14
+
15
+ const EventoContattiOrganizzatoreInterno = ({ content }) => {
16
+ const intl = useIntl();
17
+
18
+ return content?.organizzato_da_interno?.length > 0 ? (
19
+ <div className="mb-5">
20
+ <h3 className="h5">{intl.formatMessage(messages.organizzato_da)}</h3>
21
+ {content?.organizzato_da_interno?.map((item, index) => (
22
+ <OfficeCard
23
+ margin_bottom={index < content?.organizzato_da_interno?.length - 1}
24
+ key={item['@id']}
25
+ office={item}
26
+ icon={'it-telephone'}
27
+ >
28
+ {richTextHasContent(content?.contatto_reperibilita) && (
29
+ <p className="card-text mt-3">
30
+ {content?.contatto_reperibilita?.replace(/(<([^>]+)>)/g, '')}
31
+ </p>
32
+ )}
33
+ </OfficeCard>
34
+ ))}
35
+ </div>
36
+ ) : null;
37
+ };
38
+
39
+ EventoContattiOrganizzatoreInterno.propTypes = {
40
+ content: PropTypes.object.isRequired,
41
+ };
42
+
43
+ export default EventoContattiOrganizzatoreInterno;
@@ -0,0 +1,31 @@
1
+ import PropTypes from 'prop-types';
2
+ import { defineMessages, useIntl } from 'react-intl';
3
+ import { OfficeCard } from 'design-comuni-plone-theme/components/ItaliaTheme/View';
4
+
5
+ const messages = defineMessages({
6
+ supported_by: {
7
+ id: 'supported_by',
8
+ defaultMessage: 'Con il supporto di',
9
+ },
10
+ });
11
+
12
+ const EventoContattiSupportatoDa = ({ content }) => {
13
+ const intl = useIntl();
14
+
15
+ return content?.supportato_da?.length > 0 ? (
16
+ <div className="mb-5">
17
+ <h3 className="mt-4 supported-by h5">
18
+ {intl.formatMessage(messages.supported_by)}
19
+ </h3>
20
+ {content?.supportato_da?.map((item) => (
21
+ <OfficeCard key={item['@id']} office={item} icon={'it-pa'} />
22
+ ))}
23
+ </div>
24
+ ) : null;
25
+ };
26
+
27
+ EventoContattiSupportatoDa.propTypes = {
28
+ content: PropTypes.object.isRequired,
29
+ };
30
+
31
+ export default EventoContattiSupportatoDa;
@@ -96,7 +96,9 @@ const ListingBody = React.memo(
96
96
 
97
97
  // Need to know if data-element is "service-link"
98
98
  // to add data-element="pager-link" to pagination links
99
- const isServiceLink = data.id_lighthouse === 'service-link';
99
+ const isServiceLink =
100
+ data.id_lighthouse === 'service-link' ||
101
+ variation.id_lighthouse === 'service-link';
100
102
 
101
103
  return (
102
104
  <div className="public-ui">