Back to Frontend

AudioFlagshipCard.Scala

common/app/views/fragments/items/facia_cards/audioFlagshipCard.scala.html

latest2.5 KB
Original Source

@import views.support.Orientation @import layout.ContentCard @(item: layout.ContentCard, containerIndex: Int = 0, index: Int = 0, isFirstContainer: Boolean = false)(implicit request: RequestHeader) @import layout.{FaciaWidths} @import model.{InlineImage} @import views.html.fragments.items.elements.facia_cards._ @import views.html.fragments.items.facia_cards.meta @import views.html.fragments.inlineSvg @import views.support.{CutOut, GetClasses, RemoveOuterParaHtml, RenderClasses} @import model.pressed.ItemKicker @import com.gu.facia.api.utils.TagKicker @import Function.const @getTagKicker() = @{ for { properties <- item.properties content <- properties.maybeContent tag <- content.tags.tags.find(tag => tag.properties.tagType == "Keyword") } yield ItemKicker.makeTagKicker(TagKicker(name = tag.properties.webTitle, url=tag.properties.webUrl, id=tag.properties.id)) }

data-discussion-id="@id" } data-discussion-closed="@item.discussionSettings.isClosedForComments" data-discussion-url="@item.header.url.get(request)#comments" } data-link-name="@item.dataLinkName(index)" data-test-id="facia-card" @item.id.map { id => data-id="@id" } @item.snapStuff.map(_.dataAttributes) @item.shortUrl.map { shortUrl => data-loyalty-short-url="@shortUrl" }> @if(!item.hasInlineSnapHtml) { @container(item) } @mediaMeta(item: layout.ContentCard) = { @if(item.contentType.name.toLowerCase == "audio") { @inlineSvg("volume-high", "icon") Flagship Audio } } @standfirst(item: layout.ContentCard) = { @item.trailText.filter(const(item.showStandfirst)).map { text => @Html(text) } } @container(item: layout.ContentCard) = { @item.displayElement.filter(const(item.showDisplayElement)) match { case Some(InlineImage(images)) => { @itemImage( images, inlineImage = containerIndex == 0, widthsByBreakpoint = Some(item.squareImageWidthsByBreakpoint) ) } case _ => {} }

@title(item.header.copy(kicker = getTagKicker()), index, containerIndex, snapType = item.snapStuff.map(_.snapType), isAction = item.isAction) @item.bylineText.map { byline => @byline } @if(item.isMediaLink) { @standfirst(item) } else { @standfirst(item) @meta(item) @if(item.cardTypes.showCutOut) { @item.cutOut.map { cutout => @image( classes = Seq("fc-item__avatar__media", CutOut.cssClass(cutout.orientation)), widths = FaciaWidths.cutOutFromItemClasses(item.cardTypes), maybePath = Some(cutout.imageUrl) ) } } } @if(item.isMediaLink) { @mediaMeta(item) } @RemoveOuterParaHtml(item.header.headline) }