<!-- Error rendering component -->
<!-- TwigException: Twig.expression.type.operator.binary cannot follow a Twig.expression.type.operator.binary at template:52 near ':...' -->
<!-- Error: TwigException: Twig.expression.type.operator.binary cannot follow a Twig.expression.type.operator.binary at template:52 near ':...'
at /opt/build/repo/node_modules/@frctl/twig/src/adapter.js:156:24
at new Promise (<anonymous>)
at TwigAdapter.render (/opt/build/repo/node_modules/@frctl/twig/src/adapter.js:134:16)
at ComponentSource._renderVariant (/opt/build/repo/node_modules/@frctl/fractal/src/api/components/source.js:212:30)
at _renderVariant.next (<anonymous>)
at onFulfilled (/opt/build/repo/node_modules/co/index.js:65:19) -->
{% from 'macros/slat.twig' import slat %}
{% extends '_layouts/default' %}
{% set caseStudiesIndex = craft.entries.section('caseStudiesIndex').one() %}
{% set services = entry.services.all() %}
{% set expertise = entry.expertise.all() %}
{% set sectors = entry.sectors.all() %}
{% set client = entry.client.one() %}
{% set image = entry.image.one() %}
{% block header %}
{% include '@breadcrumb' with {
breadcrumb: {
title: caseStudiesIndex.title,
link: caseStudiesIndex.url
}
} %}
{{
include(
'@page-header',
{
title: {
text: entry.subtitle ? : entry.title
},
content: {
standfirst: {
text: entry.summary|markdown
}
}
}
)
}}
{% endblock %}
{% block main %}
<div class="constrain grid grid--of-two-four pad-before-m">
<dl class="dl">
{% if client %}
<dt class="dt">
Client
</dt>
<dd class="dd">{{ client.title }}</dd>
{% endif %}
<dt class="dt">
Sector
</dt>
{% for item in sectors %}
<dd class="dd">{{ item.title }}</dd>
{% endfor %}
{% if entry.duration is not empty %}
<dt class="dt">
Duration
</dt>
<dd class="dd">{{ entry.duration }}</dd>
{% endif %}
</dl>
<dl class="dl">
<dt class="dt">
What we did
</dt>
{% for item in expertise %}
<dd class="dd">{{ item.title }}</dd>
{% endfor %}
</dl>
</div>
{% set content %}
<div class="flow--xl">
{% if image %}
{% include '@srcset' with {
imageList: [
{
src: image ? image.getUrl('splash300'),
size: '300w'
},
{
src: image ? image.getUrl('splash600'),
size: '600w'
},
{
src: image ? image.getUrl('splash1000'),
size: '1000w'
},
{
src: image ? image.getUrl('splash2000'),
size: '2000w'
}
],
alt: image.altText ? : image.title
} only %}
{% endif %}
<div class="grid grid--8/4">
<div class="body wysiwyg wysiwyg--with-lead flow">
{{ entry.challengeContent|markdown }}
</div>
</div>
</div>
{% endset %}
{{ slat(content) }}
{% if entry.voice|length %}
{% set quotes = [] %}
{% for quote in entry.voice.all() %}
{% if quote.type == 'client' %}
{% set image = quote.image.one() %}
{% set quotes =
quotes|merge(
[
{
quote: quote.quote,
citation: quote.citation,
qualifier: quote.citationQualifier,
image: image
? {
src: image.getUrl('author'),
alt: image.altText ? : quote.citation
}
}
]
)
%}
{% endif %}
{% if quote.type == 'clearleft' %}
{% set author = quote.creditedAuthor.one() %}
{% set image = author ? author.authorImage.one() %}
{% set quotes =
quotes|merge(
[
{
quote: quote.quote,
citation: quote.attributionName,
qualifier: author ? author.jobTitle,
image: image
? {
src: image.getUrl('author'),
alt: image.altText ? : quote.attributionName
}
}
]
)
%}
{% endif %}
{% endfor %}
{% set content %}
{% include '@testimonials' with {
quotes: quotes
} only %}
{% endset %}
{{ slat(content, false, false) }}
{% endif %}
{% if entry.results|length %}
{% set shells = [] %}
{% for result in entry.results.all() %}
{% set shells =
shells|merge(
[
{
title: result.resultHeading,
excerpt: result.resultBody
}
]
)
%}
{% endfor %}
{% set content %}
{% include '@nutshells' with {
eyebrow: 'The Results',
shells: shells,
width: 3,
columns: 'one',
border: false,
dense: true
} only %}
{% endset %}
{{ slat(content, 'light', '', true) }}
{% endif %}
{% if entry.contentBuilder|length %}
{% set content %}
<div class="flow">
<h2 class="eyebrow eyebrow--black eyebrow--accent">
The Full Story
</h2>
<div class="grid grid--8/4">
{% include '_cms-slats/post-builder' with {
postBuilder: entry.contentBuilder.all()
} %}
</div>
</div>
{% endset %}
{{ slat(content) }}
{% endif %}
<div class="constrain flow flow--s">
<div class="eyebrow eyebrow--strong eyebrow--accent">More work</div>
<div class="grid grid--of-two">
{% set prev =
craft.entries().section('caseStudies').before(entry.postDate).one()
%}
{% if prev %}
{% include '@signpost' with {
post: {
title: prev.subtitle,
client: prev.client[0].title,
link: prev.url
}
} %}
{% else %}
<div></div>
{% endif %}
{% set next =
craft.entries().section('caseStudies').after(entry.postDate).offset(
1
).orderBy(
'postDate ASC'
).one()
%}
{% if next %}
{% include '@signpost' with {
post: {
title: next.subtitle,
client: next.client[0].title,
link: next.url
},
rtl: true
} %}
{% endif %}
</div>
</div>
{% endblock %}
/* No context defined. */
No notes defined.