Skip to content

Commit

Permalink
feat: added form state warning (#710)
Browse files Browse the repository at this point in the history
* feat: added form state warning

* chore: rework of FormResult conditional rendering

* chore: release.md info

* fix: added customization initially made for volto-form-block addon

* fix: added .css missing file + removed unnecessary html part

* chore: removed unused files + added customization info

---------

Co-authored-by: Piero Nicolli <pnicolli@users.noreply.github.com>
  • Loading branch information
sabrina-bongiovanni and pnicolli authored Sep 5, 2024
1 parent 3c10633 commit afb252c
Show file tree
Hide file tree
Showing 13 changed files with 1,372 additions and 10 deletions.
2 changes: 1 addition & 1 deletion RELEASE.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@

### Novità

- Il blocco form ha nuove funzionalità come il limite di iscrizioni e la possibilità di impostare un campo come univoco.
- Aggiunti al CT Persona i campi per la gestione della Trasparenza per allegare i file sugli emolumenti a carico della finanza pubblica e le dichiarazioni di insussistenza e incompatibilità.

### Fix
Expand All @@ -56,7 +57,6 @@
Fissato la spaziatura nel testo di presentazione dei risultati di
ricerca nel blocco cerca
Mostrato il numero di risultati della ricerca nel blocco cerca


### Migliorie

Expand Down
30 changes: 30 additions & 0 deletions locales/de/LC_MESSAGES/volto.po
Original file line number Diff line number Diff line change
Expand Up @@ -2154,6 +2154,16 @@ msgstr ""
msgid "feedback_unclear_proceeding"
msgstr ""

#: overrideTranslations
# defaultMessage: Check this box if the value entered in this field can be used only once.
msgid "field_unique_description"
msgstr ""

#: overrideTranslations
# defaultMessage: Unique field
msgid "field_unique_title"
msgstr ""

#: components/ItaliaTheme/View/Commons/TrasparenzaFields
#: components/ItaliaTheme/View/TrasparenzaView/DettagliProcedimentiView
# defaultMessage: File correlato
Expand Down Expand Up @@ -2188,11 +2198,31 @@ msgstr ""
msgid "form_default_cancel_label"
msgstr ""

#: overrideTranslations
# defaultMessage: Submission limit
msgid "form_limit"
msgstr ""

#: overrideTranslations
# defaultMessage: Ricomincia
msgid "form_reset"
msgstr ""

#: overrideTranslations
# defaultMessage: Set a submission limit
msgid "form_set_limit"
msgstr ""

#: overrideTranslations
# defaultMessage: Sei stato inserito in lista d'attesa
msgid "form_submit_success_warning"
msgstr ""

#: overrideTranslations
# defaultMessage: I tuoi dati sono stati inviati, ma è già stato raggiunto il limite di iscrizioni, sei stato inserito in lista d'attesa.
msgid "form_submit_success_warning_description"
msgstr ""

#: components/ItaliaTheme/View/PersonaView/PersonaRuolo
# defaultMessage: Foto dell'attività politica
msgid "foto_attivita_politica"
Expand Down
30 changes: 30 additions & 0 deletions locales/en/LC_MESSAGES/volto.po
Original file line number Diff line number Diff line change
Expand Up @@ -2139,6 +2139,16 @@ msgstr ""
msgid "feedback_unclear_proceeding"
msgstr ""

#: overrideTranslations
# defaultMessage: Check this box if the value entered in this field can be used only once.
msgid "field_unique_description"
msgstr "Check this box if the value entered in this field can be used only once."

#: overrideTranslations
# defaultMessage: Unique field
msgid "field_unique_title"
msgstr "Unique field"

#: components/ItaliaTheme/View/Commons/TrasparenzaFields
#: components/ItaliaTheme/View/TrasparenzaView/DettagliProcedimentiView
# defaultMessage: File correlato
Expand Down Expand Up @@ -2173,11 +2183,31 @@ msgstr "End of term"
msgid "form_default_cancel_label"
msgstr "Cancel"

#: overrideTranslations
# defaultMessage: Submission limit
msgid "form_limit"
msgstr "Submission limit"

#: overrideTranslations
# defaultMessage: Ricomincia
msgid "form_reset"
msgstr "Restart"

#: overrideTranslations
# defaultMessage: Set a submission limit
msgid "form_set_limit"
msgstr "Set a submission limit"

#: overrideTranslations
# defaultMessage: Sei stato inserito in lista d'attesa
msgid "form_submit_success_warning"
msgstr "You've been added to the waiting list"

#: overrideTranslations
# defaultMessage: I tuoi dati sono stati inviati, ma è già stato raggiunto il limite di iscrizioni, sei stato inserito in lista d'attesa.
msgid "form_submit_success_warning_description"
msgstr "Your data has been submitted, but the subscription limit has been reached and you've been added to the waiting list."

#: components/ItaliaTheme/View/PersonaView/PersonaRuolo
# defaultMessage: Foto dell'attività politica
msgid "foto_attivita_politica"
Expand Down
30 changes: 30 additions & 0 deletions locales/es/LC_MESSAGES/volto.po
Original file line number Diff line number Diff line change
Expand Up @@ -2148,6 +2148,16 @@ msgstr ""
msgid "feedback_unclear_proceeding"
msgstr ""

#: overrideTranslations
# defaultMessage: Check this box if the value entered in this field can be used only once.
msgid "field_unique_description"
msgstr ""

#: overrideTranslations
# defaultMessage: Unique field
msgid "field_unique_title"
msgstr ""

#: components/ItaliaTheme/View/Commons/TrasparenzaFields
#: components/ItaliaTheme/View/TrasparenzaView/DettagliProcedimentiView
# defaultMessage: File correlato
Expand Down Expand Up @@ -2182,11 +2192,31 @@ msgstr "Fin de los términos"
msgid "form_default_cancel_label"
msgstr ""

#: overrideTranslations
# defaultMessage: Submission limit
msgid "form_limit"
msgstr ""

#: overrideTranslations
# defaultMessage: Ricomincia
msgid "form_reset"
msgstr ""

#: overrideTranslations
# defaultMessage: Set a submission limit
msgid "form_set_limit"
msgstr ""

#: overrideTranslations
# defaultMessage: Sei stato inserito in lista d'attesa
msgid "form_submit_success_warning"
msgstr ""

#: overrideTranslations
# defaultMessage: I tuoi dati sono stati inviati, ma è già stato raggiunto il limite di iscrizioni, sei stato inserito in lista d'attesa.
msgid "form_submit_success_warning_description"
msgstr ""

#: components/ItaliaTheme/View/PersonaView/PersonaRuolo
# defaultMessage: Foto dell'attività politica
msgid "foto_attivita_politica"
Expand Down
30 changes: 30 additions & 0 deletions locales/fr/LC_MESSAGES/volto.po
Original file line number Diff line number Diff line change
Expand Up @@ -2156,6 +2156,16 @@ msgstr ""
msgid "feedback_unclear_proceeding"
msgstr ""

#: overrideTranslations
# defaultMessage: Check this box if the value entered in this field can be used only once.
msgid "field_unique_description"
msgstr ""

#: overrideTranslations
# defaultMessage: Unique field
msgid "field_unique_title"
msgstr ""

#: components/ItaliaTheme/View/Commons/TrasparenzaFields
#: components/ItaliaTheme/View/TrasparenzaView/DettagliProcedimentiView
# defaultMessage: File correlato
Expand Down Expand Up @@ -2190,11 +2200,31 @@ msgstr "Fin du mandat"
msgid "form_default_cancel_label"
msgstr ""

#: overrideTranslations
# defaultMessage: Submission limit
msgid "form_limit"
msgstr ""

#: overrideTranslations
# defaultMessage: Ricomincia
msgid "form_reset"
msgstr ""

#: overrideTranslations
# defaultMessage: Set a submission limit
msgid "form_set_limit"
msgstr ""

#: overrideTranslations
# defaultMessage: Sei stato inserito in lista d'attesa
msgid "form_submit_success_warning"
msgstr ""

#: overrideTranslations
# defaultMessage: I tuoi dati sono stati inviati, ma è già stato raggiunto il limite di iscrizioni, sei stato inserito in lista d'attesa.
msgid "form_submit_success_warning_description"
msgstr ""

#: components/ItaliaTheme/View/PersonaView/PersonaRuolo
# defaultMessage: Foto dell'attività politica
msgid "foto_attivita_politica"
Expand Down
30 changes: 30 additions & 0 deletions locales/it/LC_MESSAGES/volto.po
Original file line number Diff line number Diff line change
Expand Up @@ -2139,6 +2139,16 @@ msgstr "A volte le indicazioni non erano chiare"
msgid "feedback_unclear_proceeding"
msgstr "A volte non capivo se stavo procedendo correttamente"

#: overrideTranslations
# defaultMessage: Check this box if the value entered in this field can be used only once.
msgid "field_unique_description"
msgstr "Seleziona questo checkbox se il valore inserito in questo campo può essere utilizzato solo una volta"

#: overrideTranslations
# defaultMessage: Unique field
msgid "field_unique_title"
msgstr "Campo univoco"

#: components/ItaliaTheme/View/Commons/TrasparenzaFields
#: components/ItaliaTheme/View/TrasparenzaView/DettagliProcedimentiView
# defaultMessage: File correlato
Expand Down Expand Up @@ -2173,11 +2183,31 @@ msgstr "Fine termine"
msgid "form_default_cancel_label"
msgstr "Annulla"

#: overrideTranslations
# defaultMessage: Submission limit
msgid "form_limit"
msgstr "Limite iscrizioni"

#: overrideTranslations
# defaultMessage: Ricomincia
msgid "form_reset"
msgstr "Ricomincia"

#: overrideTranslations
# defaultMessage: Set a submission limit
msgid "form_set_limit"
msgstr "Imposta un limite iscrizioni"

#: overrideTranslations
# defaultMessage: Sei stato inserito in lista d'attesa
msgid "form_submit_success_warning"
msgstr "Sei stato inserito in lista d'attesa"

#: overrideTranslations
# defaultMessage: I tuoi dati sono stati inviati, ma è già stato raggiunto il limite di iscrizioni, sei stato inserito in lista d'attesa.
msgid "form_submit_success_warning_description"
msgstr "I tuoi dati sono stati inviati, ma è già stato raggiunto il limite di iscrizioni, sei stato inserito in lista d'attesa."

#: components/ItaliaTheme/View/PersonaView/PersonaRuolo
# defaultMessage: Foto dell'attività politica
msgid "foto_attivita_politica"
Expand Down
30 changes: 30 additions & 0 deletions locales/volto.pot
Original file line number Diff line number Diff line change
Expand Up @@ -2141,6 +2141,16 @@ msgstr ""
msgid "feedback_unclear_proceeding"
msgstr ""

#: overrideTranslations
# defaultMessage: Check this box if the value entered in this field can be used only once.
msgid "field_unique_description"
msgstr ""

#: overrideTranslations
# defaultMessage: Unique field
msgid "field_unique_title"
msgstr ""

#: components/ItaliaTheme/View/Commons/TrasparenzaFields
#: components/ItaliaTheme/View/TrasparenzaView/DettagliProcedimentiView
# defaultMessage: File correlato
Expand Down Expand Up @@ -2175,11 +2185,31 @@ msgstr ""
msgid "form_default_cancel_label"
msgstr ""

#: overrideTranslations
# defaultMessage: Submission limit
msgid "form_limit"
msgstr ""

#: overrideTranslations
# defaultMessage: Ricomincia
msgid "form_reset"
msgstr ""

#: overrideTranslations
# defaultMessage: Set a submission limit
msgid "form_set_limit"
msgstr ""

#: overrideTranslations
# defaultMessage: Sei stato inserito in lista d'attesa
msgid "form_submit_success_warning"
msgstr ""

#: overrideTranslations
# defaultMessage: I tuoi dati sono stati inviati, ma è già stato raggiunto il limite di iscrizioni, sei stato inserito in lista d'attesa.
msgid "form_submit_success_warning_description"
msgstr ""

#: components/ItaliaTheme/View/PersonaView/PersonaRuolo
# defaultMessage: Foto dell'attività politica
msgid "foto_attivita_politica"
Expand Down
48 changes: 39 additions & 9 deletions src/customizations/volto-form-block/components/FormResult.jsx
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
/*
CUSTOMIZATIONS:
- used design-react-kit components to render form result
- added warning message when subscription limit (if set) has been exceeded
*/
import React from 'react';
import { useIntl, defineMessages } from 'react-intl';
Expand All @@ -12,6 +13,15 @@ const messages = defineMessages({
id: 'form_submit_success',
defaultMessage: 'Sent!',
},
success_warning: {
id: 'form_submit_success_warning',
defaultMessage: "You've been added to the waiting list",
},
success_warning_description: {
id: 'form_submit_success_warning_description',
defaultMessage:
"Your data has been submitted, but the subscription limit has been reached and you've been added to the waiting list.",
},
reset: {
id: 'form_reset',
defaultMessage: 'Clear',
Expand Down Expand Up @@ -47,20 +57,40 @@ const replaceMessage = (text, sent_data) => {
const FormResult = ({ formState, data, resetFormState }) => {
const intl = useIntl();
return (
<Alert color="success" fade isOpen tag="div" transition={alertTransition}>
<h4>{intl.formatMessage(messages.success)}</h4>
<Alert
color={!formState.warning ? 'success' : 'warning'}
fade
isOpen
tag="div"
transition={alertTransition}
>
<h4>
{!formState.warning
? intl.formatMessage(messages.success)
: intl.formatMessage(messages.success_warning)}
</h4>
<br />
{/* Custom message */}
{data.send_message && (
{!formState.warning ? (
data.send_message && (
<>
<p
dangerouslySetInnerHTML={{
__html: replaceMessage(
data.send_message,
formState.result.data,
),
}}
/>
<br />
</>
)
) : (
<>
<p
dangerouslySetInnerHTML={{
__html: replaceMessage(data.send_message, formState.result.data),
}}
/>
<br />
<p>{intl.formatMessage(messages.success_warning_description)}</p>
</>
)}

<Button
color="primary"
outline
Expand Down
Loading

0 comments on commit afb252c

Please sign in to comment.