Created
April 6, 2019 06:30
-
-
Save EvanLovely/da030164a3ef5f85e69fa0b771dbbe8a to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{% set data = { | |
home_away: node.field_home_away_or_neutral.value, | |
no_audio: node.field_live_audio_unavailable.value, | |
venue: node.field_venue.entity.name.value, | |
tv_name: node.field_tv_channel.entity.name.value, | |
tv_logo: node.field_tv_channel.entity.field_logo.entity.getFileUri(), | |
competition: node.field_competition.entity.name.value, | |
competition_logo: node.field_competition.entity.field_logo.entity.getFileUri() | image_style('small'), | |
date: content.field_fixture_date, | |
date_override: content.field_date_override, | |
url: url, | |
opponent_name: node.field_opponent.0.entity.name.value, | |
opponent_logo: node.field_opponent.0.entity.field_logo.entity.getFileUri() | image_style('feed_crest_thumbnail'), | |
arsenal_logo: node.field_arsenal_team.0.entity.field_logo.entity.getFileUri() | image_style('feed_crest_thumbnail'), | |
score_arsenal: node.field_score_arsenal.value, | |
score_opponent: node.field_score_opponent.value, | |
highlights: node.field_match_highlights.value, | |
comment: node.field_comment.value, | |
ticket_news_nid: content.ticket_news.id, | |
ticket_news_link: content.ticket_news.id != '0' ? path('entity.node.canonical', {'node': content.ticket_news.id }) : null, | |
arsenal_scorers: content.arsenal_scorers.value, | |
opponent_scorers: content.opponent_scorers.value, | |
} %} | |
{% if data.score_arsenal is not empty or data.score_opponent is not empty %} | |
{% set score = { | |
arsenal: data.score_arsenal ? data.score_arsenal : 0, | |
opponent: data.score_opponent ? data.score_opponent : 0, | |
} %} | |
{% endif %} | |
{# Uncomment to see data values #} | |
{#<ol>#} | |
{#{% for key, value in data %}#} | |
{#<li>{{ key }} - {{ value }}</li>#} | |
{#{% endfor %}#} | |
{#</ol>#} | |
{% set broadcaster = score or data.tv_name == 'Not Televised' ? null : { | |
img: data.tv_logo ? data.tv_logo | image_style('small') : null, | |
name: data.tv_name, | |
} %} | |
{% set eventInfo = { | |
"date": data.date_override|render is not empty ? data.date_override : data.date, | |
"venue": score ? null : data.venue, | |
"extra": data.competition, | |
broadcaster: broadcaster | |
} %} | |
{% set teamName %} | |
<span class="team-crest__name-value">{{ data.opponent_name }}</span> | |
{% endset %} | |
{% set teamCrest %} | |
{% include "@atoms/_team-crest.twig" with { | |
teamName: teamName, | |
crest: data.opponent_logo, | |
alt: true, | |
extras: true, | |
date: data.date_override|render is not empty ? data.date_override : data.date, | |
extra: data.competition, | |
} %} | |
{% endset %} | |
{% set location %} | |
{% include "@atoms/_location-icon.twig" with { | |
location: data.home_away, | |
} %} | |
{% endset %} | |
{% if score %} | |
{% set theScores %} | |
{% if data.home_away == 'away' %} | |
{% include '@atoms/scores.twig' with { | |
scores: [score.opponent, score.arsenal], | |
arsenalSecond: true, | |
} %} | |
{% else %} | |
{% include '@atoms/scores.twig' with { | |
scores: [score.arsenal, score.opponent], | |
arsenalSecond: false, | |
} %} | |
{% endif %} | |
{% endset %} | |
{% set maincard %} | |
<div class="u-row"> | |
{{ teamCrest }} | |
<div class="fixture-card__extra-items"> | |
<div class="fixture-card__extra-items__location show-medium show-big">{{ location }}</div> | |
<div class="fixture-card__extra-items__scores show-small show-medium">{{ theScores }}</div> | |
</div> | |
</div> | |
{% endset %} | |
{% set extraHeaderSlot %} | |
<div class="show-big">{{ theScores }}</div> | |
<div class="show-small">{{ location }}</div> | |
{% endset %} | |
{% else %} | |
{% set maincard %} | |
<div class="u-row"> | |
{{ teamCrest }} | |
{{ location }} | |
</div> | |
{% endset %} | |
{% endif %} | |
{% set ctas = [ | |
{ | |
text: "News & Video"|upper, | |
url: data.url, | |
} | |
] %} | |
{% if data.ticket_news_link and not score %} | |
{% set ctas = ctas|merge([ | |
{ | |
text: "Tickets"|upper, | |
primary: true, | |
url: data.ticket_news_link, | |
}, | |
{ | |
text: "Ticket Info"|upper, | |
primary: true, | |
url: data.ticket_news_link, | |
}, | |
]) %} | |
{% endif %} | |
{% set classes = [ | |
'node', | |
'node--type-' ~ node.bundle|clean_class, | |
node.isPromoted() ? 'node--promoted', | |
node.isSticky() ? 'node--sticky', | |
not node.isPublished() ? 'node--unpublished', | |
view_mode ? 'node--view-mode-' ~ view_mode|clean_class, | |
] %} | |
<article{{ attributes }}> | |
{{ title_suffix }} | |
{% include '@organisms/_fixture-card.twig' with { | |
element: 'div', | |
extraHeaderSlot: extraHeaderSlot, | |
hasScore: score is not empty, | |
event: eventInfo, | |
broadcaster: broadcaster, | |
ctas: ctas, | |
alt: true, | |
audio: data.no_audio == '0' and not score ? '#' : null, | |
content: maincard, | |
alert: score ? null : data.comment, | |
} only %} | |
</article> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment