{% extends "zerver/portico.html" %}

{% block portico_content %}

<div class="error_page" style="padding-bottom: 60px;">
    <div class="container">
        <div class="row-fluid">
            <img src="/static/images/500art.svg" alt=""/>
            <div class="errorbox config-error">
                <div class="errorcontent">
                    <h1 class="lead">Configuration error</h1>
                    <br />
                    {% if error_name == "ldap_error_realm_is_none" %}
                        {% trans %}
                        You are trying to log in using LDAP without creating an
                        organization first. Please use EmailAuthBackend to create
                        your organization and then try again.
                        {% endtrans %}
                    {% endif %}

                    {% if error_name == "smtp_error" %}
                        <p>
                            It appears there are problems with the
                            email configuration.
                        </p>
                        {% if not development_environment %}
                        <p>
                            See <code>/var/log/zulip/errors.log</code> for more
                            details on the error.
                        </p>
                        <p>
                            You may also want to test your email configuration,
                            as described in the
                            <a href="https://zulip.readthedocs.io/en/latest/production/email.html">Production installation docs</a>.
                        </p>
                        {% else %}
                        <p>
                            Please have a look at our
                            <a target="_blank" rel="noopener noreferrer" href="https://zulip.readthedocs.io/en/latest/subsystems/email.html#development-and-testing"> setup guide</a>
                            for forwarding emails sent in development
                            environment to an email account.
                        </p>
                        {% endif %}
                    {% endif %}

                    {% if error_name == "dev_not_supported_error" %}
                    {{ render_markdown_path('zerver/dev-not-supported-error.md', {"settings_path": settings_path}) }}
                    {% endif %}

                    {% if has_markdown_file %}
                        {% if development_environment %}
                        {{ render_markdown_path('zerver/'+social_backend_name+'-error.md',
                          {"root_domain_uri": root_domain_uri, "settings_path": secrets_path, "secrets_path": secrets_path,
                          "client_id_key_name": "social_auth_" + social_backend_name + "_key"}) }}
                        <p>
                            For more information, have a look at
                            the <a href="https://zulip.readthedocs.io/en/latest/development/authentication.html#{{ social_backend_name }}">authentication
                            setup guide</a> for the development environment.
                        </p>
                        {% else %}
                        {{ render_markdown_path('zerver/'+social_backend_name+'-error.md',
                          {"root_domain_uri": root_domain_uri, "settings_path": settings_path, "secrets_path": secrets_path,
                          "client_id_key_name": "SOCIAL_AUTH_" + social_backend_name.upper() + "_KEY"}) }}
                        <p>
                            For more information, have a look at
                            our <a href="https://zulip.readthedocs.io/en/latest/production/authentication-methods.html">authentication
                            setup guide</a> and the comments in <code>{{ settings_comments_path }}</code>.
                        </p>
                        {% endif %}
                    {% endif %}

                    {% if social_backend_name == "saml" %}
                        <p>
                            SAML authentication is either not enabled or misconfigured. Have a look at
                            our <a href="https://zulip.readthedocs.io/en/latest/production/authentication-methods.html#SAML">setup guide</a>.
                        </p>
                        {% if development_environment %}
                        <p>
                            See also the
                            <a href="https://zulip.readthedocs.io/en/latest/development/authentication.html#saml">SAML guide</a>
                            for the development environment.
                        </p>
                        {% endif %}
                    {% endif %}

                    {% if error_name == "remoteuser_error_backend_disabled" %}
                    <p>
                        Authentication via the REMOTE_USER header is
                        disabled in `/etc/zulip/settings.py`.
                    </p>
                    {% endif %}
                    {% if error_name == "remoteuser_error_remote_user_header_missing" %}
                    <p>
                        The REMOTE_USER header is not set.
                    </p>
                    {% endif %}
                    {% if error_name == "oidc_error" %}
                    <p>
                        The OpenID Connect backend is not configured correctly.
                    </p>
                    {% endif %}

                    <p>After making your changes, remember to restart
                    the Zulip server.</p>
                    <p><a href=""> Refresh</a> to try again or <a href="/login/">click here</a> to go back to the login page.</p>
                </div>

            </div>
        </div>
    </div>
</div>

{% endblock %}
