diff --git a/config.toml b/config.toml index eb81b9a..bed5007 100644 --- a/config.toml +++ b/config.toml @@ -11,6 +11,10 @@ canonifyURLs = false [outputs] home = ["HTML", "RSS"] +# Markdown rendering configuration +[markup.goldmark.renderer] + unsafe = true # Allow HTML in markdown + # Configure static resources [params] # Custom CSS diff --git a/content/debug.md b/content/debug.md new file mode 100644 index 0000000..6cf0ef1 --- /dev/null +++ b/content/debug.md @@ -0,0 +1,4 @@ +--- +title: "Debug Data" +layout: debug +--- \ No newline at end of file diff --git a/data/all-stages.json b/data/all-stages.json new file mode 100644 index 0000000..96ef566 --- /dev/null +++ b/data/all-stages.json @@ -0,0 +1,157 @@ +{ + "stages": [ + { + "id": "intake", + "title": "Intake", + "description": "How disputes enter the process", + "order": 1, + "components": [ + { + "id": "process_start", + "title": "Process initiation", + "description": "The mechanism for initiating the dispute process", + "order": 1, + "fields": [ + { + "id": "processStartText", + "type": "text", + "label": "How does the process begin?", + "placeholder": "Describe how disputes are initiated...", + "required": true + } + ] + }, + { + "id": "rules_access", + "title": "Rules accessibility", + "description": "Location and accessibility of community rules and guidelines", + "order": 2, + "fields": [ + { + "id": "rulesAccessText", + "type": "text", + "label": "Where does the community keep its rules?", + "placeholder": "Describe where community rules are documented...", + "required": true + } + ] + } + ] + }, + { + "id": "process", + "title": "Process", + "description": "How the dispute resolution operates", + "order": 2, + "components": [ + { + "id": "community_values", + "title": "Community values", + "description": "Core values that guide the dispute resolution process", + "order": 1, + "fields": [ + { + "id": "communityValuesText", + "type": "text", + "label": "What values does the community hold in disputes?", + "placeholder": "Describe the core values that guide your community...", + "required": true + } + ] + } + ] + }, + { + "id": "assessment", + "title": "Assessment", + "description": "Evaluating the state of the dispute", + "order": 3, + "components": [ + { + "id": "dispute_assessment", + "title": "Dispute evaluation", + "description": "Methods for evaluating the current status of a dispute", + "order": 1, + "fields": [ + { + "id": "disputeAssessmentText", + "type": "text", + "label": "How is the state of the dispute assessed?", + "placeholder": "Describe methods used to evaluate...", + "required": true + } + ] + } + ] + }, + { + "id": "deliberation", + "title": "Deliberation", + "description": "Discussing the dispute", + "order": 4, + "components": [ + { + "id": "deliberation_process", + "title": "Deliberation format", + "description": "Methods for deliberation during the dispute process", + "order": 1, + "fields": [ + { + "id": "deliberationProcessText", + "type": "text", + "label": "How do participants deliberate about the dispute?", + "placeholder": "Describe the format and structure of deliberations...", + "required": true + } + ] + } + ] + }, + { + "id": "resolution", + "title": "Resolution", + "description": "Determining outcomes for the dispute", + "order": 5, + "components": [ + { + "id": "resolution_process", + "title": "Resolution approach", + "description": "Methods for reaching a resolution", + "order": 1, + "fields": [ + { + "id": "resolutionProcessText", + "type": "text", + "label": "How does resolution of the dispute occur?", + "placeholder": "Describe the process by which disputes are resolved...", + "required": true + } + ] + } + ] + }, + { + "id": "appeal", + "title": "Appeal", + "description": "Process for reconsidering dispute decisions", + "order": 6, + "components": [ + { + "id": "appeal_criteria", + "title": "Appeal grounds", + "description": "Standards for allowing an appeal of a resolution", + "order": 1, + "fields": [ + { + "id": "appealCriteriaText", + "type": "text", + "label": "What are the criteria for a permissible appeal?", + "placeholder": "Describe what circumstances justify an appeal...", + "required": true + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/data/all_stages.json b/data/all_stages.json new file mode 100644 index 0000000..96ef566 --- /dev/null +++ b/data/all_stages.json @@ -0,0 +1,157 @@ +{ + "stages": [ + { + "id": "intake", + "title": "Intake", + "description": "How disputes enter the process", + "order": 1, + "components": [ + { + "id": "process_start", + "title": "Process initiation", + "description": "The mechanism for initiating the dispute process", + "order": 1, + "fields": [ + { + "id": "processStartText", + "type": "text", + "label": "How does the process begin?", + "placeholder": "Describe how disputes are initiated...", + "required": true + } + ] + }, + { + "id": "rules_access", + "title": "Rules accessibility", + "description": "Location and accessibility of community rules and guidelines", + "order": 2, + "fields": [ + { + "id": "rulesAccessText", + "type": "text", + "label": "Where does the community keep its rules?", + "placeholder": "Describe where community rules are documented...", + "required": true + } + ] + } + ] + }, + { + "id": "process", + "title": "Process", + "description": "How the dispute resolution operates", + "order": 2, + "components": [ + { + "id": "community_values", + "title": "Community values", + "description": "Core values that guide the dispute resolution process", + "order": 1, + "fields": [ + { + "id": "communityValuesText", + "type": "text", + "label": "What values does the community hold in disputes?", + "placeholder": "Describe the core values that guide your community...", + "required": true + } + ] + } + ] + }, + { + "id": "assessment", + "title": "Assessment", + "description": "Evaluating the state of the dispute", + "order": 3, + "components": [ + { + "id": "dispute_assessment", + "title": "Dispute evaluation", + "description": "Methods for evaluating the current status of a dispute", + "order": 1, + "fields": [ + { + "id": "disputeAssessmentText", + "type": "text", + "label": "How is the state of the dispute assessed?", + "placeholder": "Describe methods used to evaluate...", + "required": true + } + ] + } + ] + }, + { + "id": "deliberation", + "title": "Deliberation", + "description": "Discussing the dispute", + "order": 4, + "components": [ + { + "id": "deliberation_process", + "title": "Deliberation format", + "description": "Methods for deliberation during the dispute process", + "order": 1, + "fields": [ + { + "id": "deliberationProcessText", + "type": "text", + "label": "How do participants deliberate about the dispute?", + "placeholder": "Describe the format and structure of deliberations...", + "required": true + } + ] + } + ] + }, + { + "id": "resolution", + "title": "Resolution", + "description": "Determining outcomes for the dispute", + "order": 5, + "components": [ + { + "id": "resolution_process", + "title": "Resolution approach", + "description": "Methods for reaching a resolution", + "order": 1, + "fields": [ + { + "id": "resolutionProcessText", + "type": "text", + "label": "How does resolution of the dispute occur?", + "placeholder": "Describe the process by which disputes are resolved...", + "required": true + } + ] + } + ] + }, + { + "id": "appeal", + "title": "Appeal", + "description": "Process for reconsidering dispute decisions", + "order": 6, + "components": [ + { + "id": "appeal_criteria", + "title": "Appeal grounds", + "description": "Standards for allowing an appeal of a resolution", + "order": 1, + "fields": [ + { + "id": "appealCriteriaText", + "type": "text", + "label": "What are the criteria for a permissible appeal?", + "placeholder": "Describe what circumstances justify an appeal...", + "required": true + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/data/backup/components/appeal.yaml b/data/backup/components/appeal.yaml new file mode 100644 index 0000000..8dba8f4 --- /dev/null +++ b/data/backup/components/appeal.yaml @@ -0,0 +1,23 @@ +- id: appeal_criteria + title: "Appeal grounds" + description: "Standards for allowing an appeal of a resolution" + stageId: appeal + order: 1 + fields: + - id: appealCriteriaText + type: text + label: "What are the criteria for a permissible appeal?" + placeholder: "Describe what circumstances justify an appeal of a resolution..." + required: true + +- id: appeal_process + title: "Appeal procedure" + description: "Process for handling appeals" + stageId: appeal + order: 2 + fields: + - id: appealProcessText + type: text + label: "What happens when an appeal occurs?" + placeholder: "Describe the process that follows when an appeal is initiated..." + required: true \ No newline at end of file diff --git a/data/backup/components/assessment.yaml b/data/backup/components/assessment.yaml new file mode 100644 index 0000000..a8075d7 --- /dev/null +++ b/data/backup/components/assessment.yaml @@ -0,0 +1,59 @@ +- id: dispute_assessment + title: "Dispute evaluation" + description: "Methods for evaluating the current status of a dispute" + stageId: assessment + order: 1 + fields: + - id: disputeAssessmentText + type: text + label: "How is the state of the dispute assessed?" + placeholder: "Describe methods used to evaluate the current status of a dispute..." + required: true + +- id: values_adherence + title: "Values alignment" + description: "Evaluating whether the process is aligned with community values" + stageId: assessment + order: 2 + fields: + - id: valuesAdherenceText + type: text + label: "How do you ensure community values are being followed?" + placeholder: "Describe how you evaluate whether the process adheres to community values..." + required: true + +- id: jurisdiction + title: "Jurisdiction determination" + description: "Determining whether this is the appropriate forum for the dispute" + stageId: assessment + order: 3 + fields: + - id: jurisdictionText + type: text + label: "How do you determine if a dispute falls within this process's jurisdiction?" + placeholder: "Describe how you determine whether this process is appropriate for a given dispute..." + required: true + +- id: non_participation + title: "Non-participation handling" + description: "Handling non-participation in the process" + stageId: assessment + order: 4 + fields: + - id: nonParticipationText + type: text + label: "What happens when someone fails to participate?" + placeholder: "Describe procedures for handling situations where someone refuses to participate..." + required: true + +- id: process_change + title: "Process adaptation" + description: "Adapting the process when necessary" + stageId: assessment + order: 5 + fields: + - id: processChangeText + type: text + label: "What if the process needs to be changed?" + placeholder: "Describe how the process can be adapted if it's not working effectively..." + required: true \ No newline at end of file diff --git a/data/backup/components/become_aware.yaml b/data/backup/components/become_aware.yaml new file mode 100644 index 0000000..c729c92 --- /dev/null +++ b/data/backup/components/become_aware.yaml @@ -0,0 +1,23 @@ +- id: reporting + title: "Reporting" + description: "Methods for reporting conflicts or disputes" + stageId: become_aware + order: 1 + fields: + - id: reportingText + type: text + label: "How are conflicts or disputes reported?" + placeholder: "Describe the mechanisms for reporting conflicts..." + required: true + +- id: monitoring + title: "Monitoring" + description: "Proactive monitoring for potential conflicts" + stageId: become_aware + order: 2 + fields: + - id: monitoringText + type: text + label: "How does your community monitor for potential conflicts?" + placeholder: "Describe approaches to monitoring for potential conflicts..." + required: true \ No newline at end of file diff --git a/data/backup/components/delegation.yaml b/data/backup/components/delegation.yaml new file mode 100644 index 0000000..e385788 --- /dev/null +++ b/data/backup/components/delegation.yaml @@ -0,0 +1,11 @@ +- id: delegation_options + title: "Alternative processes" + description: "Alternative processes for disputes that cannot be handled by this process" + stageId: assessment + order: 6 + fields: + - id: delegationOptionsText + type: text + label: "Where can the dispute be delegated if this process is inadequate?" + placeholder: "Describe alternative processes for disputes that cannot be handled internally..." + required: true \ No newline at end of file diff --git a/data/backup/components/deliberation.yaml b/data/backup/components/deliberation.yaml new file mode 100644 index 0000000..10c466b --- /dev/null +++ b/data/backup/components/deliberation.yaml @@ -0,0 +1,35 @@ +- id: deliberation_process + title: "Deliberation format" + description: "Methods for deliberation during the dispute process" + stageId: deliberation + order: 1 + fields: + - id: deliberationProcessText + type: text + label: "How do participants deliberate about the dispute?" + placeholder: "Describe the format and structure of deliberations..." + required: true + +- id: additional_voices + title: "Additional perspectives" + description: "Including additional perspectives in the deliberation" + stageId: deliberation + order: 2 + fields: + - id: additionalVoicesText + type: text + label: "Who, beyond the main participants, can be heard?" + placeholder: "Describe whose voices are included in deliberations beyond the main parties..." + required: true + +- id: deliberation_conclusion + title: "Conclusion criteria" + description: "Criteria for concluding the deliberation phase" + stageId: deliberation + order: 3 + fields: + - id: deliberationConclusionText + type: text + label: "When is the deliberation over?" + placeholder: "Describe how you determine when deliberation is complete..." + required: true \ No newline at end of file diff --git a/data/backup/components/initiation.yaml b/data/backup/components/initiation.yaml new file mode 100644 index 0000000..7ea2cc5 --- /dev/null +++ b/data/backup/components/initiation.yaml @@ -0,0 +1,23 @@ +- id: filing + title: Filing a Complaint + description: Process for submitting a dispute + stageId: initiation + order: 1 + fields: + - id: filingProcess + type: text + label: Filing Process + placeholder: Describe how disputes are submitted... + required: true + +- id: notification + title: Notification Process + description: How parties are informed of the dispute + stageId: initiation + order: 2 + fields: + - id: notificationMethod + type: text + label: Notification Method + placeholder: Describe how involved parties are notified... + required: true \ No newline at end of file diff --git a/data/backup/components/intake.yaml b/data/backup/components/intake.yaml new file mode 100644 index 0000000..3c62116 --- /dev/null +++ b/data/backup/components/intake.yaml @@ -0,0 +1,83 @@ +- id: process_start + title: "Process initiation" + description: "The mechanism for initiating the dispute process" + stageId: intake + order: 1 + fields: + - id: processStartText + type: text + label: "How does the process begin?" + placeholder: "Describe how disputes are initiated in your community..." + required: true + +- id: rules_access + title: "Rules accessibility" + description: "Location and accessibility of community rules and guidelines" + stageId: intake + order: 2 + fields: + - id: rulesAccessText + type: text + label: "Where does the community keep its rules?" + placeholder: "Describe where community rules are documented and how they can be accessed..." + required: true + +- id: information_access + title: "Information sharing" + description: "Transparency and confidentiality policies" + stageId: intake + order: 3 + fields: + - id: informationAccessText + type: text + label: "Who has access to information about the process?" + placeholder: "Describe who can access information about ongoing dispute processes..." + required: true + +- id: participant_inclusion + title: "Participant notification" + description: "Methods for notifying and including relevant parties" + stageId: intake + order: 4 + fields: + - id: participantInclusionText + type: text + label: "How are other participants brought into the process?" + placeholder: "Describe how relevant parties are notified and included in the process..." + required: true + +- id: participation_requirement + title: "Participation requirements" + description: "Expectations regarding participation" + stageId: intake + order: 5 + fields: + - id: participationRequirementText + type: text + label: "Is participation required or voluntary?" + placeholder: "Describe whether participation is mandatory or optional for involved parties..." + required: true + +- id: participation_commitments + title: "Participant commitments" + description: "Expectations of participants in the process" + stageId: intake + order: 6 + fields: + - id: participationCommitmentsText + type: text + label: "What commitments does participation involve?" + placeholder: "Describe what participants are committing to when they engage in the process..." + required: true + +- id: context + title: "Background resources" + description: "Background information, external knowledge sources, and relevant references" + stageId: intake + order: 7 + fields: + - id: contextText + type: text + label: "What additional context should participants know?" + placeholder: "Provide additional context such as links to external knowledge sources, background information, or other relevant references..." + required: false \ No newline at end of file diff --git a/data/backup/components/preparation.yaml b/data/backup/components/preparation.yaml new file mode 100644 index 0000000..11f2637 --- /dev/null +++ b/data/backup/components/preparation.yaml @@ -0,0 +1,23 @@ +- id: principles + title: "Guiding principles" + description: "Core values that guide the dispute resolution process" + stageId: preparation + order: 1 + fields: + - id: principlesText + type: text + label: Principles + placeholder: List the guiding principles for your dispute resolution process... + required: true + +- id: participants + title: "Participants" + description: "Roles and responsibilities in the dispute resolution process" + stageId: preparation + order: 2 + fields: + - id: participantsRoles + type: text + label: Roles and Responsibilities + placeholder: Define the roles involved in your dispute resolution process... + required: true \ No newline at end of file diff --git a/data/backup/components/prepare.yaml b/data/backup/components/prepare.yaml new file mode 100644 index 0000000..603f399 --- /dev/null +++ b/data/backup/components/prepare.yaml @@ -0,0 +1,35 @@ +- id: values + title: "Values" + description: "Core values that guide the dispute resolution process" + stageId: prepare + order: 1 + fields: + - id: valuesText + type: text + label: "What values guide your dispute resolution process?" + placeholder: "List the values that inform your approach to conflict..." + required: true + +- id: agreements + title: "Agreements" + description: "Agreements about how conflicts will be handled" + stageId: prepare + order: 2 + fields: + - id: agreementsText + type: text + label: "What agreements do community members make about handling conflicts?" + placeholder: "Describe the agreements community members make about how conflicts will be handled..." + required: true + +- id: skills + title: "Skills" + description: "Skills needed for handling disputes effectively" + stageId: prepare + order: 3 + fields: + - id: skillsText + type: text + label: "What skills do community members need for handling disputes?" + placeholder: "Describe the skills that community members should develop..." + required: true \ No newline at end of file diff --git a/data/backup/components/process.yaml b/data/backup/components/process.yaml new file mode 100644 index 0000000..64ebe76 --- /dev/null +++ b/data/backup/components/process.yaml @@ -0,0 +1,35 @@ +- id: community_values + title: "Community values" + description: "Core values that guide the dispute resolution process" + stageId: process + order: 1 + fields: + - id: communityValuesText + type: text + label: "What values does the community hold in disputes?" + placeholder: "Describe the core values that guide your community's approach to conflicts..." + required: true + +- id: facilitation + title: "Facilitation approach" + description: "Methods of facilitation during the dispute process" + stageId: process + order: 2 + fields: + - id: facilitationText + type: text + label: "How is the process facilitated?" + placeholder: "Describe who facilitates the process and how they are selected/trained..." + required: true + +- id: ground_rules + title: "Ground rules" + description: "Basic rules of conduct during the dispute process" + stageId: process + order: 3 + fields: + - id: groundRulesText + type: text + label: "What are the ground-rules of the process?" + placeholder: "Describe the rules of engagement that all participants must follow..." + required: true \ No newline at end of file diff --git a/data/backup/components/resolution.yaml b/data/backup/components/resolution.yaml new file mode 100644 index 0000000..5a40e51 --- /dev/null +++ b/data/backup/components/resolution.yaml @@ -0,0 +1,23 @@ +- id: resolution_process + title: "Resolution approach" + description: "Methods for reaching a resolution" + stageId: resolution + order: 1 + fields: + - id: resolutionProcessText + type: text + label: "How does resolution of the dispute occur?" + placeholder: "Describe the process by which disputes are resolved..." + required: true + +- id: resolution_failure + title: "Handling deadlocks" + description: "Handling situations where resolution is not achieved" + stageId: resolution + order: 2 + fields: + - id: resolutionFailureText + type: text + label: "What if a resolution cannot be reached?" + placeholder: "Describe what happens when parties cannot come to a resolution..." + required: true \ No newline at end of file diff --git a/data/backup/stages/stages.yaml b/data/backup/stages/stages.yaml new file mode 100644 index 0000000..1f7655d --- /dev/null +++ b/data/backup/stages/stages.yaml @@ -0,0 +1,29 @@ +- id: intake + title: "Intake" + description: "How disputes enter the process" + order: 1 + +- id: process + title: "Process" + description: "How the dispute resolution operates" + order: 2 + +- id: assessment + title: "Assessment" + description: "Evaluating the state of the dispute" + order: 3 + +- id: deliberation + title: "Deliberation" + description: "Discussing the dispute" + order: 4 + +- id: resolution + title: "Resolution" + description: "Determining outcomes for the dispute" + order: 5 + +- id: appeal + title: "Appeal" + description: "Process for reconsidering dispute decisions" + order: 6 \ No newline at end of file diff --git a/data/debug.toml b/data/debug.toml new file mode 100644 index 0000000..2f5a003 --- /dev/null +++ b/data/debug.toml @@ -0,0 +1,7 @@ +[[test]] +id = "test1" +title = "Test 1" + +[[test]] +id = "test2" +title = "Test 2" \ No newline at end of file diff --git a/data/stages-full.toml b/data/stages-full.toml new file mode 100644 index 0000000..f4f8d46 --- /dev/null +++ b/data/stages-full.toml @@ -0,0 +1,35 @@ +[[stages]] +id = "intake" +title = "Intake" +description = "How disputes enter the process" +order = 1 + +[[stages]] +id = "process" +title = "Process" +description = "How the dispute resolution operates" +order = 2 + +[[stages]] +id = "assessment" +title = "Assessment" +description = "Evaluating the state of the dispute" +order = 3 + +[[stages]] +id = "deliberation" +title = "Deliberation" +description = "Discussing the dispute" +order = 4 + +[[stages]] +id = "resolution" +title = "Resolution" +description = "Determining outcomes for the dispute" +order = 5 + +[[stages]] +id = "appeal" +title = "Appeal" +description = "Process for reconsidering dispute decisions" +order = 6 \ No newline at end of file diff --git a/data/stages-json/stages.json b/data/stages-json/stages.json new file mode 100644 index 0000000..2ea9d9e --- /dev/null +++ b/data/stages-json/stages.json @@ -0,0 +1,48 @@ +[ + { + "id": "intake", + "title": "Intake", + "description": "How disputes enter the process", + "order": 1, + "components": [ + { + "id": "process_start", + "title": "Process initiation", + "description": "The mechanism for initiating the dispute process", + "order": 1, + "fields": [ + { + "id": "processStartText", + "type": "text", + "label": "How does the process begin?", + "placeholder": "Describe how disputes are initiated in your community...", + "required": true + } + ] + } + ] + }, + { + "id": "process", + "title": "Process", + "description": "How the dispute resolution operates", + "order": 2, + "components": [ + { + "id": "facilitation", + "title": "Facilitation approach", + "description": "Methods of facilitation during the dispute process", + "order": 2, + "fields": [ + { + "id": "facilitationText", + "type": "text", + "label": "How is the process facilitated?", + "placeholder": "Describe who facilitates the process...", + "required": true + } + ] + } + ] + } +] \ No newline at end of file diff --git a/data/stages.toml b/data/stages.toml new file mode 100644 index 0000000..f3816f9 --- /dev/null +++ b/data/stages.toml @@ -0,0 +1,113 @@ +[[stages]] +id = "intake" +title = "Intake" +description = "How disputes enter the process" +order = 1 +components = [ + { id = "process_start", title = "Process initiation", description = "The mechanism for initiating the dispute process", order = 1, fields = [ + { id = "processStartText", type = "text", label = "How does the process begin?", placeholder = "Describe how disputes are initiated in your community...", required = true } + ] }, + { id = "rules_access", title = "Rules accessibility", description = "Location and accessibility of community rules and guidelines", order = 2, fields = [ + { id = "rulesAccessText", type = "text", label = "Where does the community keep its rules?", placeholder = "Describe where community rules are documented and how they can be accessed...", required = true } + ] }, + { id = "information_access", title = "Information sharing", description = "Transparency and confidentiality policies", order = 3, fields = [ + { id = "informationAccessText", type = "text", label = "Who has access to information about the process?", placeholder = "Describe who can access information about ongoing dispute processes...", required = true } + ] }, + { id = "participant_inclusion", title = "Participant notification", description = "Methods for notifying and including relevant parties", order = 4, fields = [ + { id = "participantInclusionText", type = "text", label = "How are other participants brought into the process?", placeholder = "Describe how relevant parties are notified and included in the process...", required = true } + ] }, + { id = "participation_requirement", title = "Participation requirements", description = "Expectations regarding participation", order = 5, fields = [ + { id = "participationRequirementText", type = "text", label = "Is participation required or voluntary?", placeholder = "Describe whether participation is mandatory or optional for involved parties...", required = true } + ] }, + { id = "participation_commitments", title = "Participant commitments", description = "Expectations of participants in the process", order = 6, fields = [ + { id = "participationCommitmentsText", type = "text", label = "What commitments does participation involve?", placeholder = "Describe what participants are committing to when they engage in the process...", required = true } + ] }, + { id = "context", title = "Background resources", description = "Background information, external knowledge sources, and relevant references", order = 7, fields = [ + { id = "contextText", type = "text", label = "What additional context should participants know?", placeholder = "Provide additional context such as links to external knowledge sources, background information, or other relevant references...", required = false } + ] } +] + +[[stages]] +id = "process" +title = "Process" +description = "How the dispute resolution operates" +order = 2 +components = [ + { id = "community_values", title = "Community values", description = "Core values that guide the dispute resolution process", order = 1, fields = [ + { id = "communityValuesText", type = "text", label = "What values does the community hold in disputes?", placeholder = "Describe the core values that guide your community's approach to conflicts...", required = true } + ] }, + { id = "facilitation", title = "Facilitation approach", description = "Methods of facilitation during the dispute process", order = 2, fields = [ + { id = "facilitationText", type = "text", label = "How is the process facilitated?", placeholder = "Describe who facilitates the process and how they are selected/trained...", required = true } + ] }, + { id = "ground_rules", title = "Ground rules", description = "Basic rules of conduct during the dispute process", order = 3, fields = [ + { id = "groundRulesText", type = "text", label = "What are the ground-rules of the process?", placeholder = "Describe the rules of engagement that all participants must follow...", required = true } + ] } +] + +[[stages]] +id = "assessment" +title = "Assessment" +description = "Evaluating the state of the dispute" +order = 3 +components = [ + { id = "dispute_assessment", title = "Dispute evaluation", description = "Methods for evaluating the current status of a dispute", order = 1, fields = [ + { id = "disputeAssessmentText", type = "text", label = "How is the state of the dispute assessed?", placeholder = "Describe methods used to evaluate the current status of a dispute...", required = true } + ] }, + { id = "values_adherence", title = "Values alignment", description = "Evaluating whether the process is aligned with community values", order = 2, fields = [ + { id = "valuesAdherenceText", type = "text", label = "How do you ensure community values are being followed?", placeholder = "Describe how you evaluate whether the process adheres to community values...", required = true } + ] }, + { id = "jurisdiction", title = "Jurisdiction determination", description = "Determining whether this is the appropriate forum for the dispute", order = 3, fields = [ + { id = "jurisdictionText", type = "text", label = "How do you determine if a dispute falls within this process's jurisdiction?", placeholder = "Describe how you determine whether this process is appropriate for a given dispute...", required = true } + ] }, + { id = "non_participation", title = "Non-participation handling", description = "Handling non-participation in the process", order = 4, fields = [ + { id = "nonParticipationText", type = "text", label = "What happens when someone fails to participate?", placeholder = "Describe procedures for handling situations where someone refuses to participate...", required = true } + ] }, + { id = "process_change", title = "Process adaptation", description = "Adapting the process when necessary", order = 5, fields = [ + { id = "processChangeText", type = "text", label = "What if the process needs to be changed?", placeholder = "Describe how the process can be adapted if it's not working effectively...", required = true } + ] } +] + +[[stages]] +id = "deliberation" +title = "Deliberation" +description = "Discussing the dispute" +order = 4 +components = [ + { id = "deliberation_process", title = "Deliberation format", description = "Methods for deliberation during the dispute process", order = 1, fields = [ + { id = "deliberationProcessText", type = "text", label = "How do participants deliberate about the dispute?", placeholder = "Describe the format and structure of deliberations...", required = true } + ] }, + { id = "additional_voices", title = "Additional perspectives", description = "Including additional perspectives in the deliberation", order = 2, fields = [ + { id = "additionalVoicesText", type = "text", label = "Who, beyond the main participants, can be heard?", placeholder = "Describe whose voices are included in deliberations beyond the main parties...", required = true } + ] }, + { id = "deliberation_conclusion", title = "Conclusion criteria", description = "Criteria for concluding the deliberation phase", order = 3, fields = [ + { id = "deliberationConclusionText", type = "text", label = "When is the deliberation over?", placeholder = "Describe how you determine when deliberation is complete...", required = true } + ] } +] + +[[stages]] +id = "resolution" +title = "Resolution" +description = "Determining outcomes for the dispute" +order = 5 +components = [ + { id = "resolution_process", title = "Resolution approach", description = "Methods for reaching a resolution", order = 1, fields = [ + { id = "resolutionProcessText", type = "text", label = "How does resolution of the dispute occur?", placeholder = "Describe the process by which disputes are resolved...", required = true } + ] }, + { id = "resolution_failure", title = "Handling deadlocks", description = "Handling situations where resolution is not achieved", order = 2, fields = [ + { id = "resolutionFailureText", type = "text", label = "What if a resolution cannot be reached?", placeholder = "Describe what happens when parties cannot come to a resolution...", required = true } + ] } +] + +[[stages]] +id = "appeal" +title = "Appeal" +description = "Process for reconsidering dispute decisions" +order = 6 +components = [ + { id = "appeal_criteria", title = "Appeal grounds", description = "Standards for allowing an appeal of a resolution", order = 1, fields = [ + { id = "appealCriteriaText", type = "text", label = "What are the criteria for a permissible appeal?", placeholder = "Describe what circumstances justify an appeal of a resolution...", required = true } + ] }, + { id = "appeal_process", title = "Appeal procedure", description = "Process for handling appeals", order = 2, fields = [ + { id = "appealProcessText", type = "text", label = "What happens when an appeal occurs?", placeholder = "Describe the process that follows when an appeal is initiated...", required = true } + ] } +] \ No newline at end of file diff --git a/data/stages.yaml b/data/stages.yaml new file mode 100644 index 0000000..46907c4 --- /dev/null +++ b/data/stages.yaml @@ -0,0 +1,272 @@ +stages: + - id: intake + title: "Intake" + description: "How disputes enter the process" + order: 1 + components: + - id: process_start + title: "Process initiation" + description: "The mechanism for initiating the dispute process" + order: 1 + fields: + - id: processStartText + type: text + label: "How does the process begin?" + placeholder: "Describe how disputes are initiated in your community..." + required: true + + - id: rules_access + title: "Rules accessibility" + description: "Location and accessibility of community rules and guidelines" + order: 2 + fields: + - id: rulesAccessText + type: text + label: "Where does the community keep its rules?" + placeholder: "Describe where community rules are documented and how they can be accessed..." + required: true + + - id: information_access + title: "Information sharing" + description: "Transparency and confidentiality policies" + order: 3 + fields: + - id: informationAccessText + type: text + label: "Who has access to information about the process?" + placeholder: "Describe who can access information about ongoing dispute processes..." + required: true + + - id: participant_inclusion + title: "Participant notification" + description: "Methods for notifying and including relevant parties" + order: 4 + fields: + - id: participantInclusionText + type: text + label: "How are other participants brought into the process?" + placeholder: "Describe how relevant parties are notified and included in the process..." + required: true + + - id: participation_requirement + title: "Participation requirements" + description: "Expectations regarding participation" + order: 5 + fields: + - id: participationRequirementText + type: text + label: "Is participation required or voluntary?" + placeholder: "Describe whether participation is mandatory or optional for involved parties..." + required: true + + - id: participation_commitments + title: "Participant commitments" + description: "Expectations of participants in the process" + order: 6 + fields: + - id: participationCommitmentsText + type: text + label: "What commitments does participation involve?" + placeholder: "Describe what participants are committing to when they engage in the process..." + required: true + + - id: context + title: "Background resources" + description: "Background information, external knowledge sources, and relevant references" + order: 7 + fields: + - id: contextText + type: text + label: "What additional context should participants know?" + placeholder: "Provide additional context such as links to external knowledge sources, background information, or other relevant references..." + required: false + + - id: process + title: "Process" + description: "How the dispute resolution operates" + order: 2 + components: + - id: community_values + title: "Community values" + description: "Core values that guide the dispute resolution process" + order: 1 + fields: + - id: communityValuesText + type: text + label: "What values does the community hold in disputes?" + placeholder: "Describe the core values that guide your community's approach to conflicts..." + required: true + + - id: facilitation + title: "Facilitation approach" + description: "Methods of facilitation during the dispute process" + order: 2 + fields: + - id: facilitationText + type: text + label: "How is the process facilitated?" + placeholder: "Describe who facilitates the process and how they are selected/trained..." + required: true + + - id: ground_rules + title: "Ground rules" + description: "Basic rules of conduct during the dispute process" + order: 3 + fields: + - id: groundRulesText + type: text + label: "What are the ground-rules of the process?" + placeholder: "Describe the rules of engagement that all participants must follow..." + required: true + + - id: assessment + title: "Assessment" + description: "Evaluating the state of the dispute" + order: 3 + components: + - id: dispute_assessment + title: "Dispute evaluation" + description: "Methods for evaluating the current status of a dispute" + order: 1 + fields: + - id: disputeAssessmentText + type: text + label: "How is the state of the dispute assessed?" + placeholder: "Describe methods used to evaluate the current status of a dispute..." + required: true + + - id: values_adherence + title: "Values alignment" + description: "Evaluating whether the process is aligned with community values" + order: 2 + fields: + - id: valuesAdherenceText + type: text + label: "How do you ensure community values are being followed?" + placeholder: "Describe how you evaluate whether the process adheres to community values..." + required: true + + - id: jurisdiction + title: "Jurisdiction determination" + description: "Determining whether this is the appropriate forum for the dispute" + order: 3 + fields: + - id: jurisdictionText + type: text + label: "How do you determine if a dispute falls within this process's jurisdiction?" + placeholder: "Describe how you determine whether this process is appropriate for a given dispute..." + required: true + + - id: non_participation + title: "Non-participation handling" + description: "Handling non-participation in the process" + order: 4 + fields: + - id: nonParticipationText + type: text + label: "What happens when someone fails to participate?" + placeholder: "Describe procedures for handling situations where someone refuses to participate..." + required: true + + - id: process_change + title: "Process adaptation" + description: "Adapting the process when necessary" + order: 5 + fields: + - id: processChangeText + type: text + label: "What if the process needs to be changed?" + placeholder: "Describe how the process can be adapted if it's not working effectively..." + required: true + + - id: deliberation + title: "Deliberation" + description: "Discussing the dispute" + order: 4 + components: + - id: deliberation_process + title: "Deliberation format" + description: "Methods for deliberation during the dispute process" + order: 1 + fields: + - id: deliberationProcessText + type: text + label: "How do participants deliberate about the dispute?" + placeholder: "Describe the format and structure of deliberations..." + required: true + + - id: additional_voices + title: "Additional perspectives" + description: "Including additional perspectives in the deliberation" + order: 2 + fields: + - id: additionalVoicesText + type: text + label: "Who, beyond the main participants, can be heard?" + placeholder: "Describe whose voices are included in deliberations beyond the main parties..." + required: true + + - id: deliberation_conclusion + title: "Conclusion criteria" + description: "Criteria for concluding the deliberation phase" + order: 3 + fields: + - id: deliberationConclusionText + type: text + label: "When is the deliberation over?" + placeholder: "Describe how you determine when deliberation is complete..." + required: true + + - id: resolution + title: "Resolution" + description: "Determining outcomes for the dispute" + order: 5 + components: + - id: resolution_process + title: "Resolution approach" + description: "Methods for reaching a resolution" + order: 1 + fields: + - id: resolutionProcessText + type: text + label: "How does resolution of the dispute occur?" + placeholder: "Describe the process by which disputes are resolved..." + required: true + + - id: resolution_failure + title: "Handling deadlocks" + description: "Handling situations where resolution is not achieved" + order: 2 + fields: + - id: resolutionFailureText + type: text + label: "What if a resolution cannot be reached?" + placeholder: "Describe what happens when parties cannot come to a resolution..." + required: true + + - id: appeal + title: "Appeal" + description: "Process for reconsidering dispute decisions" + order: 6 + components: + - id: appeal_criteria + title: "Appeal grounds" + description: "Standards for allowing an appeal of a resolution" + order: 1 + fields: + - id: appealCriteriaText + type: text + label: "What are the criteria for a permissible appeal?" + placeholder: "Describe what circumstances justify an appeal of a resolution..." + required: true + + - id: appeal_process + title: "Appeal procedure" + description: "Process for handling appeals" + order: 2 + fields: + - id: appealProcessText + type: text + label: "What happens when an appeal occurs?" + placeholder: "Describe the process that follows when an appeal is initiated..." + required: true \ No newline at end of file diff --git a/data/stages/stages.yaml b/data/stages/stages.yaml index 1f7655d..391d817 100644 --- a/data/stages/stages.yaml +++ b/data/stages/stages.yaml @@ -1,29 +1,31 @@ -- id: intake +- id: "intake" title: "Intake" description: "How disputes enter the process" order: 1 + components: + - id: "process_start" + title: "Process initiation" + description: "The mechanism for initiating the dispute process" + order: 1 + fields: + - id: "processStartText" + type: "text" + label: "How does the process begin?" + placeholder: "Describe how disputes are initiated in your community..." + required: true -- id: process +- id: "process" title: "Process" description: "How the dispute resolution operates" order: 2 - -- id: assessment - title: "Assessment" - description: "Evaluating the state of the dispute" - order: 3 - -- id: deliberation - title: "Deliberation" - description: "Discussing the dispute" - order: 4 - -- id: resolution - title: "Resolution" - description: "Determining outcomes for the dispute" - order: 5 - -- id: appeal - title: "Appeal" - description: "Process for reconsidering dispute decisions" - order: 6 \ No newline at end of file + components: + - id: "facilitation" + title: "Facilitation approach" + description: "Methods of facilitation during the dispute process" + order: 2 + fields: + - id: "facilitationText" + type: "text" + label: "How is the process facilitated?" + placeholder: "Describe who facilitates the process and how they are selected/trained..." + required: true \ No newline at end of file diff --git a/data/stages_array.yaml b/data/stages_array.yaml new file mode 100644 index 0000000..094979d --- /dev/null +++ b/data/stages_array.yaml @@ -0,0 +1,215 @@ +- id: intake + title: "Intake" + description: "How disputes enter the process" + order: 1 + components: + - id: process_start + title: "Process initiation" + description: "The mechanism for initiating the dispute process" + order: 1 + fields: + - id: processStartText + type: text + label: "How does the process begin?" + placeholder: "Describe how disputes are initiated in your community..." + required: true + - id: rules_access + title: "Rules accessibility" + description: "Location and accessibility of community rules and guidelines" + order: 2 + fields: + - id: rulesAccessText + type: text + label: "Where does the community keep its rules?" + placeholder: "Describe where community rules are documented and how they can be accessed..." + required: true + - id: information_access + title: "Information sharing" + description: "Transparency and confidentiality policies" + order: 3 + fields: + - id: informationAccessText + type: text + label: "Who has access to information about the process?" + placeholder: "Describe who can access information about ongoing dispute processes..." + required: true + +- id: process + title: "Process" + description: "How the dispute resolution operates" + order: 2 + components: + - id: community_values + title: "Community values" + description: "Core values that guide the dispute resolution process" + order: 1 + fields: + - id: communityValuesText + type: text + label: "What values does the community hold in disputes?" + placeholder: "Describe the core values that guide your community's approach to conflicts..." + required: true + - id: facilitation + title: "Facilitation approach" + description: "Methods of facilitation during the dispute process" + order: 2 + fields: + - id: facilitationText + type: text + label: "How is the process facilitated?" + placeholder: "Describe who facilitates the process and how they are selected/trained..." + required: true + - id: ground_rules + title: "Ground rules" + description: "Basic rules of conduct during the dispute process" + order: 3 + fields: + - id: groundRulesText + type: text + label: "What are the ground-rules of the process?" + placeholder: "Describe the rules of engagement that all participants must follow..." + required: true + +- id: assessment + title: "Assessment" + description: "Evaluating the state of the dispute" + order: 3 + components: + - id: dispute_assessment + title: "Dispute evaluation" + description: "Methods for evaluating the current status of a dispute" + order: 1 + fields: + - id: disputeAssessmentText + type: text + label: "How is the state of the dispute assessed?" + placeholder: "Describe methods used to evaluate the current status of a dispute..." + required: true + - id: values_adherence + title: "Values alignment" + description: "Evaluating whether the process is aligned with community values" + order: 2 + fields: + - id: valuesAdherenceText + type: text + label: "How do you ensure community values are being followed?" + placeholder: "Describe how you evaluate whether the process adheres to community values..." + required: true + - id: jurisdiction + title: "Jurisdiction determination" + description: "Determining whether this is the appropriate forum for the dispute" + order: 3 + fields: + - id: jurisdictionText + type: text + label: "How do you determine if a dispute falls within this process's jurisdiction?" + placeholder: "Describe how you determine whether this process is appropriate for a given dispute..." + required: true + - id: non_participation + title: "Non-participation handling" + description: "Handling non-participation in the process" + order: 4 + fields: + - id: nonParticipationText + type: text + label: "What happens when someone fails to participate?" + placeholder: "Describe procedures for handling situations where someone refuses to participate..." + required: true + - id: process_change + title: "Process adaptation" + description: "Adapting the process when necessary" + order: 5 + fields: + - id: processChangeText + type: text + label: "What if the process needs to be changed?" + placeholder: "Describe how the process can be adapted if it's not working effectively..." + required: true + +- id: deliberation + title: "Deliberation" + description: "Discussing the dispute" + order: 4 + components: + - id: deliberation_process + title: "Deliberation format" + description: "Methods for deliberation during the dispute process" + order: 1 + fields: + - id: deliberationProcessText + type: text + label: "How do participants deliberate about the dispute?" + placeholder: "Describe the format and structure of deliberations..." + required: true + - id: additional_voices + title: "Additional perspectives" + description: "Including additional perspectives in the deliberation" + order: 2 + fields: + - id: additionalVoicesText + type: text + label: "Who, beyond the main participants, can be heard?" + placeholder: "Describe whose voices are included in deliberations beyond the main parties..." + required: true + - id: deliberation_conclusion + title: "Conclusion criteria" + description: "Criteria for concluding the deliberation phase" + order: 3 + fields: + - id: deliberationConclusionText + type: text + label: "When is the deliberation over?" + placeholder: "Describe how you determine when deliberation is complete..." + required: true + +- id: resolution + title: "Resolution" + description: "Determining outcomes for the dispute" + order: 5 + components: + - id: resolution_process + title: "Resolution approach" + description: "Methods for reaching a resolution" + order: 1 + fields: + - id: resolutionProcessText + type: text + label: "How does resolution of the dispute occur?" + placeholder: "Describe the process by which disputes are resolved..." + required: true + - id: resolution_failure + title: "Handling deadlocks" + description: "Handling situations where resolution is not achieved" + order: 2 + fields: + - id: resolutionFailureText + type: text + label: "What if a resolution cannot be reached?" + placeholder: "Describe what happens when parties cannot come to a resolution..." + required: true + +- id: appeal + title: "Appeal" + description: "Process for reconsidering dispute decisions" + order: 6 + components: + - id: appeal_criteria + title: "Appeal grounds" + description: "Standards for allowing an appeal of a resolution" + order: 1 + fields: + - id: appealCriteriaText + type: text + label: "What are the criteria for a permissible appeal?" + placeholder: "Describe what circumstances justify an appeal of a resolution..." + required: true + - id: appeal_process + title: "Appeal procedure" + description: "Process for handling appeals" + order: 2 + fields: + - id: appealProcessText + type: text + label: "What happens when an appeal occurs?" + placeholder: "Describe the process that follows when an appeal is initiated..." + required: true \ No newline at end of file diff --git a/data/test.yaml b/data/test.yaml new file mode 100644 index 0000000..0adbd60 --- /dev/null +++ b/data/test.yaml @@ -0,0 +1,4 @@ +- name: Item 1 + id: id1 +- name: Item 2 + id: id2 \ No newline at end of file diff --git a/layouts/debug.html b/layouts/debug.html new file mode 100644 index 0000000..510af84 --- /dev/null +++ b/layouts/debug.html @@ -0,0 +1 @@ +{{ printf "%#v" $.Site.Data.stages }} \ No newline at end of file diff --git a/themes/dispute-protocol-theme/layouts/_default/builder.html b/themes/dispute-protocol-theme/layouts/_default/builder.html index 676dd7d..9040110 100644 --- a/themes/dispute-protocol-theme/layouts/_default/builder.html +++ b/themes/dispute-protocol-theme/layouts/_default/builder.html @@ -35,8 +35,11 @@ + + +
- {{ range $.Site.Data.stages.stages }} + {{ range $.Site.Data.stages_array }}
@@ -47,14 +50,12 @@
- {{ $stageId := .id }} - {{ $componentFile := printf "%s" $stageId }} - {{ range index $.Site.Data.components $componentFile }} + {{ range .components }} {{ $componentId := .id }}
-
{{ $componentId | humanize }}
+
{{ .title }}
{{ .description }}
@@ -91,13 +92,11 @@

Jump to Section