templates/Shop/detail.html.twig line 140

Open in your IDE?
  1. {% extends 'product.html.twig' %}
  2. {% block content %}
  3. <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.3/css/all.min.css">
  4. {% if not document is defined or not document %}
  5.     {% set document = pimcore_document(1) %}
  6. {% endif %}
  7. {# {% set product = product.parent %} #}
  8. <div class="breadcrumb-block">
  9.   <div class="container">
  10.     <!-- breadcrumb of the page -->
  11.     <ul class="breadcrumb">
  12.       <li>
  13.         <a href="/{{ locale }}/" class="home">
  14.           {{ 'espirits.header.home'|trans }}
  15.         </a>
  16.       </li>
  17.       <li>
  18.         <a href="{{ pimcore_url({prefix: locale},'product-landing') }}">
  19.           {{ 'espirits.header.our-products'|trans }}
  20.         </a>
  21.       </li>
  22.       {% set rootCategory = '' %}
  23.       
  24.       {% if product.getCategories() %}
  25.         {% set category = product.getCategories()[0] %}
  26.         {% set parentcategory = category.getParent() %}
  27.         {% if parentcategory and parentcategory.getType() == "object" and parentcategory.getClassname() == "CategoryAlcoholType" %}
  28.           {% set parenturl = parentcategory.getDetailUrl({"rootCategory" : rootCategory, "document" : document}) %}
  29.           <li>
  30.             <a href="{{ parenturl }}">
  31.               {{ parentcategory.getName() }}
  32.             </a>
  33.           </li>
  34.         {% endif %}
  35.       {% endif %}
  36.       <li class="active">
  37.         <a href="{{ category ? category.getDetailUrl({"rootCategory" : rootCategory, "document" : document}) : "" }}">
  38.           {{ category ? category.getName() : "" }}
  39.         </a>
  40.       </li>
  41.     </ul>
  42.   </div>
  43. </div>
  44. <div class="container">
  45.     <div class="heading-holder">
  46.       <!-- main heading of the page -->
  47.       <h1>{{ product.getOSName() }}</h1>
  48.       <h2 class="sub-heading">{{ product.getContent() }}</h2>
  49.     </div>
  50.     <div class="detail-block">
  51.       <div class="row">
  52.         <div class="col-sm-3">
  53.           <div class="widget-block">            
  54.             {% set brand = product.getBrand() %}
  55.             {% if brand %}
  56.                   <div class="widget" style="margin-bottom: 10px;">
  57.                     <div class="heading">
  58.                       <h2>Image type</h2>
  59.                     </div>
  60.                     <ul class="link-list">                
  61.                       {% set brandimage = brand[0].getObject().getBrandMarkImage() %}                
  62.                       
  63.                       <!--<li><a href="#" class="pencil">Brand Details</a></li>-->
  64.                     </ul>
  65.                   </div>        
  66.                   <div class="widget">
  67.               <div class="logo-link-holder">
  68.               <a class="download-btn button" href="{{ '/' ~ locale ~ '/product/list?Brand=' ~ brand[0].getObject().getId() }}">{{ 'espirits.detail.viewall'|trans }} {{ brand[0].getObject().getBrandName() }} {{ 'espirits.detail.products'|trans }}</a>
  69.               </div>
  70.                     <div class="logo-holder">
  71.                       <div class="logo-wrap">
  72.                         <a href="{{ '/' ~ locale ~ '/product/list?Brand=' ~ brand[0].getObject().getId() }}">
  73.                           {% if product %}
  74.                             <img src="{{ product.DocumentImage.getThumbnail({ width: 221 }) }}">
  75.                           {% else %}
  76.                           <h2>{{ product.getName() }}</h2>
  77.                           {% endif %}
  78.                         </a>
  79.                       </div>
  80.                     </div>
  81.                     <div class="download-logo" style="margin-top: 10px;">
  82.                     <a class="download-btn button" href="{{ product.DocumentImage.getFullPath()|replace({'/var/www/html/web' : ''}) }}" download>Download Image</a>
  83.               </div>
  84.                   </div>
  85.             {% endif %}
  86.           </div>
  87.         </div>
  88.         <div class="col-sm-6">
  89.           <div class="product-info">
  90.             <div class="heading-holder">
  91.               <h2 class="sub-heading">Description</h2>
  92.             </div>
  93.             {{product.description|raw}} 
  94.           </div>
  95.         </div>
  96.         <div class="col-sm-3">
  97.           <div class="widget-block">            
  98.             {% set brand = product.getBrand() %}
  99.             {% if brand %}
  100.                   <div class="widget" style="margin-bottom: 10px;">
  101.                     <div class="heading">
  102.                       <h2>Image type</h2>
  103.                     </div>
  104.                     <ul class="link-list">                
  105.                       {% set brandimage = brand[0].getObject().getBrandMarkImage() %}                
  106.                       
  107.                       <!--<li><a href="#" class="pencil">Brand Details</a></li>-->
  108.                     </ul>
  109.                   </div>        
  110.                   <div class="widget">
  111.               <div class="logo-link-holder">
  112.               <a class="download-btn button" href="{{ '/' ~ locale ~ '/product/list?Brand=' ~ brand[0].getObject().getId() }}">{{ 'espirits.detail.viewall'|trans }} {{ brand[0].getObject().getBrandName() }} {{ 'espirits.detail.products'|trans }}</a>
  113.               </div>
  114.                     <div class="logo-holder">
  115.                       <div class="logo-wrap">
  116.                         <a href="{{ '/' ~ locale ~ '/product/list?Brand=' ~ brand[0].getObject().getId() }}">
  117.                           {% if brandimage %}
  118.                             <img src="{{ brandimage.getThumbnail({ width: 151 }) }}">
  119.                           {% else %}
  120.                           <h2>{{ brand[0].getObject().getBrandName() }}</h2>
  121.                           {% endif %}
  122.                         </a>
  123.                       </div>
  124.                     </div>
  125.               <div class="download-logo" style="margin-top: 10px;">
  126.               <a class="download-btn button" href="{{ brandimage.getFullPath()|replace({'/var/www/html/web' : ''}) }}" download>Download Logo</a>
  127.               </div>
  128.                   </div>
  129.             {% endif %}
  130.           </div>
  131.         </div>
  132.       </div>
  133.     </div>    
  134.     <div class="tab-holder">
  135.       <ul class="tabset">        
  136.         <li class="first"><a href="#tab1" ><span>Photos</span></a></li>        
  137.         {% if product.getVideoList() and product.getVideoList()|length > 0 %}
  138.           <li class="seventh"><a href="#tab2"><span>Video</span></a></li>
  139.         {% endif %}
  140.         {% if product.getDocumentList() and product.getDocumentList()|length > 0 %}
  141.           <li class="seventh"><a href="#tab3" class="active"><span>Documents</span></a></li>
  142.         {% endif %}
  143.       </ul>
  144.       <div class="tab-content">
  145.         <div class="accordion">          
  146.           {% if product.getImages() is not empty %}          
  147.           <div class="accordion-holder active">
  148.             <a href="#" class="accordion-opener">{{ 'espirits.detail.product-photos'|trans }}</a>
  149.             <div id="here" class="accordion-slide">
  150.               <div id="tab1" class="tab-data">
  151.                 <div class="content-wrap">
  152.                     {% for image in product.getImages() %}
  153.                     <div class="col-sm-4">
  154.                       <div class="product-post hover-js">
  155.                         <div class="img-holder">
  156.                           {% if image.getImage() %}
  157.                             {{ image.getImage().getThumbnail('alcoholtype').getHtml({ 'width': 300, 'height': 222 })|raw }}
  158.                           {% endif %}                          
  159.                         </div>
  160.                         <a class="download-btn button video-download-btn" data-basename="{{ basename(image.getImage().getFilename()) }}" data-brand="{{ brand[0].getObject().getBrandName() }}" download href="{{ image.getImage().getPath() ~ image.getImage().getFilename() }}">Download Image</a>
  161.                       </div>
  162.                     </div> 
  163.                     {% endfor %}
  164.                 </div>
  165.               </div>
  166.             </div>
  167.           </div>
  168.           {% endif %}
  169.           {% if product.getVideoList() and product.getVideoList()|length > 0 %}
  170.           <div class="accordion-holder">
  171.             <a href="#" class="accordion-opener">{{ 'espirits.detail.video'|trans }}</a>
  172.             <div class="accordion-slide">
  173.               <div id="tab2" class="tab-data">
  174.                 <div class="content-wrap">
  175.                     {% for video in product.getVideoList() %}
  176.                         {% set src = video.getPath() ~ video.getFilename() %}
  177.                         <div class="video_holder">
  178.                             
  179.                             <video controls>
  180.                                 <source src="{{ src }}" type="video/mp4">
  181.                             </video>
  182.                                           <a class="download-btn button video-download-btn" data-basename="{{ basename(video.getFilename()) }}" data-brand="{{ brand[0].getObject().getBrandName() }}" download href="{{ video.getPath() ~ video.getFilename() }}">Download Video</a>
  183.                         </div>
  184.                      {% endfor %}
  185.                 </div>
  186.               </div>
  187.             </div>
  188.           </div>
  189.           {% endif %}
  190.           {% if product.getDocumentList() and product.getDocumentList()|length > 0 %}
  191.           <div class="accordion-holder">
  192.             <a href="#" class="accordion-opener">{{ 'espirits.detail.video'|trans }}</a>
  193.             <div class="accordion-slide">
  194.               <div id="tab3" class="tab-data">
  195.                 <div class="content-wrap">                    
  196.                     <table class="table table-striped">
  197.                         <thead>
  198.                             <tr>
  199.                                 <th>Document Name</th>
  200.                                 <th>Document Size</th>
  201.                                 <th>Document Type</th>
  202.                                 <th>Download</th>
  203.                             </tr>
  204.                         </thead>
  205.                         <tbody>
  206.                             {% for document in product.getDocumentList() %}                           
  207.                             <tr>
  208.                                 <td>{{document.filename}}</td>
  209.                                 <td>{{format_bytes(document.getFileSize())}}</td>
  210.                                 <td><i class="{{ document_icon(document.mimeType) }}" style="font-size:24px;"></i></td> <!-- Example using Font Awesome icons -->
  211.                                 <td><a class="download-btn button video-download-btn" data-basename="{{ basename(document.getFilename()) }}" data-brand="{{ brand[0].getObject().getBrandName() }}" download href="{{ document.getPath() ~ document.getFilename() }}">Download</a></td>
  212.                             </tr> 
  213.                             {% endfor %}                           
  214.                         </tbody>
  215.                     </table>
  216.                 </div>
  217.               </div>
  218.             </div>
  219.           </div>
  220.           {% endif %}
  221.           {# {% if sizeVariants is not empty %}
  222.           <div class="accordion-holder active">
  223.             <a href="#" class="accordion-opener">{{ 'espirits.detail.product-photos'|trans }}</a>
  224.             <div id="here" class="accordion-slide">
  225.               <div id="tab10" class="tab-data">
  226.                 <div class="content-wrap">
  227.                   <div class="row">
  228.                     <div class="col-sm-6 col-md-5">
  229.                       <div class="wrap">
  230.                         <h3>{{ 'espirits.detail.bottle-sizes'|trans }}</h3>
  231.                         <div id="bottle-sizes">
  232.                           <ul class="type-list">
  233.                             
  234.                             {% set firstimage = null %}
  235.                             {% if sizeVariants is not empty %}
  236.                               {% for variant in sizeVariants %}
  237.                               
  238.                                 {% set countries = variant.getCountryAvailabilityList() %}
  239.                                 {% set continue = 0 %}
  240.                                 {% set break = false %}
  241.                                 {% for lcountry in countries %}
  242.                                   {% if lcountry.getObject().getId() == country.getId() and lcountry.geteSpiritsEnable() == 1 and not break %}
  243.                                     {% set continue = 1 %}
  244.                                     {% set break = true %}
  245.                                   {% endif %}
  246.                                 {% endfor %}
  247.                                {% if continue is not empty %}
  248.                                 {% if variant.getBottlePhoto() is not empty %}
  249.                                     {% if not firstimage %}
  250.                                         {% set firstimage = variant.getBottlePhoto() %}
  251.                                         <li id="{{ variant.getBottleSize()|replace({' ': ''}) }}" class="active">
  252.                                             <a href="#"><span>{{ variant.getBottleSize() }}</span></a>
  253.                                         </li>
  254.                                     {% else %}
  255.                                         <li id="{{ variant.getBottleSize()|replace({' ': ''}) }}">
  256.                                             <a href="#"><span>{{ variant.getBottleSize() }}</span></a>
  257.                                         </li>
  258.                                     {% endif %}
  259.                                 {% else %}
  260.                                     <li id="{{ variant.getBottleSize()|replace({' ': ''}) }}">
  261.                                         <a class="disabled"><span>{{ variant.getBottleSize() }}</span></a>
  262.                                     </li>
  263.                                 {% endif %}
  264.                             {% endif %}
  265.                               {% endfor %}
  266.                             {% endif %}
  267.                           </ul>
  268.                         </div>
  269.                       </div>
  270.                     </div>
  271.                     <div class="col-sm-6 col-md-7">
  272.                       {% if sizeVariants is not empty %}
  273.                         <h3>Bottle Details</h3>
  274.                         <div id="image-block">
  275.                           {% set i = 1 %}
  276.                           {% for variant in sizeVariants %} 
  277.                             {% set countries = variant.getCountryAvailabilityList() %}
  278.                             {% set continue = 0 %}
  279.                             {% set break = false %}
  280.                             {% for lcountry in countries %}
  281.                               {% if lcountry.getObject().getId() == country.getId() and lcountry.geteSpiritsEnable() == 1 and not break %}
  282.                                 {% set continue = 1 %}
  283.                                 {% set break = true %}
  284.                               {% endif %}
  285.                             {% endfor %}
  286.                             {% if continue is not empty %}
  287.                               <div id="{{ variant.getBottleSize()|replace({' ': ''}) }}" class="{{ (i == 1) ? 'active' : '' }}">
  288.                                
  289.                                 <div class="extra-info">
  290.                                   <dl>
  291.                                     <dt>GTIN</dt>
  292.                                     <dd>{{ variant.getGTIN()|default('N/A') }}</dd>
  293.                                   </dl>
  294.                                   {% if variant.getBottleMaterial() is not empty %}
  295.                                   <dl>
  296.                                     <dt>Material</dt>
  297.                                     <dd>{{ (variant.getBottleMaterial() is not empty) ? variant.getBottleMaterial() : 'N/A' }}</dd>
  298.                                     
  299.                                   </dl>
  300.                                   {% endif %}
  301.                                    
  302.                                   {% set htArray = variant.getBottleHeight()|split(' ') %}
  303.                                   {% set wdArray = variant.getBottleWidth()|split(' ') %}
  304.                                   {% set dpArray = variant.getBottleDepth()|split(' ') %}
  305.                                  
  306.                                   {% if htArray is not empty and wdArray is not empty and dpArray is not empty %}
  307.                                     {% if htArray[0] and wdArray[0] and dpArray[0] %}
  308.                                     <dl>
  309.                                       <dt>Dimension</dt>
  310.                                         <dd>{{ htArray[0] ~ ' x ' ~ wdArray[0] ~ ' x ' ~ dpArray[0] }} IN</dd>
  311.                                     </dl>
  312.                                     {% endif %}
  313.                                   {% endif %}
  314.                                   
  315.                                   {% if variant.getBottleWeight() is not empty %}
  316.                                   <dl>
  317.                                     <dt>Weight</dt>
  318.                                     <dd>{{ (variant.getBottleWeight() is not empty) ? variant.getBottleWeight() : 'N/A' }}</dd>
  319.                                   </dl>
  320.                                   {% endif %}
  321.                                 </div>
  322.                               </div>
  323.                             {% endif %}
  324.                             {% set i = i+1 %} 
  325.                           {% endfor %}
  326.                         </div>
  327.                       {% endif %}
  328.                     </div>
  329.                   </div>
  330.                 </div>
  331.               </div>
  332.             </div>
  333.           </div>
  334.           {% endif %} #}
  335.           
  336.           
  337.           
  338.         </div>
  339.       </div>
  340.     </div>
  341. </div>
  342. {# {% for variant in sizeVariants %}
  343.   {% set countries = variant.getCountryAvailabilityList() %}
  344.   {% set continue = 0 %}
  345.   {% set break = false %}
  346.   {% for lcountry in countries %}
  347.       {% if lcountry.getObject().getId() == country.getId() and lcountry.geteSpiritsEnable() == 1 and not break %}
  348.         {% set continue = 1 %}
  349.         {% set break = true %}
  350.       {% endif %}
  351.   {% endfor %}
  352.   {% if continue is not empty %}
  353.       <!-- Bottle images Modal -->
  354.       <div id="downloadModal_{{ variant.getBottleSize()|replace({' ': ''}) }}" class="downloadModal modal fade" role="dialog">
  355.         <div class="modal-dialog">
  356.           <!-- Modal content-->
  357.           <div class="modal-content">
  358.             <div class="modal-header">
  359.               <button type="button" class="close" data-dismiss="modal">&times;</button>
  360.               <h4 class="modal-title">Download Image Assets</h4>
  361.             </div>
  362.             <div class="modal-body">
  363.           <form id="download_{{ variant.getBottleSize()|replace({' ': ''}) }}" class="downloadForm" method="post" action="/{{ locale }}/download">
  364.           <h3>{{ product.getOSName() ~ '-' ~ variant.getBottleSize() }}</h3>
  365.           <label class="control-label">{{ 'espirits.detail.selectimages'|trans }}</label>
  366.           <select name="images[]" multiple="multiple" class="image-picker show-html image-download jcf-ignore" required>
  367.             <option data-img-src="{{ variant.getBottlePhoto().getThumbnail('eSpirits_Detail_Thumb') }}" value="{{ variant.getBottlePhoto().getId() }}">{{ variant.getBottlePhoto().getKey() }}</option>
  368.                 
  369.               {% set images = variant.getAdditionalImages() %}
  370.               {% for item in images %}
  371.                 {% if item['AdditionalPhoto'] is not empty %}
  372.                   {% set asset = pimcore_asset_by_path(item['AdditionalPhoto'].getData()) %}
  373.                   <option data-img-src="{{ asset.getThumbnail("eSpirits_Detail_Thumb") }}" value="{{ asset.getId() }}">{{ asset.getKey() }}</option>
  374.                 {% endif %}  
  375.               {% endfor %}
  376.           </select>
  377.             <div class="form-group">
  378.               <label class="control-label" for="photographyfilefileformat_{{ variant.getBottleSize()|replace({' ': ''}) }}">{{ 'checkout.photographyfileformat'|trans }}</label>
  379.               <div>
  380.                 <input checked type="radio" id="photographyfileformatPNG_{{ variant.getBottleSize()|replace({' ': ''}) }}" name="photographyfileformat" placeholder="PNG" value="PNG" />
  381.                 <label for="photographyfileformatPNG_{{ variant.getBottleSize()|replace({' ': ''}) }}" style="margin-right: 8px;"> PNG </label>
  382.               </div>
  383.               <div>
  384.                 <input type="radio" id="photographyfileformatJPG_{{ variant.getBottleSize()|replace({' ': ''}) }}" name="photographyfileformat" placeholder="JPG" value="JPG" />
  385.                 <label for="photographyfileformatJPG_{{ variant.getBottleSize()|replace({' ': ''}) }}" style="margin-right: 8px;"> JPG </label>
  386.               </div>
  387.             </div>
  388.             <div class="form-group">
  389.               <label class="control-label" for="datafilesize">{{ 'checkout.photographyfilesize'|trans }}</label>
  390.               <div>
  391.                 <select name="photographyfiledimension" data-jcf='{"wrapNative": false, "wrapNativeOnMobile": false}'>
  392.                     <option value="eSpirits_1">{{ 'espirits.detail.originallargest'|trans }}</option>
  393.                     <option value="eSpirits_2">750 x 1500 (px)</option>
  394.                     <option value="eSpirits_3">1000 x 1000 (px)</option>
  395.                     <option value="eSpirits_4">1500 x 1500 (px)</option>
  396.                     <option value="eSpirits_5">2000 x 2000 (px)</option>
  397.                 </select>
  398.               </div>
  399.             </div>    
  400.             </div>
  401.           <input type="hidden" name="order_type" value="direct">
  402.           <input type="hidden" name="product_id" value="{{ variant.getId() }}">
  403.             <div class="modal-footer">
  404.               <button type="button" class="btn btn-default" data-dismiss="modal">{{ 'espirits.detail.cancel'|trans }}</button>
  405.           <input type="submit" class="btn btn-default" value="{{ 'espirits.detail.downloadimages'|trans }}">
  406.           </form>
  407.             </div>
  408.           </div>
  409.         </div>
  410.       </div>
  411.   {% endif %}    
  412. {% endfor %} #}
  413. {# <div id="downloadModal_Lifestyle" class="downloadModal modal fade" role="dialog">
  414.   <div class="modal-dialog">
  415.     
  416.     <div class="modal-content">
  417.       <div class="modal-header">
  418.         <button type="button" class="close" data-dismiss="modal">{{ '&times;'|raw }}</button>
  419.         <h4 class="modal-title">Download Lifestyle Assets</h4>
  420.       </div>
  421.       <div class="modal-body">
  422.         <form id="download_Lifestyle" class="downloadForm" method="post" action="/{{ locale }}/download">
  423.           <h3>{{ product.getOSName() }}</h3>
  424.           <label class="control-label">{{ 'espirits.detail.selectimages'|trans }}</label>
  425.           <select name="images[]" multiple="multiple" class="image-picker show-html image-download jcf-ignore" required>
  426.             {% if product.getLifestylePhotoList() is not empty %}
  427.               {% set x =0 %}
  428.               {% for item in product.getLifestylePhotoList().getItems() %}
  429.                 {% if item.getPhotoLifestyle() is not empty %}
  430.                   <option data-img-src="{{ item.getPhotoLifestyle().getThumbnail('eSpirits_Detail_Thumb') }}" value="{{ item.getPhotoLifestyle().getId() }}">{{ item.getPhotoLifestyle().getKey() }}</option>
  431.                 {% endif %}
  432.                 {% set x = x+1 %}
  433.               {% endfor %}
  434.             {% endif %}
  435.           </select>
  436.           <div class="form-group">
  437.             <label class="control-label" for="datafileformat_lifestyle">{{ 'checkout.photographyfileformat'|trans }}</label>
  438.             <div>
  439.               <input checked type="radio" id="photographyfileformatPNG_Lifestyle" name="photographyfileformat" placeholder="PNG" value="PNG" />
  440.               <label for="photographyfileformatPNG_Lifestyle" style="margin-right: 8px;"> PNG </label>
  441.             </div>
  442.             <div>
  443.               <input type="radio" id="photographyfileformatJPG_Lifestyle" name="photographyfileformat" placeholder="JPG" value="JPG" />
  444.               <label for="photographyfileformatJPG_Lifestyle" style="margin-right: 8px;"> JPG </label>
  445.             </div>
  446.           </div>
  447.           <div class="form-group">
  448.             <label class="control-label" for="datafilesize">{{ 'checkout.photographyfilesize'|trans }}</label>
  449.             <div>
  450.               <select name="photographyfiledimension" data-jcf='{"wrapNative": false, "wrapNativeOnMobile": false}'>
  451.                   <option value="eSpirits_1">{{ 'espirits.detail.originallargest'|trans }}</option>
  452.                   <option value="eSpirits_2">750 x 1500 (px)</option>
  453.                   <option value="eSpirits_3">1000 x 1000 (px)</option>
  454.                   <option value="eSpirits_4">1500 x 1500 (px)</option>
  455.                   <option value="eSpirits_5">2000 x 2000 (px)</option>
  456.               </select>
  457.             </div>
  458.           </div>    
  459.           </div>
  460.           <input type="hidden" name="order_type" value="direct">
  461.           <input type="hidden" name="product_id" value="{{product.id}}">
  462.           <div class="modal-footer">
  463.             <button type="button" class="btn btn-default" data-dismiss="modal">{{ 'espirits.detail.cancel'|trans }}</button>
  464.           <input type="submit" class="btn btn-default" value="{{ 'espirits.detail.downloadimages'|trans }}">
  465.         </form>
  466.       </div>
  467.     </div>
  468.   </div>
  469. </div>
  470. <div id="downloadModal_Infographics" class="downloadModal modal fade" role="dialog">
  471.   <div class="modal-dialog">    
  472.     <div class="modal-content">
  473.       <div class="modal-header">
  474.         <button type="button" class="close" data-dismiss="modal">{{ '&times;'|raw }}</button>
  475.         <h4 class="modal-title">Download Infographics</h4>
  476.       </div>
  477.       <div class="modal-body">
  478.         <form id="download_Infographics" class="downloadForm" method="post" action="/{{ locale }}/download">
  479.           <h3>{{ product.getOSName() }}</h3>
  480.           <label class="control-label">{{ 'espirits.detail.selectimages'|trans }}</label>
  481.           <select name="images[]" multiple="multiple" class="image-picker show-html image-download jcf-ignore" required>
  482.             {% if product.getInfographicsPhotoList() is not empty %}
  483.               {% set x =0 %}
  484.               {% for item in product.getInfographicsPhotoList().getItems() %}
  485.                 {% if item.getPhotoLifestyle() is not empty %}
  486.                   <option data-img-src="{{ item.getPhotoLifestyle().getThumbnail('eSpirits_Detail_Thumb') }}" value="{{ item.getPhotoLifestyle().getId() }}">{{ item.getPhotoLifestyle().getKey() }}</option>
  487.                 {% endif %}
  488.                 {% set x = x+1 %}
  489.               {% endfor %}
  490.             {% endif %}
  491.           </select>
  492.           <div class="form-group">
  493.             <label class="control-label" for="datafileformat_infographics">{{ 'checkout.photographyfileformat'|trans }}</label>
  494.             <div>
  495.               <input checked type="radio" id="photographyfileformatPNG_Infographics" name="photographyfileformat" placeholder="PNG" value="PNG" />
  496.               <label for="photographyfileformatPNG_Infographics" style="margin-right: 8px;"> PNG </label>
  497.             </div>
  498.             <div>
  499.               <input type="radio" id="photographyfileformatJPG_Infographics" name="photographyfileformat" placeholder="JPG" value="JPG" />
  500.               <label for="photographyfileformatJPG_Infographics" style="margin-right: 8px;"> JPG </label>
  501.             </div>
  502.           </div>
  503.           <div class="form-group">
  504.             <label class="control-label" for="datafilesize">{{ 'checkout.photographyfilesize'|trans }}</label>
  505.             <div>
  506.               <select name="photographyfiledimension" data-jcf='{"wrapNative": false, "wrapNativeOnMobile": false}'>
  507.                   <option value="eSpirits_1">{{ 'espirits.detail.originallargest'|trans }}</option>
  508.                   <option value="eSpirits_2">750 x 1500 (px)</option>
  509.                   <option value="eSpirits_3">1000 x 1000 (px)</option>
  510.                   <option value="eSpirits_4">1500 x 1500 (px)</option>
  511.                   <option value="eSpirits_5">2000 x 2000 (px)</option>
  512.               </select>
  513.             </div>
  514.           </div>    
  515.           </div>
  516.           <input type="hidden" name="order_type" value="direct">
  517.           <input type="hidden" name="product_id" value="{{product.id}}">
  518.           <div class="modal-footer">
  519.             <button type="button" class="btn btn-default" data-dismiss="modal">{{ 'espirits.detail.cancel'|trans }}</button>
  520.           <input type="submit" class="btn btn-default" value="{{ 'espirits.detail.downloadimages'|trans }}">
  521.         </form>
  522.       </div>
  523.     </div>
  524.   </div>
  525. </div>
  526. <div id="downloadModal_Recipes" class="downloadModal modal fade" role="dialog">
  527.   <div class="modal-dialog">
  528.     
  529.     <div class="modal-content">
  530.       <div class="modal-header">
  531.         <button type="button" class="close" data-dismiss="modal">{{ '&times;'|raw }}</button>
  532.         <h4 class="modal-title">Download Recipes</h4>
  533.       </div>
  534.       <div class="modal-body">
  535.         <form id="download_Recipes" class="downloadForm" method="post" action="/{{ locale }}/download">
  536.           <h3>{{ product.getOSName() }}</h3>
  537.           <label class="control-label">{{ 'espirits.detail.selectimages'|trans }}</label>
  538.           <select name="images[]" multiple="multiple" class="image-picker show-html image-download jcf-ignore" required>
  539.             {% if recipes %}
  540.               {% set x = 0 %}
  541.               
  542.               {% for recipe in recipes %}
  543.                 {% if recipe.getObject().getRecipePhoto() is not empty %}
  544.                 
  545.                   <option data-img-src="{{ recipe.getObject().getRecipePhoto().getThumbnail('eSpirits_Detail_Thumb') }}" value="{{ recipe.getObject().getId() }}">{{ recipe.getObject().getRecipeName() }}</option>
  546.                 {% endif %}
  547.                 {% set x = x+1 %}
  548.               {% endfor %}
  549.             {% endif %}
  550.           </select>
  551.           <div class="form-group">
  552.             <label class="control-label" for="datafileformat_Recipes">{{ 'checkout.photographyfileformat'|trans }}</label>
  553.             <div>
  554.               <input checked type="radio" id="photographyfileformatPNG_Recipes" name="photographyfileformat" placeholder="PNG" value="PNG" />
  555.               <label for="photographyfileformatPNG_Recipes" style="margin-right: 8px;"> PNG </label>
  556.             </div>
  557.             <div>
  558.               <input type="radio" id="photographyfileformatJPG_Recipes" name="photographyfileformat" placeholder="JPG" value="JPG" />
  559.               <label for="photographyfileformatJPG_Recipes" style="margin-right: 8px;"> JPG </label>
  560.             </div>
  561.           </div>
  562.           <div class="form-group">
  563.             <label class="control-label" for="datafilesize">{{ 'checkout.photographyfilesize'|trans }}</label>
  564.             <div>
  565.               <select name="photographyfiledimension" data-jcf='{"wrapNative": false, "wrapNativeOnMobile": false}'>
  566.                   <option value="eSpirits_1">{{ 'espirits.detail.originallargest'|trans }}</option>
  567.                   <option value="eSpirits_2">750 x 1500 (px)</option>
  568.                   <option value="eSpirits_3">1000 x 1000 (px)</option>
  569.                   <option value="eSpirits_4">1500 x 1500 (px)</option>
  570.                   <option value="eSpirits_5">2000 x 2000 (px)</option>
  571.               </select>
  572.             </div>
  573.           </div>    
  574.           </div>
  575.           <input type="hidden" name="order_type" value="recipes">
  576.           <input type="hidden" name="product_id" value="{{ product.getId() }}">
  577.           <div class="modal-footer">
  578.             <button type="button" class="btn btn-default" data-dismiss="modal">{{ 'espirits.detail.cancel'|trans }}</button>
  579.           <input type="submit" class="btn btn-default" value="{{ 'espirits.detail.downloadimages'|trans }}">
  580.         </form>
  581.       </div>
  582.     </div>
  583.   </div>
  584. </div>
  585. <div id="downloadModal_digitalMarketing" class="downloadModal modal fade" role="dialog">
  586.   <div class="modal-dialog">    
  587.     <div class="modal-content">
  588.       <div class="modal-header">
  589.         <button type="button" class="close" data-dismiss="modal">{{ '&times;'|raw }}</button>
  590.         <h4 class="modal-title">Download Programming Assets Assets</h4>
  591.       </div>
  592.       <div class="modal-body">
  593.       <form id="download_digitalMarketing" class="downloadForm" method="post" action="/{{ locale }}/download">
  594.         <h3>{{ product.getName() }}</h3>
  595.         <label class="control-label">Select Images</label>
  596.         <select name="images[]" multiple="multiple" class="image-picker show-html image-download jcf-ignore" required>
  597.         {% for x in 1..5 %}    
  598.       {% if attribute(product, 'getAssets'~x) is not empty %}
  599.           {% for item in attribute(product, 'getAssets'~x) %}
  600.               {% if attribute(item, 'Asset'~x) %} 
  601.                   {% set asset = attribute(item, 'Asset'~x) %}
  602.                   {% if asset %}
  603.                       {% set asset = asset.getData() %}
  604.                       <option data-img-src="{{ asset.getThumbnail('eSpirits_Detail_Thumb') }}" value="{{ asset.getId() }}">{{ asset.getFilename() }}</option>
  605.                   {% endif %}
  606.               {% endif %}
  607.           {% endfor %}
  608.       {% endif %}
  609.     {% endfor %}          
  610.         </select>
  611.             <div class="form-group">
  612.                 <label class="control-label" for="photographyfilefileformat_digitalMarketing">{{ 'checkout.photographyfileformat'|trans }}</label>
  613.                 <div>
  614.                     <input checked type="radio" id="photographyfileformatOriginal_digitalMarketing" name="photographyfileformat" placeholder="ORIGINAL" value="ORIGINAL" />
  615.                     <label for="photographyfileformatOriginal_digitalMarketing" style="margin-right: 8px;"> Original </label>
  616.                 </div>
  617.                 <div>
  618.                     <input type="radio" id="photographyfileformatPNG_digitalMarketing" name="photographyfileformat" placeholder="PNG" value="PNG" />
  619.                     <label for="photographyfileformatPNG_digitalMarketing" style="margin-right: 8px;"> PNG </label>
  620.                 </div>
  621.                 <div>
  622.                     <input type="radio" id="photographyfileformatJPG_digitalMarketing" name="photographyfileformat" placeholder="JPG" value="JPG" />
  623.                     <label for="photographyfileformatJPG_digitalMarketing" style="margin-right: 8px;"> JPG </label>
  624.                 </div>
  625.             </div>
  626.             <div class="form-group">
  627.                 <label class="control-label" for="datafilesize">{{ 'checkout.photographyfilesize'|trans }}</label>
  628.                 <div>
  629.                     <select name="photographyfiledimension" data-jcf='{"wrapNative": false, "wrapNativeOnMobile": false}'>
  630.                             <option value="eSpirits_1">Original - Largest Image Size</option>
  631.                             <option value="eSpirits_2">750 x 1500 (px)</option>
  632.                             <option value="eSpirits_3">1000 x 1000 (px)</option>
  633.                             <option value="eSpirits_4">1500 x 1500 (px)</option>
  634.                             <option value="eSpirits_5">2000 x 2000 (px)</option>
  635.                     </select>
  636.                 </div>
  637.             </div>    
  638.       </div>
  639.       <input type="hidden" name="order_type" value="direct">
  640.       <input type="hidden" name="product_id" value="{{ product.getId() }}">
  641.       <div class="modal-footer">
  642.         <button type="button" class="btn btn-default" data-dismiss="modal">Cancel</button>
  643.         <input type="submit" class="btn btn-default" value="Download Images">
  644.         </form>
  645.       </div>
  646.     </div>
  647.   </div>
  648. </div>
  649. <div id="downloadLoading" class="downloadLoading modal fade" role="dialog">
  650.   <div class="modal-dialog">
  651.     
  652.     <div class="modal-content">
  653.       <div class="modal-header">
  654.         <h4 class="modal-title">{{ 'espirits.detail.generatingdownload'|trans }}</h4>
  655.       </div>
  656.       <div class="modal-body">
  657.         <div class="loading"></div>
  658.       </div>
  659.       <div class="modal-footer">
  660.         <button type="button" class="btn btn-default" data-dismiss="modal">{{ 'espirits.detail.cancel'|trans }}</button>
  661.       </div>
  662.     </div>
  663.   </div>
  664. </div> #}
  665. <iframe id="my_iframe" style="display:none;"></iframe>
  666. {% endblock %}