{% set c = module.content %} {% set s = module.style %} {% set spacing = module.spacing %} {% set a = module.advanced %} {# Build CSS classes #} {% set module_classes = "logo-cloud" %} {% set module_classes = module_classes ~ " logo-cloud--" ~ c.layout_type %} {% set module_classes = module_classes ~ " logo-cloud--align-" ~ s.layout.alignment %} {% if s.logo_style.grayscale %} {% set module_classes = module_classes ~ " logo-cloud--grayscale" %} {% endif %} {% if s.logo_style.color_on_hover and s.logo_style.grayscale %} {% set module_classes = module_classes ~ " logo-cloud--color-hover" %} {% endif %} {% if c.layout_type == "carousel" and s.carousel.pause_on_hover %} {% set module_classes = module_classes ~ " logo-cloud--pause-hover" %} {% endif %} {% if a.custom_class %} {% set module_classes = module_classes ~ " " ~ a.custom_class %} {% endif %} {# Calculate carousel animation duration based on number of logos and speed #} {% set logo_count = c.logos|length %} {% set logo_width = 160 %} {% set total_width = logo_count * (logo_width + 48) %} {% set animation_duration = total_width / s.carousel.speed %}
{% if c.heading %}

{{ c.heading|escape }}

{% endif %} {% if c.layout_type == "carousel" %} {# Carousel layout with infinite scroll #} {% else %} {# Row or Grid layout #}
{% for logo in c.logos %} {% set logo_alt = logo.alt_text|default(logo.image.alt, true)|default("Partner logo", true) %} {% if logo.link.url.href %} {% else %} {% endif %} {% if logo.image.src %} {% else %} {{ logo_alt }} {% endif %} {% if logo.link.url.href %} {% else %} {% endif %} {% endfor %}
{% endif %}
{% require_css %} {% end_require_css %}