{#- What a path **no node stands at** is answered with (ADR-0116): one block, whichever view of it was asked for, on the page that answers its address and in the part an open Status page's refresh swaps in when its node leaves. It says what the event log and the pins know of the path, and where the nearest node above it stands; nothing is kept for it that those two do not already keep. Expects `no_node` (`_NoNode`), `is_admin`, and what a pin's editor prints. -#} {% from '_pin_sections.html' import suspended_pins, suspended_sentence with context %}

No node stands at {{ no_node.path }}.

{%- if no_node.removed %}

Removed {{ no_node.removed }}: {{ no_node.reason }}. Events lists what was recorded of it.

{%- elif no_node.events %}

It is not reported at present. Events lists what was recorded of it.

{%- else %}

Nothing is recorded of it: no check reports a node here, and the event log holds nothing at this path.

{%- endif %} {#- Every pin held against the path or beneath it, each under the path it is held against: the path's own needs no heading, the page being about it. -#} {%- for path, group in no_node.pins | groupby('path') %}
{%- if path != no_node.pin_path %}

{{ path }}

{%- endif %}

{{ suspended_sentence(group) }}

{{ suspended_pins(path, group, loop.index, url_for('status', branch=no_node.path), is_admin) }}
{%- endfor %} {%- if no_node.above %}

The nearest node above it that stands is {{ no_node.above }}: History{% if no_node.above_series %}, Series{% endif %}.{% if no_node.removed %} Readings kept of a subject that was removed are listed on its History page.{% endif %}

{%- elif no_node.first_level %}

It would stand at the first level of nodes.

{%- else %}

No node stands above it either: nodes lists the first level.

{%- endif %}