{

"type": "object",
"title": "Open SDG site configuration",
"description": "This form will produce the site configuration for your Open SDG implementation.",
"properties": {
    "accessible_charts": {
        "title": "Accessible charts",
        "type": "boolean",
        "description": "This setting can be set to `true` to enable chart functionality that is intended to increase accessibility by adding support for screenreaders and keyboard navigation.",
        "format": "checkbox",
        "links": [
            {
                "rel": "More information on the accessible charts setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#accessible_charts"
            }
        ]
    },
    "accessible_tabs": {
        "title": "Accessible tabs",
        "type": "boolean",
        "description": "This setting can be set to `true` to enable tab functionality that is compliant with the WAI-ARIA best practices. This adds improved keyboard navigation of the tabs.",
        "format": "checkbox",
        "links": [
            {
                "rel": "More information on the accessible tabs setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#accessible_tabs"
            }
        ]
    },
    "analytics": {
        "options": {"collapsed": true},
        "type": "object",
        "title": "Analytics",
        "description": "If these settings are used, usage statistics will be sent to Google Analytics.",
        "properties": {
            "ga_prod": {
                "type": "string",
                "title": "Google Analytics tracking ID",
                "description": "The tracking ID (UA code) for your property on Google Analytics."
            }
        },
        "links": [
            {
                "rel": "More information on the analytics setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#analytics"
            }
        ]
    },
    "breadcrumbs": {
        "options": {"collapsed": true},
        "type": "object",
        "title": "Breadcrumbs",
        "description": "This can contain breadcrumb settings for each of the supported collection types: goal, indicator, and post. Each should have a list of label/path objects.",
        "properties": {
            "goal": {
                "options": {"collapsed": true},
                "type": "array",
                "title": "Goal breadcrumbs",
                "description": "The breadcrumb items for goal pages.",
                "items": {
                    "$ref": "#/definitions/breadcrumb_item"
                }
            },
            "indicator": {
                "options": {"collapsed": true},
                "type": "array",
                "title": "Indicator breadcrumbs",
                "description": "The breadcrumb items for indicator pages. Note that there will automatically be a final item, which is a link to the goal that the indicator belongs to. You do not need to specify this, since it is done dynamically and automatically.",
                "items": {
                    "$ref": "#/definitions/breadcrumb_item"
                }
            },
            "post": {
                "options": {"collapsed": true},
                "type": "array",
                "title": "Post breadcrumbs",
                "description": "The breadcrumb items for post pages.",
                "items": {
                    "$ref": "#/definitions/breadcrumb_item"
                }
            }
        },
        "links": [
            {
                "rel": "More information on the breadcrumbs setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#breadcrumbs"
            }
        ]
    },
    "contrast_type": {
        "type": "string",
        "title": "Contrast type",
        "description": "The type of high-contrast toggle to use.",
        "enum": ["default", "single", "long"],
        "options": {
            "enum_titles": [
                "Default - two 'A' buttons side-by-side",
                "Single - one 'A' button which toggles on/off",
                "Long - text toggling between 'High contrast' and 'Default contrast'"
            ]
        },
        "links": [
            {
                "rel": "More information on the contrast type setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#contrast_type"
            }
        ]
    },
    "country": {
        "options": {"collapsed": true},
        "type": "object",
        "title": "Country information",
        "description": "Information about your country (or region, locality, etc.)",
        "properties": {
            "name": {
                "type": "string",
                "title": "Name",
                "description": "The name of your country/region/locality/etc.",
                "minLength": 1
            },
            "adjective": {
                "type": "string",
                "title": "Adjective",
                "description": "Adjective form of your country/region/locality/etc.",
                "minLength": 1
            }
        },
        "links": [
            {
                "rel": "More information on the country setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#country"
            }
        ]
    },
    "create_goals": {
        "options": {"collapsed": true},
        "type": "object",
        "title": "Create goals",
        "description": "This setting can be used to automatically create the goal pages.",
        "properties": {
            "layout": {
                "type": "string",
                "title": "Layout",
                "enum": [
                    "",
                    "goal",
                    "goal-by-target",
                    "goal-by-target-vertical"
                ],
                "options": {
                    "enum_titles": [
                        "Do not automatically create goals",
                        "goal",
                        "goal-by-target",
                        "goal-by-target-vertical"
                    ]
                },
                "description": "The layout to use for the goal pages."
            },
            "previous_next_links": {
                "title": "Previous/next links",
                "type": "boolean",
                "description": "This setting can be used to show navigation links to the previous/next goals.",
                "format": "checkbox"
            },
            "goals": {
                "options": {"collapsed": true},
                "type": "array",
                "title": "Content per goal",
                "description": "This setting can be used to enter details for each goal.",
                "items": {
                    "type": "object",
                    "title": "Goal",
                    "properties": {
                        "content": {
                            "type": "string",
                            "title": "Content",
                            "format": "markdown",
                            "description": "Markdown content or a translation key for this goal."
                        }
                    }
                }
            }
        },
        "links": [
            {
                "rel": "More information on the create goals setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#create_goals"
            }
        ]
    },
    "create_indicators": {
        "options": {"collapsed": true},
        "type": "object",
        "title": "Create indicators",
        "description": "This setting can be used to automatically create the indicator pages.",
        "properties": {
            "layout": {
                "type": "string",
                "title": "Layout",
                "enum": [
                    "",
                    "indicator"
                ],
                "options": {
                    "enum_titles": [
                        "Do not automatically create indicators",
                        "indicator"
                    ]
                },
                "description": "The layout to use for the indicator pages."
            },
            "previous_next_links": {
                "title": "Previous/next links",
                "type": "boolean",
                "description": "This setting can be used to show navigation links to the previous/next indicators.",
                "format": "checkbox"
            }
        },
        "links": [
            {
                "rel": "More information on the create indicators setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#create_indicators"
            }
        ]
    },
    "create_pages": {
        "options": {"collapsed": true},
        "type": "array",
        "title": "Create pages",
        "description": "This setting can be used to automatically create the pages.",
        "items": {
            "type": "object",
            "title": "Page",
            "properties": {
                "filename": {
                    "type": "string",
                    "title": "Filename",
                    "description": "The filename for the page - usually 'index.html'."
                },
                "folder": {
                    "type": "string",
                    "minLength": 1,
                    "title": "Folder",
                    "description": "The folder path for the page."
                },
                "layout": {
                    "type": "string",
                    "minLength": 1,
                    "title": "Layout",
                    "description": "The layout to use for the page."
                },
                "title": {
                    "type": "string",
                    "title": "Title",
                    "description": "The page title for the page."
                }
            }
        },
        "links": [
            {
                "rel": "More information on the create pages setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#create_pages"
            }
        ]
    },
    "custom_css": {
        "options": {"collapsed": true},
        "type": "array",
        "title": "Custom CSS files",
        "description": "Deprecated: instead of using this, it is recommended to put custom CSS in a _sass/custom.scss file.",
        "items": {
            "type": "string",
            "title": "Custom CSS file"
        },
        "links": [
            {
                "rel": "More information on the custom CSS setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#custom_css"
            }
        ]
    },
    "custom_js": {
        "options": {"collapsed": true},
        "type": "array",
        "title": "Custom JavaScript files",
        "description": "This setting can be used to load additional JavaScript files on each page.",
        "items": {
            "type": "string",
            "title": "Custom JavaScript file"
        },
        "links": [
            {
                "rel": "More information on the custom JS setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#custom_js"
            }
        ]
    },
    "data_edit_url": {
        "type": "string",
        "minLength": 1,
        "title": "Data edit URL",
        "description": "This setting controls the URL of the 'Edit Data' buttons that appear on the staging site's indicator pages.",
        "links": [
            {
                "rel": "More information on the data edit URL setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#data_edit_url"
            }
        ]
    },
    "data_fields": {
        "options": {"collapsed": true},
        "type": "object",
        "title": "Data fields",
        "description": "Control the names of fields used for special purposes in data.",
        "properties": {
            "units": {
                "type": "string",
                "title": "Units",
                "description": "Field to reserve for units of measurement. Defaults to 'Units'."
            },
            "series": {
                "type": "string",
                "title": "Series",
                "description": "Field to reserve for the SDG series. Defaults to 'Series'."
            }
        },
        "links": [
            {
                "rel": "More information on the data fields setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#data_fields"
            }
        ]
    },
    "date_formats": {
        "options": {"collapsed": true},
        "type": "array",
        "title": "Date formats",
        "description": "This setting can be used to control date formats for use in the site, such as in the news/category/post layouts. Any number date formats can be entered, and each must have an arbitrary type, such as `standard`. Make sure that each type has a variant for each of your languages.",
        "items": {
            "type": "object",
            "title": "Date format",
            "properties": {
                "type": {
                    "type": "string",
                    "minLength": 1,
                    "title": "Type",
                    "description": "Use `standard` for news/post dates."
                },
                "language": {
                    "type": "string",
                    "minLength": 1,
                    "title": "Language",
                    "description": "Language code the format applies to."
                },
                "format": {
                    "type": "string",
                    "minLength": 1,
                    "title": "Format",
                    "description": "Ruby DateTime date format."
                }
            }
        },
        "links": [
            {
                "rel": "More information on the date formats setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#date_formats"
            }
        ]
    },
    "disclaimer": {
        "options": {"collapsed": true},
        "type": "object",
        "title": "Disclaimer",
        "description": "This setting controls the content of the disclaimer that appears at the top of each page.",
        "properties": {
            "phase": {
                "type": "string",
                "title": "Phase",
                "description": "The development phase of your platform (alpha, beta, etc.)"
            },
            "message": {
                "type": "string",
                "title": "Message",
                "description": "A short disclaimer message."
            }
        },
        "links": [
            {
                "rel": "More information on the disclaimer setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#disclaimer"
            }
        ]
    },
    "email_contacts": {
        "options": {"collapsed": true},
        "type": "object",
        "title": "Email addresses",
        "description": "Email addresses to publish on your platform.",
        "properties": {
            "questions": {
                "type": "string",
                "minLength": 1,
                "format": "email",
                "title": "Questions",
                "description": "Inbox for questions about your platform."
            },
            "suggestions": {
                "type": "string",
                "minLength": 1,
                "format": "email",
                "title": "Suggestions",
                "description": "Inbox for suggestions for your platform."
            },
            "functional": {
                "type": "string",
                "minLength": 1,
                "format": "email",
                "title": "Functional",
                "description": "Inbox for bug reports for your platform."
            }
        },
        "links": [
            {
                "rel": "More information on the email contacts setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#email_contacts"
            }
        ]
    },
    "environment": {
        "type": "string",
        "minLength": 1,
        "title": "Environment",
        "description": "Which environment (staging or production) this configuration is for.",
        "enum": ["staging", "production"],
        "links": [
            {
                "rel": "More information on the environment setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#environment"
            }
        ]
    },
    "footer_language_toggle": {
        "type": "string",
        "title": "Footer language toggle",
        "description": "This setting controls the type of language toggle to be used in the footer.",
        "enum": ["none", "dropdown", "links"],
        "links": [
            {
                "rel": "More information on the footer language toggle setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#footer_language_toggle"
            }
        ]
    },
    "footer_menu": {
        "options": {"collapsed": true},
        "type": "array",
        "title": "Footer menu",
        "description": "The links to display in the footer menu.",
        "items": {
            "$ref": "#/definitions/menu_item"
        },
        "links": [
            {
                "rel": "More information on the footer menu setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#footer_menu"
            }
        ]
    },
    "frontpage_cards": {
        "options": {"collapsed": true},
        "type": "array",
        "title": "Frontpage cards",
        "description": "This setting is only used in the frontpage-alt layout. It can display any number of 'cards' in 3-column rows, beneath the grid of goal tiles.",
        "items": {
            "type": "object",
            "title": "Frontpage card",
            "properties": {
                "title": {
                    "type": "string",
                    "minLength": 1,
                    "title": "Title",
                    "description": "The card's title."
                },
                "content": {
                    "type": "string",
                    "title": "Content",
                    "description": "The card's content.",
                    "format": "markdown"
                },
                "include": {
                    "type": "string",
                    "title": "Include file",
                    "description": "A Jekyll include file to place inside the card."
                },
                "button_label": {
                    "type": "string",
                    "title": "Button label",
                    "description": "A label for a button to display at the bottom of the card."
                },
                "button_link": {
                    "type": "string",
                    "title": "Button link",
                    "description": "A path or URL for the card's button to link to."
                },
                "rule_color": {
                    "type": "string",
                    "title": "Rule color",
                    "description": "The color of the horizontal line appearing above the card."
                }
            }
        },
        "links": [
            {
                "rel": "More information on the frontpage cards setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#frontpage_cards"
            }
        ]
    },
    "frontpage_goals_grid": {
        "options": {"collapsed": true},
        "type": "object",
        "title": "Frontpage goals grid",
        "description": "This setting is only used in the frontpage-alt layout. It can display a title and description above the grid of goal tiles.",
        "$ref": "#/definitions/title_and_description",
        "links": [
            {
                "rel": "More information on the frontpage goals grid setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#frontpage_goals_grid"
            }
        ]
    },
    "frontpage_heading": {
        "type": "string",
        "title": "Frontpage heading",
        "description": "This setting can control the heading that appears on the front page. This setting is only used in the frontpage layout.",
        "links": [
            {
                "rel": "More information on the frontpage heading setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#frontpage_heading"
            }
        ]
    },
    "frontpage_instructions": {
        "type": "string",
        "title": "Frontpage instructions",
        "description": "This setting can control the instructions that appear on the front page. This setting is only used in the frontpage layout.",
        "links": [
            {
                "rel": "More information on the frontpage instructions setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#frontpage_instructions"
            }
        ]
    },
    "frontpage_introduction_banner": {
        "options": {"collapsed": true},
        "type": "object",
        "title": "Frontpage introduction banner",
        "description": "This setting is only used in the frontpage-alt layout. It can display a title and description in a banner at the top of the frontpage.",
        "$ref": "#/definitions/title_and_description",
        "links": [
            {
                "rel": "More information on the frontpage introduction banner setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#frontpage_introduction_banner"
            }
        ]
    },
    "goal_image_base": {
        "type": "string",
        "minLength": 1,
        "title": "Goal image base URL",
        "description": "This setting controls the base URL for downloading the imagery for the goals.",
        "links": [
            {
                "rel": "More information on the goal image base setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#goal_image_base"
            }
        ]
    },
    "goal_image_extension": {
        "type": "string",
        "title": "Goal image extension",
        "description": "This setting controls the type of file (the file extension) that will be used for the goal images.",
        "links": [
            {
                "rel": "More information on the goal image extension setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#goal_image_extension"
            }
        ]
    },
    "goals_page": {
        "options": {"collapsed": true},
        "type": "object",
        "title": "Goals page",
        "description": "This setting is used in the 'goals' layout. It can display a title and description above the grid of goal tiles.",
        "$ref": "#/definitions/title_and_description",
        "links": [
            {
                "rel": "More information on the goals page setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#goals_page"
            }
        ]
    },
    "graph_color_headline": {
        "type": "string",
        "format": "color",
        "title": "Graph color for headline",
        "default": "#004466",
        "description": "This setting can be used to customize the color used in the chart 'headlines'.",
        "examples": [],
        "links": [
            {
                "rel": "More information on the graph color headline setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#graph_color_headline"
            }
        ]
    },
    "graph_color_headline_high_contrast": {
        "type": "string",
        "format": "color",
        "title": "Graph color for headline - high-contrast",
        "default": "#55a6e5",
        "description": "This setting can be used to customize the color used in the chart 'headlines' in high-contrast mode.",
        "examples": [],
        "links": [
            {
                "rel": "More information on the graph color headline high-contrast setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#graph_color_headline_high_contrast"
            }
        ]
    },
    "graph_color_set": {
        "type": "string",
        "title": "Graph color set",
        "description": "This setting can be used to customize the color set used in the charts.",
        "examples": [],
        "enum": ["default", "accessible", "sdg", "goal", "custom"],
        "links": [
            {
                "rel": "More information on the graph color set setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#graph_color_set"
            }
        ]
    },
    "graph_color_list": {
        "options": {"collapsed": true},
        "type": "array",
        "title": "Graph color list",
        "description": "This setting can be used to define a set of colors to be used in the charts. This is only used when graph_color_set is 'custom'.",
        "items": {
            "type": "string",
            "format": "color",
            "title": "Color",
            "description": "Hexadecimal color code"
        },
        "links": [
            {
                "rel": "More information on the graph color list setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#graph_color_list"
            }
        ]
    },
    "graph_color_number": {
        "title": "Graph color number",
        "type": "integer",
        "description": "This setting can be used to limit the length of the list of colors selected via graph_color_set.",
        "links": [
            {
                "rel": "More information on the graph color number setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#graph_color_number"
            }
        ]
    },
    "graph_title_from_series": {
        "title": "Graph title from series",
        "type": "boolean",
        "description": "This setting can be set to `true` to use the selected series for the graph title, whenever possible.",
        "format": "checkbox",
        "links": [
            {
                "rel": "More information on the graph title from series setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#graph_title_from_series"
            }
        ]
    },
    "header": {
        "options": {"collapsed": true},
        "type": "object",
        "title": "Header",
        "description": "This setting can be used to customise the header.",
        "properties": {
            "include": {
                "type": "string",
                "title": "Include file",
                "enum": [
                    "header-default.html",
                    "header-menu-left-aligned.html"
                ],
                "options": {
                    "enum_titles": [
                        "Default header",
                        "Menu left-aligned"
                    ]
                },
                "description": "The header style to use on all pages."
            }
        },
        "links": [
            {
                "rel": "More information on the header setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#header"
            }
        ]
    },
    "header_language_toggle": {
        "type": "string",
        "title": "Header language toggle",
        "description": "This setting controls the type of language toggle to be used in the header.",
        "enum": ["none", "dropdown", "links"],
        "links": [
            {
                "rel": "More information on the header language toggle setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#header_language_toggle"
            }
        ]
    },
    "hide_empty_metadata": {
        "title": "Hide empty metadata",
        "type": "boolean",
        "description": "This setting can be used to hide any metadata fields that are empty.",
        "format": "checkbox",
        "links": [
            {
                "rel": "More information on the hide empty metadata setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#hide_empty_metadata"
            }
        ]
    },
    "indicator_config_form": {
        "options": {"collapsed": true},
        "type": "object",
        "title": "Indicator configuration form",
        "description": "Configuration of the indicator configuration form.",
        "$ref": "#/definitions/config_form_options"
    },
    "indicator_data_form": {
        "options": {"collapsed": true},
        "type": "object",
        "title": "Indicator data form",
        "description": "Configuration of the indicator data form.",
        "properties": {
            "enabled": {
                "type": "boolean",
                "title": "Enable this type of form",
                "description": "If enabled, the indicator data form will be available.",
                "format": "checkbox"
            },
            "repository_link": {
                "type": "string",
                "title": "Repository link",
                "description": "The URL pattern of the 'Go to repository' link on the configuration page."
            }
        }
    },
    "indicator_metadata_form": {
        "options": {"collapsed": true},
        "type": "object",
        "title": "Indicator metadata form",
        "description": "Configuration of the indicator metadata form.",
        "allOf": [
            { "$ref": "#/definitions/config_form_options" },
            {
                "properties": {
                    "language": {
                        "type": "string",
                        "title": "Language for editing",
                        "description": "Choose the language you prefer when editing metadata. This is used to translate the labels of the metadata fields."
                    },
                    "scopes": {
                        "options": {"collapsed": true},
                        "type": "array",
                        "title": "Metadata scopes",
                        "description": "Specify the 'scopes' of metadata to include on the form. Eg: 'national' or 'global'.",
                        "items": {
                            "type": "string",
                            "title": "Scope"
                        }
                    },
                    "exclude_fields": {
                        "options": {"collapsed": true},
                        "type": "array",
                        "title": "Exclude fields",
                        "description": "Specify any fields you would like to exclude from the form.",
                        "items": {
                            "type": "string",
                            "title": "Field"
                        }
                    },
                    "translated": {
                        "type": "boolean",
                        "title": "Display translated contents in the form",
                        "description": "This should only be enabled if you are using the 'subfolder' approach for your metadata.",
                        "format": "checkbox"
                    }
                }
            }
        ]
    },
    "languages": {
        "options": {"collapsed": true},
        "type": "array",
        "minItems": 1,
        "title": "Languages",
        "description": "This setting controls the languages to be used on the site.",
        "items": {
            "type": "string",
            "minLength": 1,
            "title": "Language"
        },
        "links": [
            {
                "rel": "More information on the languages setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#languages"
            }
        ]
    },
    "languages_public": {
        "options": {"collapsed": true},
        "type": "array",
        "title": "Language code overrides",
        "description": "This setting can be used if you are not happy with any of the standard language codes.",
        "items": {
            "type": "object",
            "title": "Language override",
            "properties": {
                "language": {
                    "type": "string",
                    "minLength": 1,
                    "title": "Language",
                    "description": "The (standard) language code that you would like to override."
                },
                "language_public": {
                    "type": "string",
                    "minLength": 1,
                    "title": "Language override",
                    "description": "The (non-standard) language code that you would like show the public instead."
                }
            }
        },
        "links": [
            {
                "rel": "More information on the language override setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#languages_public"
            }
        ]
    },
    "logos": {
        "options": {"collapsed": true},
        "type": "array",
        "title": "Logos",
        "description": "This setting can be used to control the main logo (or logos).",
        "items": {
            "type": "object",
            "title": "Logo",
            "properties": {
                "language": {
                    "type": "string",
                    "title": "Language",
                    "description": "The language on which this logo displays. Leave blank to show on all."
                },
                "src": {
                    "type": "string",
                    "minLength": 1,
                    "title": "Image file",
                    "description": "The image file (path or URL) for this logo"
                },
                "alt": {
                    "type": "string",
                    "minLength": 1,
                    "title": "Alt text",
                    "description": "The alt text for this logo"
                }
            }
        },
        "links": [
            {
                "rel": "More information on the logos setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#logos"
            }
        ]
    },
    "map_layers": {
        "options": {"collapsed": true},
        "type": "array",
        "title": "Map layers",
        "description": "Configure any number of layers to display on all indicator maps. A minimum of one layer is required to display maps.",
        "items": {
            "type": "object",
            "title": "Map layer",
            "properties": {
                "subfolder": {
                    "type": "string",
                    "title": "Subfolder",
                    "description": "The subfolder under 'geojson' in the data repository holding the GeoJSON file for this layer."
                },
                "label": {
                    "type": "string",
                    "title": "Download button label",
                    "description": "The label to use in the 'Download GeoJSON' button for this layer."
                },
                "min_zoom": {
                    "type": "integer",
                    "title": "Minimum zoom",
                    "description": "This layer will only be visible when the map is zoomed to at least this number."
                },
                "max_zoom": {
                    "type": "integer",
                    "title": "Maximum zoom",
                    "description": "The layer will not be visible when the map is zoomed beyond this number."
                },
                "staticBorders": {
                    "type": "boolean",
                    "format": "checkbox",
                    "title": "Static borders",
                    "description": "Whether the borders on this layer should remain visible when the map is zoomed past the maximum."
                }
            }
        },
        "links": [
            {
                "rel": "More information on the map layers setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/maps/#map_layers"
            }
        ]
    },
    "map_options": {
        "options": {"collapsed": true},
        "type": "object",
        "title": "Map options",
        "description": "Site-wide configuration of map behavior and style.",
        "properties": {
            "minZoom": {
                "title": "Minimum zoom",
                "type": "integer",
                "description": "The lowest amount of 'zoom' possible for users.",
                "default": 5
            },
            "maxZoom": {
                "title": "Maximum zoom",
                "type": "integer",
                "description": "The highest amount of 'zoom' possible for users.",
                "default": 10
            },
            "tileURL": {
                "title": "Tile URL",
                "type": "string",
                "format": "url",
                "description": "If you would like the maps to show tile imagery, add the URL here."
            },
            "tileOptions": {
                "title": "Tile options",
                "type": "object",
                "options": {"collapsed": true},
                "description": "Additional options for map tile imagery.",
                "properties": {
                    "id": {
                        "type": "string",
                        "title": "Tile ID"
                    },
                    "accessToken": {
                        "type": "string",
                        "title": "Access token"
                    },
                    "attribution": {
                        "type": "string",
                        "title": "Attribution"
                    }
                }
            },
            "colorRange": {
                "type": "string",
                "title": "Color range",
                "description": "The color range for the choropleth map.",
                "default": "chroma.brewer.BuGn",
                "links": [
                    {
                        "ref": "More information on the color range setting",
                        "href": "https://gka.github.io/chroma.js/#chroma-brewer"
                    }
                ]
            },
            "noValueColor": {
                "type": "string",
                "format": "color",
                "title": "No-value color",
                "description": "Color for boundaries that have no data.",
                "default": "#f0f0f0"
            },
            "styleNormal": {
                "type": "object",
                "title": "Style (normal)",
                "description": "Style for boundaries in normal state",
                "$ref": "#/definitions/map_style",
                "default": {
                    "weight": 1,
                    "opacity": 1,
                    "fillOpacity": 0.7,
                    "color": "#888888"
                }
            },
            "styleHighlighted": {
                "type": "object",
                "title": "Style (highlighted)",
                "description": "Style for boundaries in highlighted state",
                "$ref": "#/definitions/map_style",
                "default": {
                    "weight": 1,
                    "opacity": 1,
                    "fillOpacity": 0.7,
                    "color": "#111111"
                }
            },
            "styleStatic": {
                "type": "object",
                "title": "Style (static)",
                "description": "Style for boundaries in static state (map layers using the 'static boundaries' option).",
                "$ref": "#/definitions/map_style",
                "default": {
                    "weight": 2,
                    "opacity": 1,
                    "fillOpacity": 0,
                    "color": "#172d44",
                    "dashArray": "5,5"
                }
            }
        },
        "links": [
            {
                "rel": "More information on the map options setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/maps/#map_options"
            }
        ]
    },
    "menu": {
        "options": {"collapsed": true},
        "type": "array",
        "minItems": 1,
        "title": "Main menu",
        "description": "The links to display in the main menu.",
        "items": {
            "title": "Menu item",
            "allOf": [
                { "$ref": "#/definitions/menu_item" },
                {
                    "properties": {
                        "dropdown": {
                            "title": "Dropdown menu",
                            "type": "array",
                            "description": "Enter menu items here to turn this into a dropdown.",
                            "items": {
                                "$ref": "#/definitions/menu_item",
                                "title": "Dropdown menu item"
                            }
                        }
                    }
                }
            ]
        },
        "links": [
            {
                "rel": "More information on the menu setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#menu"
            }
        ]
    },
    "metadata_edit_url": {
        "type": "string",
        "minLength": 1,
        "title": "Metadata edit URL",
        "description": "This setting controls the URL of the 'Edit Metadata' buttons that appear on the staging site's indicator pages.",
        "links": [
            {
                "rel": "More information on the metadata edit URL setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#metadata_edit_url"
            }
        ]
    },
    "metadata_tabs": {
        "options": {"collapsed": true},
        "type": "array",
        "title": "Metadata tabs",
        "description": "This setting can control the metadata tabs which appear on the indicator pages.",
        "items": {
            "type": "object",
            "title": "Metadata tab",
            "properties": {
                "scope": {
                    "type": "string",
                    "minLength": 1,
                    "title": "Scope",
                    "description": "This tab will contain fields in the specific `scope` in your data repository's metadata schema file (eg, `_prose.yml`)."
                },
                "title": {
                    "type": "string",
                    "minLength": 1,
                    "title": "Title",
                    "description": "The title of the metadata tab."
                },
                "description": {
                    "type": "string",
                    "title": "Description",
                    "description": "A descriptive blurb to show at the top of the tab content.",
                    "format": "markdown"
                }
            }
        },
        "links": [
            {
                "rel": "More information on the metadata tabs setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#metadata_tabs"
            }
        ]
    },
    "news": {
        "options": {"collapsed": true},
        "type": "object",
        "title": "News",
        "description": "Configuration related to news updates and posts.",
        "properties": {
            "category_links": {
                "title": "Category links",
                "type": "boolean",
                "description": "Whether you would like the 'categories' of posts to generate links to dedicated category pages.",
                "format": "checkbox"
            }
        },
        "links": [
            {
                "rel": "More information on the news setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#news"
            }
        ]
    },
    "non_global_metadata": {
        "type": "string",
        "title": "Non-global metadata",
        "description": "This setting can be used to control the text of the tab containing non-global metadata.",
        "links": [
            {
                "rel": "More information on the non-global metadata setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#non_global_metadata"
            }
        ]
    },
    "remote_data_prefix": {
        "type": "string",
        "minLength": 1,
        "title": "Remote data prefix",
        "description": "Specify the URL of the 'data service' that is generated from your data repository.",
        "links": [
            {
                "rel": "More information on the remote data prefix setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#remote_data_prefix"
            }
        ]
    },
    "reporting_status": {
        "options": {"collapsed": true},
        "type": "object",
        "title": "Reporting status",
        "description": "This setting is used in the 'reportingstatus' layout. It can display a title and description above the reporting status page.",
        "allOf": [
            { "$ref": "#/definitions/title_and_description" },
            {
                "properties": {
                    "disaggregation_tabs": {
                        "title": "Disaggregation tabs",
                        "type": "boolean",
                        "description": "Whether or not to display disaggregation status tabs. If you enable this setting, you should also use 'expected_disaggregations' in your indicator configuration, in order to provide the disaggregation status report with useful metrics.",
                        "format": "checkbox"
                    }
                }
            }
        ],
        "links": [
            {
                "rel": "More information on the reporting status setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#reporting_status"
            }
        ]
    },
    "repository_url_data": {
        "type": "string",
        "title": "Repository URL - Data",
        "description": "The URL of your data repository, eg: https://github.com/my-github-org/data",
        "links": [
            {
                "rel": "More information on the data repository URL setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#repository_url_data"
            }
        ]
    },
    "repository_url_site": {
        "type": "string",
        "title": "Repository URL - Site",
        "description": "The URL of your site repository, eg: https://github.com/my-github-org/site",
        "links": [
            {
                "rel": "More information on the site repository URL setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#repository_url_site"
            }
        ]
    },
    "search_index_boost": {
        "options": {"collapsed": true},
        "type": "array",
        "title": "Search index boost",
        "description": "This setting can be used to give a boost to one or more fields in the search index.",
        "items": {
            "type": "object",
            "title": "Boost",
            "properties": {
                "field": {
                    "type": "string",
                    "minLength": 1,
                    "title": "Field",
                    "description": "Field to boost ('title', 'content', etc.)"
                },
                "boost": {
                    "type": "integer",
                    "minLength": 1,
                    "title": "Boost",
                    "description": "Higher boost means higher search ranking."
                }
            }
        },
        "links": [
            {
                "rel": "More information on the search index boost setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#search_index_boost"
            }
        ]
    },
    "search_index_extra_fields": {
        "options": {"collapsed": true},
        "type": "array",
        "title": "Search index extra fields",
        "description": "This setting can be used to index additional metadata fields in your indicators, for the purposes of affecting the site-wide search.",
        "items": {
            "type": "string",
            "title": "Extra field"
        },
        "links": [
            {
                "rel": "More information on the search index extra fields setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#search_index_extra_fields"
            }
        ]
    },
    "series_toggle": {
        "title": "Series toggle",
        "type": "boolean",
        "description": "This setting enables the special treatment of the 'Series' column in the data. If set to true, when an indicator's data includes a 'Series' column, it will be displayed above 'Units' as radio buttons.",
        "format": "checkbox",
        "links": [
            {
                "rel": "More information on the series toggle setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#series_toggle"
            }
        ]
    },
    "sharethis_property": {
        "type": "string",
        "title": "ShareThis property",
        "description": "This setting creates a ShareThis widget along the left side of every page. It should be the property id for your ShareThis account.",
        "links": [
            {
                "rel": "More information on the sharethis setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#sharethis_property"
            }
        ]
    },
    "site_config_form": {
        "options": {"collapsed": true},
        "type": "object",
        "title": "Site configuration form",
        "description": "Configuration of the site configuration form.",
        "$ref": "#/definitions/config_form_options"
    },
    "validate_indicator_config": {
        "title": "Validate indicator config",
        "type": "boolean",
        "description": "If checked, this will require that all indicators have valid Open SDG indicator configuration.",
        "format": "checkbox",
        "links": [
            {
                "rel": "More information on the validate indicator config setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#validate_indicator_config"
            }
        ]
    },
    "validate_site_config": {
        "title": "Validate site config",
        "type": "boolean",
        "description": "If checked, this will require valid site configuration.",
        "format": "checkbox",
        "links": [
            {
                "rel": "More information on the validate site config setting",
                "href": "https://open-sdg.readthedocs.io/en/latest/configuration/#validate_site_config"
            }
        ]
    }
},
"additionalProperties": true,
"definitions": {
    "menu_item": {
        "type": "object",
        "title": "Menu item",
        "properties": {
            "path": {
                "type": "string",
                "minLength": 1,
                "title": "Path",
                "description": "Path or URL that the menu item should link to."
            },
            "translation_key": {
                "type": "string",
                "minLength": 1,
                "title": "Label",
                "description": "Label (or translation key) for the link."
            }
        }
    },
    "breadcrumb_item": {
        "type": "object",
        "title": "Breadcrumb item",
        "properties": {
            "path": {
                "type": "string",
                "minLength": 1,
                "title": "Path",
                "description": "Path or URL that the breadcrumb item should link to."
            },
            "label": {
                "type": "string",
                "minLength": 1,
                "title": "Label",
                "description": "Label (or translation key) for the breadcrumb item."
            }
        }
    },
    "title_and_description": {
        "type": "object",
        "properties": {
            "title": {
                "type": "string",
                "title": "Title"
            },
            "description": {
                "type": "string",
                "title": "Description",
                "format": "markdown"
            }
        }
    },
    "map_style": {
        "properties": {
            "weight": {
                "type": "number",
                "title": "Weight",
                "description": "The weight (boldness) of boundary borders."
            },
            "opacity": {
                "type": "number",
                "title": "Opacity",
                "description": "The opacity of the boundary borders (between 0 and 1)."
            },
            "fillOpacity": {
                "type": "number",
                "title": "Fill opacity",
                "description": "The opacity of the boundaries' background color (between 0 and 1)."
            },
            "color": {
                "type": "string",
                "format": "color",
                "title": "Color",
                "description": "The color of the boundary borders."
            },
            "dashArray": {
                "type": "string",
                "title": "Dash array",
                "description": "A 'dash array' describing the boundary as dashed lines."
            }
        }
    },
    "config_form_options": {
        "type": "object",
        "properties": {
            "enabled": {
                "type": "boolean",
                "title": "Enable this type of form",
                "description": "If enabled, this type of configuration form will be available.",
                "format": "checkbox"
            },
            "dropdowns": {
                "type": "array",
                "title": "Dropdown lists",
                "description": "Set options for any dropdown lists.",
                "items": {
                    "type": "object",
                    "title": "Dropdown list",
                    "properties": {
                        "jsonschema": {
                            "type": "string",
                            "title": "JSONSchema path",
                            "description": "The jsonschema path to the dropdown field."
                        },
                        "values": {
                            "type": "array",
                            "title": "Values",
                            "description": "List of dropdown option values",
                            "items": {
                                "type": "string",
                                "title": "Value"
                            }
                        },
                        "labels": {
                            "type": "array",
                            "title": "Labels",
                            "description": "Optional list of dropdown option labels. Should correspond to the values above.",
                            "items": {
                                "type": "string",
                                "title": "Label"
                            }
                        }
                    }
                }
            },
            "repository_link": {
                "type": "string",
                "title": "Repository link",
                "description": "The URL pattern of the 'Go to repository' link on the configuration page."
            },
            "translation_link": {
                "type": "string",
                "title": "Translation link",
                "description": "The URL pattern for all 'Go to translation' links on the configuration page."
            }
        }
    }
}

}