<?php
/**
 * Mageplaza
 *
 * NOTICE OF LICENSE
 *
 * This source file is subject to the Mageplaza.com license that is
 * available through the world-wide-web at this URL:
 * https://www.mageplaza.com/LICENSE.txt
 *
 * DISCLAIMER
 *
 * Do not edit or add to this file if you wish to upgrade this extension to newer
 * version in the future.
 *
 * @category    Mageplaza
 * @package     Mageplaza_Blog
 * @copyright   Copyright (c) Mageplaza (https://www.mageplaza.com/)
 * @license     https://www.mageplaza.com/LICENSE.txt
 */
use Magento\Framework\App\Action\Action;

?>
<?php
// phpcs:disable Magento2.Templates.ThisInTemplate.FoundThis

/**
 * Product list template
 *
 * @var $block \Mageplaza\Blog\Block\Post\RelatedProduct
 */
?>
<?php
$_productCollection = $block->getLoadedProductCollection();
$_helper = $block->getHelper();
?>
<?php if (!$_productCollection->count()) :?>
    <div class="message info empty"><div><?= $block->escapeHtml(__('We can\'t find products matching the selection.')) ?></div></div>
<?php else :?>
    <?= $block->getToolbarHtml() ?>
    <?= $block->getAdditionalHtml() ?>
    <?php
    if ($block->getMode() == 'grid') {
        $viewMode = 'grid';
        $imageDisplayArea = 'category_page_grid';
        $showDescription = false;
        $templateType = \Magento\Catalog\Block\Product\ReviewRendererInterface::SHORT_VIEW;
    } else {
        $viewMode = 'list';
        $imageDisplayArea = 'category_page_list';
        $showDescription = true;
        $templateType = \Magento\Catalog\Block\Product\ReviewRendererInterface::FULL_VIEW;
    }
    /**
     * Position for actions regarding image size changing in vde if needed
     */
    $pos = $block->getPositioned();
    ?>
    <div class="products wrapper <?= /* @noEscape */ $viewMode ?> products-<?= /* @noEscape */ $viewMode ?>">
        <?php if ($block->relatedMode() !== '1') :?>
            <ol class="products list items product-items">
                <?php /** @var $_product \Magento\Catalog\Model\Product */ ?>
                <?php foreach ($_productCollection as $_product) :?>
                <li class="item product product-item">
                    <div class="product-item-info" data-container="product-<?= /* @noEscape */ $viewMode ?>">
                        <?php
                        $productImage = $block->getImage($_product, $imageDisplayArea);
                        if ($pos != null) {
                            $position = ' style="left:' . $productImage->getWidth() . 'px;'
                                . 'top:' . $productImage->getHeight() . 'px;"';
                        }
                        ?>
                        <?php // Product Image ?>
                        <a href="<?= $block->escapeUrl($_product->getProductUrl()) ?>"
                           class="product photo product-item-photo"
                           tabindex="-1">
                            <?= $productImage->toHtml() ?>
                        </a>
                        <div class="product details product-item-details">
                            <?php
                                $_productNameStripped = $block->stripTags($_product->getName(), null, true);
                            ?>
                            <strong class="product name product-item-name">
                                <a class="product-item-link"
                                   href="<?= $block->escapeUrl($_product->getProductUrl()) ?>">
                                    <?= /* @noEscape */ $_helper->productAttribute($_product, $_product->getName(), 'name') ?>
                                </a>
                            </strong>
                            <?= $block->getReviewsSummaryHtml($_product, $templateType) ?>
                            <?= /* @noEscape */ $block->getProductPrice($_product) ?>
                            <?= $block->getProductDetailsHtml($_product) ?>

                            <div class="product-item-inner">
                                <div class="product actions product-item-actions"<?= strpos($pos, $viewMode . '-actions') ? $block->escapeHtmlAttr($position) : '' ?>>
                                    <div class="actions-primary"<?= strpos($pos, $viewMode . '-primary') ? $block->escapeHtmlAttr($position) : '' ?>>
                                        <?php if ($_product->isSaleable()) :?>
                                            <?php $postParams = $block->getAddToCartPostParams($_product); ?>
                                            <form data-role="tocart-form"
                                                  data-product-sku="<?= $block->escapeHtml($_product->getSku()) ?>"
                                                  action="<?= $block->escapeUrl($postParams['action']) ?>"
                                                  method="post">
                                                <input type="hidden"
                                                       name="product"
                                                       value="<?= /* @noEscape */ $postParams['data']['product'] ?>">
                                                <input type="hidden" name="<?= /* @noEscape */ Action::PARAM_NAME_URL_ENCODED ?>"
                                                       value="<?= /* @noEscape */ $postParams['data'][Action::PARAM_NAME_URL_ENCODED] ?>">
                                                <?= $block->getBlockHtml('formkey') ?>
                                                <button type="submit"
                                                        title="<?= $block->escapeHtmlAttr(__('Add to Cart')) ?>"
                                                        class="action tocart primary">
                                                    <span><?= $block->escapeHtml(__('Add to Cart')) ?></span>
                                                </button>
                                            </form>
                                        <?php else :?>
                                            <?php if ($_product->isAvailable()) :?>
                                                <div class="stock available"><span><?= $block->escapeHtml(__('In stock')) ?></span></div>
                                            <?php else :?>
                                                <div class="stock unavailable"><span><?= $block->escapeHtml(__('Out of stock')) ?></span></div>
                                            <?php endif; ?>
                                        <?php endif; ?>
                                    </div>
                                    <div data-role="add-to-links" class="actions-secondary"<?= strpos($pos, $viewMode . '-secondary') ? $block->escapeHtmlAttr($position) : '' ?>>
                                        <?php if ($addToBlock = $block->getChildBlock('addto')) :?>
                                            <?= $addToBlock->setProduct($_product)->getChildHtml() ?>
                                        <?php endif; ?>
                                    </div>
                                </div>
                                <?php if ($showDescription) :?>
                                    <div class="product description product-item-description">
                                        <?= /* @noEscape */ $_helper->productAttribute($_product, $_product->getShortDescription(), 'short_description') ?>
                                        <a href="<?= $block->escapeUrl($_product->getProductUrl()) ?>"
                                           title="<?= /* @noEscape */ $_productNameStripped ?>"
                                           class="action more"><?= $block->escapeHtml(__('Learn More')) ?></a>
                                    </div>
                                <?php endif; ?>
                            </div>
                        </div>
                    </div>
                </li>
                <?php endforeach; ?>
            </ol>
        <?php else :?>
            <div class="owl-carousel owl-theme">
                <?php /** @var $_product \Magento\Catalog\Model\Product */ ?>
                <?php foreach ($_productCollection as $_product) :?>
                    <div class="item product product-item mp-blog-slider-item">
                        <div class="product-item-info" data-container="product-<?= /* @noEscape */ $viewMode ?>">
                            <?php
                            $productImage = $block->getImage($_product, $imageDisplayArea);
                            if ($pos != null) {
                                $position = ' style="left:' . $productImage->getWidth() . 'px;'
                                    . 'top:' . $productImage->getHeight() . 'px;"';
                            }
                            ?>
                            <?php // Product Image ?>
                            <a href="<?= $block->escapeUrl($_product->getProductUrl()) ?>"
                               class="product photo product-item-photo"
                               tabindex="-1">
                                <?= $productImage->toHtml() ?>
                            </a>
                            <div class="product details product-item-details">
                                <?php
                                $_productNameStripped = $block->stripTags($_product->getName(), null, true);
                                ?>
                                <strong class="product name product-item-name">
                                    <a class="product-item-link"
                                       href="<?= $block->escapeUrl($_product->getProductUrl()) ?>">
                                        <?= /* @noEscape */ $_helper->productAttribute($_product, $_product->getName(), 'name') ?>
                                    </a>
                                </strong>
                                <?= $block->getReviewsSummaryHtml($_product, $templateType) ?>
                                <?= /* @noEscape */ $block->getProductPrice($_product) ?>
                                <?= $block->getProductDetailsHtml($_product) ?>

                                <div class="product-item-inner">
                                    <div class="product actions product-item-actions"<?= strpos($pos, $viewMode . '-actions') ? $block->escapeHtmlAttr($position) : '' ?>>
                                        <div class="actions-primary"<?= strpos($pos, $viewMode . '-primary') ? $block->escapeHtmlAttr($position) : '' ?>>
                                            <?php if ($_product->isSaleable()) :?>
                                                <?php $postParams = $block->getAddToCartPostParams($_product); ?>
                                                <form data-role="tocart-form"
                                                      data-product-sku="<?= $block->escapeHtml($_product->getSku()) ?>"
                                                      action="<?= $block->escapeUrl($postParams['action']) ?>"
                                                      method="post">
                                                    <input type="hidden"
                                                           name="product"
                                                           value="<?= /* @noEscape */ $postParams['data']['product'] ?>">
                                                    <input type="hidden" name="<?= /* @noEscape */ Action::PARAM_NAME_URL_ENCODED ?>"
                                                           value="<?= /* @noEscape */ $postParams['data'][Action::PARAM_NAME_URL_ENCODED] ?>">
                                                    <?= $block->getBlockHtml('formkey') ?>
                                                    <button type="submit"
                                                            title="<?= $block->escapeHtmlAttr(__('Add to Cart')) ?>"
                                                            class="action tocart primary">
                                                        <span><?= $block->escapeHtml(__('Add to Cart')) ?></span>
                                                    </button>
                                                </form>
                                            <?php else :?>
                                                <?php if ($_product->isAvailable()) :?>
                                                    <div class="stock available"><span><?= $block->escapeHtml(__('In stock')) ?></span></div>
                                                <?php else :?>
                                                    <div class="stock unavailable"><span><?= $block->escapeHtml(__('Out of stock')) ?></span></div>
                                                <?php endif; ?>
                                            <?php endif; ?>
                                        </div>
                                        <div data-role="add-to-links" class="actions-secondary"<?= strpos($pos, $viewMode . '-secondary') ? $block->escapeHtmlAttr($position) : '' ?>>
                                            <?php if ($addToBlock = $block->getChildBlock('addto')) :?>
                                                <?= $addToBlock->setProduct($_product)->getChildHtml() ?>
                                            <?php endif; ?>
                                        </div>
                                    </div>
                                    <?php if ($showDescription) :?>
                                        <div class="product description product-item-description">
                                            <?= /* @noEscape */ $_helper->productAttribute($_product, $_product->getShortDescription(), 'short_description') ?>
                                            <a href="<?= $block->escapeUrl($_product->getProductUrl()) ?>"
                                               title="<?= /* @noEscape */ $_productNameStripped ?>"
                                               class="action more"><?= $block->escapeHtml(__('Learn More')) ?></a>
                                        </div>
                                    <?php endif; ?>
                                </div>
                            </div>
                        </div>
                    </div>
                <?php endforeach; ?>
            </div>
            <style>
                .item.product.product-item.mp-blog-slider-item{
                    width: 85%;
                    text-align: center;
                    height: 450px;
                    margin-top: 5px;
                }
                .owl-stage-outer{
                    padding-left: 5px;
                }
            </style>
            <script>
                require([
                    'jquery',
                    'owlCarousel'
                ], function ($) {
                    'use strict';
                    $(document).ready(function(){
                        $(".owl-carousel").owlCarousel({
                            items:4,
                            loop:false,
                            margin:10,
                            responsive:{
                                600:{
                                    items:4
                                }
                            }
                        });
                    });
                });
            </script>
        <?php endif;?>
    </div>
    <?= $block->getToolbarHtml() ?>
    <?php if (!$block->isRedirectToCartEnabled()) :?>
        <script type="text/x-magento-init">
        {
            "[data-role=tocart-form], .form.map.checkout": {
                "catalogAddToCart": {
                    "product_sku": "<?= $block->escapeJs($_product->getSku()) ?>"
                }
            }
        }
        </script>
    <?php endif; ?>
<?php endif; ?>
