diff --git a/.changeset/metal-otters-melt.md b/.changeset/metal-otters-melt.md
new file mode 100644
index 0000000000..b14712a10d
--- /dev/null
+++ b/.changeset/metal-otters-melt.md
@@ -0,0 +1,5 @@
+---
+"go-web-app": minor
+---
+
+Implement [DREF Superticket 2.0](https://github.com/IFRCGo/go-web-app/issues/1695)
diff --git a/app/src/views/AccountMyFormsDref/DownloadImportTemplateButton/DownloadImportTemplateModal/useImportTemplateSchema.ts b/app/src/views/AccountMyFormsDref/DownloadImportTemplateButton/DownloadImportTemplateModal/useImportTemplateSchema.ts
index 782036812b..af1f976e6f 100644
--- a/app/src/views/AccountMyFormsDref/DownloadImportTemplateButton/DownloadImportTemplateModal/useImportTemplateSchema.ts
+++ b/app/src/views/AccountMyFormsDref/DownloadImportTemplateButton/DownloadImportTemplateModal/useImportTemplateSchema.ts
@@ -199,14 +199,6 @@ function useImportTemplateSchema() {
validation: 'string',
},
- emergency_appeal_planned: {
- type: 'select',
- label: 'Emergency appeal planned',
- optionsKey: '__boolean',
- validation: 'boolean',
- description: 'Select Yes or No from the drop-down list.',
- },
-
// EVENT DETAIL
did_it_affect_same_area: {
@@ -282,6 +274,22 @@ function useImportTemplateSchema() {
),
},
+ // FIXME: These are not showing up on the file
+ complete_child_safeguarding_risk: {
+ type: 'select',
+ validation: 'boolean',
+ optionsKey: '__boolean',
+ label: 'Did you complete the Child Safeguarding Risk Analysis in previous operations?',
+ description: 'Select Yes or No from the drop-down list.',
+ },
+
+ child_safeguarding_risk_level: {
+ type: 'input',
+ label: 'Child safeguarding risk level',
+ validation: 'textArea',
+ description: 'What was the risk level for child safeguarding risk analysis?',
+ },
+
event_date: {
headingBefore: 'Description of the Event',
type: 'input',
@@ -297,6 +305,27 @@ function useImportTemplateSchema() {
description: 'People Affected include all those whose lives and livelihoods have been impacted as a direct result of the event.',
},
+ estimated_number_of_affected_male: {
+ type: 'input',
+ validation: 'number',
+ label: 'Estimated number of affected male',
+ description: '',
+ },
+
+ estimated_number_of_affected_female: {
+ type: 'input',
+ validation: 'number',
+ label: 'Estimated number of affected female',
+ description: '',
+ },
+
+ estimated_number_of_affected_minors: {
+ type: 'input',
+ validation: 'number',
+ label: 'Estimated number of affected minors',
+ description: '',
+ },
+
people_in_need: {
type: 'input',
validation: 'number',
@@ -669,6 +698,45 @@ function useImportTemplateSchema() {
),
},
+ has_anti_fraud_corruption_policy: {
+ type: 'select',
+ optionsKey: '__boolean',
+ validation: 'boolean',
+ label: 'Does your National Society have anti-fraud and corruption policy?',
+ description: '',
+ },
+
+ has_sexual_abuse_policy: {
+ type: 'select',
+ optionsKey: '__boolean',
+ validation: 'boolean',
+ label: 'Does your National Society have prevention of sexual exploitation and abuse policy?',
+ description: '',
+ },
+
+ has_child_protection_policy: {
+ type: 'select',
+ optionsKey: '__boolean',
+ validation: 'boolean',
+ label: 'Does your National Society have child protection/child safeguarding policy?',
+ description: '',
+ },
+
+ has_whistleblower_protection_policy: {
+ type: 'select',
+ optionsKey: '__boolean',
+ validation: 'boolean',
+ label: 'Does your National Society have whistleblower protection policy?',
+ description: '',
+ },
+
+ has_anti_sexual_harassment_policy: {
+ type: 'select',
+ optionsKey: '__boolean',
+ validation: 'boolean',
+ label: 'Does your National Society have anti-sexual harassment policy?',
+ description: '',
+ },
has_child_safeguarding_risk_analysis_assessment: {
type: 'select',
optionsKey: '__boolean',
@@ -775,6 +843,13 @@ function useImportTemplateSchema() {
),
},
+ is_volunteer_team_diverse: {
+ type: 'input',
+ validation: 'textArea',
+ label: 'Does your volunteer team reflect the gender, age, and cultural diversity of the people you’re helping? What gaps exist in your volunteer team’s gender, age, or cultural diversity, and how are you addressing them to ensure inclusive and appropriate support?',
+ description: 'This question is about making sure your team includes the right mix of people to best support those affected. For example, if you’re helping single female heads of households, it’s important to have enough female volunteers to make everyone feel comfortable and understood. Including team members who share the same language or cultural background as the people you’re helping can also make a big difference in building trust and providing effective support.',
+ },
+
is_surge_personnel_deployed: {
type: 'select',
validation: 'boolean',
diff --git a/app/src/views/AccountMyFormsDref/DrefTableActions/index.tsx b/app/src/views/AccountMyFormsDref/DrefTableActions/index.tsx
index 01e2e4df89..3f8119049d 100644
--- a/app/src/views/AccountMyFormsDref/DrefTableActions/index.tsx
+++ b/app/src/views/AccountMyFormsDref/DrefTableActions/index.tsx
@@ -136,7 +136,6 @@ function DrefTableActions(props: Props) {
// FIXME: can't compare imminent with Imminent Crisis directly
? 'Imminent Crisis'
: response?.type_of_onset_display,
- noOfPeopleTargeted: response?.number_of_people_targeted,
nsRequestDate: response?.ns_request_date,
disasterStartDate: response?.event_date,
implementationPeriod: response?.total_operation_timeframe,
diff --git a/app/src/views/DrefApplicationExport/i18n.json b/app/src/views/DrefApplicationExport/i18n.json
index 3417b09725..f3227bf266 100644
--- a/app/src/views/DrefApplicationExport/i18n.json
+++ b/app/src/views/DrefApplicationExport/i18n.json
@@ -21,7 +21,7 @@
"monthsSuffix": " months",
"operationEndDateLabel": "Operation End Date",
"drefPublishedLabel": "DREF Published",
- "targetedAreasLabel": "Targeted Areas",
+ "targetedAreasLabel": "Targeted Regions",
"eventDescriptionSectionHeading": "Description of the Event",
"approximateDateOfImpactHeading": "Approximate date of impact",
"whatWhereWhenSectionHeading": "What happened, where and when?",
@@ -38,6 +38,8 @@
"nsOperationLabel": "If yes, please specify which operation",
"recurrentEventJustificationLabel": "If you have answered yes to all questions above, justify why the use of DREF for a recurrent event, or how this event should not be considered recurrent",
"lessonsLearnedLabel": "Lessons learned",
+ "completeChildSafeguardingRiskLabel": "Did you complete the Child Safeguarding Risk Analysis in previous operations, what was risk level?",
+ "childSafeguardingRiskLevelLabel": "What was the risk level for Child Safeguarding Risk Analysis?",
"currentNationalSocietyActionsHeading": "Current National Society Actions",
"nationalSocietyActionsHeading": "National Society anticipatory actions started",
"drefFormNsResponseStarted": "Start date of National Society actions",
@@ -67,8 +69,8 @@
"ruralLabel": "Rural",
"urbanLabel": "Urban",
"peopleWithDisabilitiesLabel": "People with disabilities (estimated)",
- "riskAndSecuritySectionHeading": "Risk and Security Considerations",
- "riskSecurityHeading": "Please indicate about potential operation risk for this operations and mitigation actions",
+ "riskAndSecuritySectionHeading": "Risk and Security Considerations (including \"management\")",
+ "riskSecurityHeading": "Please analyse and indicate potential risks for this operation, its root causes and mitigation actions.",
"safetyConcernHeading": "Please indicate any security and safety concerns for this operation",
"hasChildRiskCompleted": "Has the child safeguarding risk analysis assessment been completed?",
"plannedInterventionSectionHeading": "Planned Intervention",
@@ -80,6 +82,12 @@
"priorityActionsHeading": "Priority Actions",
"aboutSupportServicesSectionHeading": "About Support Services",
"humanResourcesHeading": "How many staff and volunteers will be involved in this operation. Briefly describe their role.",
+ "isVolunteerTeamDiverseHeading": "Does your volunteer team reflect the gender, age, and cultural diversity of the people you’re helping? What gaps exist in your volunteer team’s gender, age, or cultural diversity, and how are you addressing them to ensure inclusive and appropriate support?",
+ "hasAntiFraudPolicy": "Does your National Society have anti-fraud and corruption policy?",
+ "hasSexualAbusePolicy": "Does your National Society have prevention of sexual exploitation and abuse policy?",
+ "hasChildProtectionPolicy": "Does your National Society have child protection/child safeguarding policy?",
+ "hasWhistleblowerProtectionPolicy": "Does your National Society have whistleblower protection policy?",
+ "hasAntiSexualHarassmentPolicy": "Does your National Society have anti-sexual harassment policy?",
"surgePersonnelDeployedHeading": "Will surge personnel be deployed? Please provide the role profile needed.",
"logisticCapacityHeading": "If there is procurement, will it be done by National Society or IFRC?",
"pmerHeading": "How will this operation be monitored?",
@@ -92,6 +100,8 @@
"projectManagerContactHeading": "IFRC Project Manager",
"focalPointContactHeading": "IFRC focal point for the emergency",
"mediaContactHeading": "Media Contact",
+ "nationalSocietyIntegrityHeading": "National Societies' Integrity Focal Point",
+ "nationalSocietyHotlineHeading": "National Society Hotline",
"imageLogoIFRCAlt": "IFRC",
"drefApplicationExportRisk": "Risk",
"drefApplicationExportMitigation": "Mitigation action",
diff --git a/app/src/views/DrefApplicationExport/index.tsx b/app/src/views/DrefApplicationExport/index.tsx
index 0f7b47f752..19e8676972 100644
--- a/app/src/views/DrefApplicationExport/index.tsx
+++ b/app/src/views/DrefApplicationExport/index.tsx
@@ -204,6 +204,9 @@ export function Component() {
|| isDefined(drefResponse?.event_map_file?.file);
const lessonsLearnedDefined = isTruthyString(drefResponse?.lessons_learned?.trim());
+ const childSafeguardingRiskLevelDefined = isTruthyString(
+ drefResponse?.child_safeguarding_risk_level?.trim(),
+ );
const showPreviousOperations = drefResponse?.type_of_dref !== DREF_TYPE_ASSESSMENT && (
isDefined(drefResponse?.did_it_affect_same_area)
|| isDefined(drefResponse?.did_it_affect_same_population)
@@ -270,11 +273,25 @@ export function Component() {
&& isDefined(drefResponse.risk_security)
&& drefResponse.risk_security.length > 0;
const riskSecurityConcernDefined = isTruthyString(drefResponse?.risk_security_concern?.trim());
+ const hasAntiFraudPolicy = isDefined(drefResponse?.has_anti_fraud_corruption_policy);
+ const hasSexualAbusePolicy = isDefined(drefResponse?.has_sexual_abuse_policy);
+ const hasChildProtectionPolicy = isDefined(drefResponse?.has_child_protection_policy);
+ const hasWhistleblowerProtectionPolicy = isDefined(
+ drefResponse?.has_whistleblower_protection_policy,
+ );
+ const hasAntiSexualHarassmentPolicy = isDefined(
+ drefResponse?.has_anti_sexual_harassment_policy,
+ );
const hasChildrenSafeguardingDefined = isDefined(
drefResponse?.has_child_safeguarding_risk_analysis_assessment,
);
const showRiskAndSecuritySection = riskSecurityDefined
|| riskSecurityConcernDefined
+ || hasAntiFraudPolicy
+ || hasSexualAbusePolicy
+ || hasChildProtectionPolicy
+ || hasWhistleblowerProtectionPolicy
+ || hasAntiSexualHarassmentPolicy
|| hasChildrenSafeguardingDefined;
const plannedInterventionDefined = isDefined(drefResponse)
@@ -283,6 +300,9 @@ export function Component() {
&& isDefined(plannedInterventions);
const humanResourceDefined = isTruthyString(drefResponse?.human_resource?.trim());
+ const isVolunteerTeamDiverseDefined = isTruthyString(
+ drefResponse?.is_volunteer_team_diverse?.trim(),
+ );
const surgePersonnelDeployedDefined = isTruthyString(
drefResponse?.surge_personnel_deployed?.trim(),
);
@@ -334,11 +354,26 @@ export function Component() {
drefResponse?.media_contact_phone_number,
].filter(isTruthyString).join(', ');
const mediaContactDefined = isTruthyString(mediaContactText);
+ const nationalSocietyIntegrityContactText = [
+ drefResponse?.national_society_integrity_contact_name,
+ drefResponse?.national_society_integrity_contact_title,
+ drefResponse?.national_society_integrity_contact_email,
+ drefResponse?.national_society_integrity_contact_phone_number,
+ ].filter(isTruthyString).join(', ');
+ const nationalSocietyIntegrityContactDefined = isTruthyString(
+ nationalSocietyIntegrityContactText,
+ );
+ const nationalSocietyHotlineDefined = isTruthyString(
+ drefResponse?.national_society_hotline_phone_number,
+ );
+
const showContactsSection = nsContactDefined
|| appealManagerContactDefined
|| projectManagerContactDefined
|| focalPointContactDefined
- || mediaContactDefined;
+ || mediaContactDefined
+ || nationalSocietyIntegrityContactDefined
+ || nationalSocietyHotlineDefined;
return (
@@ -650,6 +685,21 @@ export function Component() {
strongLabel
/>
)}
+
+ {childSafeguardingRiskLevelDefined && (
+
+ )}
)}
{showNsAction && (
@@ -935,6 +985,56 @@ export function Component() {
{strings.riskAndSecuritySectionHeading}
+ {hasAntiFraudPolicy && (
+
+
+
+ )}
+ {hasSexualAbusePolicy && (
+
+
+
+ )}
+ {hasChildProtectionPolicy && (
+
+
+
+ )}
+ {hasWhistleblowerProtectionPolicy && (
+
+
+
+ )}
+ {hasAntiSexualHarassmentPolicy && (
+
+
+
+ )}
{riskSecurityDefined && (
)}
+ {isVolunteerTeamDiverseDefined && (
+
+
+ {drefResponse?.is_volunteer_team_diverse}
+
+
+ )}
{surgePersonnelDeployedDefined && (
)}
+ {nationalSocietyIntegrityContactDefined && (
+
+ )}
+ {nationalSocietyHotlineDefined && (
+
+ )}
{strings.drefExportReference}
diff --git a/app/src/views/DrefApplicationExport/styles.module.css b/app/src/views/DrefApplicationExport/styles.module.css
index b5d8d81adc..7390b4facd 100644
--- a/app/src/views/DrefApplicationExport/styles.module.css
+++ b/app/src/views/DrefApplicationExport/styles.module.css
@@ -87,6 +87,7 @@
grid-template-columns: 1fr 1fr;
.recurrent-event-justification,
+ .child-safeguarding-risk-level,
.lessons-learned {
grid-column: span 2;
background-color: var(--pdf-element-bg);
diff --git a/app/src/views/DrefApplicationForm/Actions/i18n.json b/app/src/views/DrefApplicationForm/Actions/i18n.json
index 845bbd444d..c86ead0232 100644
--- a/app/src/views/DrefApplicationForm/Actions/i18n.json
+++ b/app/src/views/DrefApplicationForm/Actions/i18n.json
@@ -10,6 +10,12 @@
"drefFormDidNationalSocietyStartedImminent": "Did the National Society started any anticipatory actions?",
"drefFormDidNationalSocietyStartedSlow": "Has the National Society started any actions?",
"drefFormGapsInAssessment": "Any identified gaps/limitations in the assessment",
+ "drefFormGapsInAssessmentDescriptionHeading": "Consider the following:",
+ "drefFormGapsInAssessmentDescriptionPoint1": "Unmet needs: are there specific sectors (e.g., shelter, WASH, health) where needs remain unmet or only partially addressed?",
+ "drefFormGapsInAssessmentDescriptionPoint2": "Resource shortages: highlight any shortages in available resources (e.g., funding, personnel, supplies) that limit the ability to meet the identified needs.",
+ "drefFormGapsInAssessmentDescriptionPoint3": "Operational challenges: mention any operational constraints that are preventing a full response to the needs (e.g., logistical issues, insufficient capacity).",
+ "drefFormGapsInAssessmentDescriptionPoint4": "Coordination issues: note any challenges in coordinating with other actors or agencies that have resulted in gaps in service delivery or response coverage.",
+ "drefFormGapsInAssessmentDescriptionPoint5": "Vulnerable groups: identify any specific vulnerable groups whose needs may not have been fully captured or addressed during the assessment (e.g., displaced persons, elderly, people with disabilities).",
"drefFormIcrc": "ICRC",
"drefFormIcrcDescription": "Presence or not of ICRC in country, and support directly provided for this emergency response. Other programs and support provided outside of the scope of this emergency should not be indicated here.",
"drefFormIfrc": "IFRC",
@@ -19,6 +25,7 @@
"ifrcNetworkActionsHeading": "IFRC Network Actions Related To The Current Event",
"icrcActionsHeading": "ICRC Actions Related To The Current Event",
"drefFormNationalAuthorities": "National authorities",
+ "drefFormNationalAuthoritiesDescription": "Brief description of actions taken by the national authorities.",
"drefFormNationalOtherActors": "Other Actors Actions Related To The Current Event",
"drefFormNationalSocietiesActions": "Current National Society Actions",
"drefFormNationalSocietiesActionsDescription": "Please indicate a description of the ongoing response with if possible: Branches involved, number of volunteers/staff involved in actions, assets deployed/distributed, number of people reach. Impact/added value of the NS in the response already ongoing.",
@@ -29,6 +36,7 @@
"drefFormPartnerNationalSociety": "Participating National Societies",
"drefFormPartnerNationalSocietyDescription": "Briefly set out which PNS are present and give details of PNS contributions/roles on the ground and remotely for this specific operation",
"drefFormUNorOtherActors": "UN or other actors",
+ "drefFormUNorOtherActorsDescription": "Brief description of actions taken by the UN or other actors.",
"drefFormAddButton": "Add"
}
}
diff --git a/app/src/views/DrefApplicationForm/Actions/index.tsx b/app/src/views/DrefApplicationForm/Actions/index.tsx
index 68615ecd44..83587f6161 100644
--- a/app/src/views/DrefApplicationForm/Actions/index.tsx
+++ b/app/src/views/DrefApplicationForm/Actions/index.tsx
@@ -333,6 +333,7 @@ function Actions(props: Props) {
-
-
-
-
- );
-}
-
-export default NsActionInput;
diff --git a/app/src/views/DrefOperationalUpdateForm/Actions/NSActionInput/styles.module.css b/app/src/views/DrefOperationalUpdateForm/Actions/NSActionInput/styles.module.css
deleted file mode 100644
index f244405dd4..0000000000
--- a/app/src/views/DrefOperationalUpdateForm/Actions/NSActionInput/styles.module.css
+++ /dev/null
@@ -1,16 +0,0 @@
-.ns-action-input {
- .content {
- display: flex;
- align-items: flex-start;
- gap: var(--go-ui-spacing-md);
- flex-wrap: wrap;
-
- .description-input {
- flex-grow: 1;
- }
-
- .remove-button {
- flex-shrink: 0;
- }
- }
-}
diff --git a/app/src/views/DrefOperationalUpdateForm/Actions/i18n.json b/app/src/views/DrefOperationalUpdateForm/Actions/i18n.json
index e5e33e811d..147636dcba 100644
--- a/app/src/views/DrefOperationalUpdateForm/Actions/i18n.json
+++ b/app/src/views/DrefOperationalUpdateForm/Actions/i18n.json
@@ -1,16 +1,19 @@
{
"namespace": "drefOperationalUpdateForm",
"strings": {
- "operationalUpdateCurrentNsImageLabel": "Add photos of National Society Operation",
"drefFormActionFieldsLabel": "Select the needs that apply.",
"drefFormAssessmentReportUploadButtonLabel": "Upload assessment report",
"drefFormAssessmentReportUploadLabel": "Assessment Report (Optional)",
"drefFormCoordinationMechanism": "Are there major coordination mechanisms in place?",
"drefFormCoordinationMechanismDescription": "List coordination mechanisms/platform in place at local/district and national level. Indicate the lead authorities/agencies. How the National Society is involved/positioned in this coordination. Does the NS in any lead/co-lead role? Any identified gap/overlap in the coordination (e.g., sector missing…)?",
"drefFormActionDescription": "Description",
- "drefFormDidNationalSocietyStartedImminent": "Did the National Society started any anticipatory actions?",
- "drefFormDidNationalSocietyStartedSlow": "Has the National Society started any actions?",
"drefFormGapsInAssessment": "Any identified gaps/limitations in the assessment",
+ "drefFormGapsInAssessmentDescriptionHeading": "Consider the following:",
+ "drefFormGapsInAssessmentDescriptionPoint1": "Unmet needs: are there specific sectors (e.g., shelter, WASH, health) where needs remain unmet or only partially addressed?",
+ "drefFormGapsInAssessmentDescriptionPoint2": "Resource shortages: highlight any shortages in available resources (e.g., funding, personnel, supplies) that limit the ability to meet the identified needs.",
+ "drefFormGapsInAssessmentDescriptionPoint3": "Operational challenges: mention any operational constraints that are preventing a full response to the needs (e.g., logistical issues, insufficient capacity).",
+ "drefFormGapsInAssessmentDescriptionPoint4": "Coordination issues: note any challenges in coordinating with other actors or agencies that have resulted in gaps in service delivery or response coverage.",
+ "drefFormGapsInAssessmentDescriptionPoint5": "Vulnerable groups: identify any specific vulnerable groups whose needs may not have been fully captured or addressed during the assessment (e.g., displaced persons, elderly, people with disabilities).",
"drefFormIcrc": "ICRC",
"drefFormIcrcDescription": "Presence or not of ICRC in country, and support directly provided for this emergency response. Other programs and support provided outside of the scope of this emergency should not be indicated here.",
"drefFormIfrc": "IFRC",
@@ -20,16 +23,14 @@
"ifrcNetworkActionsHeading": "IFRC Network Actions Related To The Current Event",
"icrcActionsHeading": "ICRC Actions Related To The Current Event",
"drefFormNationalAuthorities": "National authorities",
+ "drefFormNationalAuthoritiesDescription": "Brief description of actions taken by the national authorities.",
"drefFormNationalOtherActors": "Other Actors Actions Related To The Current Event",
- "drefFormNationalSocietiesActions": "Current National Society Actions",
- "drefFormNationalSocietiesActionsDescription": "Please indicate a description of the ongoing response with if possible: Branches involved, number of volunteers/staff involved in actions, assets deployed/distributed, number of people reach. Impact/added value of the NS in the response already ongoing.",
"drefFormNationalSocietiesActionsLabel": "Select the actions that apply.",
"drefFormNeedsIdentified": "Needs (Gaps) Identified",
- "drefFormNSAnticipatoryAction": "National Society anticipatory actions started",
- "drefFormNsResponseStarted": "Start date of National Society actions",
"drefFormPartnerNationalSociety": "Participating National Societies",
"drefFormPartnerNationalSocietyDescription": "Briefly set out which PNS are present and give details of PNS contributions/roles on the ground and remotely for this specific operation",
"drefFormUNorOtherActors": "UN or other actors",
+ "drefFormUNorOtherActorsDescription": "Brief description of actions taken by the UN or other actors.",
"drefFormAddButton": "Add"
}
}
diff --git a/app/src/views/DrefOperationalUpdateForm/Actions/index.tsx b/app/src/views/DrefOperationalUpdateForm/Actions/index.tsx
index de2cb4956b..ccfc1b7b0f 100644
--- a/app/src/views/DrefOperationalUpdateForm/Actions/index.tsx
+++ b/app/src/views/DrefOperationalUpdateForm/Actions/index.tsx
@@ -7,7 +7,6 @@ import {
BooleanInput,
Button,
Container,
- DateInput,
InputSection,
SelectInput,
TextArea,
@@ -27,7 +26,6 @@ import {
} from '@togglecorp/toggle-form';
import GoSingleFileInput from '#components/domain/GoSingleFileInput';
-import MultiImageWithCaptionInput from '#components/domain/MultiImageWithCaptionInput';
import NonFieldError from '#components/NonFieldError';
import useGlobalEnums from '#hooks/domain/useGlobalEnums';
import { type GoApiResponse } from '#utils/restRequest';
@@ -39,22 +37,16 @@ import {
// FIXME: move common components together
import { type PartialOpsUpdate } from '../schema';
import NeedInput from './NeedInput';
-import NsActionInput from './NSActionInput';
import i18n from './i18n.json';
import styles from './styles.module.css';
type GlobalEnumsResponse = GoApiResponse<'/api/v2/global-enums/'>;
-type NsActionOption = NonNullable[number];
type NeedOption = NonNullable[number];
type Value = PartialOpsUpdate;
type NeedFormFields = NonNullable[number];
-type NsActionFormFields = NonNullable[number];
-function nsActionKeySelector(option: NsActionOption) {
- return option.key;
-}
function needOptionKeySelector(option: NeedOption) {
return option.key;
}
@@ -79,12 +71,10 @@ function Actions(props: Props) {
} = props;
const [selectedNeed, setSelectedNeed] = useState();
- const [selectedNsAction, setSelectedNsAction] = useState();
const strings = useTranslation(i18n);
const {
- dref_national_society_action_title: nsActionOptions,
dref_identified_need_title: needOptions,
} = useGlobalEnums();
@@ -97,13 +87,6 @@ function Actions(props: Props) {
'needs_identified',
setFieldValue,
);
- const {
- setValue: onNsActionChange,
- removeValue: onNsActionRemove,
- } = useFormArray<'national_society_actions', NsActionFormFields>(
- 'national_society_actions',
- setFieldValue,
- );
const handleNeedAddButtonClick = useCallback((title: NeedOption['key'] | undefined) => {
const newNeedItem: NeedFormFields = {
@@ -121,22 +104,6 @@ function Actions(props: Props) {
setSelectedNeed(undefined);
}, [setFieldValue, setSelectedNeed]);
- const handleNsActionAddButtonClick = useCallback((title: NsActionOption['key'] | undefined) => {
- const newNsActionItem: NsActionFormFields = {
- client_id: randomString(),
- title,
- };
-
- setFieldValue(
- (oldValue: NsActionFormFields[] | undefined) => (
- [...(oldValue ?? []), newNsActionItem]
- ),
- 'national_society_actions' as const,
- );
-
- setSelectedNsAction(undefined);
- }, [setFieldValue, setSelectedNsAction]);
-
const needsIdentifiedMap = useMemo(() => (
listToMap(
value.needs_identified,
@@ -154,23 +121,6 @@ function Actions(props: Props) {
[needsIdentifiedMap, needOptions],
);
- const nsActionsMap = useMemo(() => (
- listToMap(
- value.national_society_actions,
- (d) => d.title ?? '',
- () => true,
- )
- ), [value.national_society_actions]);
-
- const filteredNsActionOptions = useMemo(
- () => (
- nsActionOptions?.filter(
- (nsAction) => !nsActionsMap?.[nsAction.key],
- )
- ),
- [nsActionsMap, nsActionOptions],
- );
-
const needsIdentifiedTitleDisplayMap = useMemo(
() => (
listToMap(
@@ -181,110 +131,9 @@ function Actions(props: Props) {
),
[needOptions],
);
- const nsActionTitleDisplayMap = useMemo(
- () => (
- listToMap(
- nsActionOptions,
- (nsAction) => nsAction.key,
- (nsAction) => nsAction.value,
- )
- ),
- [nsActionOptions],
- );
return (
);
diff --git a/app/src/views/DrefOperationalUpdateForm/Submission/styles.module.css b/app/src/views/DrefOperationalUpdateForm/Submission/styles.module.css
index 58070b36ac..efdc9f5abd 100644
--- a/app/src/views/DrefOperationalUpdateForm/Submission/styles.module.css
+++ b/app/src/views/DrefOperationalUpdateForm/Submission/styles.module.css
@@ -2,4 +2,13 @@
display: flex;
flex-direction: column;
gap: var(--go-ui-spacing-2xl);
+
+ .warning {
+ display: flex;
+ align-items: flex-start;
+ gap: var(--go-ui-spacing-sm);
+ padding: var(--go-ui-spacing-sm) 0;
+ color: var(--go-ui-color-warning);
+ font-weight: var(--go-ui-font-weight-semibold);
+ }
}
diff --git a/app/src/views/DrefOperationalUpdateForm/common.tsx b/app/src/views/DrefOperationalUpdateForm/common.tsx
index 7022ba002f..bd594f7009 100644
--- a/app/src/views/DrefOperationalUpdateForm/common.tsx
+++ b/app/src/views/DrefOperationalUpdateForm/common.tsx
@@ -38,24 +38,26 @@ const overviewFields: (keyof PartialOpsUpdate)[] = [
'national_society',
'country',
'district',
- 'people_in_need',
'disaster_type',
'type_of_onset',
'disaster_category',
'event_map_file',
'cover_image_file',
- 'emergency_appeal_planned',
'is_man_made_event',
// 'is_assessment_report',
'type_of_dref',
- 'number_of_people_targeted',
- 'number_of_people_affected',
'additional_allocation',
'dref_allocated_so_far',
'total_dref_allocation',
] satisfies (keyof PartialOpsUpdate)[];
const eventDetailFields: (keyof PartialOpsUpdate)[] = [
+ 'number_of_people_affected',
+ 'estimated_number_of_affected_male',
+ 'estimated_number_of_affected_female',
+ 'estimated_number_of_affected_girls_under_18',
+ 'estimated_number_of_affected_boys_under_18',
+ 'people_in_need',
'event_description',
'event_scope',
'images_file',
@@ -69,7 +71,6 @@ const eventDetailFields: (keyof PartialOpsUpdate)[] = [
'changing_target_population_of_operation',
'changing_geographic_location',
'request_for_second_allocation',
- 'has_forecasted_event_materialize',
'specified_trigger_met',
] satisfies (keyof PartialOpsUpdate)[];
@@ -105,6 +106,7 @@ const operationFields: (keyof PartialOpsUpdate)[] = [
'operation_objective',
'response_strategy',
'human_resource',
+ 'is_volunteer_team_diverse',
'surge_personnel_deployed',
'logistic_capacity_of_ns',
'pmer',
@@ -147,6 +149,11 @@ const submissionFields: (keyof PartialOpsUpdate)[] = [
'media_contact_name',
'media_contact_email',
'media_contact_phone_number',
+ 'national_society_integrity_contact_name',
+ 'national_society_integrity_contact_title',
+ 'national_society_integrity_contact_email',
+ 'national_society_integrity_contact_phone_number',
+ 'national_society_hotline_phone_number',
'media_contact_title',
'total_operation_timeframe',
'new_operational_start_date',
diff --git a/app/src/views/DrefOperationalUpdateForm/i18n.json b/app/src/views/DrefOperationalUpdateForm/i18n.json
index 34b167a97e..88df93894f 100644
--- a/app/src/views/DrefOperationalUpdateForm/i18n.json
+++ b/app/src/views/DrefOperationalUpdateForm/i18n.json
@@ -19,11 +19,10 @@
"formLoadErrorTitle": "Failed to load DREF Operational Update",
"formLoadErrorHelpText": "Please make sure that the operational update with given id exists and you have the permission to view it",
"formBackButtonLabel": "Back",
- "formShareButtonLabel": "Share",
"drefOperationalUpdateFormTimeframe": "Please select a different timeframe when selected yes on changing the operation timeframe",
"drefOperationalUpdateFormOperationTimeframe": "Please select yes on changing the operation timeframe",
- "drefOperationAdditionalBudget": "When requesting for additional budget allocation, the fields \"Are you making changes to the budget\" and \"Is this a request for a second allocation\" both should be marked \"Yes\" in \"Event Details\" section",
- "drefOperationAdditionalAllocation": "The field \"Additional Allocation Requested\" should be filled in \"Operation Overview\" section to change the budget or for a second allocation",
+ "drefOperationAdditionalBudget": "When requesting for additional budget allocation, the fields \"Are you making changes to the budget\" and \"Are you requesting an additional allocation\" both should be marked \"Yes\" in \"Event Details\" section",
+ "drefOperationAdditionalAllocation": "The field \"Additional Allocation Requested\" should be filled in \"Operation\" section to change the budget or for an additional allocation",
"drefOperationSelectDistrict": "Please select a different district when selected yes on changing geographic location",
"drefOperationSelectLocation": "Please select yes on changing geographic location",
"drefOperationTargetedPopulation": "Please select a different value for targeted population when selected yes on changing target population",
diff --git a/app/src/views/DrefOperationalUpdateForm/index.tsx b/app/src/views/DrefOperationalUpdateForm/index.tsx
index 9f27a7a7d3..13c2c0b030 100644
--- a/app/src/views/DrefOperationalUpdateForm/index.tsx
+++ b/app/src/views/DrefOperationalUpdateForm/index.tsx
@@ -6,11 +6,7 @@ import {
useState,
} from 'react';
import { useParams } from 'react-router-dom';
-import {
- DownloadTwoLineIcon,
- ErrorWarningFillIcon,
- ShareLineIcon,
-} from '@ifrc-go/icons';
+import { DownloadTwoLineIcon } from '@ifrc-go/icons';
import type { ButtonProps } from '@ifrc-go/ui';
import {
Button,
@@ -41,15 +37,12 @@ import {
import { type DistrictItem } from '#components/domain/DistrictSearchMultiSelectInput';
import DrefExportModal from '#components/domain/DrefExportModal';
-import DrefShareModal from '#components/domain/DrefShareModal';
import LanguageMismatchMessage from '#components/domain/LanguageMismatchMessage';
-import { type User } from '#components/domain/UserSearchMultiSelectInput';
import Link from '#components/Link';
import NonFieldError from '#components/NonFieldError';
import Page from '#components/Page';
import useCurrentLanguage from '#hooks/domain/useCurrentLanguage';
import useAlert from '#hooks/useAlert';
-import useInputState from '#hooks/useInputState';
import {
type GoApiResponse,
useLazyRequest,
@@ -128,7 +121,6 @@ export function Component() {
const [activeTab, setActiveTab] = useState('overview');
const [fileIdToUrlMap, setFileIdToUrlMap] = useState>({});
- const [drefUsers, setDrefUsers] = useInputState([]);
const [
showObsoletePayloadModal,
setShowObsoletePayloadModal,
@@ -137,10 +129,6 @@ export function Component() {
const [districtOptions, setDistrictOptions] = useState<
DistrictItem[] | undefined | null
>([]);
- const [showShareModal, {
- setTrue: setShowShareModalTrue,
- setFalse: setShowShareModalFalse,
- }] = useBooleanState(false);
const [showExportModal, {
setTrue: setShowExportModalTrue,
setFalse: setShowExportModalFalse,
@@ -169,7 +157,6 @@ export function Component() {
changing_geographic_location: false,
changing_budget: false,
request_for_second_allocation: false,
- has_forecasted_event_materialize: false,
},
},
);
@@ -257,7 +244,6 @@ export function Component() {
changing_geographic_location,
changing_budget,
request_for_second_allocation,
- has_forecasted_event_materialize,
source_information,
// disability_people_per,
// people_per_urban,
@@ -297,7 +283,6 @@ export function Component() {
changing_geographic_location: changing_geographic_location ?? false,
changing_budget: changing_budget ?? false,
request_for_second_allocation: request_for_second_allocation ?? false,
- has_forecasted_event_materialize: has_forecasted_event_materialize ?? false,
source_information: source_information?.map(injectClientId),
});
@@ -422,17 +407,6 @@ export function Component() {
},
});
- const {
- retrigger: getDrefUsers,
- } = useRequest({
- skip: isNotDefined(drefId),
- url: '/api/v2/dref-share-user/{id}/',
- pathVariables: { id: Number(drefId) },
- onSuccess: (response) => {
- setDrefUsers(response.users_details);
- },
- });
-
const handleFormSubmit = useCallback(
(modifiedAt?: string) => {
formContentRef.current?.scrollIntoView();
@@ -579,12 +553,6 @@ export function Component() {
],
);
- const handleShareClick: NonNullable['onClick']> = useCallback(
- () => {
- setShowShareModalTrue();
- },
- [setShowShareModalTrue],
- );
const handleExportClick: NonNullable['onClick']> = useCallback(
() => {
setShowExportModalTrue();
@@ -592,19 +560,6 @@ export function Component() {
[setShowExportModalTrue],
);
- const handleUserShareSuccess = useCallback(() => {
- setShowShareModalFalse();
- getDrefUsers();
- }, [
- getDrefUsers,
- setShowShareModalFalse,
- ]);
-
- const hasAnyWarning = isTruthyString(peopleTargetedWarning)
- || isTruthyString(operationTimeframeWarning)
- || isTruthyString(budgetWarning)
- || isTruthyString(geoWarning);
-
const disabled = fetchingOpsUpdate
|| updateOpsUpdatePending
|| fetchingDref
@@ -643,25 +598,14 @@ export function Component() {
actions={(
<>
{isTruthyString(opsUpdateId) && (
- <>
- }
- variant="secondary"
- >
- {strings.formShareButtonLabel}
-
- }
- variant="secondary"
- >
- {strings.formExportLabel}
-
- >
+ }
+ variant="secondary"
+ >
+ {strings.formExportLabel}
+
)}
- {hasAnyWarning && (
-
- {operationTimeframeWarning && (
-
-
- {operationTimeframeWarning}
-
- )}
- {budgetWarning && (
-
-
- {budgetWarning}
-
- )}
- {geoWarning && (
-
-
- {geoWarning}
-
- )}
- {peopleTargetedWarning && (
-
-
- {peopleTargetedWarning}
-
- )}
-
- )}
@@ -793,6 +710,10 @@ export function Component() {
setFileIdToUrlMap={setFileIdToUrlMap}
error={formError}
disabled={disabled}
+ operationTimeframeWarning={operationTimeframeWarning}
+ budgetWarning={budgetWarning}
+ geoWarning={geoWarning}
+ peopleTargetedWarning={peopleTargetedWarning}
/>
@@ -813,6 +734,8 @@ export function Component() {
setFileIdToUrlMap={setFileIdToUrlMap}
error={formError}
disabled={disabled}
+ budgetWarning={budgetWarning}
+ peopleTargetedWarning={peopleTargetedWarning}
/>
@@ -820,6 +743,7 @@ export function Component() {
value={value}
setFieldValue={setFieldValue}
error={formError}
+ operationTimeframeWarning={operationTimeframeWarning}
disabled={disabled}
/>
@@ -833,14 +757,23 @@ export function Component() {
>
{strings.formBackButtonLabel}
-
- {strings.formContinueButtonLabel}
-
+ {isDefined(nextStep) ? (
+
+ {strings.formContinueButtonLabel}
+
+ ) : (
+
+ {strings.formSaveButtonLabel}
+
+ )}
>
@@ -852,13 +785,6 @@ export function Component() {
onCancelButtonClick={setShowObsoletePayloadModal}
/>
)}
- {showShareModal && isDefined(drefId) && (
-
- )}
{showExportModal && isDefined(opsUpdateId) && (
[number];
-type NsActionResponse = NonNullable[number];
type InterventionResponse = NonNullable[number];
type IndicatorResponse = NonNullable[number];
type RiskSecurityResponse = NonNullable[number];
@@ -60,7 +59,6 @@ type ImagesFileResponse = NonNullable[numbe
type SourceInformationResponse = NonNullable[number];
type NeedIdentifiedFormFields = NeedIdentifiedResponse & { client_id: string };
-type NsActionFormFields = NsActionResponse & { client_id: string; }
type InterventionFormFields = InterventionResponse & { client_id: string };
type IndicatorFormFields = IndicatorResponse & { client_id: string };
type SourceInformationFormFields = SourceInformationResponse & { client_id: string };
@@ -83,13 +81,9 @@ type OpsUpdateFormFields = (
DeepReplace<
DeepReplace<
DeepReplace<
- DeepReplace<
- OpsUpdateRequestBody,
- NeedIdentifiedResponse,
- NeedIdentifiedFormFields
- >,
- NsActionResponse,
- NsActionFormFields
+ OpsUpdateRequestBody,
+ NeedIdentifiedResponse,
+ NeedIdentifiedFormFields
>,
InterventionResponse,
InterventionFormFields
@@ -122,12 +116,9 @@ export type PartialOpsUpdate = PartialForm<
type OpsUpdateFormSchema = ObjectSchema;
type OpsUpdateFormSchemaFields = ReturnType;
-type PhotoFileFields = ReturnType[number], PartialOpsUpdate>['fields']>;
-
type EventMapFileFields = ReturnType['fields']>;
type CoverImageFileFields = ReturnType['fields']>;
type ImageFileFields = ReturnType[number], PartialOpsUpdate>['fields']>;
-type NationalSocietyFields = ReturnType[number], PartialOpsUpdate>['fields']>;
type NeedsIdentifiedFields = ReturnType[number], PartialOpsUpdate>['fields']>;
type RiskSecurityFields = ReturnType[number], PartialOpsUpdate>['fields']>;
type SourceInformationFields = ReturnType[number], PartialOpsUpdate>['fields']>;
@@ -153,7 +144,14 @@ const schema: OpsUpdateFormSchema = {
},
// EVENT DETAILS
number_of_people_affected: { validations: [positiveIntegerCondition] },
- number_of_people_targeted: { validations: [positiveIntegerCondition] },
+ estimated_number_of_affected_male: { validations: [positiveIntegerCondition] },
+ estimated_number_of_affected_female: { validations: [positiveIntegerCondition] },
+ estimated_number_of_affected_girls_under_18: {
+ validations: [positiveIntegerCondition],
+ },
+ estimated_number_of_affected_boys_under_18: {
+ validations: [positiveIntegerCondition],
+ },
// none
@@ -209,7 +207,6 @@ const schema: OpsUpdateFormSchema = {
);
const overviewDrefTypeRelatedFields = [
- 'emergency_appeal_planned',
'event_map_file',
'cover_image_file',
'ns_request_date',
@@ -226,7 +223,6 @@ const schema: OpsUpdateFormSchema = {
overviewDrefTypeRelatedFields,
(val): OverviewDrefTypeRelatedFields => {
const conditionalFields: OverviewDrefTypeRelatedFields = {
- emergency_appeal_planned: { forceValue: nullValue },
event_map_file: { forceValue: nullValue },
cover_image_file: { forceValue: nullValue },
ns_request_date: { forceValue: nullValue },
@@ -241,7 +237,6 @@ const schema: OpsUpdateFormSchema = {
}
return {
...conditionalFields,
- emergency_appeal_planned: {},
event_map_file: {
fields: (): EventMapFileFields => ({
client_id: {},
@@ -278,7 +273,6 @@ const schema: OpsUpdateFormSchema = {
'changing_target_population_of_operation',
'changing_geographic_location',
'request_for_second_allocation',
- 'has_forecasted_event_materialize',
'source_information',
] as const;
type EventDetailDrefTypeRelatedFields = Pick<
@@ -308,7 +302,6 @@ const schema: OpsUpdateFormSchema = {
changing_target_population_of_operation: { forceValue: nullValue },
changing_geographic_location: { forceValue: nullValue },
request_for_second_allocation: { forceValue: nullValue },
- has_forecasted_event_materialize: { forceValue: nullValue },
};
if (
@@ -374,7 +367,6 @@ const schema: OpsUpdateFormSchema = {
changing_target_population_of_operation: {},
changing_geographic_location: {},
request_for_second_allocation: {},
- has_forecasted_event_materialize: {},
};
}
@@ -382,13 +374,14 @@ const schema: OpsUpdateFormSchema = {
},
);
+ // NOTE: @samshara can you confirm this logic?
formFields = addCondition(
formFields,
formValue,
- ['type_of_dref', 'has_forecasted_event_materialize'],
+ ['type_of_dref'],
['specified_trigger_met'],
(val): Pick => {
- if (val?.type_of_dref === TYPE_IMMINENT && val?.has_forecasted_event_materialize) {
+ if (val?.type_of_dref === TYPE_IMMINENT) {
return {
specified_trigger_met: {},
};
@@ -401,23 +394,6 @@ const schema: OpsUpdateFormSchema = {
// ACTIONS
- formFields = addCondition(
- formFields,
- formValue,
- ['did_national_society', 'type_of_dref'],
- ['ns_respond_date'],
- (val): Pick => {
- if (val?.type_of_dref !== TYPE_LOAN && val?.did_national_society) {
- return {
- ns_respond_date: {},
- };
- }
- return {
- ns_respond_date: { forceValue: nullValue },
- };
- },
- );
-
formFields = addCondition(
formFields,
formValue,
@@ -439,8 +415,6 @@ const schema: OpsUpdateFormSchema = {
'assessment_report',
'needs_identified',
'identified_gaps',
- 'did_national_society',
- 'national_society_actions',
'ifrc',
'icrc',
'partner_national_society',
@@ -448,7 +422,6 @@ const schema: OpsUpdateFormSchema = {
'national_authorities',
'un_or_other_actor',
'is_there_major_coordination_mechanism',
- 'photos_file',
] as const;
type ActionsDrefTypeRelatedFields = Pick<
OpsUpdateFormSchemaFields,
@@ -464,9 +437,6 @@ const schema: OpsUpdateFormSchema = {
assessment_report: { forceValue: nullValue },
needs_identified: { forceValue: [] },
identified_gaps: { forceValue: nullValue },
- did_national_society: { forceValue: nullValue },
- national_society_actions: { forceValue: [] },
- photos_file: { forceValue: [] },
ifrc: { forceValue: nullValue },
icrc: { forceValue: nullValue },
partner_national_society: { forceValue: nullValue },
@@ -480,34 +450,6 @@ const schema: OpsUpdateFormSchema = {
}
conditionalFields = {
...conditionalFields,
- did_national_society: {},
- national_society_actions: {
- keySelector: (nsAction) => nsAction.client_id,
- member: () => ({
- fields: (): NationalSocietyFields => ({
- client_id: {},
- title: {
- required: true,
- requiredValidation: requiredStringCondition,
- },
- description: {
- required: true,
- requiredValidation: requiredStringCondition,
- },
- }),
- }),
- },
- photos_file: {
- validations: [lessThanEqualToTwoImagesCondition],
- keySelector: (value) => value.client_id,
- member: () => ({
- fields: (): PhotoFileFields => ({
- client_id: {},
- id: { defaultValue: undefinedValue },
- caption: {},
- }),
- }),
- },
ifrc: {},
icrc: {},
partner_national_society: {},
@@ -573,9 +515,15 @@ const schema: OpsUpdateFormSchema = {
'displaced_people',
'risk_security',
'risk_security_concern',
+ 'has_anti_fraud_corruption_policy',
+ 'has_sexual_abuse_policy',
+ 'has_child_protection_policy',
+ 'has_whistleblower_protection_policy',
+ 'has_anti_sexual_harassment_policy',
'budget_file',
'planned_interventions',
'human_resource',
+ 'is_volunteer_team_diverse',
'is_surge_personnel_deployed',
'has_child_safeguarding_risk_analysis_assessment',
] as const;
@@ -609,9 +557,15 @@ const schema: OpsUpdateFormSchema = {
displaced_people: { forceValue: nullValue },
risk_security: { forceValue: [] },
risk_security_concern: { forceValue: nullValue },
+ has_anti_fraud_corruption_policy: {},
+ has_anti_sexual_harassment_policy: {},
+ has_sexual_abuse_policy: {},
+ has_whistleblower_protection_policy: {},
+ has_child_protection_policy: {},
budget_file: { forceValue: nullValue },
planned_interventions: { forceValue: [] },
human_resource: { forceValue: nullValue },
+ is_volunteer_team_diverse: { forceValue: nullValue },
is_surge_personnel_deployed: { forceValue: nullValue },
has_child_safeguarding_risk_analysis_assessment: { forceValue: nullValue },
};
@@ -708,7 +662,12 @@ const schema: OpsUpdateFormSchema = {
client_id: {},
title: {},
target: { validations: [positiveNumberCondition] },
- actual: { validations: [positiveNumberCondition] },
+ actual: {
+ required: true,
+ validations: [
+ positiveNumberCondition,
+ ],
+ },
}),
}),
},
@@ -716,6 +675,7 @@ const schema: OpsUpdateFormSchema = {
}),
},
human_resource: {},
+ is_volunteer_team_diverse: {},
is_surge_personnel_deployed: {},
};
if (val?.type_of_dref !== TYPE_ASSESSMENT) {
@@ -778,6 +738,11 @@ const schema: OpsUpdateFormSchema = {
'media_contact_title',
'media_contact_email',
'media_contact_phone_number',
+ 'national_society_integrity_contact_name',
+ 'national_society_integrity_contact_title',
+ 'national_society_integrity_contact_email',
+ 'national_society_integrity_contact_phone_number',
+ 'national_society_hotline_phone_number',
'glide_code',
] as const;
type SubmissionDrefTypeRelatedFields = Pick<
@@ -808,6 +773,11 @@ const schema: OpsUpdateFormSchema = {
media_contact_email: { forceValue: nullValue },
media_contact_phone_number: { forceValue: nullValue },
glide_code: { forceValue: nullValue },
+ national_society_integrity_contact_name: {},
+ national_society_integrity_contact_title: {},
+ national_society_integrity_contact_email: { validations: [emailCondition] },
+ national_society_integrity_contact_phone_number: {},
+ national_society_hotline_phone_number: {},
};
if (val?.type_of_dref !== TYPE_LOAN) {
diff --git a/translationMigrations/000024-1745835426360.json b/translationMigrations/000024-1745835426360.json
new file mode 100644
index 0000000000..d7e5cec143
--- /dev/null
+++ b/translationMigrations/000024-1745835426360.json
@@ -0,0 +1,1752 @@
+{
+ "parent": "000023-1745548484450.json",
+ "actions": [
+ {
+ "action": "add",
+ "key": "childSafeguardingRiskLevelLabel",
+ "namespace": "drefApplicationExport",
+ "value": "What was the risk level for Child Safeguarding Risk Analysis?"
+ },
+ {
+ "action": "add",
+ "key": "completeChildSafeguardingRiskLabel",
+ "namespace": "drefApplicationExport",
+ "value": "Did you complete the Child Safeguarding Risk Analysis in previous operations, what was risk level?"
+ },
+ {
+ "action": "add",
+ "key": "hasAntiFraudPolicy",
+ "namespace": "drefApplicationExport",
+ "value": "Does your National Society have anti-fraud and corruption policy?"
+ },
+ {
+ "action": "add",
+ "key": "hasAntiSexualHarassmentPolicy",
+ "namespace": "drefApplicationExport",
+ "value": "Does your National Society have anti-sexual harassment policy?"
+ },
+ {
+ "action": "add",
+ "key": "hasChildProtectionPolicy",
+ "namespace": "drefApplicationExport",
+ "value": "Does your National Society have child protection/child safeguarding policy?"
+ },
+ {
+ "action": "add",
+ "key": "hasSexualAbusePolicy",
+ "namespace": "drefApplicationExport",
+ "value": "Does your National Society have prevention of sexual exploitation and abuse policy?"
+ },
+ {
+ "action": "add",
+ "key": "hasWhistleblowerProtectionPolicy",
+ "namespace": "drefApplicationExport",
+ "value": "Does your National Society have whistleblower protection policy?"
+ },
+ {
+ "action": "add",
+ "key": "isVolunteerTeamDiverseHeading",
+ "namespace": "drefApplicationExport",
+ "value": "Does your volunteer team reflect the gender, age, and cultural diversity of the people you’re helping? What gaps exist in your volunteer team’s gender, age, or cultural diversity, and how are you addressing them to ensure inclusive and appropriate support?"
+ },
+ {
+ "action": "add",
+ "key": "nationalSocietyHotlineHeading",
+ "namespace": "drefApplicationExport",
+ "value": "National Society Hotline"
+ },
+ {
+ "action": "add",
+ "key": "nationalSocietyIntegrityHeading",
+ "namespace": "drefApplicationExport",
+ "value": "National Societies' Integrity Focal Point"
+ },
+ {
+ "action": "update",
+ "key": "riskAndSecuritySectionHeading",
+ "namespace": "drefApplicationExport",
+ "newValue": "Risk and Security Considerations (including \"management\")"
+ },
+ {
+ "action": "update",
+ "key": "riskSecurityHeading",
+ "namespace": "drefApplicationExport",
+ "newValue": "Please analyse and indicate potential risks for this operation, its root causes and mitigation actions."
+ },
+ {
+ "action": "update",
+ "key": "targetedAreasLabel",
+ "namespace": "drefApplicationExport",
+ "newValue": "Targeted Regions"
+ },
+ {
+ "action": "add",
+ "key": "drefFormAffectedFemaleLabel",
+ "namespace": "drefApplicationForm",
+ "value": "Estimated female affected"
+ },
+ {
+ "action": "add",
+ "key": "drefFormAffectedMaleLabel",
+ "namespace": "drefApplicationForm",
+ "value": "Estimated male affected"
+ },
+ {
+ "action": "add",
+ "key": "drefFormAffectedMinorBoysLabel",
+ "namespace": "drefApplicationForm",
+ "value": "Estimated Boys (under 18)"
+ },
+ {
+ "action": "add",
+ "key": "drefFormAffectedMinorGirlsLabel",
+ "namespace": "drefApplicationForm",
+ "value": "Estimated Girls (under 18)"
+ },
+ {
+ "action": "add",
+ "key": "drefFormBudgetSummaryTemplate",
+ "namespace": "drefApplicationForm",
+ "value": "Budget summary template"
+ },
+ {
+ "action": "add",
+ "key": "drefFormChildSafeguardingRiskAnalysisTitle",
+ "namespace": "drefApplicationForm",
+ "value": "Did you complete the Child Safeguarding Risk Analysis in previous operations, what was risk level?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormChildSafeguardingRiskLevelLabel",
+ "namespace": "drefApplicationForm",
+ "value": "Risk Level"
+ },
+ {
+ "action": "add",
+ "key": "drefFormCommunicationDescriptionPoint1",
+ "namespace": "drefApplicationForm",
+ "value": "What communication channels will be used to share information internally among teams and externally with stakeholders, partners, and the public?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormCommunicationDescriptionPoint2",
+ "namespace": "drefApplicationForm",
+ "value": "How will the National Society ensure transparent and effective communication with the affected communities?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormCommunicationDescriptionPoint3",
+ "namespace": "drefApplicationForm",
+ "value": "Is there a media strategy in place for external communication, such as press releases or social media updates?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormCommunicationDescriptionPoint4",
+ "namespace": "drefApplicationForm",
+ "value": "Will the IFRC be supporting with communication? What roles will be involved?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormDownloadBudgetTemplate",
+ "namespace": "drefApplicationForm",
+ "value": "Download the Budget Template"
+ },
+ {
+ "action": "add",
+ "key": "drefFormGapsInAssessmentDescriptionHeading",
+ "namespace": "drefApplicationForm",
+ "value": "Consider the following:"
+ },
+ {
+ "action": "add",
+ "key": "drefFormGapsInAssessmentDescriptionPoint1",
+ "namespace": "drefApplicationForm",
+ "value": "Unmet needs: are there specific sectors (e.g., shelter, WASH, health) where needs remain unmet or only partially addressed?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormGapsInAssessmentDescriptionPoint2",
+ "namespace": "drefApplicationForm",
+ "value": "Resource shortages: highlight any shortages in available resources (e.g., funding, personnel, supplies) that limit the ability to meet the identified needs."
+ },
+ {
+ "action": "add",
+ "key": "drefFormGapsInAssessmentDescriptionPoint3",
+ "namespace": "drefApplicationForm",
+ "value": "Operational challenges: mention any operational constraints that are preventing a full response to the needs (e.g., logistical issues, insufficient capacity)."
+ },
+ {
+ "action": "add",
+ "key": "drefFormGapsInAssessmentDescriptionPoint4",
+ "namespace": "drefApplicationForm",
+ "value": "Coordination issues: note any challenges in coordinating with other actors or agencies that have resulted in gaps in service delivery or response coverage."
+ },
+ {
+ "action": "add",
+ "key": "drefFormGapsInAssessmentDescriptionPoint5",
+ "namespace": "drefApplicationForm",
+ "value": "Vulnerable groups: identify any specific vulnerable groups whose needs may not have been fully captured or addressed during the assessment (e.g., displaced persons, elderly, people with disabilities)."
+ },
+ {
+ "action": "add",
+ "key": "drefFormHumanResourceDescriptionPoint1",
+ "namespace": "drefApplicationForm",
+ "value": "How many staff members and volunteers are expected to participate?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormHumanResourceDescriptionPoint2",
+ "namespace": "drefApplicationForm",
+ "value": "What specific roles or responsibilities will they have during the operation?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormHumanResourceDescriptionPoint3",
+ "namespace": "drefApplicationForm",
+ "value": "Are there any key leadership positions or coordinators overseeing the activities?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormHumanResourceTitle",
+ "namespace": "drefApplicationForm",
+ "value": "How many staff and volunteers will be involved in this operation."
+ },
+ {
+ "action": "add",
+ "key": "drefFormIndicatorDataLinkLabel",
+ "namespace": "drefApplicationForm",
+ "value": "IFRC Indicator Databank"
+ },
+ {
+ "action": "add",
+ "key": "drefFormIntegrityContactEmailLabel",
+ "namespace": "drefApplicationForm",
+ "value": "Email"
+ },
+ {
+ "action": "add",
+ "key": "drefFormIntegrityContactNameLabel",
+ "namespace": "drefApplicationForm",
+ "value": "Name"
+ },
+ {
+ "action": "add",
+ "key": "drefFormIntegrityContactPhoneNumberLabel",
+ "namespace": "drefApplicationForm",
+ "value": "Phone Number"
+ },
+ {
+ "action": "add",
+ "key": "drefFormIntegrityContactTitleLabel",
+ "namespace": "drefApplicationForm",
+ "value": "Title"
+ },
+ {
+ "action": "add",
+ "key": "drefFormIsVolunteerTeamDiverseDescription",
+ "namespace": "drefApplicationForm",
+ "value": "This question is about making sure your team includes the right mix of people to best support those affected. For example, if you’re helping single female heads of households, it’s important to have enough female volunteers to make everyone feel comfortable and understood. Including team members who share the same language or cultural background as the people you’re helping can also make a big difference in building trust and providing effective support."
+ },
+ {
+ "action": "add",
+ "key": "drefFormIsVolunteerTeamDiverseLabel",
+ "namespace": "drefApplicationForm",
+ "value": "Description"
+ },
+ {
+ "action": "add",
+ "key": "drefFormIsVolunteerTeamDiverseTitle",
+ "namespace": "drefApplicationForm",
+ "value": "Does your volunteer team reflect the gender, age, and cultural diversity of the people you’re helping? What gaps exist in your volunteer team’s gender, age, or cultural diversity, and how are you addressing them to ensure inclusive and appropriate support?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormLogisticCapacityOfNsDescriptionPoint1",
+ "namespace": "drefApplicationForm",
+ "value": "Who will be responsible for procurement (National Society or IFRC)?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormLogisticCapacityOfNsDescriptionPoint2",
+ "namespace": "drefApplicationForm",
+ "value": "Will procurement involve local or international suppliers?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormLogisticCapacityOfNsDescriptionPoint3",
+ "namespace": "drefApplicationForm",
+ "value": "Will it be for replenishment or for distribution?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormLogisticCapacityOfNsDescriptionPoint4",
+ "namespace": "drefApplicationForm",
+ "value": "If for distribution, how long is the tendering expected to take?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormLogisticCapacityOfNsDescriptionPoint5",
+ "namespace": "drefApplicationForm",
+ "value": "For Cash and Voucher Assistance, what is the status of the Financial Service Provider?”"
+ },
+ {
+ "action": "add",
+ "key": "drefFormNationalAuthoritiesDescription",
+ "namespace": "drefApplicationForm",
+ "value": "Brief description of actions taken by the national authorities."
+ },
+ {
+ "action": "add",
+ "key": "drefFormNationalSocietyDescription",
+ "namespace": "drefApplicationForm",
+ "value": "Indicate your National Society by selecting it from the drop-down list."
+ },
+ {
+ "action": "add",
+ "key": "drefFormNationalSocietyHotlineNumberLabel",
+ "namespace": "drefApplicationForm",
+ "value": "Phone Number"
+ },
+ {
+ "action": "add",
+ "key": "drefFormNationalSocietyHotlineNumberTitle",
+ "namespace": "drefApplicationForm",
+ "value": "National Society Hotline"
+ },
+ {
+ "action": "add",
+ "key": "drefFormNationalSocietyIntegrityTitle",
+ "namespace": "drefApplicationForm",
+ "value": "National Societies' Integrity Focal Point"
+ },
+ {
+ "action": "add",
+ "key": "drefFormObjectiveOperationDescription",
+ "namespace": "drefApplicationForm",
+ "value": "The objective statement should clearly and concisely describe the primary goal of the operation, focusing on the humanitarian impact and the specific needs the operation aims to address."
+ },
+ {
+ "action": "add",
+ "key": "drefFormPmerDescriptionPoint1",
+ "namespace": "drefApplicationForm",
+ "value": "What systems will be used to monitor the operation’s activities and outcomes?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormPmerDescriptionPoint2",
+ "namespace": "drefApplicationForm",
+ "value": "How will progress be tracked, and who will be responsible for monitoring?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormPmerDescriptionPoint3",
+ "namespace": "drefApplicationForm",
+ "value": "What indicators or milestones will be used to assess the success of the operation?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormPmerDescriptionPoint4",
+ "namespace": "drefApplicationForm",
+ "value": "Will there be IFRC monitoring visits? How will it be deployed?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormRequestAmountDescription",
+ "namespace": "drefApplicationForm",
+ "value": "General funding requested to fund the interventions. "
+ },
+ {
+ "action": "add",
+ "key": "drefFormRequestAmountDescriptionPoint1",
+ "namespace": "drefApplicationForm",
+ "value": "What specific actions will be taken in this sector to meet the identified needs?” Start by choosing indicators from the {indicatorDatabankLink} whenever possible. This makes it easier to compare and analyse results across all emergency operations."
+ },
+ {
+ "action": "add",
+ "key": "drefFormRequestAmountDescriptionPoint2",
+ "namespace": "drefApplicationForm",
+ "value": "Pick indicators that align with the planned activities. This ensures that the indicators accurately reflect the actions being taken on the ground. Missing important indicators could mean missed chances to showcase the positive impact of the work being done."
+ },
+ {
+ "action": "add",
+ "key": "drefFormRequestAmountDescriptionPoint3",
+ "namespace": "drefApplicationForm",
+ "value": "Keep in mind that more indicators can mean more work. Each indicator selected requires monitoring, tracking, and reporting, so be sure to choose the ones that best reflect the key outcomes of your actions."
+ },
+ {
+ "action": "add",
+ "key": "drefFormRequestAmountDescriptionPoint4",
+ "namespace": "drefApplicationForm",
+ "value": "Consider the type of indicator unit. For example, it’s often simpler and clearer to track and report on the “number of people” rather than a “percentage of people.”"
+ },
+ {
+ "action": "add",
+ "key": "drefFormRequestAmountDescriptionPoint5",
+ "namespace": "drefApplicationForm",
+ "value": "For each indicator, set a target. This helps track progress and measure whether the operation is achieving its key objectives, making it easier to report results later on."
+ },
+ {
+ "action": "add",
+ "key": "drefFormRequestAmountDescriptionWithIntervention",
+ "namespace": "drefApplicationForm",
+ "value": "List specific activities that will be carried out as part of the intervention in each sector. The activities should directly address the identified needs and align with the operation’s strategic objectives."
+ },
+ {
+ "action": "add",
+ "key": "drefFormResponseRationaleDescriptionPoint1",
+ "namespace": "drefApplicationForm",
+ "value": "Highlight the most urgent needs the operation aims to address."
+ },
+ {
+ "action": "add",
+ "key": "drefFormResponseRationaleDescriptionPoint2",
+ "namespace": "drefApplicationForm",
+ "value": "Describe the main priorities and explain why these priorities were chosen based on the specific context of the emergency."
+ },
+ {
+ "action": "add",
+ "key": "drefFormResponseRationaleDescriptionPoint3",
+ "namespace": "drefApplicationForm",
+ "value": "Justify why particular methods and actions were selected and how they are expected to achieve the desired outcomes."
+ },
+ {
+ "action": "add",
+ "key": "drefFormResponseRationaleDescriptionPoint4",
+ "namespace": "drefApplicationForm",
+ "value": "Include any key factors that influence the strategy; mention how these factors were considered in shaping the operation."
+ },
+ {
+ "action": "add",
+ "key": "drefFormResponseRationaleForAssessment",
+ "namespace": "drefApplicationForm",
+ "value": "Please describe the strategy to conduct the assessment exercise, main objectives, who will be involved?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskDoesNSHaveAntiFraudPolicy",
+ "namespace": "drefApplicationForm",
+ "value": "Does your National Society have anti-fraud and corruption policy?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskDoesNSHaveAntiSexualHarassmentPolicy",
+ "namespace": "drefApplicationForm",
+ "value": "Does your National Society have anti-sexual harassment policy?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskDoesNSHaveChildProtectionPolicy",
+ "namespace": "drefApplicationForm",
+ "value": "Does your National Society have child protection/child safeguarding policy?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskDoesNSHaveSexualAbusePolicy",
+ "namespace": "drefApplicationForm",
+ "value": "Does your National Society have prevention of sexual exploitation and abuse policy?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskDoesNSHaveWhistleblowerPolicy",
+ "namespace": "drefApplicationForm",
+ "value": "Does your National Society have whistleblower protection policy?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskSecurityPotentialRiskAssessmentDescription",
+ "namespace": "drefApplicationForm",
+ "value": "Please consider any possible challenges to conduct the assessment, any possible limitations in getting the information required and overall risk to the implementation"
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskSecurityRiskCategoriesLinkLabel",
+ "namespace": "drefApplicationForm",
+ "value": "Annex III - Risk Categories.pdf"
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskSecurityRiskSelectedDescription",
+ "namespace": "drefApplicationForm",
+ "value": "Identify up to 5 key potential risks or threats that could negatively impact the success of the operation. These can range from environmental risks to social or logistical challenges."
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskSecurityRiskSelectedPoint1",
+ "namespace": "drefApplicationForm",
+ "value": "What are the primary risks that could affect the operation’s implementation?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskSecurityRiskSelectedPoint2",
+ "namespace": "drefApplicationForm",
+ "value": "Are there any context-specific risks that need to be considered?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskSecurityRiskSelectedPoint3",
+ "namespace": "drefApplicationForm",
+ "value": "How might these risks impact the operation’s objectives, timeline, or resources? Mitigation actions are actions or strategies that will be implemented to reduce or manage the identified risks, ensuring the operation can proceed as planned."
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskSecurityRiskSelectedPoint4",
+ "namespace": "drefApplicationForm",
+ "value": "What specific measures or strategies will be put in place to mitigate the risks identified?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskSecurityRiskSelectedPoint5",
+ "namespace": "drefApplicationForm",
+ "value": "Will contingency plans or additional resources be required to address these risks?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskSecuritySafetyConcernDescription",
+ "namespace": "drefApplicationForm",
+ "value": "Describe any specific security or safety threats that could impact the safety of personnel, volunteers, and communities during the operation."
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskSecuritySafetyConcernDescriptionPoint1",
+ "namespace": "drefApplicationForm",
+ "value": "Are there any security concerns related to the areas where the operation will take place (e.g., conflict zones, high-crime areas)"
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskSecuritySafetyConcernDescriptionPoint2",
+ "namespace": "drefApplicationForm",
+ "value": "What safety risks could impact the well-being of staff, volunteers, or beneficiaries (e.g., dangerous terrain, health risks)?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskSecuritySafetyConcernDescriptionPoint3",
+ "namespace": "drefApplicationForm",
+ "value": "Are there any specific security protocols or measures that need to be established or followed during the operation?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormSurgePersonnelDeployedDescriptionPoint1",
+ "namespace": "drefApplicationForm",
+ "value": "Describe the skills and qualifications/profile of the surge personnel or any additional staff (to be) deployed specifically for the operation."
+ },
+ {
+ "action": "add",
+ "key": "drefFormSurgePersonnelDeployedDescriptionPoint2",
+ "namespace": "drefApplicationForm",
+ "value": "What expertise or skill sets are required for the personnel being deployed?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormSurgePersonnelDeployedDescriptionPoint3",
+ "namespace": "drefApplicationForm",
+ "value": "What roles will these personnel fulfil?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormSurgePersonnelDeployedDescriptionPoint4",
+ "namespace": "drefApplicationForm",
+ "value": "Are there specific tasks or sectors they will be managing?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormUNorOtherActorsDescription",
+ "namespace": "drefApplicationForm",
+ "value": "Brief description of actions taken by the UN or other actors."
+ },
+ {
+ "action": "add",
+ "key": "drefFormWhatWhereWhenDescriptionHeading",
+ "namespace": "drefApplicationForm",
+ "value": "Clearly Describe:"
+ },
+ {
+ "action": "add",
+ "key": "drefFormWhatWhereWhenDescriptionPoint1",
+ "namespace": "drefApplicationForm",
+ "value": "What happened: Briefly explain the nature of the emergency (e.g., flood, earthquake, epidemic). Include key details such as the intensity, and any unique aspects of the event."
+ },
+ {
+ "action": "add",
+ "key": "drefFormWhatWhereWhenDescriptionPoint2",
+ "namespace": "drefApplicationForm",
+ "value": "Where: Specify the geographic location(s) affected. Be as precise as possible, including names of countries, regions, cities, or specific areas impacted by the event."
+ },
+ {
+ "action": "add",
+ "key": "drefFormWhatWhereWhenDescriptionPoint3",
+ "namespace": "drefApplicationForm",
+ "value": "When: Indicate the date and time when the event occurred or began. If the situation is ongoing, mention that and provide relevant updates on the timeframe."
+ },
+ {
+ "action": "remove",
+ "key": "drefFormSurgePersonnelDeployedDescription",
+ "namespace": "drefApplicationForm"
+ },
+ {
+ "action": "update",
+ "key": "drefFormCommunicationDescription",
+ "namespace": "drefApplicationForm",
+ "newValue": "Describe how the National Society will manage internal and external communication throughout the operation."
+ },
+ {
+ "action": "update",
+ "key": "drefFormEventDescription",
+ "namespace": "drefApplicationForm",
+ "newValue": "If a field report related to this event/operation already exists, you can use it to pre-fill matching fields in this request. To do so, select the relevant field report from the drop-down list and click “Copy”."
+ },
+ {
+ "action": "update",
+ "key": "drefFormHumanResourceDescription",
+ "namespace": "drefApplicationForm",
+ "newValue": "A brief description of the human resources that will be engaged in the operation, including both staff and volunteers."
+ },
+ {
+ "action": "update",
+ "key": "drefFormLogisticCapacityOfNsDescription",
+ "namespace": "drefApplicationForm",
+ "newValue": "Explain the responsibility for procurement activities during the operation."
+ },
+ {
+ "action": "update",
+ "key": "drefFormObjectiveOperationPlaceholder",
+ "namespace": "drefApplicationForm",
+ "newValue": "The IFRC-DREF operation aims to [primary action] in order to [desired impact] for [target population] affected by [event/disaster], by providing [key services/interventions] and ensuring [core outcomes such as protection, dignity, and resilience] over [operation period]."
+ },
+ {
+ "action": "update",
+ "key": "drefFormPmerDescription",
+ "namespace": "drefApplicationForm",
+ "newValue": "Describe the mechanisms that will be used to track the progress and effectiveness of the operation."
+ },
+ {
+ "action": "update",
+ "key": "drefFormResponseRationaleDescription",
+ "namespace": "drefApplicationForm",
+ "newValue": "Elaborate on the overall plan, strategy and approach of the operation; explain the reasoning behind the chosen strategy for the emergency operation. Explain how the identified needs/gaps and actions taken/plans are linked."
+ },
+ {
+ "action": "update",
+ "key": "drefFormRiskSecurity",
+ "namespace": "drefApplicationForm",
+ "newValue": "Risk and Security Considerations (including \"management\")"
+ },
+ {
+ "action": "update",
+ "key": "drefFormRiskSecurityPotentialRisk",
+ "namespace": "drefApplicationForm",
+ "newValue": "Please analyse and indicate potential risks for this operation, its root causes and mitigation actions."
+ },
+ {
+ "action": "update",
+ "key": "drefFormRiskSecurityPotentialRiskDescription",
+ "namespace": "drefApplicationForm",
+ "newValue": "When identifying the risks, please review the IFRC Risk Management Policy and Framework including the different risk categories. When possible, make sure that your identification of risks includes some analysis of previous incidents and performance of the NS in previous operations."
+ },
+ {
+ "action": "update",
+ "key": "formShareButtonLabel",
+ "namespace": "drefApplicationForm",
+ "newValue": "Add"
+ },
+ {
+ "action": "add",
+ "key": "hasAntiFraudPolicy",
+ "namespace": "drefFinalReportExport",
+ "value": "Does your National Society have anti-fraud and corruption policy?"
+ },
+ {
+ "action": "add",
+ "key": "hasAntiSexualHarassmentPolicy",
+ "namespace": "drefFinalReportExport",
+ "value": "Does your National Society have anti-sexual harassment policy?"
+ },
+ {
+ "action": "add",
+ "key": "hasChildProtectionPolicy",
+ "namespace": "drefFinalReportExport",
+ "value": "Does your National Society have child protection/child safeguarding policy?"
+ },
+ {
+ "action": "add",
+ "key": "hasSexualAbusePolicy",
+ "namespace": "drefFinalReportExport",
+ "value": "Does your National Society have prevention of sexual exploitation and abuse policy?"
+ },
+ {
+ "action": "add",
+ "key": "hasWhistleblowerProtectionPolicy",
+ "namespace": "drefFinalReportExport",
+ "value": "Does your National Society have whistleblower protection policy?"
+ },
+ {
+ "action": "add",
+ "key": "nationalSocietyHotlineHeading",
+ "namespace": "drefFinalReportExport",
+ "value": "National Society Hotline"
+ },
+ {
+ "action": "add",
+ "key": "nationalSocietyIntegrityHeading",
+ "namespace": "drefFinalReportExport",
+ "value": "National Societies' Integrity Focal Point"
+ },
+ {
+ "action": "update",
+ "key": "riskAndSecuritySectionHeading",
+ "namespace": "drefFinalReportExport",
+ "newValue": "Risk and Security Considerations (including \"management\")"
+ },
+ {
+ "action": "update",
+ "key": "riskSecurityHeading",
+ "namespace": "drefFinalReportExport",
+ "newValue": "Please analyse and indicate potential risks for this operation, its root causes and mitigation actions."
+ },
+ {
+ "action": "update",
+ "key": "targetedAreasLabel",
+ "namespace": "drefFinalReportExport",
+ "newValue": "Targeted Regions"
+ },
+ {
+ "action": "add",
+ "key": "drefFinalReportRequestAmountDescription",
+ "namespace": "drefFinalReportForm",
+ "value": "General funding requested to fund the interventions. List specific activities that will be carried out as part of the intervention in each sector. The activities should directly address the identified needs and align with the operation’s strategic objectives."
+ },
+ {
+ "action": "add",
+ "key": "drefFinalReportRequestAmountDescriptionPoint1",
+ "namespace": "drefFinalReportForm",
+ "value": "What specific actions will be taken in this sector to meet the identified needs?” Start by choosing indicators from the {indicatorDatabankLink} whenever possible. This makes it easier to compare and analyse results across all emergency operations."
+ },
+ {
+ "action": "add",
+ "key": "drefFinalReportRequestAmountDescriptionPoint2",
+ "namespace": "drefFinalReportForm",
+ "value": "Pick indicators that align with the planned activities. This ensures that the indicators accurately reflect the actions being taken on the ground. Missing important indicators could mean missed chances to showcase the positive impact of the work being done."
+ },
+ {
+ "action": "add",
+ "key": "drefFinalReportRequestAmountDescriptionPoint3",
+ "namespace": "drefFinalReportForm",
+ "value": "Keep in mind that more indicators can mean more work. Each indicator selected requires monitoring, tracking, and reporting, so be sure to choose the ones that best reflect the key outcomes of your actions."
+ },
+ {
+ "action": "add",
+ "key": "drefFinalReportRequestAmountDescriptionPoint4",
+ "namespace": "drefFinalReportForm",
+ "value": "Consider the type of indicator unit. For example, it’s often simpler and clearer to track and report on the “number of people” rather than a “percentage of people.”"
+ },
+ {
+ "action": "add",
+ "key": "drefFinalReportRequestAmountDescriptionPoint5",
+ "namespace": "drefFinalReportForm",
+ "value": "For each indicator, set a target. This helps track progress and measure whether the operation is achieving its key objectives, making it easier to report results later on."
+ },
+ {
+ "action": "add",
+ "key": "drefFormAffectedFemaleLabel",
+ "namespace": "drefFinalReportForm",
+ "value": "Estimated female affected"
+ },
+ {
+ "action": "add",
+ "key": "drefFormAffectedMaleLabel",
+ "namespace": "drefFinalReportForm",
+ "value": "Estimated male affected"
+ },
+ {
+ "action": "add",
+ "key": "drefFormAffectedMinorBoysLabel",
+ "namespace": "drefFinalReportForm",
+ "value": "Estimated Boys (under 18)"
+ },
+ {
+ "action": "add",
+ "key": "drefFormAffectedMinorGirlsLabel",
+ "namespace": "drefFinalReportForm",
+ "value": "Estimated Girls (under 18)"
+ },
+ {
+ "action": "add",
+ "key": "drefFormIntegrityContactEmailLabel",
+ "namespace": "drefFinalReportForm",
+ "value": "Email"
+ },
+ {
+ "action": "add",
+ "key": "drefFormIntegrityContactNameLabel",
+ "namespace": "drefFinalReportForm",
+ "value": "Name"
+ },
+ {
+ "action": "add",
+ "key": "drefFormIntegrityContactPhoneNumberLabel",
+ "namespace": "drefFinalReportForm",
+ "value": "Phone Number"
+ },
+ {
+ "action": "add",
+ "key": "drefFormIntegrityContactTitleLabel",
+ "namespace": "drefFinalReportForm",
+ "value": "Title"
+ },
+ {
+ "action": "add",
+ "key": "drefFormNationalAuthoritiesDescription",
+ "namespace": "drefFinalReportForm",
+ "value": "Brief description of actions taken by the national authorities."
+ },
+ {
+ "action": "add",
+ "key": "drefFormNationalSocietyDescription",
+ "namespace": "drefFinalReportForm",
+ "value": "Indicate your National Society by selecting it from the drop-down list."
+ },
+ {
+ "action": "add",
+ "key": "drefFormNationalSocietyHotlineNumberLabel",
+ "namespace": "drefFinalReportForm",
+ "value": "Phone Number"
+ },
+ {
+ "action": "add",
+ "key": "drefFormNationalSocietyHotlineNumberTitle",
+ "namespace": "drefFinalReportForm",
+ "value": "National Society Hotline"
+ },
+ {
+ "action": "add",
+ "key": "drefFormNationalSocietyIntegrityTitle",
+ "namespace": "drefFinalReportForm",
+ "value": "National Societies' Integrity Focal Point"
+ },
+ {
+ "action": "add",
+ "key": "drefFormObjectiveOperationDescription",
+ "namespace": "drefFinalReportForm",
+ "value": "The objective statement should clearly and concisely describe the primary goal of the operation, focusing on the humanitarian impact and the specific needs the operation aims to address."
+ },
+ {
+ "action": "add",
+ "key": "drefFormResponseRationaleDescriptionPoint1",
+ "namespace": "drefFinalReportForm",
+ "value": "Highlight the most urgent needs the operation aims to address."
+ },
+ {
+ "action": "add",
+ "key": "drefFormResponseRationaleDescriptionPoint2",
+ "namespace": "drefFinalReportForm",
+ "value": "Describe the main priorities and explain why these priorities were chosen based on the specific context of the emergency."
+ },
+ {
+ "action": "add",
+ "key": "drefFormResponseRationaleDescriptionPoint3",
+ "namespace": "drefFinalReportForm",
+ "value": "Justify why particular methods and actions were selected and how they are expected to achieve the desired outcomes."
+ },
+ {
+ "action": "add",
+ "key": "drefFormResponseRationaleDescriptionPoint4",
+ "namespace": "drefFinalReportForm",
+ "value": "Include any key factors that influence the strategy; mention how these factors were considered in shaping the operation."
+ },
+ {
+ "action": "add",
+ "key": "drefFormResponseRationaleForAssessment",
+ "namespace": "drefFinalReportForm",
+ "value": "Please describe the strategy to conduct the assessment exercise, main objectives, who will be involved?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskDoesNSHaveAntiFraudPolicy",
+ "namespace": "drefFinalReportForm",
+ "value": "Does your National Society have anti-fraud and corruption policy?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskDoesNSHaveAntiSexualHarassmentPolicy",
+ "namespace": "drefFinalReportForm",
+ "value": "Does your National Society have anti-sexual harassment policy?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskDoesNSHaveChildProtectionPolicy",
+ "namespace": "drefFinalReportForm",
+ "value": "Does your National Society have child protection/child safeguarding policy?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskDoesNSHaveSexualAbusePolicy",
+ "namespace": "drefFinalReportForm",
+ "value": "Does your National Society have prevention of sexual exploitation and abuse policy?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskDoesNSHaveWhistleblowerPolicy",
+ "namespace": "drefFinalReportForm",
+ "value": "Does your National Society have whistleblower protection policy?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskSecurityPotentialRiskAssessmentDescription",
+ "namespace": "drefFinalReportForm",
+ "value": "Please consider any possible challenges to conduct the assessment, any possible limitations in getting the information required and overall risk to the implementation"
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskSecurityRiskCategoriesLinkLabel",
+ "namespace": "drefFinalReportForm",
+ "value": "Annex III - Risk Categories.pdf"
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskSecurityRiskSelectedDescription",
+ "namespace": "drefFinalReportForm",
+ "value": "Identify up to 5 key potential risks or threats that could negatively impact the success of the operation. These can range from environmental risks to social or logistical challenges."
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskSecurityRiskSelectedPoint1",
+ "namespace": "drefFinalReportForm",
+ "value": "What are the primary risks that could affect the operation’s implementation?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskSecurityRiskSelectedPoint2",
+ "namespace": "drefFinalReportForm",
+ "value": "Are there any context-specific risks that need to be considered?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskSecurityRiskSelectedPoint3",
+ "namespace": "drefFinalReportForm",
+ "value": "How might these risks impact the operation’s objectives, timeline, or resources? Mitigation actions are actions or strategies that will be implemented to reduce or manage the identified risks, ensuring the operation can proceed as planned."
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskSecurityRiskSelectedPoint4",
+ "namespace": "drefFinalReportForm",
+ "value": "What specific measures or strategies will be put in place to mitigate the risks identified?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskSecurityRiskSelectedPoint5",
+ "namespace": "drefFinalReportForm",
+ "value": "Will contingency plans or additional resources be required to address these risks?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskSecuritySafetyConcernDescription",
+ "namespace": "drefFinalReportForm",
+ "value": "Describe any specific security or safety threats that could impact the safety of personnel, volunteers, and communities during the operation."
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskSecuritySafetyConcernDescriptionPoint1",
+ "namespace": "drefFinalReportForm",
+ "value": "Are there any security concerns related to the areas where the operation will take place (e.g., conflict zones, high-crime areas)"
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskSecuritySafetyConcernDescriptionPoint2",
+ "namespace": "drefFinalReportForm",
+ "value": "What safety risks could impact the well-being of staff, volunteers, or beneficiaries (e.g., dangerous terrain, health risks)?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskSecuritySafetyConcernDescriptionPoint3",
+ "namespace": "drefFinalReportForm",
+ "value": "Are there any specific security protocols or measures that need to be established or followed during the operation?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormUNorOtherActorsDescription",
+ "namespace": "drefFinalReportForm",
+ "value": "Brief description of actions taken by the UN or other actors."
+ },
+ {
+ "action": "add",
+ "key": "drefFormWhatWhereWhenDescriptionHeading",
+ "namespace": "drefFinalReportForm",
+ "value": "Clearly Describe:"
+ },
+ {
+ "action": "add",
+ "key": "drefFormWhatWhereWhenDescriptionPoint1",
+ "namespace": "drefFinalReportForm",
+ "value": "What happened: Briefly explain the nature of the emergency (e.g., flood, earthquake, epidemic). Include key details such as the intensity, and any unique aspects of the event."
+ },
+ {
+ "action": "add",
+ "key": "drefFormWhatWhereWhenDescriptionPoint2",
+ "namespace": "drefFinalReportForm",
+ "value": "Where: Specify the geographic location(s) affected. Be as precise as possible, including names of countries, regions, cities, or specific areas impacted by the event."
+ },
+ {
+ "action": "add",
+ "key": "drefFormWhatWhereWhenDescriptionPoint3",
+ "namespace": "drefFinalReportForm",
+ "value": "When: Indicate the date and time when the event occurred or began. If the situation is ongoing, mention that and provide relevant updates on the timeframe."
+ },
+ {
+ "action": "add",
+ "key": "drefIndicatorDataLinkLabel",
+ "namespace": "drefFinalReportForm",
+ "value": "IFRC Indicator Databank"
+ },
+ {
+ "action": "remove",
+ "key": "drefFormNationalSocietiesActionsDescription",
+ "namespace": "drefFinalReportForm"
+ },
+ {
+ "action": "remove",
+ "key": "drefFormPeopleTargeted",
+ "namespace": "drefFinalReportForm"
+ },
+ {
+ "action": "remove",
+ "key": "finalReportDescriptionOfAdditionalActivities",
+ "namespace": "drefFinalReportForm"
+ },
+ {
+ "action": "remove",
+ "key": "finalReportHaveNationalSocietyConducted",
+ "namespace": "drefFinalReportForm"
+ },
+ {
+ "action": "remove",
+ "key": "finalReportNationalSocietiesActions",
+ "namespace": "drefFinalReportForm"
+ },
+ {
+ "action": "update",
+ "key": "drefFormObjectiveOperationPlaceholder",
+ "namespace": "drefFinalReportForm",
+ "newValue": "The IFRC-DREF operation aims to [primary action] in order to [desired impact] for [target population] affected by [event/disaster], by providing [key services/interventions] and ensuring [core outcomes such as protection, dignity, and resilience] over [operation period]."
+ },
+ {
+ "action": "update",
+ "key": "drefFormPeopleAssistedDescription",
+ "namespace": "drefFinalReportForm",
+ "newValue": "Include all those whose the National Society assisted"
+ },
+ {
+ "action": "update",
+ "key": "drefFormResponseRationaleDescription",
+ "namespace": "drefFinalReportForm",
+ "newValue": "Elaborate on the overall plan, strategy and approach of the operation; explain the reasoning behind the chosen strategy for the emergency operation. Explain how the identified needs/gaps and actions taken/plans are linked."
+ },
+ {
+ "action": "update",
+ "key": "drefFormRiskSecurity",
+ "namespace": "drefFinalReportForm",
+ "newValue": "Risk and Security Considerations (including \"management\")"
+ },
+ {
+ "action": "update",
+ "key": "drefFormRiskSecurityPotentialRisk",
+ "namespace": "drefFinalReportForm",
+ "newValue": "Please analyse and indicate potential risks for this operation, its root causes and mitigation actions."
+ },
+ {
+ "action": "update",
+ "key": "drefFormRiskSecurityPotentialRiskDescription",
+ "namespace": "drefFinalReportForm",
+ "newValue": "When identifying the risks, please review the IFRC Risk Management Policy and Framework including the different risk categories. When possible, make sure that your identification of risks includes some analysis of previous incidents and performance of the NS in previous operations."
+ },
+ {
+ "action": "update",
+ "key": "formShareButtonLabel",
+ "namespace": "drefFinalReportForm",
+ "newValue": "Add"
+ },
+ {
+ "action": "add",
+ "key": "hasAntiFraudPolicy",
+ "namespace": "drefOperationalUpdateExport",
+ "value": "Does your National Society have anti-fraud and corruption policy?"
+ },
+ {
+ "action": "add",
+ "key": "hasAntiSexualHarassmentPolicy",
+ "namespace": "drefOperationalUpdateExport",
+ "value": "Does your National Society have anti-sexual harassment policy?"
+ },
+ {
+ "action": "add",
+ "key": "hasChildProtectionPolicy",
+ "namespace": "drefOperationalUpdateExport",
+ "value": "Does your National Society have child protection/child safeguarding policy?"
+ },
+ {
+ "action": "add",
+ "key": "hasSexualAbusePolicy",
+ "namespace": "drefOperationalUpdateExport",
+ "value": "Does your National Society have prevention of sexual exploitation and abuse policy?"
+ },
+ {
+ "action": "add",
+ "key": "hasWhistleblowerProtectionPolicy",
+ "namespace": "drefOperationalUpdateExport",
+ "value": "Does your National Society have whistleblower protection policy?"
+ },
+ {
+ "action": "add",
+ "key": "isVolunteerTeamDiverseHeading",
+ "namespace": "drefOperationalUpdateExport",
+ "value": "Does your volunteer team reflect the gender, age, and cultural diversity of the people you’re helping? What gaps exist in your volunteer team’s gender, age, or cultural diversity, and how are you addressing them to ensure inclusive and appropriate support?"
+ },
+ {
+ "action": "add",
+ "key": "nationalSocietyHotlineHeading",
+ "namespace": "drefOperationalUpdateExport",
+ "value": "National Society Hotline"
+ },
+ {
+ "action": "add",
+ "key": "nationalSocietyIntegrityHeading",
+ "namespace": "drefOperationalUpdateExport",
+ "value": "National Societies' Integrity Focal Point"
+ },
+ {
+ "action": "update",
+ "key": "riskAndSecuritySectionHeading",
+ "namespace": "drefOperationalUpdateExport",
+ "newValue": "Risk and Security Considerations (including \"management\")"
+ },
+ {
+ "action": "update",
+ "key": "riskSecurityHeading",
+ "namespace": "drefOperationalUpdateExport",
+ "newValue": "Please analyse and indicate potential risks for this operation, its root causes and mitigation actions."
+ },
+ {
+ "action": "update",
+ "key": "secondAllocationLabel",
+ "namespace": "drefOperationalUpdateExport",
+ "newValue": "Are you requesting an additional allocation?"
+ },
+ {
+ "action": "update",
+ "key": "targetedAreasLabel",
+ "namespace": "drefOperationalUpdateExport",
+ "newValue": "Targeted Regions"
+ },
+ {
+ "action": "add",
+ "key": "drefFormAffectedFemaleLabel",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Estimated female affected"
+ },
+ {
+ "action": "add",
+ "key": "drefFormAffectedMaleLabel",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Estimated male affected"
+ },
+ {
+ "action": "add",
+ "key": "drefFormAffectedMinorBoysLabel",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Estimated Boys (under 18)"
+ },
+ {
+ "action": "add",
+ "key": "drefFormAffectedMinorGirlsLabel",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Estimated Girls (under 18)"
+ },
+ {
+ "action": "add",
+ "key": "drefFormCommunicationDescriptionPoint1",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "What communication channels will be used to share information internally among teams and externally with stakeholders, partners, and the public?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormCommunicationDescriptionPoint2",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "How will the National Society ensure transparent and effective communication with the affected communities?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormCommunicationDescriptionPoint3",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Is there a media strategy in place for external communication, such as press releases or social media updates?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormCommunicationDescriptionPoint4",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Will the IFRC be supporting with communication? What roles will be involved?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormDownloadBudgetTemplate",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Download the Budget Template"
+ },
+ {
+ "action": "add",
+ "key": "drefFormGapsInAssessmentDescriptionHeading",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Consider the following:"
+ },
+ {
+ "action": "add",
+ "key": "drefFormGapsInAssessmentDescriptionPoint1",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Unmet needs: are there specific sectors (e.g., shelter, WASH, health) where needs remain unmet or only partially addressed?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormGapsInAssessmentDescriptionPoint2",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Resource shortages: highlight any shortages in available resources (e.g., funding, personnel, supplies) that limit the ability to meet the identified needs."
+ },
+ {
+ "action": "add",
+ "key": "drefFormGapsInAssessmentDescriptionPoint3",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Operational challenges: mention any operational constraints that are preventing a full response to the needs (e.g., logistical issues, insufficient capacity)."
+ },
+ {
+ "action": "add",
+ "key": "drefFormGapsInAssessmentDescriptionPoint4",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Coordination issues: note any challenges in coordinating with other actors or agencies that have resulted in gaps in service delivery or response coverage."
+ },
+ {
+ "action": "add",
+ "key": "drefFormGapsInAssessmentDescriptionPoint5",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Vulnerable groups: identify any specific vulnerable groups whose needs may not have been fully captured or addressed during the assessment (e.g., displaced persons, elderly, people with disabilities)."
+ },
+ {
+ "action": "add",
+ "key": "drefFormHumanResourceDescriptionPoint1",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "How many staff members and volunteers are expected to participate?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormHumanResourceDescriptionPoint2",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "What specific roles or responsibilities will they have during the operation?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormHumanResourceDescriptionPoint3",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Are there any key leadership positions or coordinators overseeing the activities?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormHumanResourceTitle",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "How many staff and volunteers will be involved in this operation."
+ },
+ {
+ "action": "add",
+ "key": "drefFormIntegrityContactEmailLabel",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Email"
+ },
+ {
+ "action": "add",
+ "key": "drefFormIntegrityContactNameLabel",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Name"
+ },
+ {
+ "action": "add",
+ "key": "drefFormIntegrityContactPhoneNumberLabel",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Phone Number"
+ },
+ {
+ "action": "add",
+ "key": "drefFormIntegrityContactTitleLabel",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Title"
+ },
+ {
+ "action": "add",
+ "key": "drefFormIsVolunteerTeamDiverseDescription",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "This question is about making sure your team includes the right mix of people to best support those affected. For example, if you’re helping single female heads of households, it’s important to have enough female volunteers to make everyone feel comfortable and understood. Including team members who share the same language or cultural background as the people you’re helping can also make a big difference in building trust and providing effective support."
+ },
+ {
+ "action": "add",
+ "key": "drefFormIsVolunteerTeamDiverseLabel",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Description"
+ },
+ {
+ "action": "add",
+ "key": "drefFormIsVolunteerTeamDiverseTitle",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Does your volunteer team reflect the gender, age, and cultural diversity of the people you’re helping? What gaps exist in your volunteer team’s gender, age, or cultural diversity, and how are you addressing them to ensure inclusive and appropriate support?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormLogisticCapacityOfNsDescriptionPoint1",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Who will be responsible for procurement (National Society or IFRC)?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormLogisticCapacityOfNsDescriptionPoint2",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Will procurement involve local or international suppliers?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormLogisticCapacityOfNsDescriptionPoint3",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Will it be for replenishment or for distribution?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormLogisticCapacityOfNsDescriptionPoint4",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "If for distribution, how long is the tendering expected to take?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormLogisticCapacityOfNsDescriptionPoint5",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "For Cash and Voucher Assistance, what is the status of the Financial Service Provider?”"
+ },
+ {
+ "action": "add",
+ "key": "drefFormNationalAuthoritiesDescription",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Brief description of actions taken by the national authorities."
+ },
+ {
+ "action": "add",
+ "key": "drefFormNationalSocietyDescription",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Indicate your National Society by selecting it from the drop-down list."
+ },
+ {
+ "action": "add",
+ "key": "drefFormNationalSocietyHotlineNumberLabel",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Phone Number"
+ },
+ {
+ "action": "add",
+ "key": "drefFormNationalSocietyHotlineNumberTitle",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "National Society Hotline"
+ },
+ {
+ "action": "add",
+ "key": "drefFormNationalSocietyIntegrityTitle",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "National Societies' Integrity Focal Point"
+ },
+ {
+ "action": "add",
+ "key": "drefFormObjectiveOperationDescription",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "The objective statement should clearly and concisely describe the primary goal of the operation, focusing on the humanitarian impact and the specific needs the operation aims to address."
+ },
+ {
+ "action": "add",
+ "key": "drefFormPmerDescriptionPoint1",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "What systems will be used to monitor the operation’s activities and outcomes?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormPmerDescriptionPoint2",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "How will progress be tracked, and who will be responsible for monitoring?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormPmerDescriptionPoint3",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "What indicators or milestones will be used to assess the success of the operation?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormPmerDescriptionPoint4",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Will there be IFRC monitoring visits? How will it be deployed?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormResponseRationaleDescriptionPoint1",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Highlight the most urgent needs the operation aims to address."
+ },
+ {
+ "action": "add",
+ "key": "drefFormResponseRationaleDescriptionPoint2",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Describe the main priorities and explain why these priorities were chosen based on the specific context of the emergency."
+ },
+ {
+ "action": "add",
+ "key": "drefFormResponseRationaleDescriptionPoint3",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Justify why particular methods and actions were selected and how they are expected to achieve the desired outcomes."
+ },
+ {
+ "action": "add",
+ "key": "drefFormResponseRationaleDescriptionPoint4",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Include any key factors that influence the strategy; mention how these factors were considered in shaping the operation."
+ },
+ {
+ "action": "add",
+ "key": "drefFormResponseRationaleForAssessment",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Please describe the strategy to conduct the assessment exercise, main objectives, who will be involved?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskDoesNSHaveAntiFraudPolicy",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Does your National Society have anti-fraud and corruption policy?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskDoesNSHaveAntiSexualHarassmentPolicy",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Does your National Society have anti-sexual harassment policy?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskDoesNSHaveChildProtectionPolicy",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Does your National Society have child protection/child safeguarding policy?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskDoesNSHaveSexualAbusePolicy",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Does your National Society have prevention of sexual exploitation and abuse policy?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskDoesNSHaveWhistleblowerPolicy",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Does your National Society have whistleblower protection policy?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskSecurityPotentialRiskAssessmentDescription",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Please consider any possible challenges to conduct the assessment, any possible limitations in getting the information required and overall risk to the implementation"
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskSecurityRiskCategoriesLinkLabel",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Annex III - Risk Categories.pdf"
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskSecurityRiskSelectedDescription",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Identify up to 5 key potential risks or threats that could negatively impact the success of the operation. These can range from environmental risks to social or logistical challenges."
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskSecurityRiskSelectedPoint1",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "What are the primary risks that could affect the operation’s implementation?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskSecurityRiskSelectedPoint2",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Are there any context-specific risks that need to be considered?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskSecurityRiskSelectedPoint3",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "How might these risks impact the operation’s objectives, timeline, or resources? Mitigation actions are actions or strategies that will be implemented to reduce or manage the identified risks, ensuring the operation can proceed as planned."
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskSecurityRiskSelectedPoint4",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "What specific measures or strategies will be put in place to mitigate the risks identified?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskSecurityRiskSelectedPoint5",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Will contingency plans or additional resources be required to address these risks?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskSecuritySafetyConcernDescription",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Describe any specific security or safety threats that could impact the safety of personnel, volunteers, and communities during the operation."
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskSecuritySafetyConcernDescriptionPoint1",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Are there any security concerns related to the areas where the operation will take place (e.g., conflict zones, high-crime areas)"
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskSecuritySafetyConcernDescriptionPoint2",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "What safety risks could impact the well-being of staff, volunteers, or beneficiaries (e.g., dangerous terrain, health risks)?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormRiskSecuritySafetyConcernDescriptionPoint3",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Are there any specific security protocols or measures that need to be established or followed during the operation?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormSurgePersonnelDeployedDescriptionPoint1",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Describe the skills and qualifications/profile of the surge personnel or any additional staff (to be) deployed specifically for the operation."
+ },
+ {
+ "action": "add",
+ "key": "drefFormSurgePersonnelDeployedDescriptionPoint2",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "What expertise or skill sets are required for the personnel being deployed?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormSurgePersonnelDeployedDescriptionPoint3",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "What roles will these personnel fulfil?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormSurgePersonnelDeployedDescriptionPoint4",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Are there specific tasks or sectors they will be managing?"
+ },
+ {
+ "action": "add",
+ "key": "drefFormUNorOtherActorsDescription",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Brief description of actions taken by the UN or other actors."
+ },
+ {
+ "action": "add",
+ "key": "drefFormWhatWhereWhenDescriptionHeading",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Clearly Describe:"
+ },
+ {
+ "action": "add",
+ "key": "drefFormWhatWhereWhenDescriptionPoint1",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "What happened: Briefly explain the nature of the emergency (e.g., flood, earthquake, epidemic). Include key details such as the intensity, and any unique aspects of the event."
+ },
+ {
+ "action": "add",
+ "key": "drefFormWhatWhereWhenDescriptionPoint2",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Where: Specify the geographic location(s) affected. Be as precise as possible, including names of countries, regions, cities, or specific areas impacted by the event."
+ },
+ {
+ "action": "add",
+ "key": "drefFormWhatWhereWhenDescriptionPoint3",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "When: Indicate the date and time when the event occurred or began. If the situation is ongoing, mention that and provide relevant updates on the timeframe."
+ },
+ {
+ "action": "add",
+ "key": "drefIndicatorDataLinkLabel",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "IFRC Indicator Databank"
+ },
+ {
+ "action": "add",
+ "key": "drefOperationalUpdateRequestAmountDescription",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "General funding requested to fund the interventions. List specific activities that will be carried out as part of the intervention in each sector. The activities should directly address the identified needs and align with the operation’s strategic objectives."
+ },
+ {
+ "action": "add",
+ "key": "drefOperationalUpdateRequestAmountDescriptionPoint1",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "What specific actions will be taken in this sector to meet the identified needs?” Start by choosing indicators from the {indicatorDatabankLink} whenever possible. This makes it easier to compare and analyse results across all emergency operations."
+ },
+ {
+ "action": "add",
+ "key": "drefOperationalUpdateRequestAmountDescriptionPoint2",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Pick indicators that align with the planned activities. This ensures that the indicators accurately reflect the actions being taken on the ground. Missing important indicators could mean missed chances to showcase the positive impact of the work being done."
+ },
+ {
+ "action": "add",
+ "key": "drefOperationalUpdateRequestAmountDescriptionPoint3",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Keep in mind that more indicators can mean more work. Each indicator selected requires monitoring, tracking, and reporting, so be sure to choose the ones that best reflect the key outcomes of your actions."
+ },
+ {
+ "action": "add",
+ "key": "drefOperationalUpdateRequestAmountDescriptionPoint4",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "Consider the type of indicator unit. For example, it’s often simpler and clearer to track and report on the “number of people” rather than a “percentage of people.”"
+ },
+ {
+ "action": "add",
+ "key": "drefOperationalUpdateRequestAmountDescriptionPoint5",
+ "namespace": "drefOperationalUpdateForm",
+ "value": "For each indicator, set a target. This helps track progress and measure whether the operation is achieving its key objectives, making it easier to report results later on."
+ },
+ {
+ "action": "remove",
+ "key": "drefFormDidNationalSocietyStartedImminent",
+ "namespace": "drefOperationalUpdateForm"
+ },
+ {
+ "action": "remove",
+ "key": "drefFormDidNationalSocietyStartedSlow",
+ "namespace": "drefOperationalUpdateForm"
+ },
+ {
+ "action": "remove",
+ "key": "drefFormEmergencyAppealPlanned",
+ "namespace": "drefOperationalUpdateForm"
+ },
+ {
+ "action": "remove",
+ "key": "drefFormNationalSocietiesActions",
+ "namespace": "drefOperationalUpdateForm"
+ },
+ {
+ "action": "remove",
+ "key": "drefFormNationalSocietiesActionsDescription",
+ "namespace": "drefOperationalUpdateForm"
+ },
+ {
+ "action": "remove",
+ "key": "drefFormNSAnticipatoryAction",
+ "namespace": "drefOperationalUpdateForm"
+ },
+ {
+ "action": "remove",
+ "key": "drefFormNsResponseStarted",
+ "namespace": "drefOperationalUpdateForm"
+ },
+ {
+ "action": "remove",
+ "key": "drefFormPeopleTargeted",
+ "namespace": "drefOperationalUpdateForm"
+ },
+ {
+ "action": "remove",
+ "key": "drefFormSurgePersonnelDeployedDescription",
+ "namespace": "drefOperationalUpdateForm"
+ },
+ {
+ "action": "remove",
+ "key": "drefOperationalUpdateFormRemoveAction",
+ "namespace": "drefOperationalUpdateForm"
+ },
+ {
+ "action": "remove",
+ "key": "operationalUpdateCurrentNsImageLabel",
+ "namespace": "drefOperationalUpdateForm"
+ },
+ {
+ "action": "update",
+ "key": "drefFormCommunicationDescription",
+ "namespace": "drefOperationalUpdateForm",
+ "newValue": "Describe how the National Society will manage internal and external communication throughout the operation."
+ },
+ {
+ "action": "update",
+ "key": "drefFormHumanResourceDescription",
+ "namespace": "drefOperationalUpdateForm",
+ "newValue": "A brief description of the human resources that will be engaged in the operation, including both staff and volunteers."
+ },
+ {
+ "action": "update",
+ "key": "drefFormLogisticCapacityOfNsDescription",
+ "namespace": "drefOperationalUpdateForm",
+ "newValue": "Explain the responsibility for procurement activities during the operation."
+ },
+ {
+ "action": "update",
+ "key": "drefFormObjectiveOperationPlaceholder",
+ "namespace": "drefOperationalUpdateForm",
+ "newValue": "The IFRC-DREF operation aims to [primary action] in order to [desired impact] for [target population] affected by [event/disaster], by providing [key services/interventions] and ensuring [core outcomes such as protection, dignity, and resilience] over [operation period]."
+ },
+ {
+ "action": "update",
+ "key": "drefFormPeopleTargetedDescription",
+ "namespace": "drefOperationalUpdateForm",
+ "newValue": "Include all those whose the National Society assisted"
+ },
+ {
+ "action": "update",
+ "key": "drefFormPmerDescription",
+ "namespace": "drefOperationalUpdateForm",
+ "newValue": "Describe the mechanisms that will be used to track the progress and effectiveness of the operation."
+ },
+ {
+ "action": "update",
+ "key": "drefFormResponseRationaleDescription",
+ "namespace": "drefOperationalUpdateForm",
+ "newValue": "Elaborate on the overall plan, strategy and approach of the operation; explain the reasoning behind the chosen strategy for the emergency operation. Explain how the identified needs/gaps and actions taken/plans are linked."
+ },
+ {
+ "action": "update",
+ "key": "drefFormRiskSecurity",
+ "namespace": "drefOperationalUpdateForm",
+ "newValue": "Risk and Security Considerations (including \"management\")"
+ },
+ {
+ "action": "update",
+ "key": "drefFormRiskSecurityPotentialRisk",
+ "namespace": "drefOperationalUpdateForm",
+ "newValue": "Please analyse and indicate potential risks for this operation, its root causes and mitigation actions."
+ },
+ {
+ "action": "update",
+ "key": "drefFormRiskSecurityPotentialRiskDescription",
+ "namespace": "drefOperationalUpdateForm",
+ "newValue": "When identifying the risks, please review the IFRC Risk Management Policy and Framework including the different risk categories. When possible, make sure that your identification of risks includes some analysis of previous incidents and performance of the NS in previous operations."
+ },
+ {
+ "action": "update",
+ "key": "drefOperationAdditionalAllocation",
+ "namespace": "drefOperationalUpdateForm",
+ "newValue": "The field \"Additional Allocation Requested\" should be filled in \"Operation\" section to change the budget or for an additional allocation"
+ },
+ {
+ "action": "update",
+ "key": "drefOperationAdditionalBudget",
+ "namespace": "drefOperationalUpdateForm",
+ "newValue": "When requesting for additional budget allocation, the fields \"Are you making changes to the budget\" and \"Are you requesting an additional allocation\" both should be marked \"Yes\" in \"Event Details\" section"
+ },
+ {
+ "action": "update",
+ "key": "drefOperationalUpdateSummaryRequestForSecondAllocation",
+ "namespace": "drefOperationalUpdateForm",
+ "newValue": "Are you requesting an additional allocation?"
+ },
+ {
+ "action": "update",
+ "key": "formShareButtonLabel",
+ "namespace": "drefOperationalUpdateForm",
+ "newValue": "Add"
+ }
+ ]
+}
\ No newline at end of file