templates/includes/vue/vue-product-config.html.twig line 1

Open in your IDE?
  1. {% set onlyIcon = onlyIcon is defined ? onlyIcon : true %}
  2. {% set buttonText = buttonText|default('shop.teaser.to product') %}
  3. {% if product is instanceof('App\\Model\\Shop\\Ticket\\ShopTicketCatalog') and product.isBookable %}
  4.     {% set config = {
  5.         title: product.name,
  6.         ticketId: '' ~ product.id,
  7.         firstView: getCalendarFirstView(product),
  8.         hasServiceView: not isServiceViewHidden(product, carbon().today()),
  9.         isLoggedIn: app.getUser() is instanceof('App\\Model\\DataObject\\Customer'),
  10.         hasLegalDisclaimerView: product.showLegalDisclaimerStep(),
  11.         legalDisclaimerOptions: [
  12.             {
  13.                 label: product.legalDisclaimerCheckboxText|raw,
  14.                 labelSubText: '',
  15.                 id: 'legal-disclaimer'
  16.             },
  17.         ],
  18.     } %}
  19.     <div {{ vue_component('SkiTicketConfig',
  20.         {
  21.             'title': config.title,
  22.             'ticketId': config.ticketId,
  23.             'firstView': config.firstView,
  24.             'hasServiceView': config.hasServiceView,
  25.             'hasLegalDisclaimerView': config.hasLegalDisclaimerView,
  26.             'legalDisclaimerOptions': config.legalDisclaimerOptions,
  27.             'isLoggedIn': config.isLoggedIn,
  28.             'buttonConfig': {
  29.             'text': buttonText|trans,
  30.             'onlyIcon': onlyIcon,
  31.             'class': buttonClass|default(''),
  32.             'trackingKey': trackingKeyCart|default,
  33.             'triggerTracking': triggerTracking | default(false),
  34.         },
  35.             'isAnnualPass': product.isAnnualCatalog
  36.         }) }}></div>
  37. {% elseif product is instanceof('App\\Model\\Shop\\Event\\EventProduct') %}
  38.     {% set config = {
  39.         title: product.name,
  40.         activityId: '' ~ product.id,
  41.         firstView: product.displayDates ?: 'calendar',
  42.         isTimeList: not product.isPersonsTimeList(),
  43.         isPersonsTimeList: product.isPersonsTimeList()
  44.     } %}
  45.     <div {{ vue_component('ActivityTicketConfig',
  46.         {
  47.             'title': config.title,
  48.             'activityId': config.activityId,
  49.             'firstView': config.firstView,
  50.             'isTimeList': config.isTimeList,
  51.             'isPersonsTimeList': config.isPersonsTimeList,
  52.             'buttonConfig': {
  53.             'text': buttonText|trans,
  54.             'onlyIcon': onlyIcon,
  55.             'class': buttonClass|default('')
  56.         }
  57.         }) }}></div>
  58. {% endif %}