aboutsummaryrefslogtreecommitdiff
path: root/templates/archive.html
blob: 3ec7d67efe16db754f86436d42175bc250e96f7d (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
{#
This Template Shows the Posts Grouped by Year: example.com/archive/
This Template can also be used as the rendering template for Sections, eg: example.com/blog/  example.com/software/
#}

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

{%- block seo -%}
  {{- super() -}}
  {%- set title = "Archive" -%}
  {%- if config.title -%}
    {%- set title_addition = title_separator ~ config.title -%}
  {%- else -%}
    {%- set title_addition = "" -%}
  {%- endif -%}
  {%- set description = config.description -%}
  {{<seo config={config}  title={title}  title_addition={title_addition}  description={description or ""}  is_home={true} />}}
{%- endblock seo -%}

{%- block content %}
    {#- The following line is checking if the template is being used for the archive page or a section #}
    {%- if current_path is matching(pat="^(/[[:alpha:]][[:alpha:]])?/archive/$") %}
      {%- if section.extra.sec %}
        {%- set sec = section.extra.sec ~ "/" %}
      {%- else %}
        {%- set sec = "" %}
      {%- endif %}
    {%- else %}
      {%- set langpath = "/" %}
      {%- if lang != config.default_language %}
        {%- set langpath = "/" ~ lang ~ "/" %}
      {%- endif %}

      {%- set sec = current_path | trim_start(pat=langpath) | split(pat="/page/") | first | trim_end(pat="/") %}
      {%- set sec = sec ~ "/" %}
    {%- endif %}

    {%- if lang == config.default_language %}
    {%- set section_item = get_section(path=sec ~ "_index.md") %}
    {%- else %}
    {%- set section_item = get_section(path=sec ~ "_index." ~ lang ~ ".md") %}
    {%- endif %}
    {%- if sec != "" %}
      {#- the section always overrides the config -#}
      {%- if section_item.extra and 'hide_section_dates' in section_item.extra -%}
        {%- set hide_section_dates = section_item.extra.hide_section_dates -%}
      {%- elif config.extra.hide_section_dates -%}
        {%- set hide_section_dates = true -%}
      {%- endif -%}
    {%- endif %}
    <div>
      {%- if section_item.title %}
      <h2>{{ section_item.title }}</h2>
      {%- endif %}
      {{- section_item.content | safe }}
      {%- if config.extra.archive_reverse %}
      {%- for year, posts in section_item.pages | sort(attribute="year") | reverse | group_by(attribute="year") %}
      {%- if not hide_section_dates %}
      {%- if section_item.title %}
      <h3 class="tpad">{{ year }}</h3>
      {%- else %}
      <h2 class="tpad">{{ year }}</h2>
      {%- endif %}
      {%- endif %}
      {%- for post in posts %}
      <p><a href="{{ post.permalink | safe }}{%- if uglyurls %}index.html{%- endif %}">{{ post.title }}</a>{%- if not hide_section_dates %} - <time datetime="{{ post.date }}">{{ post.date | date(format="%F") }}</time>{%- endif %}</p>
      {%- endfor %}
      {%- endfor %}
      {%- else %}
      {%- for year, posts in section_item.pages | group_by(attribute="year") %}
      {%- if not hide_section_dates %}
      {%- if section_item.title %}
      <h3 class="tpad">{{ year }}</h3>
      {%- else %}
      <h2 class="tpad">{{ year }}</h2>
      {%- endif %}
      {%- endif %}
      {%- for post in posts %}
      <p><a href="{{ post.permalink | safe }}{%- if uglyurls %}index.html{%- endif %}">{{ post.title }}</a>{%- if not hide_section_dates %} - <time datetime="{{ post.date }}">{{ post.date | date(format="%F") }}</time>{%- endif %}</p>
      {%- endfor %}
      {%- endfor %}
      {%- endif %}
    </div>
{%- endblock content %}