File tree Expand file tree Collapse file tree 3 files changed +39
-0
lines changed
Expand file tree Collapse file tree 3 files changed +39
-0
lines changed Original file line number Diff line number Diff line change @@ -22,6 +22,13 @@ export default (eleventyConfig) => {
2222 eleventyConfig . addNunjucksFilter ( "date" , function ( str ) {
2323 return new Date ( str ) ;
2424 } ) ;
25+ eleventyConfig . addNunjucksFilter ( "futureEvents" , ( events , limit ) => {
26+ const now = new Date ( ) ;
27+ return events
28+ . filter ( event => new Date ( event . data . dtstart ) >= now )
29+ . sort ( ( a , b ) => new Date ( a . data . dtstart ) - new Date ( b . data . dtstart ) )
30+ . slice ( 0 , limit ) ;
31+ } ) ;
2532
2633 return {
2734 dir : {
Original file line number Diff line number Diff line change 1+ {%- set eventLimit = eventsListLimit | default (3) %} {# デフォルト値は3 #}
2+ {%- set upcoming = collections .event | futureEvents (eventLimit ) %}
3+
4+ {%- if upcoming .length > 0 %}
5+ <div >
6+ {%- for event in upcoming %}
7+ <a href =" {{ event.url | htmlBaseUrl }}" >
8+ <article >
9+ <h2 >{{ event .data .title }} </h2 >
10+ <p >{{ event .data .summary }} </p >
11+ <p >
12+ <time datetime =" {{ event.data.dtstart }}" >{{ event .data .dtstart }} </time >
13+ 〜
14+ <time datetime =" {{ event.data.dtend }}" >{{ event .data .dtend }} </time >
15+ </p >
16+ <p >場所: {{ event .data .location }} </p >
17+ </article >
18+ </a >
19+ {%- endfor %}
20+ </div >
21+ {%- else %}
22+ <div >
23+ <p >現在予定されているイベントはありません。</p >
24+ </div >
25+ {%- endif %}
Original file line number Diff line number Diff line change @@ -27,6 +27,13 @@ <h1>活動</h1>
2727 <li >サブドメイン貸し出しサービス: <a href =" https://www.tsukuba.dev" >tsukuba.dev</a >の運営</li >
2828 </ul >
2929 </section >
30+ <section >
31+ <h1 >直近のイベント予定</h1 >
32+ {%- set eventsListLimit = 3 %}
33+ {% include " components/upcoming-events.njk" %}
34+ <hr >
35+ <p ><a href =" {{ " /events " | htmlBaseUrl }}" >全てのイベントを確認する</a >(<a href =" {{ " /feed.xml " | htmlBaseUrl }}" >RSS Feed</a > / <a href =" {{ " /events.ics " | htmlBaseUrl }}" >iCal</a >)</p >
36+ </section >
3037 <section >
3138 <h1 >UNTIL.に参加するには</h1 >
3239 <p >UNTIL.はDiscordを使って活動しています。UNTIL. Discordに参加するには4つの方法があります:</p >
You can’t perform that action at this time.
0 commit comments