| 1 |
{% extends "base.html" %} |
| 2 |
{% import "repo_tabs.html" as m %} |
| 3 |
{% block title %}Pushes · {{ repo.owner }}/{{ repo.name }}{% endblock %} |
| 4 |
{% block bodyattrs %} data-repo="{{ repo.url }}"{% endblock %} |
| 5 |
{% block tabs %}{% call m::tabs(repo, "pushes") %}{% endblock %} |
| 6 |
{% block content %} |
| 7 |
<div class="head"><h1>Pushes <small>every reference update the hub accepted or refused</small></h1></div> |
| 8 |
{% if pushes.is_empty() %}<p class="empty">Nothing has been pushed yet.</p>{% else %} |
| 9 |
<div class="table"><table> |
| 10 |
<tr><th>When</th><th>Who</th><th>Reference</th><th>Result</th><th>Changes</th><th>Heads</th><th>State</th></tr> |
| 11 |
{% for p in pushes %} |
| 12 |
<tr><td><time title="{{ p.at_ms|when_i }}">{{ p.at_ms|ago_i }}</time></td><td>{% if p.pusher.is_empty() %}<span class="mute">anonymous</span>{% else if p.pusher == "site token" %}<span class="mute">site token</span>{% else %}<a href="/{{ p.pusher }}">{{ p.pusher }}</a>{% endif %}</td><td class="px">{{ p.reference }}</td><td>{% if p.ok %}<span class="sig sig-valid">✔</span> accepted{% if !p.reason.is_empty() %} · {{ p.reason }}{% endif %}{% else %}<span class="sig sig-invalid">✘</span> refused: {{ p.reason }}{% endif %}</td><td>{% if p.ok %}{{ p.changes }}{% endif %}</td><td>{% if p.ok %}{{ p.heads }}{% endif %}</td><td class="small mute">{% if !p.new_state.is_empty() %}<code title="{{ p.old_state }} → {{ p.new_state }}">{{ p.new_state|short }}</code>{% endif %}</td></tr> |
| 13 |
{% endfor %} |
| 14 |
</table></div> |
| 15 |
{% endif %} |
| 16 |
{% endblock %} |