summaryrefslogtreecommitdiffstats
path: root/python/fatcat_web/templates/refs_macros.html
blob: 405aca73af0ef7c440e372c6199d80ac92a6946a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
{% import "entity_macros.html" as entity_macros %}

{% macro pagination_row(hits, direction) %}

  {% if hits.offset %}
    <a href="?offset={{ hits.offset - hits.limit }}">&laquo; prev</a> &nbsp;
  {% endif %}
  Showing {{ hits.offset + 1 }} - {{ hits.offset + hits.count_returned }} of {{ hits.count_total}} references (in {{ hits.query_wall_time_ms }}ms)
  {% if hits.count_total != hits.count_returned and hits.offset + hits.limit < hits.count_total %}
    &nbsp;<a href="?offset={{ hits.offset + hits.limit }}">next &raquo;</a>
  {% endif %}
{% endmacro %}

{% macro refs_table(hits, direction) %}

<table class="ui table">
<thead>
  <tr><th colspan="3">
    {{ pagination_row(hits) }}
</thead>
<tbody>
{% for row in hits.result_refs %}
  {% set release = row.release %}
  <tr><td class="collapsing left aligned top aligned">
        {# TODO: ref_locator? #}
        {% if direction == "out" %}
          {% if row.ref.ref_key %}
            <code title="index={{ row.ref.ref_index }}">[{{ row.ref.ref_key }}]</code><br>
          {% endif %}
        {% endif %}
        <b>{{ row.ref.match_status }}</b><br>
        {% if row.ref.match_provenance %}
          via {{ row.ref.match_provenance }}
        {% endif %}
      <td class="">
        {% if release %}
          {{ entity_macros.release_summary(release) }}
        {% elif row.ref.target_unstructured %}
          <code>{{ row.ref.target_unstructured }}</code>
          {% if row.ref.target_openlibrary_work %}
            <br><a href="https://openlibrary.org/{{ row.ref.target_openlibrary_work }}" style="color:green;">openlibrary:{{ row.ref.target_openlibrary_work }}</a>&nbsp;
          {% endif %}
        {% elif row.ref.target_csl %}
          {{ entity_macros.csl_summary(row.ref.target_csl) }}
        {% else %}
          <i>blank</i>
        {% endif %}
      <td class="center aligned">
        {% if row.access %}
          {% for access in row.access %}
            <a href="{{ access.access_url}}" class="ui tiny green active button">
              {%- if access.access_type.name == "wayback" %}
                web.archive.org
              {%- elif access.access_type.name == "ia_file" -%}
                archive.org
              {%- else -%}
                {{ access.access_type.name }}
              {%- endif -%}
              {%- if access.mimetype == "application/pdf" %}
                [PDF]
              {%- elif access.mimetype == "text/html" %}
                [HTML]
              {%- endif -%}
            </a>
            <br>
          {% endfor %}
        {% elif direction == "out" and row.ref.target_unstructured %}
          <form class="ui form" id="reference_match" method="POST" action="/reference/match">
            <input type="hidden" name="csrf_token" value="{{ csrf_token() }}"/>
            <input type="hidden" name="raw_citation" value="{{ row.ref.target_unstructured }}">
            <button class="ui tiny primary submit button" type="submit" name="submit_type" value="parse">
              parse
            </button>
          </form>
        {% endif %}
{% endfor %}
</tbody>
{% if hits.count_total != hits.count_returned %}
  <tfoot>
    <tr><th colspan="3">
      {{ pagination_row(hits) }}
  </tfoot>
{% endif %}
</table>
{% endmacro %}