{{~exec(function() { helpers.var.translations = { offers : data.translations.offers, leo : data.translations.leo } })}} {{#offer}} {{~setVar("template", "offers_custom_offer_list_item")}} {{~setVar("mainColumnClass", "large-9 medium-9")}} {{~setVar("url", data.url)}} {{~exec(function() { var url; if (data.media && data.media[0]) { url = data.media[0].mediaurl; } else { url = helpers.plugins.sv_site.siteConfig.custom[helpers.plugins.sv_site.site].defaultImageUrl } helpers.var.image = { resource : helpers.plugins.cloudinary.createResource({ imageUrl : url }) }; helpers.var.tbActive = helpers.plugins.sv_site.siteConfig.custom[helpers.plugins.sv_site.site].tripbuilder.active; if (data.custom.categorydates && data.custom.categorydates[0]) { helpers.var.redeemstart = data.custom.categorydates[0].redeemstart; } // Format the dates if (data.custom.categorydates && data.custom.categorydates[0]) { const redeemstart = data.custom.categorydates[0].redeemstart; const redeemend = data.custom.categorydates[0].redeemend; helpers.var.redeemstartFormatted = helpers.plugins.moment(redeemstart).format("LL"); helpers.var.redeemendFormatted = helpers.plugins.moment(redeemend).format("LL"); } })}}
{{!-- Pre-allocates height of image using padding-bottom to prevent height changes on load --}} {{~setVar("width", 342 )}} {{~setVar("height", 185)}} {{~setVar("paddingBottom", (helpers.var.height / helpers.var.width) * 100 + "%")}}
  • {{:~var.redeemstart}} {{~var.translations.offers.valid}}:  {{~var.redeemstartFormatted}} - {{~var.redeemendFormatted}} {{/}}
  • {{:listings}}
  • {{~var.translations.leo.locations}}:  {{#listings}} {{company}} {{!@last}}, {{/@last}} {{/listings}}
  • {{/listings}} {{:categories}}
  • {{~var.translations.leo.categories}}:  {{#categories}} {{categoryname}}{{!@last}}, {{/@last}} {{/categories}}
  • {{/categories}} {{:description}}
    Details   {{description}}
    {{/description}} {{:distance}}
  • {{distance}} {{~var.translations.leo.miles_from_you}}
  • {{/distance}}
{{/offer}}