{% extends "base.html" %}
{%- set uglyurls = config.extra.uglyurls | default(value=false) -%}
{%- if config.extra.offline %}{% set uglyurls = true %}{% endif %}

{%- block seo %}
  {{ super() }}
  {%- set title = "404 Page not found" %}

  {%- if config.title %}
    {%- set title_addition = title_separator ~ config.title %}
  {%- else %}
    {%- set title_addition = "" %}
  {%- endif %}

  {%- set description = config.description %}

  {{- macros_seo::seo(config=config, title=title, title_addition=title_addition, description=description, is_404=true) }}
{%- endblock seo %}

{%- block content %}
    <div>
      <h1>404 :(</h1>
      {#- Default English message #}
      <p>Page not found, maybe moved{% if config.languages | length > 1 %} or not in this language{% endif %}. {% if config.build_search_index %}Try searching or {% endif %}<a href="{{ config.base_url | safe }}/{%- if uglyurls %}index.html{%- endif %}">go to homepage</a>.</p>

      {# Iterate through each language and display the localised 404 message #}
      {%- for lcode, language in config.languages -%}
        {%- if lcode != config.default_language -%}
        {%- set i18n_404 = load_data(path="i18n/" ~ lcode ~ '.toml', required=false) -%}
        {%- if not i18n_404 -%}{%- set i18n_404 = load_data(path="themes/abridge/i18n/" ~ lcode ~ ".toml", required=false) -%}{%- endif %}

          <p>{{ macros::translate(key="404_not_found", default="404_not_found", i18n=i18n_404) }}{{ macros::translate(key="full_stop", default=".", i18n=i18n_404) }} {% if config.build_search_index %}{{ macros::translate(key="404_try_search", default="Try searching or", i18n=i18n_404) }}{% endif %} <a href="{{ config.base_url }}/{{ lcode }}/{%- if uglyurls %}index.html{%- endif %}">{{ macros::translate(key="404_go_home", default="go to homepage", i18n=i18n_404) }}</a>{{ macros::translate(key="full_stop", default=".", i18n=i18n_404) }}</p>
        {%- endif -%}
      {%- endfor -%}
    </div>
{%- endblock content %}
